Hi Mark,

I love your patch! Yet something to improve:

[auto build test ERROR on linux/master]
[also build test ERROR on linus/master next-20210701]
[cannot apply to asm-generic/master sparc-next/master v5.13]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    
https://github.com/0day-ci/linux/commits/Mark-Rutland/HACK-disable-instrumentation-of-xchg-cmpxchg/20210706-035817
base:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
c54b245d011855ea91c5beff07f1db74143ce614
config: xtensa-randconfig-r035-20210705 (attached as .config)
compiler: xtensa-linux-gcc (GCC) 9.3.0
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
        # 
https://github.com/0day-ci/linux/commit/077d46116045ef95775b35f74f003921cb21c955
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review 
Mark-Rutland/HACK-disable-instrumentation-of-xchg-cmpxchg/20210706-035817
        git checkout 077d46116045ef95775b35f74f003921cb21c955
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross 
ARCH=xtensa 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <l...@intel.com>

All errors (new ones prefixed by >>):

   In file included from include/linux/init.h:5,
                    from lib/atomic64_test.c:10:
   lib/atomic64_test.c: In function 'test_atomic':
>> lib/atomic64_test.c:75:9: error: implicit declaration of function 
>> 'atomic_arch_xchg'; did you mean 'atomic_long_xchg'? 
>> [-Werror=implicit-function-declaration]
      75 |  BUG_ON(atomic##bit##_##op(&v, ##args) != ret);  \
         |         ^~~~~~
   include/linux/compiler.h:58:52: note: in definition of macro '__trace_if_var'
      58 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : 
__trace_if_value(cond))
         |                                                    ^~~~
   include/asm-generic/bug.h:183:32: note: in expansion of macro 'if'
     183 | #define BUG_ON(condition) do { if (unlikely(condition)) BUG(); } 
while (0)
         |                                ^~
   include/linux/compiler.h:48:24: note: in expansion of macro 
'__branch_check__'
      48 | #  define unlikely(x) (__branch_check__(x, 0, 
__builtin_constant_p(x)))
         |                        ^~~~~~~~~~~~~~~~
   include/asm-generic/bug.h:183:36: note: in expansion of macro 'unlikely'
     183 | #define BUG_ON(condition) do { if (unlikely(condition)) BUG(); } 
while (0)
         |                                    ^~~~~~~~
   lib/atomic64_test.c:75:2: note: in expansion of macro 'BUG_ON'
      75 |  BUG_ON(atomic##bit##_##op(&v, ##args) != ret);  \
         |  ^~~~~~
   lib/atomic64_test.c:38:2: note: in expansion of macro 'TEST_ARGS'
      38 |  test(bit, op, ##args);  \
         |  ^~~~
   lib/atomic64_test.c:81:2: note: in expansion of macro 'FAMILY_TEST'
      81 |  FAMILY_TEST(TEST_ARGS, bit, xchg, init, init, new, new); \
         |  ^~~~~~~~~~~
   lib/atomic64_test.c:141:2: note: in expansion of macro 'XCHG_FAMILY_TEST'
     141 |  XCHG_FAMILY_TEST(, v0, v1);
         |  ^~~~~~~~~~~~~~~~
>> lib/atomic64_test.c:75:9: error: implicit declaration of function 
>> 'atomic_arch_cmpxchg'; did you mean 'atomic_try_cmpxchg'? 
>> [-Werror=implicit-function-declaration]
      75 |  BUG_ON(atomic##bit##_##op(&v, ##args) != ret);  \
         |         ^~~~~~
   include/linux/compiler.h:58:52: note: in definition of macro '__trace_if_var'
      58 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : 
__trace_if_value(cond))
         |                                                    ^~~~
   include/asm-generic/bug.h:183:32: note: in expansion of macro 'if'
     183 | #define BUG_ON(condition) do { if (unlikely(condition)) BUG(); } 
while (0)
         |                                ^~
   include/linux/compiler.h:48:24: note: in expansion of macro 
'__branch_check__'
      48 | #  define unlikely(x) (__branch_check__(x, 0, 
__builtin_constant_p(x)))
         |                        ^~~~~~~~~~~~~~~~
   include/asm-generic/bug.h:183:36: note: in expansion of macro 'unlikely'
     183 | #define BUG_ON(condition) do { if (unlikely(condition)) BUG(); } 
