On Mon, May 16, 2022 at 2:11 AM Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote: > > Hi all, > > After merging the nvdimm tree, today's linux-next build (i386 defconfig) > failed like this: > > In file included from include/linux/bits.h:6, > from include/linux/bitops.h:6, > from include/linux/kernel.h:22, > from arch/x86/include/asm/percpu.h:27, > from arch/x86/include/asm/preempt.h:6, > from include/linux/preempt.h:78, > from include/linux/spinlock.h:55, > from include/linux/wait.h:9, > from include/linux/wait_bit.h:8, > from include/linux/fs.h:6, > from include/linux/highmem.h:5, > from arch/x86/mm/pat/set_memory.c:6: > arch/x86/mm/pat/set_memory.c: In function 'set_mce_nospec': > include/vdso/bits.h:7:40: error: left shift count >= width of type [-Werror=shift-count-overflow] > 7 | #define BIT(nr) (UL(1) << (nr)) > | ^~ > arch/x86/mm/pat/set_memory.c:1941:59: note: in expansion of macro 'BIT' > 1941 | decoy_addr = (pfn << PAGE_SHIFT) + (PAGE_OFFSET ^ BIT(63)); > | ^~~ > > Caused by commit > > 39702cf7885c ("x86/mce: relocate set{clear}_mce_nospec() functions") > > I applied the following patch for today. Sorry I missed this. I looked for a way to avoid adding ifdefs in the C file, but it seems that game is already lost in this file, so I'll fold this change into the resend. Thanks!