[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <YK4EeMhKUWQ9E92H@hirez.programming.kicks-ass.net>
Date: Wed, 26 May 2021 10:19:04 +0200
From: Peter Zijlstra <peterz@...radead.org>
To: Marco Elver <elver@...gle.com>
Cc: linux-kernel@...r.kernel.org, nathan@...nel.org,
ndesaulniers@...gle.com, ojeda@...nel.org, keescook@...omium.org,
akpm@...ux-foundation.org, will@...nel.org, ardb@...nel.org,
luc.vanoostenryck@...il.com, nivedita@...m.mit.edu,
masahiroy@...nel.org, samitolvanen@...gle.com, arnd@...db.de,
clang-built-linux@...glegroups.com,
Dmitry Vyukov <dvyukov@...gle.com>,
Mark Rutland <mark.rutland@....com>
Subject: Re: [PATCH] kcov: add __no_sanitize_coverage to fix noinstr for all
architectures
On Tue, May 25, 2021 at 07:58:19PM +0200, Marco Elver wrote:
> Until now no compiler supported an attribute to disable coverage
> instrumentation as used by KCOV.
>
> To work around this limitation on x86, noinstr functions have their
> coverage instrumentation turned into nops by objtool. However, this
> solution doesn't scale automatically to other architectures, such as
> arm64, which are migrating to use the generic entry code.
>
> Clang [1] and GCC [2] have added support for the attribute recently.
> [1] https://github.com/llvm/llvm-project/commit/280333021e9550d80f5c1152a34e33e81df1e178
> [2] https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=cec4d4a6782c9bd8d071839c50a239c49caca689
>
> Add __no_sanitize_coverage for both compilers, and add it to noinstr.
>
> Signed-off-by: Marco Elver <elver@...gle.com>
W00t! Thanks guys!
Acked-by: Peter Zijlstra (Intel) <peterz@...radead.org>
Powered by blists - more mailing lists