Hi Chen, [auto build test WARNING on linus/master] [also build test WARNING on v4.8-rc3 next-20160825] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] [Suggest to use git(>=2.9.0) format-patch --base= (or --base=auto for convenience) to record what (public, well-known) commit your patch series was built on] [Check https://git-scm.com/docs/git-format-patch for more information] url: https://github.com/0day-ci/linux/commits/chengang-emindsoft-com-cn/arch-all-include-asm-bitops-Use-bool-instead-of-int-for-all-bit-test-functions/20160828-134633 config: arm-at91_dt_defconfig (attached as .config) compiler: arm-linux-gnueabi-gcc (Debian 5.4.0-6) 5.4.0 20160609 reproduce: wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # save the attached .config to linux build tree make.cross ARCH=arm All warnings (new ones prefixed by >>): In file included from include/linux/bitops.h:36:0, from include/linux/kernel.h:10, from include/linux/list.h:8, from include/linux/module.h:9, from net/sunrpc/clnt.c:21: include/linux/sunrpc/xprt.h: In function 'xprt_set_bound': >> arch/arm/include/asm/bitops.h:180:55: warning: value computed is not used [-Wunused-value] (__builtin_constant_p(nr) ? ____atomic_##name(nr, p) : _##name(nr,p)) ^ >> arch/arm/include/asm/bitops.h:191:33: note: in expansion of macro 'ATOMIC_BITOP' #define test_and_set_bit(nr,p) ATOMIC_BITOP(test_and_set_bit,nr,p) ^ include/linux/sunrpc/xprt.h:433:2: note: in expansion of macro 'test_and_set_bit' test_and_set_bit(XPRT_BOUND, &xprt->state); ^ vim +180 arch/arm/include/asm/bitops.h ^1da177e include/asm-arm/bitops.h Linus Torvalds 2005-04-16 174 e7ec0293 include/asm-arm/bitops.h Russell King 2005-07-28 175 #ifndef CONFIG_SMP ^1da177e include/asm-arm/bitops.h Linus Torvalds 2005-04-16 176 /* ^1da177e include/asm-arm/bitops.h Linus Torvalds 2005-04-16 177 * The __* form of bitops are non-atomic and may be reordered. ^1da177e include/asm-arm/bitops.h Linus Torvalds 2005-04-16 178 */ 6323f0cc arch/arm/include/asm/bitops.h Russell King 2011-01-16 179 #define ATOMIC_BITOP(name,nr,p) \ 6323f0cc arch/arm/include/asm/bitops.h Russell King 2011-01-16 @180 (__builtin_constant_p(nr) ? ____atomic_##name(nr, p) : _##name(nr,p)) e7ec0293 include/asm-arm/bitops.h Russell King 2005-07-28 181 #else 6323f0cc arch/arm/include/asm/bitops.h Russell King 2011-01-16 182 #define ATOMIC_BITOP(name,nr,p) _##name(nr,p) e7ec0293 include/asm-arm/bitops.h Russell King 2005-07-28 183 #endif ^1da177e include/asm-arm/bitops.h Linus Torvalds 2005-04-16 184 6323f0cc arch/arm/include/asm/bitops.h Russell King 2011-01-16 185 /* 6323f0cc arch/arm/include/asm/bitops.h Russell King 2011-01-16 186 * Native endian atomic definitions. 6323f0cc arch/arm/include/asm/bitops.h Russell King 2011-01-16 187 */ 6323f0cc arch/arm/include/asm/bitops.h Russell King 2011-01-16 188 #define set_bit(nr,p) ATOMIC_BITOP(set_bit,nr,p) 6323f0cc arch/arm/include/asm/bitops.h Russell King 2011-01-16 189 #define clear_bit(nr,p) ATOMIC_BITOP(clear_bit,nr,p) 6323f0cc arch/arm/include/asm/bitops.h Russell King 2011-01-16 190 #define change_bit(nr,p) ATOMIC_BITOP(change_bit,nr,p) 6323f0cc arch/arm/include/asm/bitops.h Russell King 2011-01-16 @191 #define test_and_set_bit(nr,p) ATOMIC_BITOP(test_and_set_bit,nr,p) 6323f0cc arch/arm/include/asm/bitops.h Russell King 2011-01-16 192 #define test_and_clear_bit(nr,p) ATOMIC_BITOP(test_and_clear_bit,nr,p) 6323f0cc arch/arm/include/asm/bitops.h Russell King 2011-01-16 193 #define test_and_change_bit(nr,p) ATOMIC_BITOP(test_and_change_bit,nr,p) ^1da177e include/asm-arm/bitops.h Linus Torvalds 2005-04-16 194 :::::: The code at line 180 was first introduced by commit :::::: 6323f0ccedf756dfe5f46549cec69a2d6d97937b ARM: bitops: switch set/clear/change bitops to use ldrex/strex :::::: TO: Russell King :::::: CC: Russell King --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation