[{"id":3675884,"web_url":"http://patchwork.ozlabs.org/comment/3675884/","msgid":"<CANpmjNO1vsO1LT6xijhz3nsjQa+_A=9omfgOSz=aGn293-LqTg@mail.gmail.com>","date":"2026-04-10T13:39:30","subject":"Re: [patch 19/38] kcsan: Replace get_cycles() usage","submitter":{"id":77293,"url":"http://patchwork.ozlabs.org/api/people/77293/","name":"Marco Elver","email":"elver@google.com"},"content":"On Fri, 10 Apr 2026 at 14:20, Thomas Gleixner <tglx@kernel.org> wrote:\n>\n> KCSAN uses get_cycles() for two purposes:\n>\n>   1) Seeding the random state with get_cycles() is a historical leftover.\n>\n>   2) The microbenchmark uses get_cycles(), which provides an unit less\n>      counter value and is not guaranteed to be functional on all\n>      systems/platforms.\n>\n> Use random_get_entropy() for seeding the random state and ktime_get() which\n> is universaly functional and provides at least a comprehensible unit.\n>\n> This is part of a larger effort to remove get_cycles() usage from\n> non-architecture code.\n>\n> Signed-off-by: Thomas Gleixner <tglx@kernel.org>\n> Cc: Marco Elver <elver@google.com>\n> Cc: Dmitry Vyukov <dvyukov@google.com>\n> Cc: kasan-dev@googlegroups.com\n\nReviewed-by: Marco Elver <elver@google.com>\n\n> ---\n>  kernel/kcsan/core.c    |    2 +-\n>  kernel/kcsan/debugfs.c |    8 ++++----\n>  2 files changed, 5 insertions(+), 5 deletions(-)\n>\n> --- a/kernel/kcsan/core.c\n> +++ b/kernel/kcsan/core.c\n> @@ -798,7 +798,7 @@ void __init kcsan_init(void)\n>         BUG_ON(!in_task());\n>\n>         for_each_possible_cpu(cpu)\n> -               per_cpu(kcsan_rand_state, cpu) = (u32)get_cycles();\n> +               per_cpu(kcsan_rand_state, cpu) = (u32)random_get_entropy();\n>\n>         /*\n>          * We are in the init task, and no other tasks should be running;\n> --- a/kernel/kcsan/debugfs.c\n> +++ b/kernel/kcsan/debugfs.c\n> @@ -58,7 +58,7 @@ static noinline void microbenchmark(unsi\n>  {\n>         const struct kcsan_ctx ctx_save = current->kcsan_ctx;\n>         const bool was_enabled = READ_ONCE(kcsan_enabled);\n> -       u64 cycles;\n> +       ktime_t nsecs;\n>\n>         /* We may have been called from an atomic region; reset context. */\n>         memset(&current->kcsan_ctx, 0, sizeof(current->kcsan_ctx));\n> @@ -70,16 +70,16 @@ static noinline void microbenchmark(unsi\n>\n>         pr_info(\"%s begin | iters: %lu\\n\", __func__, iters);\n>\n> -       cycles = get_cycles();\n> +       nsecs = ktime_get();\n>         while (iters--) {\n>                 unsigned long addr = iters & ((PAGE_SIZE << 8) - 1);\n>                 int type = !(iters & 0x7f) ? KCSAN_ACCESS_ATOMIC :\n>                                 (!(iters & 0xf) ? KCSAN_ACCESS_WRITE : 0);\n>                 __kcsan_check_access((void *)addr, sizeof(long), type);\n>         }\n> -       cycles = get_cycles() - cycles;\n> +       nsecs = ktime_get() - nsecs;\n>\n> -       pr_info(\"%s end   | cycles: %llu\\n\", __func__, cycles);\n> +       pr_info(\"%s end   | nsecs: %llu\\n\", __func__, nsecs);\n>\n>         WRITE_ONCE(kcsan_enabled, was_enabled);\n>         /* restore context */\n>","headers":{"Return-Path":"\n <linuxppc-dev+bounces-19610-incoming=patchwork.ozlabs.org@lists.ozlabs.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linuxppc-dev@lists.ozlabs.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=google.com header.i=@google.com header.a=rsa-sha256\n header.s=20251104 header.b=nVxA9xkL;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.ozlabs.org\n (client-ip=2404:9400:21b9:f100::1; helo=lists.ozlabs.org;\n envelope-from=linuxppc-dev+bounces-19610-incoming=patchwork.ozlabs.org@lists.ozlabs.org;\n receiver=patchwork.ozlabs.org)","lists.ozlabs.org;\n arc=pass smtp.remote-ip=\"2607:f8b0:4864:20::1235\" arc.chain=google.com","lists.ozlabs.org;\n dmarc=pass (p=reject dis=none) header.from=google.com","lists.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=google.com header.i=@google.com header.a=rsa-sha256\n header.s=20251104 header.b=nVxA9xkL;\n\tdkim-atps=neutral","lists.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=google.com\n (client-ip=2607:f8b0:4864:20::1235; helo=mail-dl1-x1235.google.com;\n envelope-from=elver@google.com; receiver=lists.ozlabs.org)"],"Received":["from lists.ozlabs.org (lists.ozlabs.org\n [IPv6:2404:9400:21b9:f100::1])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fsdGM55TFz1yGS\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 10 Apr 2026 23:40:11 +1000 (AEST)","from boromir.ozlabs.org (localhost [127.0.0.1])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 4fsdGM45Pqz2yft;\n\tFri, 10 Apr 2026 23:40:11 +1000 (AEST)","from mail-dl1-x1235.google.com (mail-dl1-x1235.google.com\n [IPv6:2607:f8b0:4864:20::1235])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n\t(No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 4fsdGK5vK0z2ySc\n\tfor <linuxppc-dev@lists.ozlabs.org>; Fri, 10 Apr 2026 23:40:09 +1000 (AEST)","by mail-dl1-x1235.google.com with SMTP id\n a92af1059eb24-1279eced0b9so3035216c88.0\n        for <linuxppc-dev@lists.ozlabs.org>;\n Fri, 10 Apr 2026 06:40:09 -0700 (PDT)"],"ARC-Seal":["i=2; a=rsa-sha256; d=lists.ozlabs.org; s=201707; t=1775828411;\n\tcv=pass;\n b=aJM2EApZISPtkYKArxAwJ5Iaw1Y4e9uoQiVn2qtXRQTrzl6uq9Eckjx1lxk5sD5EFiBq/pwfA/YYIXHGri015rI4DorB0wAvG1gx0YiLdCfOTbgdWT//hOOGDlRBhSBdj4fnbutXw/H60FU9WXdq/qpWE61QUgPYEG4tDzGBtIEYM+COF5JLQTD0naADXnb37o1fWsPjDDBy4JiBogEVoV8ultwnN1dywFVgjwy0XwYNe4aS3xte5u1rUc1WPrEqYWbexh8dpNoEcL7wMk3AkAcrwY1j3SUbyjWYVN4BBcpv4ffzUbN7yTFohBHpdrKR6rORhpX+6PMuFWt1V0/qYQ==","i=1; a=rsa-sha256; t=1775828407; cv=none;\n        d=google.com; s=arc-20240605;\n        b=aJH2SjP+rumFZJ7OJEQOkz6D1K2AeOLPhfG/htTOXOmlp7yf4LOklhRThWIpD/8RSC\n         fjAR+GKUvrrwey6NDI+TgBng5Lrfi2WXA9ZH27VzhBNc797dTtdG+m22OVvPutXvqzVx\n         /Mong9AkTc/O+YoHGSVDtnNNGuAUF0QSKJjQ/h2sT95c+p+L2nDlZCSW+AG2bv2qlPrq\n         XfWqgpGait0c9Mvc3r8IZiB/gW1Mrw0FTjCAhOgk29NCSmXMkdKjuPc4p3o/Tvk80LlT\n         ulrlGKE2adXRe8uuHHeyRBSxocd0+EVinAEN4IFUzBNYTVVcAEOcTU6beAQry2ksu7Ca\n         gF/A=="],"ARC-Message-Signature":["i=2; a=rsa-sha256; d=lists.ozlabs.org; s=201707;\n\tt=1775828411; c=relaxed/relaxed;\n\tbh=iCXB7w7ko4o+lkpt1Tfr/OwLPxl1m2l/vGRhYm7vF9w=;\n\th=MIME-Version:References:In-Reply-To:From:Date:Message-ID:Subject:\n\t To:Cc:Content-Type;\n b=GpO9yPrRFY0fULCMh5d2In6mmn2v0kHn/xUzqMgeTffiFXr0+VMHyDWVAF6NKYVUZhnMq2NT3WhMktRDQNPelYQAVN9lfZAwH9QzcVdkepL28A2Vy4tyWNExOC0bQ0zJLmQIFaikHA22OkU7/sD3Npu0wp+ILeyQqz4uLubhK+Qhd9LcdMHxiXTQlJlWt0Vb/KZ9qA10orE96A+any74P+f9POoGhxmXFwd2WFMjO5cKJuRXjouWF/i/b6PtR2SqtPCEM/+VEXwt8CcRzPMGft3uDT6OXm0yjWp09M/I+/OWkz+vp+Xnk2kvl0kBZWfRcbDFVM1ob2S2IKsXLQNf+Q==","i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;\n s=arc-20240605;\n        h=cc:to:subject:message-id:date:from:in-reply-to:references\n         :mime-version:dkim-signature;\n        bh=iCXB7w7ko4o+lkpt1Tfr/OwLPxl1m2l/vGRhYm7vF9w=;\n        fh=3KU+y8OBr+cT4NQ6tSrBqdhV1lDuF27WNxFIOyN8hqg=;\n        b=MqJhozKOIEmcpVQLiH366u9+V1saC32ZFkFcwq20/aKrWYlyS8Rs8lNQVgMp61JcQE\n         Ap6NSMEUuO2cCrv0BTG7al+orzBwh7hCuruFtFcS3MIgrb7SsQurIZpw68EMFDI4o0P+\n         8nKhhZk1dS9J5Dla3uoHjDj5ELcpqL8+b38wZQG2ULYMCupOii7JBK2s94e3CFMx9ve4\n         xc8HhjcGb40J0wTogfTEtB1irPVvX4Qge8FEnDuUiKeFJ4HrsFuGjxVpr+JhPrQ6Etr7\n         Q+mS+N+ZfM92yTlMfacwpNouYTJ/LDcRb1KfNCVRDl/FHp57ciHjRceyqmWsf4ABn2Dv\n         64Dw==;\n        darn=lists.ozlabs.org"],"ARC-Authentication-Results":["i=2; lists.ozlabs.org;\n dmarc=pass (p=reject dis=none) header.from=google.com;\n dkim=pass (2048-bit key;\n unprotected) header.d=google.com header.i=@google.com header.a=rsa-sha256\n header.s=20251104 header.b=nVxA9xkL; dkim-atps=neutral;\n spf=pass (client-ip=2607:f8b0:4864:20::1235; helo=mail-dl1-x1235.google.com;\n envelope-from=elver@google.com;\n receiver=lists.ozlabs.org) smtp.mailfrom=google.com","i=1; mx.google.com; arc=none"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=google.com; s=20251104; t=1775828407; x=1776433207;\n darn=lists.ozlabs.org;\n        h=cc:to:subject:message-id:date:from:in-reply-to:references\n         :mime-version:from:to:cc:subject:date:message-id:reply-to;\n        bh=iCXB7w7ko4o+lkpt1Tfr/OwLPxl1m2l/vGRhYm7vF9w=;\n        b=nVxA9xkL9q8wo3I2W031AR2lV3Sc/w7+OVX5qD4fc4E3yDWmo2kpPhP1s/G6MX+h8+\n         +FM2OxuowkmNhjvnT8oDe05zxoNi2xvPcQAVIoWhWHv8cixEG0/fRLgH9BK9FD8D3utV\n         NdSKmdEUc4LrKBMre12bi6ZMepb6oTcTveg4ta6q19GaUtqdc37aDYTjHwHNQ+OKtxkd\n         JDdDS3cyQgzPHjvB+YLg4Nx1Yx1laqQS6R4cjbs9gPGcaW8s38c1iyDqxFZqN+QMa4N2\n         dCazaEkoTYMnp6srWoR42bDika8qsti/XOmoQ/GDkPu5IkQQDeuzFzUT+N9TDYanoTDo\n         1O3w==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=1e100.net; s=20251104; t=1775828407; x=1776433207;\n        h=cc:to:subject:message-id:date:from:in-reply-to:references\n         :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date\n         :message-id:reply-to;\n        bh=iCXB7w7ko4o+lkpt1Tfr/OwLPxl1m2l/vGRhYm7vF9w=;\n        b=L5ui/Im/zc6hNkbOOTVie7Ut5J4+7PhcoBWXR/Aa7cM9Zo/GjyP3tlPFob+3+woAHQ\n         fZ6oRQVKHpmCGLuUFps06ebytdW5Glol8jqJRK/EKYsKEg4lc7kEYckAvr4bLTJZt61O\n         e+468elbhUmIW3/j2ucjBrFl6JRllDKfZ+6CrWIkcSh0Xcb1Ag2q9eatK6Fv+MiNliOD\n         GFEiBGYjqC+ovPJG6xeZCjLfMvmoK+IL5kNpFqfKeDR2E3GvynxSfUo8JbQwb8vkoHgK\n         iIJVrtdNFTreVfYQI6+uOspNmwcepKgCzM6dEmhniO9Txm2JAx0mqgmPG8ySRBum7sso\n         GRDA==","X-Forwarded-Encrypted":"i=1;\n AJvYcCXX67odSIO9v+Q6cXIl+9bT1xEpUVQWj5GxQBD4TFQUwcMNmuS3JkH4mKzu5E6qpz71XDG1EqwIgPLVNe8=@lists.ozlabs.org","X-Gm-Message-State":"AOJu0YxfrSKfXD/Hh2VkUiO4zP3vVCgFKP7rVmk+5swAlXChRvVS3A2P\n\t8k6WYxXMFBB3AfbWII/C8Pre/C+2JM0URLQJRu5qx06ambkXZXBOywKNV6qTGB8AWQ8XDNChjVC\n\teTyUsp4fSdycytqXlq0wGvJQxpxAcOeJcOPZ7Hk5t","X-Gm-Gg":"AeBDiesUBnjPufOyr41SV/VOWdq2UtDkk0Gf334uw+s0Bil2QM23JN5FItVMlJNSNic\n\tD3qTGx8W/Jqz81L2RcAqAWteImJyPDegPC/FfHvtHlB7w2PitJqnIhsd+1C4fTf7L3Qny8jX3PL\n\tZrLBgLeLEjIMOl1nR43//F/EB8QHI3EA/Z5ukG6Sp/728pP4cKphlm0I/zfJSovaDQgHTIwZBDZ\n\tQuhAmq5upi2yRdm84nUxgyoO+UEMoNqzVmX05VEGkHkPGA+bViC4B8sIZ4B9N2BuKE0YMEt+a0g\n\tEDLWCe1xvGC6DxWbzXuR+zfObfjGMh5QFra2aUXfZ855NrEZ","X-Received":"by 2002:a05:7022:fa04:b0:12c:2ed4:62fa with SMTP id\n a92af1059eb24-12c34ef907emr1882312c88.32.1775828406651; Fri, 10 Apr 2026\n 06:40:06 -0700 (PDT)","X-Mailing-List":"linuxppc-dev@lists.ozlabs.org","List-Id":"<linuxppc-dev.lists.ozlabs.org>","List-Help":"<mailto:linuxppc-dev+help@lists.ozlabs.org>","List-Owner":"<mailto:linuxppc-dev+owner@lists.ozlabs.org>","List-Post":"<mailto:linuxppc-dev@lists.ozlabs.org>","List-Archive":"<https://lore.kernel.org/linuxppc-dev/>,\n  <https://lists.ozlabs.org/pipermail/linuxppc-dev/>","List-Subscribe":"<mailto:linuxppc-dev+subscribe@lists.ozlabs.org>,\n  <mailto:linuxppc-dev+subscribe-digest@lists.ozlabs.org>,\n  <mailto:linuxppc-dev+subscribe-nomail@lists.ozlabs.org>","List-Unsubscribe":"<mailto:linuxppc-dev+unsubscribe@lists.ozlabs.org>","Precedence":"list","MIME-Version":"1.0","References":"<20260410120044.031381086@kernel.org>\n <20260410120318.862164111@kernel.org>","In-Reply-To":"<20260410120318.862164111@kernel.org>","From":"Marco Elver <elver@google.com>","Date":"Fri, 10 Apr 2026 15:39:30 +0200","X-Gm-Features":"AQROBzBE-9UxDQG5mMJLgipEeL_Y5pwE-Y_PUrJGxDBLilqBu51b8lLzxdip708","Message-ID":"\n <CANpmjNO1vsO1LT6xijhz3nsjQa+_A=9omfgOSz=aGn293-LqTg@mail.gmail.com>","Subject":"Re: [patch 19/38] kcsan: Replace get_cycles() usage","To":"Thomas Gleixner <tglx@kernel.org>","Cc":"LKML <linux-kernel@vger.kernel.org>, Dmitry Vyukov <dvyukov@google.com>,\n\tkasan-dev@googlegroups.com, Arnd Bergmann <arnd@arndb.de>, x86@kernel.org,\n\tLu Baolu <baolu.lu@linux.intel.com>, iommu@lists.linux.dev,\n\tMichael Grzeschik <m.grzeschik@pengutronix.de>, netdev@vger.kernel.org,\n\tlinux-wireless@vger.kernel.org, Herbert Xu <herbert@gondor.apana.org.au>,\n\tlinux-crypto@vger.kernel.org, Vlastimil Babka <vbabka@kernel.org>,\n linux-mm@kvack.org,\n\tDavid Woodhouse <dwmw2@infradead.org>, Bernie Thompson <bernie@plugable.com>,\n linux-fbdev@vger.kernel.org,\n\tTheodore Tso <tytso@mit.edu>, linux-ext4@vger.kernel.org,\n\tAndrew Morton <akpm@linux-foundation.org>,\n Uladzislau Rezki <urezki@gmail.com>,\n\tAndrey Ryabinin <ryabinin.a.a@gmail.com>,\n Thomas Sailer <t.sailer@alumni.ethz.ch>,\n\tlinux-hams@vger.kernel.org, \"Jason A. Donenfeld\" <Jason@zx2c4.com>,\n\tRichard Henderson <richard.henderson@linaro.org>,\n linux-alpha@vger.kernel.org,\n\tRussell King <linux@armlinux.org.uk>, linux-arm-kernel@lists.infradead.org,\n\tCatalin Marinas <catalin.marinas@arm.com>,\n Huacai Chen <chenhuacai@kernel.org>,\n\tloongarch@lists.linux.dev, Geert Uytterhoeven <geert@linux-m68k.org>,\n\tlinux-m68k@lists.linux-m68k.org, Dinh Nguyen <dinguyen@kernel.org>,\n\tJonas Bonn <jonas@southpole.se>, linux-openrisc@vger.kernel.org,\n\tHelge Deller <deller@gmx.de>, linux-parisc@vger.kernel.org,\n\tMichael Ellerman <mpe@ellerman.id.au>, linuxppc-dev@lists.ozlabs.org,\n\tPaul Walmsley <pjw@kernel.org>, linux-riscv@lists.infradead.org,\n\tHeiko Carstens <hca@linux.ibm.com>, linux-s390@vger.kernel.org,\n\t\"David S. Miller\" <davem@davemloft.net>, sparclinux@vger.kernel.org","Content-Type":"text/plain; charset=\"UTF-8\"","X-Spam-Status":"No, score=-15.7 required=3.0 tests=ARC_SIGNED,ARC_VALID,\n\tDKIMWL_WL_MED,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,\n\tENV_AND_HDR_SPF_MATCH,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,\n\tUSER_IN_DEF_DKIM_WL,USER_IN_DEF_SPF_WL autolearn=disabled\n\tversion=4.0.1 OzLabs 8","X-Spam-Checker-Version":"SpamAssassin 4.0.1 (2024-03-25) on lists.ozlabs.org"}}]