Re: [PATCH v7 03/12] x86_64: add KASan support
From: Andrey Ryabinin
Date: Mon Nov 24 2014 - 16:26:54 EST
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 from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/