lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Sat, 3 Nov 2018 09:51:47 +0800
From:   kbuild test robot <lkp@...el.com>
To:     Brajeswar Ghosh <brajeswar.linux@...il.com>
Cc:     kbuild-all@...org, rth@...ddle.net, ink@...assic.park.msu.ru,
        mattst88@...il.com, parri.andrea@...il.com, mingo@...nel.org,
        paulmck@...ux.vnet.ibm.com, jrdr.linux@...il.com,
        linux-alpha@...r.kernel.org, linux-kernel@...r.kernel.org,
        sabyasachi.linux@...il.com
Subject: Re: [PATCH] include/asm/cmpxchg.h: Remove duplicate header

Hi Brajeswar,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on sof-driver-fuweitax/master]
[also build test ERROR on v4.19 next-20181102]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Brajeswar-Ghosh/include-asm-cmpxchg-h-Remove-duplicate-header/20181103-072531
base:   https://github.com/fuweitax/linux master
config: alpha-allmodconfig (attached as .config)
compiler: alpha-linux-gnu-gcc (Debian 7.2.0-11) 7.2.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        GCC_VERSION=7.2.0 make.cross ARCH=alpha 

All error/warnings (new ones prefixed by >>):

   In file included from arch/alpha/include/asm/atomic.h:7:0,
                    from include/linux/atomic.h:5,
                    from include/linux/rcupdate.h:38,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/alpha/kernel/asm-offsets.c:10:
   include/linux/atomic.h: In function 'atomic_inc_not_zero_hint':
>> arch/alpha/include/asm/cmpxchg.h:61:31: error: implicit declaration of function '__cmpxchg'; did you mean 'cmpxchg'? [-Werror=implicit-function-declaration]
     __ret = (__typeof__(*(ptr))) __cmpxchg((ptr),   \
                                  ^
>> arch/alpha/include/asm/atomic.h:205:38: note: in expansion of macro 'cmpxchg'
    #define atomic_cmpxchg(v, old, new) (cmpxchg(&((v)->counter), old, new))
                                         ^~~~~~~
>> include/linux/atomic.h:596:9: note: in expansion of macro 'atomic_cmpxchg'
      val = atomic_cmpxchg(v, c, c + 1);
            ^~~~~~~~~~~~~~
   In file included from arch/alpha/include/asm/atomic.h:7:0,
                    from include/linux/atomic.h:5,
                    from include/linux/rcupdate.h:38,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/alpha/kernel/asm-offsets.c:10:
   include/linux/debug_locks.h: In function '__debug_locks_off':
>> arch/alpha/include/asm/cmpxchg.h:50:3: error: implicit declaration of function '__xchg'; did you mean '____xchg'? [-Werror=implicit-function-declaration]
      __xchg((ptr), (unsigned long)_x_, sizeof(*(ptr))); \
      ^
>> include/linux/debug_locks.h:17:9: note: in expansion of macro 'xchg'
     return xchg(&debug_locks, 0);
            ^~~~
   include/linux/llist.h: In function 'llist_del_all':
>> arch/alpha/include/asm/cmpxchg.h:49:10: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
     __ret = (__typeof__(*(ptr)))     \
             ^
>> include/linux/llist.h:234:9: note: in expansion of macro 'xchg'
     return xchg(&head->first, NULL);
            ^~~~
   cc1: some warnings being treated as errors
   make[2]: *** [arch/alpha/kernel/asm-offsets.s] Error 1
   make[2]: Target '__build' not remade because of errors.
   make[1]: *** [prepare0] Error 2
   make[1]: Target 'prepare' not remade because of errors.
   make: *** [sub-make] Error 2

vim +61 arch/alpha/include/asm/cmpxchg.h

5ba840f9 Paul Gortmaker 2012-04-02  39  
fbfcd019 Andrea Parri   2018-02-27  40  /*
fbfcd019 Andrea Parri   2018-02-27  41   * The leading and the trailing memory barriers guarantee that these
fbfcd019 Andrea Parri   2018-02-27  42   * operations are fully ordered.
fbfcd019 Andrea Parri   2018-02-27  43   */
5ba840f9 Paul Gortmaker 2012-04-02  44  #define xchg(ptr, x)							\
5ba840f9 Paul Gortmaker 2012-04-02  45  ({									\
fbfcd019 Andrea Parri   2018-02-27  46  	__typeof__(*(ptr)) __ret;					\
5ba840f9 Paul Gortmaker 2012-04-02  47  	__typeof__(*(ptr)) _x_ = (x);					\
fbfcd019 Andrea Parri   2018-02-27  48  	smp_mb();							\
fbfcd019 Andrea Parri   2018-02-27 @49  	__ret = (__typeof__(*(ptr)))					\
fbfcd019 Andrea Parri   2018-02-27 @50  		__xchg((ptr), (unsigned long)_x_, sizeof(*(ptr)));	\
fbfcd019 Andrea Parri   2018-02-27  51  	smp_mb();							\
fbfcd019 Andrea Parri   2018-02-27  52  	__ret;								\
5ba840f9 Paul Gortmaker 2012-04-02  53  })
5ba840f9 Paul Gortmaker 2012-04-02  54  
5ba840f9 Paul Gortmaker 2012-04-02  55  #define cmpxchg(ptr, o, n)						\
5ba840f9 Paul Gortmaker 2012-04-02  56  ({									\
fbfcd019 Andrea Parri   2018-02-27  57  	__typeof__(*(ptr)) __ret;					\
5ba840f9 Paul Gortmaker 2012-04-02  58  	__typeof__(*(ptr)) _o_ = (o);					\
5ba840f9 Paul Gortmaker 2012-04-02  59  	__typeof__(*(ptr)) _n_ = (n);					\
fbfcd019 Andrea Parri   2018-02-27  60  	smp_mb();							\
fbfcd019 Andrea Parri   2018-02-27 @61  	__ret = (__typeof__(*(ptr))) __cmpxchg((ptr),			\
fbfcd019 Andrea Parri   2018-02-27  62  		(unsigned long)_o_, (unsigned long)_n_, sizeof(*(ptr)));\
fbfcd019 Andrea Parri   2018-02-27  63  	smp_mb();							\
fbfcd019 Andrea Parri   2018-02-27  64  	__ret;								\
5ba840f9 Paul Gortmaker 2012-04-02  65  })
5ba840f9 Paul Gortmaker 2012-04-02  66  

:::::: The code at line 61 was first introduced by commit
:::::: fbfcd0199170984bd3c2812e49ed0fe7b226959a locking/xchg/alpha: Remove superfluous memory barriers from the _local() variants

:::::: TO: Andrea Parri <parri.andrea@...il.com>
:::::: CC: Ingo Molnar <mingo@...nel.org>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Download attachment ".config.gz" of type "application/gzip" (52265 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