The patch titled Subject: include/asm-generic/5level-fixup.h: fix variable 'p4d' set but not used has been added to the -mm tree. Its filename is asm-generic-fix-variable-p4d-set-but-not-used.patch This patch should soon appear at http://ozlabs.org/~akpm/mmots/broken-out/asm-generic-fix-variable-p4d-set-but-not-used.patch and later at http://ozlabs.org/~akpm/mmotm/broken-out/asm-generic-fix-variable-p4d-set-but-not-used.patch Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next and is updated there every 3-4 working days ------------------------------------------------------ From: Qian Cai <cai@xxxxxx> Subject: include/asm-generic/5level-fixup.h: fix variable 'p4d' set but not used GCC throws a warning on an arm64 system since commit 9849a5697d3d ("arch, mm: convert all architectures to use 5level-fixup.h"), mm/kasan/init.c: In function 'kasan_free_p4d': mm/kasan/init.c:344:9: warning: variable 'p4d' set but not used [-Wunused-but-set-variable] p4d_t *p4d; ^~~ because p4d_none() in "5level-fixup.h" is compiled away while it is a static inline function in "pgtable-nopud.h". However, if converted p4d_none() to a static inline there, powerpc would be unhappy as it reads those in assembler language in "arch/powerpc/include/asm/book3s/64/pgtable.h", ./include/asm-generic/5level-fixup.h: Assembler messages: ./include/asm-generic/5level-fixup.h:20: Error: unrecognized opcode: `static' ./include/asm-generic/5level-fixup.h:21: Error: junk at end of line, first unrecognized character is `{' ./include/asm-generic/5level-fixup.h:22: Error: unrecognized opcode: `return' ./include/asm-generic/5level-fixup.h:23: Error: junk at end of line, first unrecognized character is `}' ./include/asm-generic/5level-fixup.h:25: Error: unrecognized opcode: `static' ./include/asm-generic/5level-fixup.h:26: Error: junk at end of line, first unrecognized character is `{' ./include/asm-generic/5level-fixup.h:27: Error: unrecognized opcode: `return' ./include/asm-generic/5level-fixup.h:28: Error: junk at end of line, first unrecognized character is `}' ./include/asm-generic/5level-fixup.h:30: Error: unrecognized opcode: `static' ./include/asm-generic/5level-fixup.h:31: Error: junk at end of line, first unrecognized character is `{' ./include/asm-generic/5level-fixup.h:32: Error: unrecognized opcode: `return' ./include/asm-generic/5level-fixup.h:33: Error: junk at end of line, first unrecognized character is `}' make[2]: *** [scripts/Makefile.build:375: arch/powerpc/kvm/book3s_hv_rmhandlers.o] Error 1 Fix it by reference the variable in the macro instead. Link: http://lkml.kernel.org/r/1564774882-22926-1-git-send-email-cai@xxxxxx Signed-off-by: Qian Cai <cai@xxxxxx> Cc: Arnd Bergmann <arnd@xxxxxxxx> Cc: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx> Cc: Michal Hocko <mhocko@xxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- include/asm-generic/5level-fixup.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/include/asm-generic/5level-fixup.h~asm-generic-fix-variable-p4d-set-but-not-used +++ a/include/asm-generic/5level-fixup.h @@ -19,7 +19,7 @@ #define p4d_alloc(mm, pgd, address) (pgd) #define p4d_offset(pgd, start) (pgd) -#define p4d_none(p4d) 0 +#define p4d_none(p4d) ((void)p4d, 0) #define p4d_bad(p4d) 0 #define p4d_present(p4d) 1 #define p4d_ERROR(p4d) do { } while (0) _ Patches currently in -mm which might be from cai@xxxxxx are asm-generic-fix-wtype-limits-compiler-warnings.patch asm-generic-fix-wtype-limits-compiler-warnings-v2.patch mm-memcontrol-fix-use-after-free-in-mem_cgroup_iter-fix.patch asm-generic-fix-variable-p4d-set-but-not-used.patch writeback-fix-wstringop-truncation-warnings.patch