Hi Peter, kernel test robot noticed the following build errors: [auto build test ERROR on akpm-mm/mm-everything] url: https://github.com/intel-lab-lkp/linux/commits/Peter-Xu/mm-dax-Dump-start-address-in-fault-handler/20240705-013812 base: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything patch link: https://lore.kernel.org/r/20240703212918.2417843-8-peterx%40redhat.com patch subject: [PATCH v2 7/8] mm/x86: Add missing pud helpers config: i386-randconfig-011-20240706 (https://download.01.org/0day-ci/archive/20240706/202407061716.WH5NMiL2-lkp@xxxxxxxxx/config) compiler: gcc-11 (Ubuntu 11.4.0-4ubuntu1) 11.4.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240706/202407061716.WH5NMiL2-lkp@xxxxxxxxx/reproduce) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot <lkp@xxxxxxxxx> | Closes: https://lore.kernel.org/oe-kbuild-all/202407061716.WH5NMiL2-lkp@xxxxxxxxx/ All errors (new ones prefixed by >>): In file included from arch/x86/include/asm/atomic.h:8, from include/linux/atomic.h:7, from include/linux/jump_label.h:256, from include/linux/static_key.h:1, from arch/x86/include/asm/nospec-branch.h:6, from arch/x86/include/asm/irqflags.h:9, from include/linux/irqflags.h:18, from include/linux/spinlock.h:59, from include/linux/mmzone.h:8, from include/linux/gfp.h:7, from include/linux/mm.h:7, from arch/x86/mm/pgtable.c:2: In function 'pudp_establish', inlined from 'pudp_invalidate' at arch/x86/mm/pgtable.c:649:14: >> arch/x86/include/asm/cmpxchg.h:67:25: error: call to '__xchg_wrong_size' declared with attribute error: Bad argument size for xchg 67 | __ ## op ## _wrong_size(); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~ arch/x86/include/asm/cmpxchg.h:78:33: note: in expansion of macro '__xchg_op' 78 | #define arch_xchg(ptr, v) __xchg_op((ptr), (v), xchg, "") | ^~~~~~~~~ include/linux/atomic/atomic-arch-fallback.h:12:18: note: in expansion of macro 'arch_xchg' 12 | #define raw_xchg arch_xchg | ^~~~~~~~~ include/linux/atomic/atomic-instrumented.h:4758:9: note: in expansion of macro 'raw_xchg' 4758 | raw_xchg(__ai_ptr, __VA_ARGS__); \ | ^~~~~~~~ arch/x86/include/asm/pgtable.h:1415:24: note: in expansion of macro 'xchg' 1415 | return xchg(pudp, pud); | ^~~~ vim +/__xchg_wrong_size +67 arch/x86/include/asm/cmpxchg.h e9826380d83d1bd Jeremy Fitzhardinge 2011-08-18 37 e9826380d83d1bd Jeremy Fitzhardinge 2011-08-18 38 /* 31a8394e069e47d Jeremy Fitzhardinge 2011-09-30 39 * An exchange-type operation, which takes a value and a pointer, and 7f5281ae8a8e7f8 Li Zhong 2013-04-25 40 * returns the old value. e9826380d83d1bd Jeremy Fitzhardinge 2011-08-18 41 */ 31a8394e069e47d Jeremy Fitzhardinge 2011-09-30 42 #define __xchg_op(ptr, arg, op, lock) \ e9826380d83d1bd Jeremy Fitzhardinge 2011-08-18 43 ({ \ 31a8394e069e47d Jeremy Fitzhardinge 2011-09-30 44 __typeof__ (*(ptr)) __ret = (arg); \ 31a8394e069e47d Jeremy Fitzhardinge 2011-09-30 45 switch (sizeof(*(ptr))) { \ e9826380d83d1bd Jeremy Fitzhardinge 2011-08-18 46 case __X86_CASE_B: \ 31a8394e069e47d Jeremy Fitzhardinge 2011-09-30 47 asm volatile (lock #op "b %b0, %1\n" \ 2ca052a3710fac2 Jeremy Fitzhardinge 2012-04-02 48 : "+q" (__ret), "+m" (*(ptr)) \ 31a8394e069e47d Jeremy Fitzhardinge 2011-09-30 49 : : "memory", "cc"); \ e9826380d83d1bd Jeremy Fitzhardinge 2011-08-18 50 break; \ e9826380d83d1bd Jeremy Fitzhardinge 2011-08-18 51 case __X86_CASE_W: \ 31a8394e069e47d Jeremy Fitzhardinge 2011-09-30 52 asm volatile (lock #op "w %w0, %1\n" \ 31a8394e069e47d Jeremy Fitzhardinge 2011-09-30 53 : "+r" (__ret), "+m" (*(ptr)) \ 31a8394e069e47d Jeremy Fitzhardinge 2011-09-30 54 : : "memory", "cc"); \ e9826380d83d1bd Jeremy Fitzhardinge 2011-08-18 55 break; \ e9826380d83d1bd Jeremy Fitzhardinge 2011-08-18 56 case __X86_CASE_L: \ 31a8394e069e47d Jeremy Fitzhardinge 2011-09-30 57 asm volatile (lock #op "l %0, %1\n" \ 31a8394e069e47d Jeremy Fitzhardinge 2011-09-30 58 : "+r" (__ret), "+m" (*(ptr)) \ 31a8394e069e47d Jeremy Fitzhardinge 2011-09-30 59 : : "memory", "cc"); \ e9826380d83d1bd Jeremy Fitzhardinge 2011-08-18 60 break; \ e9826380d83d1bd Jeremy Fitzhardinge 2011-08-18 61 case __X86_CASE_Q: \ 31a8394e069e47d Jeremy Fitzhardinge 2011-09-30 62 asm volatile (lock #op "q %q0, %1\n" \ 31a8394e069e47d Jeremy Fitzhardinge 2011-09-30 63 : "+r" (__ret), "+m" (*(ptr)) \ 31a8394e069e47d Jeremy Fitzhardinge 2011-09-30 64 : : "memory", "cc"); \ e9826380d83d1bd Jeremy Fitzhardinge 2011-08-18 65 break; \ e9826380d83d1bd Jeremy Fitzhardinge 2011-08-18 66 default: \ 31a8394e069e47d Jeremy Fitzhardinge 2011-09-30 @67 __ ## op ## _wrong_size(); \ e9826380d83d1bd Jeremy Fitzhardinge 2011-08-18 68 } \ 31a8394e069e47d Jeremy Fitzhardinge 2011-09-30 69 __ret; \ e9826380d83d1bd Jeremy Fitzhardinge 2011-08-18 70 }) e9826380d83d1bd Jeremy Fitzhardinge 2011-08-18 71 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki