On Fri, Apr 14, 2017 at 2:15 PM, Matthias Kaehlcke <m...@chromium.org> wrote:
> From: Michael Davidson <m...@google.com>
>
> Add a volatile qualifier where a NULL pointer is deliberately
> dereferenced to trigger a panic.
>
> Without the volatile qualifier clang will issue the following warning:
> "indirection of non-volatile null pointer will be deleted,
> not trap [-Wnull-dereference]" and replace the pointer reference
> with a __builtin_trap() (which generates a ud2 instruction on x86_64).
>
> Signed-off-by: Michael Davidson <m...@google.com>
> Signed-off-by: Matthias Kaehlcke <m...@chromium.org>

Thanks!

Acked-by: Kees Cook <keesc...@chromium.org>

Greg, please add this to drivers/misc when you get a chance. :)

-Kees

> ---
>  drivers/misc/lkdtm_bugs.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/misc/lkdtm_bugs.c b/drivers/misc/lkdtm_bugs.c
> index e3f4cd8876b5..d734d75afade 100644
> --- a/drivers/misc/lkdtm_bugs.c
> +++ b/drivers/misc/lkdtm_bugs.c
> @@ -67,7 +67,7 @@ void lkdtm_WARNING(void)
>
>  void lkdtm_EXCEPTION(void)
>  {
> -       *((int *) 0) = 0;
> +       *((volatile int *) 0) = 0;
>  }
>
>  void lkdtm_LOOP(void)
> --
> 2.12.2.762.g0e3151a226-goog
>



-- 
Kees Cook
Pixel Security

Reply via email to