On Wed, Jan 24, 2024 at 6:15 PM Marco Elver <elver@xxxxxxxxxx> wrote: > > On Wed, 24 Jan 2024 at 17:42, 'Alexander Potapenko' via kasan-dev > <kasan-dev@xxxxxxxxxxxxxxxx> wrote: > > > > Similarly to what's been done in commit ff444efbbb9be ("kmsan: allow > > using __msan_instrument_asm_store() inside runtime"), it should be safe > > to call kmsan_unpoison_memory() from within the runtime, as it does not > > allocate memory or take locks. Remove the redundant runtime checks. > > > > This should fix false positives seen with CONFIG_DEBUG_LIST=y when > > the non-instrumented lib/stackdepot.c failed to unpoison the memory > > chunks later checked by the instrumented lib/list_debug.c > > > > Also replace the implementation of kmsan_unpoison_entry_regs() with > > a call to kmsan_unpoison_memory(). > > > > Signed-off-by: Alexander Potapenko <glider@xxxxxxxxxx> > > Cc: Marco Elver <elver@xxxxxxxxxx> > > Cc: Dmitry Vyukov <dvyukov@xxxxxxxxxx> > > Cc: Ilya Leoshkevich <iii@xxxxxxxxxxxxx> > > Cc: Nicholas Miehlbradt <nicholas@xxxxxxxxxxxxx> > > Tested-by: Marco Elver <elver@xxxxxxxxxx> > > missing ')', probably: > > + kmsan_unpoison_memory((void *)regs, sizeof(*regs)); My bad - you are right. Thanks for catching!