2014-11-24 21:45 GMT+03:00 Sasha Levin <sasha.levin@xxxxxxxxxx>: > On 11/24/2014 01:02 PM, Andrey Ryabinin wrote: >> +static int kasan_die_handler(struct notifier_block *self, >> + unsigned long val, >> + void *data) >> +{ >> + if (val == DIE_GPF) { >> + pr_emerg("CONFIG_KASAN_INLINE enabled\n"); >> + pr_emerg("GPF could be caused by NULL-ptr deref or user memory access\n"); >> + } >> + return NOTIFY_OK; >> +} >> + >> +static struct notifier_block kasan_die_notifier = { >> + .notifier_call = kasan_die_handler, >> +}; > > This part fails to compile: > > CC arch/x86/mm/kasan_init_64.o > arch/x86/mm/kasan_init_64.c: In function ‘kasan_die_handler’: > arch/x86/mm/kasan_init_64.c:72:13: error: ‘DIE_GPF’ undeclared (first use in this function) > if (val == DIE_GPF) { > ^ > arch/x86/mm/kasan_init_64.c:72:13: note: each undeclared identifier is reported only once for each function it appears in > arch/x86/mm/kasan_init_64.c: In function ‘kasan_init’: > arch/x86/mm/kasan_init_64.c:89:2: error: implicit declaration of function ‘register_die_notifier’ [-Werror=implicit-function-declaration] > register_die_notifier(&kasan_die_notifier); > ^ > cc1: some warnings being treated as errors > make[1]: *** [arch/x86/mm/kasan_init_64.o] Error 1 > > > Simple fix: > Thanks, I thought I've fixed this, but apparently I forgot to commit it. > diff --git a/arch/x86/mm/kasan_init_64.c b/arch/x86/mm/kasan_init_64.c > index 70041fd..c8f7f3e 100644 > --- a/arch/x86/mm/kasan_init_64.c > +++ b/arch/x86/mm/kasan_init_64.c > @@ -5,6 +5,7 @@ > #include <linux/vmalloc.h> > > #include <asm/tlbflush.h> > +#include <linux/kdebug.h> > > extern pgd_t early_level4_pgt[PTRS_PER_PGD]; > extern struct range pfn_mapped[E820_X_MAX]; > > > Thanks, > Sasha > -- Best regards, Andrey Ryabinin -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href