[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Y3yFjm98nqQEsnVN@hirez.programming.kicks-ass.net>
Date: Tue, 22 Nov 2022 09:17:18 +0100
From: Peter Zijlstra <peterz@...radead.org>
To: Alexander Potapenko <glider@...gle.com>
Cc: tglx@...utronix.de, mingo@...hat.com, bp@...en8.de,
dave.hansen@...ux.intel.com, x86@...nel.org,
linux-kernel@...r.kernel.org, Eric Biggers <ebiggers@...nel.org>
Subject: Re: [PATCH] x86: suppress KMSAN reports in arch_within_stack_frames()
On Mon, Nov 21, 2022 at 03:27:49PM +0100, Alexander Potapenko wrote:
> In other words, for normal instrumentation:
> - locals are explicitly marked as uninitialized;
> - shadow values are calculated for arithmetic operations based on their inputs;
> - shadow values are checked for branches, pointer dereferences, and
> before passing them as function arguments;
> - memory stores update shadow for affected variables.
>
> For __no_kmsan_checks:
> - locals are explicitly marked as initialized;
> - no instrumentation is added for arithmetic operations, branches,
> pointer dereferences;
> - all function arguments are marked as initialized;
> - stores always mark memory as initialized.
>
> For __no_sanitize_memory:
> - no instrumentation for locals (they may end up being initialized or
> uninitialized - doesn't matter, because their shadow values are never
> used);
> - no instrumentation for arithmetic operations, branches, pointer dereferences;
> - no instrumentation for function calls (an instrumented function
> will receive garbage shadow values from a non-instrumented one);
> - no instrumentation for stores (initialization done in these
> functions is invisible).
Thanks! That is a great summary.
Powered by blists - more mailing lists