All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: [mark-rutland:atomics/arch-atomic 1/25] include/linux/atomic-fallback.h:2575: warning: "arch_atomic64_dec_if_positive" redefined
Date: Wed, 28 Apr 2021 03:01:23 +0800	[thread overview]
Message-ID: <202104280317.eFdEBfMT-lkp@intel.com> (raw)

[-- Attachment #1: Type: text/plain, Size: 33025 bytes --]

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/mark/linux.git atomics/arch-atomic
head:   a01b575b1e6ed7458c510cc9f67ca8f48dadb1e4
commit: 4fe0b1c094b5f98877e26aeb41cb0dec2dc44ec6 [1/25] locking/atomic: make ARCH_ATOMIC a Kconfig symbol
config: um-allnoconfig (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
        # https://git.kernel.org/pub/scm/linux/kernel/git/mark/linux.git/commit/?id=4fe0b1c094b5f98877e26aeb41cb0dec2dc44ec6
        git remote add mark-rutland https://git.kernel.org/pub/scm/linux/kernel/git/mark/linux.git
        git fetch --no-tags mark-rutland atomics/arch-atomic
        git checkout 4fe0b1c094b5f98877e26aeb41cb0dec2dc44ec6
        # save the attached .config to linux build tree
        make W=1 W=1 ARCH=um 

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

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

   arch/x86/include/asm/atomic64_32.h:143: note: this is the location of the previous definition
     143 | #define arch_atomic64_add_return arch_atomic64_add_return
         | 
   In file included from include/linux/atomic.h:84,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   include/linux/atomic-fallback.h:1447: warning: "arch_atomic64_fetch_add" redefined
    1447 | #define arch_atomic64_fetch_add atomic64_fetch_add
         | 
   In file included from arch/x86/include/asm/atomic.h:267,
                    from include/linux/atomic.h:7,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   arch/x86/include/asm/atomic64_32.h:338: note: this is the location of the previous definition
     338 | #define arch_atomic64_fetch_add arch_atomic64_fetch_add
         | 
   In file included from include/linux/atomic.h:84,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   include/linux/atomic-fallback.h:1496: warning: "arch_atomic64_sub_return" redefined
    1496 | #define arch_atomic64_sub_return atomic64_sub_return
         | 
   In file included from arch/x86/include/asm/atomic.h:267,
                    from include/linux/atomic.h:7,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   arch/x86/include/asm/atomic64_32.h:155: note: this is the location of the previous definition
     155 | #define arch_atomic64_sub_return arch_atomic64_sub_return
         | 
   In file included from include/linux/atomic.h:84,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   include/linux/atomic-fallback.h:1543: warning: "arch_atomic64_fetch_sub" redefined
    1543 | #define arch_atomic64_fetch_sub atomic64_fetch_sub
         | 
   In file included from arch/x86/include/asm/atomic.h:267,
                    from include/linux/atomic.h:7,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   arch/x86/include/asm/atomic64_32.h:340: note: this is the location of the previous definition
     340 | #define arch_atomic64_fetch_sub(i, v) arch_atomic64_fetch_add(-(i), (v))
         | 
   In file included from include/linux/atomic.h:84,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   include/linux/atomic-fallback.h:1590: warning: "arch_atomic64_inc" redefined
    1590 | #define arch_atomic64_inc atomic64_inc
         | 
   In file included from arch/x86/include/asm/atomic.h:267,
                    from include/linux/atomic.h:7,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   arch/x86/include/asm/atomic64_32.h:216: note: this is the location of the previous definition
     216 | #define arch_atomic64_inc arch_atomic64_inc
         | 
   In file included from include/linux/atomic.h:84,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   include/linux/atomic-fallback.h: In function 'atomic64_inc':
   include/linux/atomic-fallback.h:1596:2: error: implicit declaration of function 'atomic64_add'; did you mean 'atomic64_inc'? [-Werror=implicit-function-declaration]
    1596 |  atomic64_add(1, v);
         |  ^~~~~~~~~~~~
         |  atomic64_inc
   include/linux/atomic-fallback.h: At top level:
>> include/linux/atomic-fallback.h:1601: warning: "arch_atomic64_inc_return" redefined
    1601 | #define arch_atomic64_inc_return atomic64_inc_return
         | 
   In file included from arch/x86/include/asm/atomic.h:267,
                    from include/linux/atomic.h:7,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   arch/x86/include/asm/atomic64_32.h:164: note: this is the location of the previous definition
     164 | #define arch_atomic64_inc_return arch_atomic64_inc_return
         | 
   In file included from include/linux/atomic.h:84,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   include/linux/atomic-fallback.h: In function 'atomic64_inc_return':
   include/linux/atomic-fallback.h:1617:9: error: implicit declaration of function 'atomic64_add_return'; did you mean 'atomic64_inc_return'? [-Werror=implicit-function-declaration]
    1617 |  return atomic64_add_return(1, v);
         |         ^~~~~~~~~~~~~~~~~~~
         |         atomic64_inc_return
   include/linux/atomic-fallback.h: In function 'atomic64_fetch_inc':
   include/linux/atomic-fallback.h:1703:9: error: implicit declaration of function 'atomic64_fetch_add'; did you mean 'atomic64_fetch_inc'? [-Werror=implicit-function-declaration]
    1703 |  return atomic64_fetch_add(1, v);
         |         ^~~~~~~~~~~~~~~~~~
         |         atomic64_fetch_inc
   include/linux/atomic-fallback.h: At top level:
   include/linux/atomic-fallback.h:1773: warning: "arch_atomic64_dec" redefined
    1773 | #define arch_atomic64_dec atomic64_dec
         | 
   In file included from arch/x86/include/asm/atomic.h:267,
                    from include/linux/atomic.h:7,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   arch/x86/include/asm/atomic64_32.h:229: note: this is the location of the previous definition
     229 | #define arch_atomic64_dec arch_atomic64_dec
         | 
   In file included from include/linux/atomic.h:84,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   include/linux/atomic-fallback.h: In function 'atomic64_dec':
   include/linux/atomic-fallback.h:1779:2: error: implicit declaration of function 'atomic64_sub'; did you mean 'atomic64_dec'? [-Werror=implicit-function-declaration]
    1779 |  atomic64_sub(1, v);
         |  ^~~~~~~~~~~~
         |  atomic64_dec
   include/linux/atomic-fallback.h: At top level:
>> include/linux/atomic-fallback.h:1784: warning: "arch_atomic64_dec_return" redefined
    1784 | #define arch_atomic64_dec_return atomic64_dec_return
         | 
   In file included from arch/x86/include/asm/atomic.h:267,
                    from include/linux/atomic.h:7,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   arch/x86/include/asm/atomic64_32.h:173: note: this is the location of the previous definition
     173 | #define arch_atomic64_dec_return arch_atomic64_dec_return
         | 
   In file included from include/linux/atomic.h:84,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   include/linux/atomic-fallback.h: In function 'atomic64_dec_return':
   include/linux/atomic-fallback.h:1800:9: error: implicit declaration of function 'atomic64_sub_return'; did you mean 'atomic64_dec_return'? [-Werror=implicit-function-declaration]
    1800 |  return atomic64_sub_return(1, v);
         |         ^~~~~~~~~~~~~~~~~~~
         |         atomic64_dec_return
   include/linux/atomic-fallback.h: In function 'atomic64_fetch_dec':
   include/linux/atomic-fallback.h:1886:9: error: implicit declaration of function 'atomic64_fetch_sub'; did you mean 'atomic64_fetch_dec'? [-Werror=implicit-function-declaration]
    1886 |  return atomic64_fetch_sub(1, v);
         |         ^~~~~~~~~~~~~~~~~~
         |         atomic64_fetch_dec
   include/linux/atomic-fallback.h: At top level:
   include/linux/atomic-fallback.h:1958: warning: "arch_atomic64_fetch_and" redefined
    1958 | #define arch_atomic64_fetch_and atomic64_fetch_and
         | 
   In file included from arch/x86/include/asm/atomic.h:267,
                    from include/linux/atomic.h:7,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   arch/x86/include/asm/atomic64_32.h:289: note: this is the location of the previous definition
     289 | #define arch_atomic64_fetch_and arch_atomic64_fetch_and
         | 
   In file included from include/linux/atomic.h:84,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   include/linux/atomic-fallback.h: In function 'atomic64_andnot':
   include/linux/atomic-fallback.h:2011:2: error: implicit declaration of function 'atomic64_and'; did you mean 'atomic64_inc'? [-Werror=implicit-function-declaration]
    2011 |  atomic64_and(~i, v);
         |  ^~~~~~~~~~~~
         |  atomic64_inc
   include/linux/atomic-fallback.h: In function 'atomic64_fetch_andnot':
   include/linux/atomic-fallback.h:2032:9: error: implicit declaration of function 'atomic64_fetch_and'; did you mean 'atomic64_fetch_inc'? [-Werror=implicit-function-declaration]
    2032 |  return atomic64_fetch_and(~i, v);
         |         ^~~~~~~~~~~~~~~~~~
         |         atomic64_fetch_inc
   include/linux/atomic-fallback.h: At top level:
   include/linux/atomic-fallback.h:2104: warning: "arch_atomic64_fetch_or" redefined
    2104 | #define arch_atomic64_fetch_or atomic64_fetch_or
         | 
   In file included from arch/x86/include/asm/atomic.h:267,
                    from include/linux/atomic.h:7,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   arch/x86/include/asm/atomic64_32.h:308: note: this is the location of the previous definition
     308 | #define arch_atomic64_fetch_or arch_atomic64_fetch_or
         | 
   In file included from include/linux/atomic.h:84,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   include/linux/atomic-fallback.h:2153: warning: "arch_atomic64_fetch_xor" redefined
    2153 | #define arch_atomic64_fetch_xor atomic64_fetch_xor
         | 
   In file included from arch/x86/include/asm/atomic.h:267,
                    from include/linux/atomic.h:7,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   arch/x86/include/asm/atomic64_32.h:327: note: this is the location of the previous definition
     327 | #define arch_atomic64_fetch_xor arch_atomic64_fetch_xor
         | 
   In file included from include/linux/atomic.h:84,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   include/linux/atomic-fallback.h:2200: warning: "arch_atomic64_xchg" redefined
    2200 | #define arch_atomic64_xchg atomic64_xchg
         | 
   In file included from arch/x86/include/asm/atomic.h:267,
                    from include/linux/atomic.h:7,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   arch/x86/include/asm/atomic64_32.h:98: note: this is the location of the previous definition
      98 | #define arch_atomic64_xchg arch_atomic64_xchg
         | 
   In file included from include/linux/atomic.h:84,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   include/linux/atomic-fallback.h:2247: warning: "arch_atomic64_cmpxchg" redefined
    2247 | #define arch_atomic64_cmpxchg atomic64_cmpxchg
         | 
   In file included from arch/x86/include/asm/atomic.h:267,
                    from include/linux/atomic.h:7,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   arch/x86/include/asm/atomic64_32.h:78: note: this is the location of the previous definition
      78 | #define arch_atomic64_cmpxchg arch_atomic64_cmpxchg
         | 
   In file included from include/linux/atomic.h:84,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   include/linux/atomic-fallback.h: In function 'atomic64_try_cmpxchg':
   include/linux/atomic-fallback.h:2311:6: error: implicit declaration of function 'atomic64_cmpxchg'; did you mean 'atomic64_try_cmpxchg'? [-Werror=implicit-function-declaration]
    2311 |  r = atomic64_cmpxchg(v, o, new);
         |      ^~~~~~~~~~~~~~~~
         |      atomic64_try_cmpxchg
   include/linux/atomic-fallback.h: In function 'atomic64_fetch_add_unless':
   include/linux/atomic-fallback.h:2489:10: error: implicit declaration of function 'atomic64_read'; did you mean 'atomic64_dec'? [-Werror=implicit-function-declaration]
    2489 |  s64 c = atomic64_read(v);
         |          ^~~~~~~~~~~~~
         |          atomic64_dec
   include/linux/atomic-fallback.h: At top level:
>> include/linux/atomic-fallback.h:2501: warning: "arch_atomic64_add_unless" redefined
    2501 | #define arch_atomic64_add_unless atomic64_add_unless
         | 
   In file included from arch/x86/include/asm/atomic.h:267,
                    from include/linux/atomic.h:7,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   arch/x86/include/asm/atomic64_32.h:249: note: this is the location of the previous definition
     249 | #define arch_atomic64_add_unless arch_atomic64_add_unless
         | 
   In file included from include/linux/atomic.h:84,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
>> include/linux/atomic-fallback.h:2521: warning: "arch_atomic64_inc_not_zero" redefined
    2521 | #define arch_atomic64_inc_not_zero atomic64_inc_not_zero
         | 
   In file included from arch/x86/include/asm/atomic.h:267,
                    from include/linux/atomic.h:7,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   arch/x86/include/asm/atomic64_32.h:258: note: this is the location of the previous definition
     258 | #define arch_atomic64_inc_not_zero arch_atomic64_inc_not_zero
         | 
   In file included from include/linux/atomic.h:84,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
>> include/linux/atomic-fallback.h:2575: warning: "arch_atomic64_dec_if_positive" redefined
    2575 | #define arch_atomic64_dec_if_positive atomic64_dec_if_positive
         | 
   In file included from arch/x86/include/asm/atomic.h:267,
                    from include/linux/atomic.h:7,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   arch/x86/include/asm/atomic64_32.h:267: note: this is the location of the previous definition
     267 | #define arch_atomic64_dec_if_positive arch_atomic64_dec_if_positive
         | 
   In file included from include/linux/atomic.h:87,
                    from include/linux/rcupdate.h:25,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   include/asm-generic/atomic-long.h: In function 'atomic_long_set':
>> include/asm-generic/atomic-long.h:535:2: error: implicit declaration of function 'atomic_set'; did you mean 'atomic_dec'? [-Werror=implicit-function-declaration]
     535 |  atomic_set(v, i);
         |  ^~~~~~~~~~
         |  atomic_dec
   include/asm-generic/atomic-long.h: In function 'atomic_long_or':
>> include/asm-generic/atomic-long.h:823:2: error: implicit declaration of function 'atomic_or'; did you mean 'atomic_dec'? [-Werror=implicit-function-declaration]
     823 |  atomic_or(i, v);
         |  ^~~~~~~~~
         |  atomic_dec
   include/asm-generic/atomic-long.h: In function 'atomic_long_fetch_or':
   include/asm-generic/atomic-long.h:829:9: error: implicit declaration of function 'atomic_fetch_or'; did you mean 'atomic_fetch_dec'? [-Werror=implicit-function-declaration]
     829 |  return atomic_fetch_or(i, v);
         |         ^~~~~~~~~~~~~~~
         |         atomic_fetch_dec
   include/asm-generic/atomic-long.h: In function 'atomic_long_xor':
>> include/asm-generic/atomic-long.h:853:2: error: implicit declaration of function 'atomic_xor'; did you mean 'atomic_dec'? [-Werror=implicit-function-declaration]
     853 |  atomic_xor(i, v);
         |  ^~~~~~~~~~
         |  atomic_dec
   include/asm-generic/atomic-long.h: In function 'atomic_long_fetch_xor':
   include/asm-generic/atomic-long.h:859:9: error: implicit declaration of function 'atomic_fetch_xor'; did you mean 'atomic_fetch_dec'? [-Werror=implicit-function-declaration]
     859 |  return atomic_fetch_xor(i, v);
         |         ^~~~~~~~~~~~~~~~
         |         atomic_fetch_dec
   include/asm-generic/atomic-long.h: In function 'atomic_long_xchg':
   include/asm-generic/atomic-long.h:883:9: error: implicit declaration of function 'atomic_xchg' [-Werror=implicit-function-declaration]
     883 |  return atomic_xchg(v, i);
         |         ^~~~~~~~~~~
   In file included from include/linux/smp_types.h:5,
                    from include/linux/smp.h:15,
                    from include/linux/lockdep.h:14,
                    from include/linux/rcupdate.h:29,
                    from include/linux/rculist.h:11,
                    from include/linux/pid.h:5,
                    from include/linux/sched.h:14,
                    from arch/x86/um/shared/sysdep/kernel-offsets.h:3,
                    from arch/um/kernel/asm-offsets.c:1:
   include/linux/llist.h: In function 'llist_del_all':
>> include/linux/llist.h:237:9: error: implicit declaration of function 'xchg' [-Werror=implicit-function-declaration]
     237 |  return xchg(&head->first, NULL);
         |         ^~~~
>> include/linux/llist.h:237:9: warning: returning 'int' from a function with return type 'struct llist_node *' makes pointer from integer without a cast [-Wint-conversion]
     237 |  return xchg(&head->first, NULL);
         |         ^~~~~~~~~~~~~~~~~~~~~~~~
   In file included from arch/um/kernel/asm-offsets.c:1:
   arch/x86/um/shared/sysdep/kernel-offsets.h: At top level:
   arch/x86/um/shared/sysdep/kernel-offsets.h:9:6: warning: no previous prototype for 'foo' [-Wmissing-prototypes]
       9 | void foo(void)
         |      ^~~
   cc1: some warnings being treated as errors
   make[2]: *** [scripts/Makefile.build:116: arch/um/kernel/asm-offsets.s] Error 1
   make[2]: Target '__build' not remade because of errors.
   make[1]: *** [Makefile:1235: prepare0] Error 2
   make[1]: Target 'prepare' not remade because of errors.
   make: *** [Makefile:215: __sub-make] Error 2
   make: Target 'prepare' not remade because of errors.


vim +/arch_atomic64_dec_if_positive +2575 include/linux/atomic-fallback.h

9fa45070a2e59a Mark Rutland   2018-09-04  2500  
5faafd5685764e Peter Zijlstra 2020-06-25 @2501  #define arch_atomic64_add_unless atomic64_add_unless
5faafd5685764e Peter Zijlstra 2020-06-25  2502  
9fa45070a2e59a Mark Rutland   2018-09-04  2503  #ifndef atomic64_add_unless
9fa45070a2e59a Mark Rutland   2018-09-04  2504  /**
9fa45070a2e59a Mark Rutland   2018-09-04  2505   * atomic64_add_unless - add unless the number is already a given value
9fa45070a2e59a Mark Rutland   2018-09-04  2506   * @v: pointer of type atomic64_t
9fa45070a2e59a Mark Rutland   2018-09-04  2507   * @a: the amount to add to v...
9fa45070a2e59a Mark Rutland   2018-09-04  2508   * @u: ...unless v is equal to u.
9fa45070a2e59a Mark Rutland   2018-09-04  2509   *
9fa45070a2e59a Mark Rutland   2018-09-04  2510   * Atomically adds @a to @v, if @v was not already @u.
9fa45070a2e59a Mark Rutland   2018-09-04  2511   * Returns true if the addition was done.
9fa45070a2e59a Mark Rutland   2018-09-04  2512   */
765dcd209947e7 Marco Elver    2019-11-26  2513  static __always_inline bool
9fa45070a2e59a Mark Rutland   2018-09-04  2514  atomic64_add_unless(atomic64_t *v, s64 a, s64 u)
9fa45070a2e59a Mark Rutland   2018-09-04  2515  {
9fa45070a2e59a Mark Rutland   2018-09-04  2516  	return atomic64_fetch_add_unless(v, a, u) != u;
9fa45070a2e59a Mark Rutland   2018-09-04  2517  }
9fa45070a2e59a Mark Rutland   2018-09-04  2518  #define atomic64_add_unless atomic64_add_unless
9fa45070a2e59a Mark Rutland   2018-09-04  2519  #endif
9fa45070a2e59a Mark Rutland   2018-09-04  2520  
5faafd5685764e Peter Zijlstra 2020-06-25 @2521  #define arch_atomic64_inc_not_zero atomic64_inc_not_zero
5faafd5685764e Peter Zijlstra 2020-06-25  2522  
9fa45070a2e59a Mark Rutland   2018-09-04  2523  #ifndef atomic64_inc_not_zero
9fa45070a2e59a Mark Rutland   2018-09-04  2524  /**
9fa45070a2e59a Mark Rutland   2018-09-04  2525   * atomic64_inc_not_zero - increment unless the number is zero
9fa45070a2e59a Mark Rutland   2018-09-04  2526   * @v: pointer of type atomic64_t
9fa45070a2e59a Mark Rutland   2018-09-04  2527   *
9fa45070a2e59a Mark Rutland   2018-09-04  2528   * Atomically increments @v by 1, if @v is non-zero.
9fa45070a2e59a Mark Rutland   2018-09-04  2529   * Returns true if the increment was done.
9fa45070a2e59a Mark Rutland   2018-09-04  2530   */
765dcd209947e7 Marco Elver    2019-11-26  2531  static __always_inline bool
9fa45070a2e59a Mark Rutland   2018-09-04  2532  atomic64_inc_not_zero(atomic64_t *v)
9fa45070a2e59a Mark Rutland   2018-09-04  2533  {
9fa45070a2e59a Mark Rutland   2018-09-04  2534  	return atomic64_add_unless(v, 1, 0);
9fa45070a2e59a Mark Rutland   2018-09-04  2535  }
9fa45070a2e59a Mark Rutland   2018-09-04  2536  #define atomic64_inc_not_zero atomic64_inc_not_zero
9fa45070a2e59a Mark Rutland   2018-09-04  2537  #endif
9fa45070a2e59a Mark Rutland   2018-09-04  2538  
5faafd5685764e Peter Zijlstra 2020-06-25  2539  #define arch_atomic64_inc_unless_negative atomic64_inc_unless_negative
5faafd5685764e Peter Zijlstra 2020-06-25  2540  
9fa45070a2e59a Mark Rutland   2018-09-04  2541  #ifndef atomic64_inc_unless_negative
765dcd209947e7 Marco Elver    2019-11-26  2542  static __always_inline bool
9fa45070a2e59a Mark Rutland   2018-09-04  2543  atomic64_inc_unless_negative(atomic64_t *v)
9fa45070a2e59a Mark Rutland   2018-09-04  2544  {
9fa45070a2e59a Mark Rutland   2018-09-04  2545  	s64 c = atomic64_read(v);
9fa45070a2e59a Mark Rutland   2018-09-04  2546  
9fa45070a2e59a Mark Rutland   2018-09-04  2547  	do {
9fa45070a2e59a Mark Rutland   2018-09-04  2548  		if (unlikely(c < 0))
9fa45070a2e59a Mark Rutland   2018-09-04  2549  			return false;
9fa45070a2e59a Mark Rutland   2018-09-04  2550  	} while (!atomic64_try_cmpxchg(v, &c, c + 1));
9fa45070a2e59a Mark Rutland   2018-09-04  2551  
9fa45070a2e59a Mark Rutland   2018-09-04  2552  	return true;
9fa45070a2e59a Mark Rutland   2018-09-04  2553  }
9fa45070a2e59a Mark Rutland   2018-09-04  2554  #define atomic64_inc_unless_negative atomic64_inc_unless_negative
9fa45070a2e59a Mark Rutland   2018-09-04  2555  #endif
9fa45070a2e59a Mark Rutland   2018-09-04  2556  
5faafd5685764e Peter Zijlstra 2020-06-25  2557  #define arch_atomic64_dec_unless_positive atomic64_dec_unless_positive
5faafd5685764e Peter Zijlstra 2020-06-25  2558  
9fa45070a2e59a Mark Rutland   2018-09-04  2559  #ifndef atomic64_dec_unless_positive
765dcd209947e7 Marco Elver    2019-11-26  2560  static __always_inline bool
9fa45070a2e59a Mark Rutland   2018-09-04  2561  atomic64_dec_unless_positive(atomic64_t *v)
9fa45070a2e59a Mark Rutland   2018-09-04  2562  {
9fa45070a2e59a Mark Rutland   2018-09-04  2563  	s64 c = atomic64_read(v);
9fa45070a2e59a Mark Rutland   2018-09-04  2564  
9fa45070a2e59a Mark Rutland   2018-09-04  2565  	do {
9fa45070a2e59a Mark Rutland   2018-09-04  2566  		if (unlikely(c > 0))
9fa45070a2e59a Mark Rutland   2018-09-04  2567  			return false;
9fa45070a2e59a Mark Rutland   2018-09-04  2568  	} while (!atomic64_try_cmpxchg(v, &c, c - 1));
9fa45070a2e59a Mark Rutland   2018-09-04  2569  
9fa45070a2e59a Mark Rutland   2018-09-04  2570  	return true;
9fa45070a2e59a Mark Rutland   2018-09-04  2571  }
9fa45070a2e59a Mark Rutland   2018-09-04  2572  #define atomic64_dec_unless_positive atomic64_dec_unless_positive
9fa45070a2e59a Mark Rutland   2018-09-04  2573  #endif
9fa45070a2e59a Mark Rutland   2018-09-04  2574  
5faafd5685764e Peter Zijlstra 2020-06-25 @2575  #define arch_atomic64_dec_if_positive atomic64_dec_if_positive
5faafd5685764e Peter Zijlstra 2020-06-25  2576  

:::::: The code at line 2575 was first introduced by commit
:::::: 5faafd5685764e4d75376aceac91fdf75b3b16f8 locking/atomics: Provide the arch_atomic_ interface to generic code

:::::: TO: Peter Zijlstra <peterz@infradead.org>
:::::: CC: Paul E. McKenney <paulmck@kernel.org>

---
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: 4669 bytes --]

                 reply	other threads:[~2021-04-27 19:01 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=202104280317.eFdEBfMT-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=kbuild-all@lists.01.org \
    /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: link
Be 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.