On Fri, 26 Aug 2022 17:07:34 +0200 Alexander Potapenko <glider@xxxxxxxxxx> wrote: > > ... > > --- a/include/linux/sched.h > +++ b/include/linux/sched.h > @@ -14,6 +14,7 @@ > #include <linux/pid.h> > #include <linux/sem.h> > #include <linux/shm.h> > +#include <linux/kmsan.h> > #include <linux/mutex.h> > #include <linux/plist.h> > #include <linux/hrtimer.h> > @@ -1355,6 +1356,10 @@ struct task_struct { > #endif > #endif > > +#ifdef CONFIG_KMSAN > + struct kmsan_ctx kmsan_ctx; > +#endif > + > #if IS_ENABLED(CONFIG_KUNIT) > struct kunit *kunit_test; > #endif This change causes the arm allnoconfig build to fail. In file included from <command-line>: ./include/linux/page-flags.h: In function '_compound_head': ./include/linux/page-flags.h:253:44: error: invalid use of undefined type 'const struct page' 253 | unsigned long head = READ_ONCE(page->compound_head); | ^~ ././include/linux/compiler_types.h:335:23: note: in definition of macro '__compiletime_assert' 335 | if (!(condition)) \ | ^~~~~~~~~ [10,000 lines snipped] A simple `make init/do_mounts.o' sets it off. It's Friday night and I got tired of trying to work out why :( I don't think it's kmsan's fault - seems to be somewhere between include/linux/topology.h and its use of arch/arm/include/asm/topology.h. Shudder. arm defconfig is OK. I think I'll pretend I didn't see this and push it out anyway and see if someone else has the patience.