Re: [PATCH 04/10] misc: lkdtm: bugs: At least try to use popuated variable

From: Arnd Bergmann
Date: Fri Jun 26 2020 - 10:37:36 EST


On Fri, Jun 26, 2020 at 3:05 PM Lee Jones <lee.jones@xxxxxxxxxx> wrote:
>
> The result may not be intereresting, but not using a set variable
> is bad form and causes W=1 kernel builds to complain.
>
> Fixes the following W=1 warning(s):
>
> drivers/misc/lkdtm/bugs.c: In function âlkdtm_STACK_GUARD_PAGE_LEADINGâ:
> drivers/misc/lkdtm/bugs.c:331:25: warning: variable âbyteâ set but not used [-Wunused-but-set-variable]
> 331 | volatile unsigned char byte;
> | ^~~~
> drivers/misc/lkdtm/bugs.c: In function âlkdtm_STACK_GUARD_PAGE_TRAILINGâ:
> drivers/misc/lkdtm/bugs.c:345:25: warning: variable âbyteâ set but not used [-Wunused-but-set-variable]
> 345 | volatile unsigned char byte;
> | ^~~~
>
> Cc: Kees Cook <keescook@xxxxxxxxxxxx>
> Signed-off-by: Lee Jones <lee.jones@xxxxxxxxxx>

I think a clearer way to address this would be to add a cast to void than
to actually use the variable.

Looking at the implementation, it also seems odd to use a 'const char *' as
the source and a 'volatile char' as the destination, I would have expected
the opposite (marking the source volatile to force the access),
though I suppose the effect is the same.

Arnd