From: kernel test robot <lkp@intel.com> To: Tanner Love <tannerlove.kernel@gmail.com>, netdev@vger.kernel.org Cc: kbuild-all@lists.01.org, clang-built-linux@googlegroups.com, davem@davemloft.net, Tanner Love <tannerlove@google.com>, Eric Dumazet <edumazet@google.com>, Mahesh Bandewar <maheshb@google.com> Subject: Re: [PATCH net-next 2/3] once: replace uses of __section(".data.once") with DO_ONCE_LITE(_IF)? Date: Fri, 23 Apr 2021 06:28:52 +0800 [thread overview] Message-ID: <202104230602.N3ksyBSy-lkp@intel.com> (raw) In-Reply-To: <20210422194738.2175542-3-tannerlove.kernel@gmail.com> [-- Attachment #1: Type: text/plain, Size: 28438 bytes --] Hi Tanner, Thank you for the patch! Yet something to improve: [auto build test ERROR on net-next/master] url: https://github.com/0day-ci/linux/commits/Tanner-Love/net-update-netdev_rx_csum_fault-print-dump-only-once/20210423-034958 base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git 5d869070569a23aa909c6e7e9d010fc438a492ef config: powerpc-randconfig-r011-20210421 (attached as .config) compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project f5446b769a7929806f72256fccd4826d66502e59) reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # install powerpc cross compiling tool for clang build # apt-get install binutils-powerpc-linux-gnu # https://github.com/0day-ci/linux/commit/eaeb33f0f85f70fc4e5fbae1e2344e9c6867c840 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Tanner-Love/net-update-netdev_rx_csum_fault-print-dump-only-once/20210423-034958 git checkout eaeb33f0f85f70fc4e5fbae1e2344e9c6867c840 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 ARCH=powerpc If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com> All errors (new ones prefixed by >>): In file included from kernel/bounds.c:10: In file included from include/linux/page-flags.h:10: In file included from include/linux/bug.h:5: In file included from arch/powerpc/include/asm/bug.h:109: In file included from include/asm-generic/bug.h:7: In file included from include/linux/once.h:6: In file included from include/linux/jump_label.h:249: In file included from include/linux/atomic.h:7: In file included from arch/powerpc/include/asm/atomic.h:11: >> arch/powerpc/include/asm/cmpxchg.h:80:1: error: use of undeclared identifier 'BITS_PER_BYTE' XCHG_GEN(u8, _local, "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:22:11: note: expanded from macro 'XCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:81:1: error: use of undeclared identifier 'BITS_PER_BYTE' XCHG_GEN(u8, _relaxed, "cc"); ^ arch/powerpc/include/asm/cmpxchg.h:22:11: note: expanded from macro 'XCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:82:1: error: use of undeclared identifier 'BITS_PER_BYTE' XCHG_GEN(u16, _local, "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:22:11: note: expanded from macro 'XCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:83:1: error: use of undeclared identifier 'BITS_PER_BYTE' XCHG_GEN(u16, _relaxed, "cc"); ^ arch/powerpc/include/asm/cmpxchg.h:22:11: note: expanded from macro 'XCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ >> arch/powerpc/include/asm/cmpxchg.h:166:2: error: implicit declaration of function 'BUILD_BUG_ON_MSG' [-Werror,-Wimplicit-function-declaration] BUILD_BUG_ON_MSG(1, "Unsupported size for __xchg"); ^ arch/powerpc/include/asm/cmpxchg.h:185:2: error: implicit declaration of function 'BUILD_BUG_ON_MSG' [-Werror,-Wimplicit-function-declaration] BUILD_BUG_ON_MSG(1, "Unsupported size for __xchg_local"); ^ arch/powerpc/include/asm/cmpxchg.h:206:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u8, , PPC_ATOMIC_ENTRY_BARRIER, PPC_ATOMIC_EXIT_BARRIER, "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:207:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u8, _local, , , "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:208:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u8, _acquire, , PPC_ACQUIRE_BARRIER, "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:209:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u8, _relaxed, , , "cc"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:210:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u16, , PPC_ATOMIC_ENTRY_BARRIER, PPC_ATOMIC_EXIT_BARRIER, "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:211:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u16, _local, , , "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:212:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u16, _acquire, , PPC_ACQUIRE_BARRIER, "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:213:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u16, _relaxed, , , "cc"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:407:2: error: implicit declaration of function 'BUILD_BUG_ON_MSG' [-Werror,-Wimplicit-function-declaration] BUILD_BUG_ON_MSG(1, "Unsupported size for __cmpxchg"); ^ arch/powerpc/include/asm/cmpxchg.h:427:2: error: implicit declaration of function 'BUILD_BUG_ON_MSG' [-Werror,-Wimplicit-function-declaration] BUILD_BUG_ON_MSG(1, "Unsupported size for __cmpxchg_local"); ^ arch/powerpc/include/asm/cmpxchg.h:447:2: error: implicit declaration of function 'BUILD_BUG_ON_MSG' [-Werror,-Wimplicit-function-declaration] BUILD_BUG_ON_MSG(1, "Unsupported size for __cmpxchg_relaxed"); ^ arch/powerpc/include/asm/cmpxchg.h:467:2: error: implicit declaration of function 'BUILD_BUG_ON_MSG' [-Werror,-Wimplicit-function-declaration] BUILD_BUG_ON_MSG(1, "Unsupported size for __cmpxchg_acquire"); ^ In file included from kernel/bounds.c:10: In file included from include/linux/page-flags.h:10: In file included from include/linux/bug.h:5: In file included from arch/powerpc/include/asm/bug.h:109: In file included from include/asm-generic/bug.h:7: In file included from include/linux/once.h:6: In file included from include/linux/jump_label.h:249: In file included from include/linux/atomic.h:7: In file included from arch/powerpc/include/asm/atomic.h:11: In file included from arch/powerpc/include/asm/cmpxchg.h:526: In file included from include/asm-generic/cmpxchg-local.h:6: In file included from include/linux/irqflags.h:16: In file included from arch/powerpc/include/asm/irqflags.h:12: In file included from arch/powerpc/include/asm/hw_irq.h:12: In file included from arch/powerpc/include/asm/ptrace.h:264: In file included from include/linux/thread_info.h:59: In file included from arch/powerpc/include/asm/thread_info.h:13: In file included from arch/powerpc/include/asm/page.h:249: >> arch/powerpc/include/asm/page_32.h:48:2: error: implicit declaration of function '__WARN' [-Werror,-Wimplicit-function-declaration] WARN_ON((unsigned long)addr & (L1_CACHE_BYTES - 1)); ^ arch/powerpc/include/asm/bug.h:87:4: note: expanded from macro 'WARN_ON' __WARN(); \ ^ fatal error: too many errors emitted, stopping now [-ferror-limit=] 20 errors generated. -- In file included from kernel/bounds.c:10: In file included from include/linux/page-flags.h:10: In file included from include/linux/bug.h:5: In file included from arch/powerpc/include/asm/bug.h:109: In file included from include/asm-generic/bug.h:7: In file included from include/linux/once.h:6: In file included from include/linux/jump_label.h:249: In file included from include/linux/atomic.h:7: In file included from arch/powerpc/include/asm/atomic.h:11: >> arch/powerpc/include/asm/cmpxchg.h:80:1: error: use of undeclared identifier 'BITS_PER_BYTE' XCHG_GEN(u8, _local, "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:22:11: note: expanded from macro 'XCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:81:1: error: use of undeclared identifier 'BITS_PER_BYTE' XCHG_GEN(u8, _relaxed, "cc"); ^ arch/powerpc/include/asm/cmpxchg.h:22:11: note: expanded from macro 'XCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:82:1: error: use of undeclared identifier 'BITS_PER_BYTE' XCHG_GEN(u16, _local, "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:22:11: note: expanded from macro 'XCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:83:1: error: use of undeclared identifier 'BITS_PER_BYTE' XCHG_GEN(u16, _relaxed, "cc"); ^ arch/powerpc/include/asm/cmpxchg.h:22:11: note: expanded from macro 'XCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ >> arch/powerpc/include/asm/cmpxchg.h:166:2: error: implicit declaration of function 'BUILD_BUG_ON_MSG' [-Werror,-Wimplicit-function-declaration] BUILD_BUG_ON_MSG(1, "Unsupported size for __xchg"); ^ arch/powerpc/include/asm/cmpxchg.h:185:2: error: implicit declaration of function 'BUILD_BUG_ON_MSG' [-Werror,-Wimplicit-function-declaration] BUILD_BUG_ON_MSG(1, "Unsupported size for __xchg_local"); ^ arch/powerpc/include/asm/cmpxchg.h:206:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u8, , PPC_ATOMIC_ENTRY_BARRIER, PPC_ATOMIC_EXIT_BARRIER, "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:207:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u8, _local, , , "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:208:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u8, _acquire, , PPC_ACQUIRE_BARRIER, "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:209:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u8, _relaxed, , , "cc"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:210:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u16, , PPC_ATOMIC_ENTRY_BARRIER, PPC_ATOMIC_EXIT_BARRIER, "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:211:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u16, _local, , , "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:212:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u16, _acquire, , PPC_ACQUIRE_BARRIER, "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:213:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u16, _relaxed, , , "cc"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:407:2: error: implicit declaration of function 'BUILD_BUG_ON_MSG' [-Werror,-Wimplicit-function-declaration] BUILD_BUG_ON_MSG(1, "Unsupported size for __cmpxchg"); ^ arch/powerpc/include/asm/cmpxchg.h:427:2: error: implicit declaration of function 'BUILD_BUG_ON_MSG' [-Werror,-Wimplicit-function-declaration] BUILD_BUG_ON_MSG(1, "Unsupported size for __cmpxchg_local"); ^ arch/powerpc/include/asm/cmpxchg.h:447:2: error: implicit declaration of function 'BUILD_BUG_ON_MSG' [-Werror,-Wimplicit-function-declaration] BUILD_BUG_ON_MSG(1, "Unsupported size for __cmpxchg_relaxed"); ^ arch/powerpc/include/asm/cmpxchg.h:467:2: error: implicit declaration of function 'BUILD_BUG_ON_MSG' [-Werror,-Wimplicit-function-declaration] BUILD_BUG_ON_MSG(1, "Unsupported size for __cmpxchg_acquire"); ^ In file included from kernel/bounds.c:10: In file included from include/linux/page-flags.h:10: In file included from include/linux/bug.h:5: In file included from arch/powerpc/include/asm/bug.h:109: In file included from include/asm-generic/bug.h:7: In file included from include/linux/once.h:6: In file included from include/linux/jump_label.h:249: In file included from include/linux/atomic.h:7: In file included from arch/powerpc/include/asm/atomic.h:11: In file included from arch/powerpc/include/asm/cmpxchg.h:526: In file included from include/asm-generic/cmpxchg-local.h:6: In file included from include/linux/irqflags.h:16: In file included from arch/powerpc/include/asm/irqflags.h:12: In file included from arch/powerpc/include/asm/hw_irq.h:12: In file included from arch/powerpc/include/asm/ptrace.h:264: In file included from include/linux/thread_info.h:59: In file included from arch/powerpc/include/asm/thread_info.h:13: In file included from arch/powerpc/include/asm/page.h:249: >> arch/powerpc/include/asm/page_32.h:48:2: error: implicit declaration of function '__WARN' [-Werror,-Wimplicit-function-declaration] WARN_ON((unsigned long)addr & (L1_CACHE_BYTES - 1)); ^ arch/powerpc/include/asm/bug.h:87:4: note: expanded from macro 'WARN_ON' __WARN(); \ ^ fatal error: too many errors emitted, stopping now [-ferror-limit=] 20 errors generated. make[2]: *** [scripts/Makefile.build:116: kernel/bounds.s] Error 1 make[2]: Target '__build' not remade because of errors. make[1]: *** [Makefile:1235: prepare0] Error 2 make[1]: Target 'modules_prepare' not remade because of errors. make: *** [Makefile:215: __sub-make] Error 2 make: Target 'modules_prepare' not remade because of errors. .. vim +/BITS_PER_BYTE +80 arch/powerpc/include/asm/cmpxchg.h d0563a1297e234 Pan Xinhui 2016-04-27 72 ae3a197e3d0bfe David Howells 2012-03-28 73 /* ae3a197e3d0bfe David Howells 2012-03-28 74 * Atomic exchange ae3a197e3d0bfe David Howells 2012-03-28 75 * 26760fc19a7e66 Boqun Feng 2015-12-15 76 * Changes the memory location '*p' to be val and returns ae3a197e3d0bfe David Howells 2012-03-28 77 * the previous value stored there. ae3a197e3d0bfe David Howells 2012-03-28 78 */ 26760fc19a7e66 Boqun Feng 2015-12-15 79 d0563a1297e234 Pan Xinhui 2016-04-27 @80 XCHG_GEN(u8, _local, "memory"); d0563a1297e234 Pan Xinhui 2016-04-27 81 XCHG_GEN(u8, _relaxed, "cc"); d0563a1297e234 Pan Xinhui 2016-04-27 82 XCHG_GEN(u16, _local, "memory"); d0563a1297e234 Pan Xinhui 2016-04-27 83 XCHG_GEN(u16, _relaxed, "cc"); d0563a1297e234 Pan Xinhui 2016-04-27 84 ae3a197e3d0bfe David Howells 2012-03-28 85 static __always_inline unsigned long 26760fc19a7e66 Boqun Feng 2015-12-15 86 __xchg_u32_local(volatile void *p, unsigned long val) ae3a197e3d0bfe David Howells 2012-03-28 87 { ae3a197e3d0bfe David Howells 2012-03-28 88 unsigned long prev; ae3a197e3d0bfe David Howells 2012-03-28 89 ae3a197e3d0bfe David Howells 2012-03-28 90 __asm__ __volatile__( ae3a197e3d0bfe David Howells 2012-03-28 91 "1: lwarx %0,0,%2 \n" ae3a197e3d0bfe David Howells 2012-03-28 92 " stwcx. %3,0,%2 \n\ ae3a197e3d0bfe David Howells 2012-03-28 93 bne- 1b" ae3a197e3d0bfe David Howells 2012-03-28 94 : "=&r" (prev), "+m" (*(volatile unsigned int *)p) ae3a197e3d0bfe David Howells 2012-03-28 95 : "r" (p), "r" (val) ae3a197e3d0bfe David Howells 2012-03-28 96 : "cc", "memory"); ae3a197e3d0bfe David Howells 2012-03-28 97 ae3a197e3d0bfe David Howells 2012-03-28 98 return prev; ae3a197e3d0bfe David Howells 2012-03-28 99 } ae3a197e3d0bfe David Howells 2012-03-28 100 ae3a197e3d0bfe David Howells 2012-03-28 101 static __always_inline unsigned long 26760fc19a7e66 Boqun Feng 2015-12-15 102 __xchg_u32_relaxed(u32 *p, unsigned long val) ae3a197e3d0bfe David Howells 2012-03-28 103 { ae3a197e3d0bfe David Howells 2012-03-28 104 unsigned long prev; ae3a197e3d0bfe David Howells 2012-03-28 105 ae3a197e3d0bfe David Howells 2012-03-28 106 __asm__ __volatile__( ae3a197e3d0bfe David Howells 2012-03-28 107 "1: lwarx %0,0,%2\n" 26760fc19a7e66 Boqun Feng 2015-12-15 108 " stwcx. %3,0,%2\n" 26760fc19a7e66 Boqun Feng 2015-12-15 109 " bne- 1b" 26760fc19a7e66 Boqun Feng 2015-12-15 110 : "=&r" (prev), "+m" (*p) ae3a197e3d0bfe David Howells 2012-03-28 111 : "r" (p), "r" (val) 26760fc19a7e66 Boqun Feng 2015-12-15 112 : "cc"); ae3a197e3d0bfe David Howells 2012-03-28 113 ae3a197e3d0bfe David Howells 2012-03-28 114 return prev; ae3a197e3d0bfe David Howells 2012-03-28 115 } ae3a197e3d0bfe David Howells 2012-03-28 116 ae3a197e3d0bfe David Howells 2012-03-28 117 #ifdef CONFIG_PPC64 ae3a197e3d0bfe David Howells 2012-03-28 118 static __always_inline unsigned long 26760fc19a7e66 Boqun Feng 2015-12-15 119 __xchg_u64_local(volatile void *p, unsigned long val) ae3a197e3d0bfe David Howells 2012-03-28 120 { ae3a197e3d0bfe David Howells 2012-03-28 121 unsigned long prev; ae3a197e3d0bfe David Howells 2012-03-28 122 ae3a197e3d0bfe David Howells 2012-03-28 123 __asm__ __volatile__( ae3a197e3d0bfe David Howells 2012-03-28 124 "1: ldarx %0,0,%2 \n" ae3a197e3d0bfe David Howells 2012-03-28 125 " stdcx. %3,0,%2 \n\ ae3a197e3d0bfe David Howells 2012-03-28 126 bne- 1b" ae3a197e3d0bfe David Howells 2012-03-28 127 : "=&r" (prev), "+m" (*(volatile unsigned long *)p) ae3a197e3d0bfe David Howells 2012-03-28 128 : "r" (p), "r" (val) ae3a197e3d0bfe David Howells 2012-03-28 129 : "cc", "memory"); ae3a197e3d0bfe David Howells 2012-03-28 130 ae3a197e3d0bfe David Howells 2012-03-28 131 return prev; ae3a197e3d0bfe David Howells 2012-03-28 132 } ae3a197e3d0bfe David Howells 2012-03-28 133 ae3a197e3d0bfe David Howells 2012-03-28 134 static __always_inline unsigned long 26760fc19a7e66 Boqun Feng 2015-12-15 135 __xchg_u64_relaxed(u64 *p, unsigned long val) ae3a197e3d0bfe David Howells 2012-03-28 136 { ae3a197e3d0bfe David Howells 2012-03-28 137 unsigned long prev; ae3a197e3d0bfe David Howells 2012-03-28 138 ae3a197e3d0bfe David Howells 2012-03-28 139 __asm__ __volatile__( ae3a197e3d0bfe David Howells 2012-03-28 140 "1: ldarx %0,0,%2\n" 26760fc19a7e66 Boqun Feng 2015-12-15 141 " stdcx. %3,0,%2\n" 26760fc19a7e66 Boqun Feng 2015-12-15 142 " bne- 1b" 26760fc19a7e66 Boqun Feng 2015-12-15 143 : "=&r" (prev), "+m" (*p) ae3a197e3d0bfe David Howells 2012-03-28 144 : "r" (p), "r" (val) 26760fc19a7e66 Boqun Feng 2015-12-15 145 : "cc"); ae3a197e3d0bfe David Howells 2012-03-28 146 ae3a197e3d0bfe David Howells 2012-03-28 147 return prev; ae3a197e3d0bfe David Howells 2012-03-28 148 } ae3a197e3d0bfe David Howells 2012-03-28 149 #endif ae3a197e3d0bfe David Howells 2012-03-28 150 ae3a197e3d0bfe David Howells 2012-03-28 151 static __always_inline unsigned long d0563a1297e234 Pan Xinhui 2016-04-27 152 __xchg_local(void *ptr, unsigned long x, unsigned int size) ae3a197e3d0bfe David Howells 2012-03-28 153 { ae3a197e3d0bfe David Howells 2012-03-28 154 switch (size) { d0563a1297e234 Pan Xinhui 2016-04-27 155 case 1: d0563a1297e234 Pan Xinhui 2016-04-27 156 return __xchg_u8_local(ptr, x); d0563a1297e234 Pan Xinhui 2016-04-27 157 case 2: d0563a1297e234 Pan Xinhui 2016-04-27 158 return __xchg_u16_local(ptr, x); ae3a197e3d0bfe David Howells 2012-03-28 159 case 4: 26760fc19a7e66 Boqun Feng 2015-12-15 160 return __xchg_u32_local(ptr, x); ae3a197e3d0bfe David Howells 2012-03-28 161 #ifdef CONFIG_PPC64 ae3a197e3d0bfe David Howells 2012-03-28 162 case 8: 26760fc19a7e66 Boqun Feng 2015-12-15 163 return __xchg_u64_local(ptr, x); ae3a197e3d0bfe David Howells 2012-03-28 164 #endif ae3a197e3d0bfe David Howells 2012-03-28 165 } 10d8b1480e6966 pan xinhui 2016-02-23 @166 BUILD_BUG_ON_MSG(1, "Unsupported size for __xchg"); ae3a197e3d0bfe David Howells 2012-03-28 167 return x; ae3a197e3d0bfe David Howells 2012-03-28 168 } ae3a197e3d0bfe David Howells 2012-03-28 169 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org [-- Attachment #2: .config.gz --] [-- Type: application/gzip, Size: 30148 bytes --]
WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com> To: kbuild-all@lists.01.org Subject: Re: [PATCH net-next 2/3] once: replace uses of __section(".data.once") with DO_ONCE_LITE(_IF)? Date: Fri, 23 Apr 2021 06:28:52 +0800 [thread overview] Message-ID: <202104230602.N3ksyBSy-lkp@intel.com> (raw) In-Reply-To: <20210422194738.2175542-3-tannerlove.kernel@gmail.com> [-- Attachment #1: Type: text/plain, Size: 28903 bytes --] Hi Tanner, Thank you for the patch! Yet something to improve: [auto build test ERROR on net-next/master] url: https://github.com/0day-ci/linux/commits/Tanner-Love/net-update-netdev_rx_csum_fault-print-dump-only-once/20210423-034958 base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git 5d869070569a23aa909c6e7e9d010fc438a492ef config: powerpc-randconfig-r011-20210421 (attached as .config) compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project f5446b769a7929806f72256fccd4826d66502e59) reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # install powerpc cross compiling tool for clang build # apt-get install binutils-powerpc-linux-gnu # https://github.com/0day-ci/linux/commit/eaeb33f0f85f70fc4e5fbae1e2344e9c6867c840 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Tanner-Love/net-update-netdev_rx_csum_fault-print-dump-only-once/20210423-034958 git checkout eaeb33f0f85f70fc4e5fbae1e2344e9c6867c840 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 ARCH=powerpc If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com> All errors (new ones prefixed by >>): In file included from kernel/bounds.c:10: In file included from include/linux/page-flags.h:10: In file included from include/linux/bug.h:5: In file included from arch/powerpc/include/asm/bug.h:109: In file included from include/asm-generic/bug.h:7: In file included from include/linux/once.h:6: In file included from include/linux/jump_label.h:249: In file included from include/linux/atomic.h:7: In file included from arch/powerpc/include/asm/atomic.h:11: >> arch/powerpc/include/asm/cmpxchg.h:80:1: error: use of undeclared identifier 'BITS_PER_BYTE' XCHG_GEN(u8, _local, "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:22:11: note: expanded from macro 'XCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:81:1: error: use of undeclared identifier 'BITS_PER_BYTE' XCHG_GEN(u8, _relaxed, "cc"); ^ arch/powerpc/include/asm/cmpxchg.h:22:11: note: expanded from macro 'XCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:82:1: error: use of undeclared identifier 'BITS_PER_BYTE' XCHG_GEN(u16, _local, "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:22:11: note: expanded from macro 'XCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:83:1: error: use of undeclared identifier 'BITS_PER_BYTE' XCHG_GEN(u16, _relaxed, "cc"); ^ arch/powerpc/include/asm/cmpxchg.h:22:11: note: expanded from macro 'XCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ >> arch/powerpc/include/asm/cmpxchg.h:166:2: error: implicit declaration of function 'BUILD_BUG_ON_MSG' [-Werror,-Wimplicit-function-declaration] BUILD_BUG_ON_MSG(1, "Unsupported size for __xchg"); ^ arch/powerpc/include/asm/cmpxchg.h:185:2: error: implicit declaration of function 'BUILD_BUG_ON_MSG' [-Werror,-Wimplicit-function-declaration] BUILD_BUG_ON_MSG(1, "Unsupported size for __xchg_local"); ^ arch/powerpc/include/asm/cmpxchg.h:206:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u8, , PPC_ATOMIC_ENTRY_BARRIER, PPC_ATOMIC_EXIT_BARRIER, "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:207:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u8, _local, , , "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:208:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u8, _acquire, , PPC_ACQUIRE_BARRIER, "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:209:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u8, _relaxed, , , "cc"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:210:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u16, , PPC_ATOMIC_ENTRY_BARRIER, PPC_ATOMIC_EXIT_BARRIER, "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:211:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u16, _local, , , "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:212:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u16, _acquire, , PPC_ACQUIRE_BARRIER, "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:213:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u16, _relaxed, , , "cc"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:407:2: error: implicit declaration of function 'BUILD_BUG_ON_MSG' [-Werror,-Wimplicit-function-declaration] BUILD_BUG_ON_MSG(1, "Unsupported size for __cmpxchg"); ^ arch/powerpc/include/asm/cmpxchg.h:427:2: error: implicit declaration of function 'BUILD_BUG_ON_MSG' [-Werror,-Wimplicit-function-declaration] BUILD_BUG_ON_MSG(1, "Unsupported size for __cmpxchg_local"); ^ arch/powerpc/include/asm/cmpxchg.h:447:2: error: implicit declaration of function 'BUILD_BUG_ON_MSG' [-Werror,-Wimplicit-function-declaration] BUILD_BUG_ON_MSG(1, "Unsupported size for __cmpxchg_relaxed"); ^ arch/powerpc/include/asm/cmpxchg.h:467:2: error: implicit declaration of function 'BUILD_BUG_ON_MSG' [-Werror,-Wimplicit-function-declaration] BUILD_BUG_ON_MSG(1, "Unsupported size for __cmpxchg_acquire"); ^ In file included from kernel/bounds.c:10: In file included from include/linux/page-flags.h:10: In file included from include/linux/bug.h:5: In file included from arch/powerpc/include/asm/bug.h:109: In file included from include/asm-generic/bug.h:7: In file included from include/linux/once.h:6: In file included from include/linux/jump_label.h:249: In file included from include/linux/atomic.h:7: In file included from arch/powerpc/include/asm/atomic.h:11: In file included from arch/powerpc/include/asm/cmpxchg.h:526: In file included from include/asm-generic/cmpxchg-local.h:6: In file included from include/linux/irqflags.h:16: In file included from arch/powerpc/include/asm/irqflags.h:12: In file included from arch/powerpc/include/asm/hw_irq.h:12: In file included from arch/powerpc/include/asm/ptrace.h:264: In file included from include/linux/thread_info.h:59: In file included from arch/powerpc/include/asm/thread_info.h:13: In file included from arch/powerpc/include/asm/page.h:249: >> arch/powerpc/include/asm/page_32.h:48:2: error: implicit declaration of function '__WARN' [-Werror,-Wimplicit-function-declaration] WARN_ON((unsigned long)addr & (L1_CACHE_BYTES - 1)); ^ arch/powerpc/include/asm/bug.h:87:4: note: expanded from macro 'WARN_ON' __WARN(); \ ^ fatal error: too many errors emitted, stopping now [-ferror-limit=] 20 errors generated. -- In file included from kernel/bounds.c:10: In file included from include/linux/page-flags.h:10: In file included from include/linux/bug.h:5: In file included from arch/powerpc/include/asm/bug.h:109: In file included from include/asm-generic/bug.h:7: In file included from include/linux/once.h:6: In file included from include/linux/jump_label.h:249: In file included from include/linux/atomic.h:7: In file included from arch/powerpc/include/asm/atomic.h:11: >> arch/powerpc/include/asm/cmpxchg.h:80:1: error: use of undeclared identifier 'BITS_PER_BYTE' XCHG_GEN(u8, _local, "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:22:11: note: expanded from macro 'XCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:81:1: error: use of undeclared identifier 'BITS_PER_BYTE' XCHG_GEN(u8, _relaxed, "cc"); ^ arch/powerpc/include/asm/cmpxchg.h:22:11: note: expanded from macro 'XCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:82:1: error: use of undeclared identifier 'BITS_PER_BYTE' XCHG_GEN(u16, _local, "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:22:11: note: expanded from macro 'XCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:83:1: error: use of undeclared identifier 'BITS_PER_BYTE' XCHG_GEN(u16, _relaxed, "cc"); ^ arch/powerpc/include/asm/cmpxchg.h:22:11: note: expanded from macro 'XCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ >> arch/powerpc/include/asm/cmpxchg.h:166:2: error: implicit declaration of function 'BUILD_BUG_ON_MSG' [-Werror,-Wimplicit-function-declaration] BUILD_BUG_ON_MSG(1, "Unsupported size for __xchg"); ^ arch/powerpc/include/asm/cmpxchg.h:185:2: error: implicit declaration of function 'BUILD_BUG_ON_MSG' [-Werror,-Wimplicit-function-declaration] BUILD_BUG_ON_MSG(1, "Unsupported size for __xchg_local"); ^ arch/powerpc/include/asm/cmpxchg.h:206:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u8, , PPC_ATOMIC_ENTRY_BARRIER, PPC_ATOMIC_EXIT_BARRIER, "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:207:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u8, _local, , , "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:208:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u8, _acquire, , PPC_ACQUIRE_BARRIER, "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:209:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u8, _relaxed, , , "cc"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:210:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u16, , PPC_ATOMIC_ENTRY_BARRIER, PPC_ATOMIC_EXIT_BARRIER, "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:211:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u16, _local, , , "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:212:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u16, _acquire, , PPC_ACQUIRE_BARRIER, "memory"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:213:1: error: use of undeclared identifier 'BITS_PER_BYTE' CMPXCHG_GEN(u16, _relaxed, , , "cc"); ^ arch/powerpc/include/asm/cmpxchg.h:47:11: note: expanded from macro 'CMPXCHG_GEN' bitoff = BITOFF_CAL(sizeof(type), off); \ ^ arch/powerpc/include/asm/cmpxchg.h:11:61: note: expanded from macro 'BITOFF_CAL' #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE) ^ arch/powerpc/include/asm/cmpxchg.h:407:2: error: implicit declaration of function 'BUILD_BUG_ON_MSG' [-Werror,-Wimplicit-function-declaration] BUILD_BUG_ON_MSG(1, "Unsupported size for __cmpxchg"); ^ arch/powerpc/include/asm/cmpxchg.h:427:2: error: implicit declaration of function 'BUILD_BUG_ON_MSG' [-Werror,-Wimplicit-function-declaration] BUILD_BUG_ON_MSG(1, "Unsupported size for __cmpxchg_local"); ^ arch/powerpc/include/asm/cmpxchg.h:447:2: error: implicit declaration of function 'BUILD_BUG_ON_MSG' [-Werror,-Wimplicit-function-declaration] BUILD_BUG_ON_MSG(1, "Unsupported size for __cmpxchg_relaxed"); ^ arch/powerpc/include/asm/cmpxchg.h:467:2: error: implicit declaration of function 'BUILD_BUG_ON_MSG' [-Werror,-Wimplicit-function-declaration] BUILD_BUG_ON_MSG(1, "Unsupported size for __cmpxchg_acquire"); ^ In file included from kernel/bounds.c:10: In file included from include/linux/page-flags.h:10: In file included from include/linux/bug.h:5: In file included from arch/powerpc/include/asm/bug.h:109: In file included from include/asm-generic/bug.h:7: In file included from include/linux/once.h:6: In file included from include/linux/jump_label.h:249: In file included from include/linux/atomic.h:7: In file included from arch/powerpc/include/asm/atomic.h:11: In file included from arch/powerpc/include/asm/cmpxchg.h:526: In file included from include/asm-generic/cmpxchg-local.h:6: In file included from include/linux/irqflags.h:16: In file included from arch/powerpc/include/asm/irqflags.h:12: In file included from arch/powerpc/include/asm/hw_irq.h:12: In file included from arch/powerpc/include/asm/ptrace.h:264: In file included from include/linux/thread_info.h:59: In file included from arch/powerpc/include/asm/thread_info.h:13: In file included from arch/powerpc/include/asm/page.h:249: >> arch/powerpc/include/asm/page_32.h:48:2: error: implicit declaration of function '__WARN' [-Werror,-Wimplicit-function-declaration] WARN_ON((unsigned long)addr & (L1_CACHE_BYTES - 1)); ^ arch/powerpc/include/asm/bug.h:87:4: note: expanded from macro 'WARN_ON' __WARN(); \ ^ fatal error: too many errors emitted, stopping now [-ferror-limit=] 20 errors generated. make[2]: *** [scripts/Makefile.build:116: kernel/bounds.s] Error 1 make[2]: Target '__build' not remade because of errors. make[1]: *** [Makefile:1235: prepare0] Error 2 make[1]: Target 'modules_prepare' not remade because of errors. make: *** [Makefile:215: __sub-make] Error 2 make: Target 'modules_prepare' not remade because of errors. .. vim +/BITS_PER_BYTE +80 arch/powerpc/include/asm/cmpxchg.h d0563a1297e234 Pan Xinhui 2016-04-27 72 ae3a197e3d0bfe David Howells 2012-03-28 73 /* ae3a197e3d0bfe David Howells 2012-03-28 74 * Atomic exchange ae3a197e3d0bfe David Howells 2012-03-28 75 * 26760fc19a7e66 Boqun Feng 2015-12-15 76 * Changes the memory location '*p' to be val and returns ae3a197e3d0bfe David Howells 2012-03-28 77 * the previous value stored there. ae3a197e3d0bfe David Howells 2012-03-28 78 */ 26760fc19a7e66 Boqun Feng 2015-12-15 79 d0563a1297e234 Pan Xinhui 2016-04-27 @80 XCHG_GEN(u8, _local, "memory"); d0563a1297e234 Pan Xinhui 2016-04-27 81 XCHG_GEN(u8, _relaxed, "cc"); d0563a1297e234 Pan Xinhui 2016-04-27 82 XCHG_GEN(u16, _local, "memory"); d0563a1297e234 Pan Xinhui 2016-04-27 83 XCHG_GEN(u16, _relaxed, "cc"); d0563a1297e234 Pan Xinhui 2016-04-27 84 ae3a197e3d0bfe David Howells 2012-03-28 85 static __always_inline unsigned long 26760fc19a7e66 Boqun Feng 2015-12-15 86 __xchg_u32_local(volatile void *p, unsigned long val) ae3a197e3d0bfe David Howells 2012-03-28 87 { ae3a197e3d0bfe David Howells 2012-03-28 88 unsigned long prev; ae3a197e3d0bfe David Howells 2012-03-28 89 ae3a197e3d0bfe David Howells 2012-03-28 90 __asm__ __volatile__( ae3a197e3d0bfe David Howells 2012-03-28 91 "1: lwarx %0,0,%2 \n" ae3a197e3d0bfe David Howells 2012-03-28 92 " stwcx. %3,0,%2 \n\ ae3a197e3d0bfe David Howells 2012-03-28 93 bne- 1b" ae3a197e3d0bfe David Howells 2012-03-28 94 : "=&r" (prev), "+m" (*(volatile unsigned int *)p) ae3a197e3d0bfe David Howells 2012-03-28 95 : "r" (p), "r" (val) ae3a197e3d0bfe David Howells 2012-03-28 96 : "cc", "memory"); ae3a197e3d0bfe David Howells 2012-03-28 97 ae3a197e3d0bfe David Howells 2012-03-28 98 return prev; ae3a197e3d0bfe David Howells 2012-03-28 99 } ae3a197e3d0bfe David Howells 2012-03-28 100 ae3a197e3d0bfe David Howells 2012-03-28 101 static __always_inline unsigned long 26760fc19a7e66 Boqun Feng 2015-12-15 102 __xchg_u32_relaxed(u32 *p, unsigned long val) ae3a197e3d0bfe David Howells 2012-03-28 103 { ae3a197e3d0bfe David Howells 2012-03-28 104 unsigned long prev; ae3a197e3d0bfe David Howells 2012-03-28 105 ae3a197e3d0bfe David Howells 2012-03-28 106 __asm__ __volatile__( ae3a197e3d0bfe David Howells 2012-03-28 107 "1: lwarx %0,0,%2\n" 26760fc19a7e66 Boqun Feng 2015-12-15 108 " stwcx. %3,0,%2\n" 26760fc19a7e66 Boqun Feng 2015-12-15 109 " bne- 1b" 26760fc19a7e66 Boqun Feng 2015-12-15 110 : "=&r" (prev), "+m" (*p) ae3a197e3d0bfe David Howells 2012-03-28 111 : "r" (p), "r" (val) 26760fc19a7e66 Boqun Feng 2015-12-15 112 : "cc"); ae3a197e3d0bfe David Howells 2012-03-28 113 ae3a197e3d0bfe David Howells 2012-03-28 114 return prev; ae3a197e3d0bfe David Howells 2012-03-28 115 } ae3a197e3d0bfe David Howells 2012-03-28 116 ae3a197e3d0bfe David Howells 2012-03-28 117 #ifdef CONFIG_PPC64 ae3a197e3d0bfe David Howells 2012-03-28 118 static __always_inline unsigned long 26760fc19a7e66 Boqun Feng 2015-12-15 119 __xchg_u64_local(volatile void *p, unsigned long val) ae3a197e3d0bfe David Howells 2012-03-28 120 { ae3a197e3d0bfe David Howells 2012-03-28 121 unsigned long prev; ae3a197e3d0bfe David Howells 2012-03-28 122 ae3a197e3d0bfe David Howells 2012-03-28 123 __asm__ __volatile__( ae3a197e3d0bfe David Howells 2012-03-28 124 "1: ldarx %0,0,%2 \n" ae3a197e3d0bfe David Howells 2012-03-28 125 " stdcx. %3,0,%2 \n\ ae3a197e3d0bfe David Howells 2012-03-28 126 bne- 1b" ae3a197e3d0bfe David Howells 2012-03-28 127 : "=&r" (prev), "+m" (*(volatile unsigned long *)p) ae3a197e3d0bfe David Howells 2012-03-28 128 : "r" (p), "r" (val) ae3a197e3d0bfe David Howells 2012-03-28 129 : "cc", "memory"); ae3a197e3d0bfe David Howells 2012-03-28 130 ae3a197e3d0bfe David Howells 2012-03-28 131 return prev; ae3a197e3d0bfe David Howells 2012-03-28 132 } ae3a197e3d0bfe David Howells 2012-03-28 133 ae3a197e3d0bfe David Howells 2012-03-28 134 static __always_inline unsigned long 26760fc19a7e66 Boqun Feng 2015-12-15 135 __xchg_u64_relaxed(u64 *p, unsigned long val) ae3a197e3d0bfe David Howells 2012-03-28 136 { ae3a197e3d0bfe David Howells 2012-03-28 137 unsigned long prev; ae3a197e3d0bfe David Howells 2012-03-28 138 ae3a197e3d0bfe David Howells 2012-03-28 139 __asm__ __volatile__( ae3a197e3d0bfe David Howells 2012-03-28 140 "1: ldarx %0,0,%2\n" 26760fc19a7e66 Boqun Feng 2015-12-15 141 " stdcx. %3,0,%2\n" 26760fc19a7e66 Boqun Feng 2015-12-15 142 " bne- 1b" 26760fc19a7e66 Boqun Feng 2015-12-15 143 : "=&r" (prev), "+m" (*p) ae3a197e3d0bfe David Howells 2012-03-28 144 : "r" (p), "r" (val) 26760fc19a7e66 Boqun Feng 2015-12-15 145 : "cc"); ae3a197e3d0bfe David Howells 2012-03-28 146 ae3a197e3d0bfe David Howells 2012-03-28 147 return prev; ae3a197e3d0bfe David Howells 2012-03-28 148 } ae3a197e3d0bfe David Howells 2012-03-28 149 #endif ae3a197e3d0bfe David Howells 2012-03-28 150 ae3a197e3d0bfe David Howells 2012-03-28 151 static __always_inline unsigned long d0563a1297e234 Pan Xinhui 2016-04-27 152 __xchg_local(void *ptr, unsigned long x, unsigned int size) ae3a197e3d0bfe David Howells 2012-03-28 153 { ae3a197e3d0bfe David Howells 2012-03-28 154 switch (size) { d0563a1297e234 Pan Xinhui 2016-04-27 155 case 1: d0563a1297e234 Pan Xinhui 2016-04-27 156 return __xchg_u8_local(ptr, x); d0563a1297e234 Pan Xinhui 2016-04-27 157 case 2: d0563a1297e234 Pan Xinhui 2016-04-27 158 return __xchg_u16_local(ptr, x); ae3a197e3d0bfe David Howells 2012-03-28 159 case 4: 26760fc19a7e66 Boqun Feng 2015-12-15 160 return __xchg_u32_local(ptr, x); ae3a197e3d0bfe David Howells 2012-03-28 161 #ifdef CONFIG_PPC64 ae3a197e3d0bfe David Howells 2012-03-28 162 case 8: 26760fc19a7e66 Boqun Feng 2015-12-15 163 return __xchg_u64_local(ptr, x); ae3a197e3d0bfe David Howells 2012-03-28 164 #endif ae3a197e3d0bfe David Howells 2012-03-28 165 } 10d8b1480e6966 pan xinhui 2016-02-23 @166 BUILD_BUG_ON_MSG(1, "Unsupported size for __xchg"); ae3a197e3d0bfe David Howells 2012-03-28 167 return x; ae3a197e3d0bfe David Howells 2012-03-28 168 } ae3a197e3d0bfe David Howells 2012-03-28 169 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org [-- Attachment #2: config.gz --] [-- Type: application/gzip, Size: 30148 bytes --]
next prev parent reply other threads:[~2021-04-22 22:29 UTC|newest] Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-04-22 19:47 [PATCH net-next 0/3] net: update netdev_rx_csum_fault() print dump only once Tanner Love 2021-04-22 19:47 ` [PATCH net-next 1/3] once: implement DO_ONCE_LITE for non-fast-path "do once" functionality Tanner Love 2021-04-22 19:47 ` [PATCH net-next 2/3] once: replace uses of __section(".data.once") with DO_ONCE_LITE(_IF)? Tanner Love 2021-04-22 21:23 ` kernel test robot 2021-04-22 21:23 ` kernel test robot 2021-04-22 22:28 ` kernel test robot [this message] 2021-04-22 22:28 ` kernel test robot 2021-04-22 22:28 ` kernel test robot 2021-04-22 22:28 ` kernel test robot 2021-04-22 19:47 ` [PATCH net-next 3/3] net: update netdev_rx_csum_fault() print dump only once Tanner Love 2021-04-23 0:42 ` Yunsheng Lin
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=202104230602.N3ksyBSy-lkp@intel.com \ --to=lkp@intel.com \ --cc=clang-built-linux@googlegroups.com \ --cc=davem@davemloft.net \ --cc=edumazet@google.com \ --cc=kbuild-all@lists.01.org \ --cc=maheshb@google.com \ --cc=netdev@vger.kernel.org \ --cc=tannerlove.kernel@gmail.com \ --cc=tannerlove@google.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.