while (0)
         |                                    ^~~~~~~~
   lib/atomic64_test.c:75:2: note: in expansion of macro 'BUG_ON'
      75 |  BUG_ON(atomic##bit##_##op(&v, ##args) != ret);  \
         |  ^~~~~~
   lib/atomic64_test.c:38:2: note: in expansion of macro 'TEST_ARGS'
      38 |  test(bit, op, ##args);  \
         |  ^~~~
   lib/atomic64_test.c:86:2: note: in expansion of macro 'FAMILY_TEST'
      86 |  FAMILY_TEST(TEST_ARGS, bit, cmpxchg,     \
         |  ^~~~~~~~~~~
   lib/atomic64_test.c:142:2: note: in expansion of macro 'CMPXCHG_FAMILY_TEST'
     142 |  CMPXCHG_FAMILY_TEST(, v0, v1, onestwos);
         |  ^~~~~~~~~~~~~~~~~~~
   lib/atomic64_test.c: In function 'test_atomic64':
>> lib/atomic64_test.c:75:9: error: implicit declaration of function 
>> 'atomic64_arch_xchg'; did you mean 'atomic64_cmpxchg'? 
>> [-Werror=implicit-function-declaration]
      75 |  BUG_ON(atomic##bit##_##op(&v, ##args) != ret);  \
         |         ^~~~~~
   include/linux/compiler.h:58:52: note: in definition of macro '__trace_if_var'
      58 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : 
__trace_if_value(cond))
         |                                                    ^~~~
   include/asm-generic/bug.h:183:32: note: in expansion of macro 'if'
     183 | #define BUG_ON(condition) do { if (unlikely(condition)) BUG(); } 
while (0)
         |                                ^~
   include/linux/compiler.h:48:24: note: in expansion of macro 
'__branch_check__'
      48 | #  define unlikely(x) (__branch_check__(x, 0, 
__builtin_constant_p(x)))
         |                        ^~~~~~~~~~~~~~~~
   include/asm-generic/bug.h:183:36: note: in expansion of macro 'unlikely'
     183 | #define BUG_ON(condition) do { if (unlikely(condition)) BUG(); } 
while (0)
         |                                    ^~~~~~~~
   lib/atomic64_test.c:75:2: note: in expansion of macro 'BUG_ON'
      75 |  BUG_ON(atomic##bit##_##op(&v, ##args) != ret);  \
         |  ^~~~~~
   lib/atomic64_test.c:38:2: note: in expansion of macro 'TEST_ARGS'
      38 |  test(bit, op, ##args);  \
         |  ^~~~
   lib/atomic64_test.c:81:2: note: in expansion of macro 'FAMILY_TEST'
      81 |  FAMILY_TEST(TEST_ARGS, bit, xchg, init, init, new, new); \
         |  ^~~~~~~~~~~
   lib/atomic64_test.c:203:2: note: in expansion of macro 'XCHG_FAMILY_TEST'
     203 |  XCHG_FAMILY_TEST(64, v0, v1);
         |  ^~~~~~~~~~~~~~~~
>> lib/atomic64_test.c:75:9: error: implicit declaration of function 
>> 'atomic64_arch_cmpxchg'; did you mean 'atomic64_try_cmpxchg'? 
>> [-Werror=implicit-function-declaration]
      75 |  BUG_ON(atomic##bit##_##op(&v, ##args) != ret);  \
         |         ^~~~~~
   include/linux/compiler.h:58:52: note: in definition of macro '__trace_if_var'
      58 | #define __trace_if_var(cond) (__builtin_constant_p(cond) ? (cond) : 
__trace_if_value(cond))
         |                                                    ^~~~
   include/asm-generic/bug.h:183:32: note: in expansion of macro 'if'
     183 | #define BUG_ON(condition) do { if (unlikely(condition)) BUG(); } 
while (0)
         |                                ^~
   include/linux/compiler.h:48:24: note: in expansion of macro 
'__branch_check__'
      48 | #  define unlikely(x) (__branch_check__(x, 0, 
__builtin_constant_p(x)))
         |                        ^~~~~~~~~~~~~~~~
   include/asm-generic/bug.h:183:36: note: in expansion of macro 'unlikely'
     183 | #define BUG_ON(condition) do { if (unlikely(condition)) BUG(); } 
while (0)
         |                                    ^~~~~~~~
   lib/atomic64_test.c:75:2: note: in expansion of macro 'BUG_ON'
      75 |  BUG_ON(atomic##bit##_##op(&v, ##args) != ret);  \
         |  ^~~~~~
   lib/atomic64_test.c:38:2: note: in expansion of macro 'TEST_ARGS'
      38 |  test(bit, op, ##args);  \
         |  ^~~~
   lib/atomic64_test.c:86:2: note: in expansion of macro 'FAMILY_TEST'
      86 |  FAMILY_TEST(TEST_ARGS, bit, cmpxchg,     \
         |  ^~~~~~~~~~~
   lib/atomic64_test.c:204:2: note: in expansion of macro 'CMPXCHG_FAMILY_TEST'
     204 |  CMPXCHG_FAMILY_TEST(64, v0, v1, v2);
         |  ^~~~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors


vim +75 lib/atomic64_test.c

28aa2bda2211f4 Peter Zijlstra 2016-04-18  71  
978e5a3692c3b6 Boqun Feng     2015-11-04  72  #define TEST_ARGS(bit, op, init, 
ret, expect, args...)            \
978e5a3692c3b6 Boqun Feng     2015-11-04  73  do {                              
                                \
978e5a3692c3b6 Boqun Feng     2015-11-04  74    atomic##bit##_set(&v, init);    
                        \
978e5a3692c3b6 Boqun Feng     2015-11-04 @75    BUG_ON(atomic##bit##_##op(&v, 
##args) != ret);          \
978e5a3692c3b6 Boqun Feng     2015-11-04  76    BUG_ON(atomic##bit##_read(&v) 
!= expect);               \
978e5a3692c3b6 Boqun Feng     2015-11-04  77  } while (0)
978e5a3692c3b6 Boqun Feng     2015-11-04  78  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-...@lists.01.org

Attachment: .config.gz
Description: application/gzip

Reply via email to