* [csky-linux:v5.12-rc4-riscv-atomic-arch-v2 4/5] include/linux/atomic-fallback.h:1434:1: error: static declaration of 'atomic64_add_return' follows non-static declaration
@ 2021-04-17 6:50 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2021-04-17 6:50 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 42070 bytes --]
tree: https://github.com/c-sky/csky-linux v5.12-rc4-riscv-atomic-arch-v2
head: ba97cb573d12789863827bd2af6f3ccd6fdcaf19
commit: 088b40fee0c85e4837c2208142a4d8d4825395a5 [4/5] locking/atomics: Fixup GENERIC_ATOMIC64 conflict with atomic-arch-fallback.h
config: sparc64-randconfig-r035-20210416 (attached as .config)
compiler: sparc64-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/c-sky/csky-linux/commit/088b40fee0c85e4837c2208142a4d8d4825395a5
git remote add csky-linux https://github.com/c-sky/csky-linux
git fetch --no-tags csky-linux v5.12-rc4-riscv-atomic-arch-v2
git checkout 088b40fee0c85e4837c2208142a4d8d4825395a5
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross W=1 ARCH=sparc64
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 include/linux/atomic.h:84,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
>> include/linux/atomic-fallback.h:1434:1: error: static declaration of 'atomic64_add_return' follows non-static declaration
1434 | atomic64_add_return(s64 i, atomic64_t *v)
| ^~~~~~~~~~~~~~~~~~~
In file included from arch/sparc/include/asm/atomic_32.h:19,
from arch/sparc/include/asm/atomic.h:7,
from include/linux/atomic.h:7,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
include/asm-generic/atomic64.h:27:12: note: previous declaration of 'atomic64_add_return' was here
27 | extern s64 atomic64_##op##_return(s64 a, atomic64_t *v);
| ^~~~~~~~~
include/asm-generic/atomic64.h:32:42: note: in expansion of macro 'ATOMIC64_OP_RETURN'
32 | #define ATOMIC64_OPS(op) ATOMIC64_OP(op) ATOMIC64_OP_RETURN(op) ATOMIC64_FETCH_OP(op)
| ^~~~~~~~~~~~~~~~~~
include/asm-generic/atomic64.h:34:1: note: in expansion of macro 'ATOMIC64_OPS'
34 | ATOMIC64_OPS(add)
| ^~~~~~~~~~~~
In file included from include/linux/atomic.h:84,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
>> include/linux/atomic-fallback.h:1481:1: error: static declaration of 'atomic64_fetch_add' follows non-static declaration
1481 | atomic64_fetch_add(s64 i, atomic64_t *v)
| ^~~~~~~~~~~~~~~~~~
In file included from arch/sparc/include/asm/atomic_32.h:19,
from arch/sparc/include/asm/atomic.h:7,
from include/linux/atomic.h:7,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
include/asm-generic/atomic64.h:30:12: note: previous declaration of 'atomic64_fetch_add' was here
30 | extern s64 atomic64_fetch_##op(s64 a, atomic64_t *v);
| ^~~~~~~~~~~~~~~
include/asm-generic/atomic64.h:32:65: note: in expansion of macro 'ATOMIC64_FETCH_OP'
32 | #define ATOMIC64_OPS(op) ATOMIC64_OP(op) ATOMIC64_OP_RETURN(op) ATOMIC64_FETCH_OP(op)
| ^~~~~~~~~~~~~~~~~
include/asm-generic/atomic64.h:34:1: note: in expansion of macro 'ATOMIC64_OPS'
34 | ATOMIC64_OPS(add)
| ^~~~~~~~~~~~
In file included from include/linux/atomic.h:84,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
>> include/linux/atomic-fallback.h:1594:1: error: redefinition of 'atomic64_inc'
1594 | atomic64_inc(atomic64_t *v)
| ^~~~~~~~~~~~
In file included from arch/sparc/include/asm/atomic_32.h:19,
from arch/sparc/include/asm/atomic.h:7,
from include/linux/atomic.h:7,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
include/asm-generic/atomic64.h:75:1: note: previous definition of 'atomic64_inc' was here
75 | atomic64_inc(atomic64_t *v)
| ^~~~~~~~~~~~
In file included from include/linux/atomic.h:84,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
>> include/linux/atomic-fallback.h:1615:1: error: redefinition of 'atomic64_inc_return'
1615 | atomic64_inc_return(atomic64_t *v)
| ^~~~~~~~~~~~~~~~~~~
In file included from arch/sparc/include/asm/atomic_32.h:19,
from arch/sparc/include/asm/atomic.h:7,
from include/linux/atomic.h:7,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
include/asm-generic/atomic64.h:81:1: note: previous definition of 'atomic64_inc_return' was here
81 | atomic64_inc_return(atomic64_t *v)
| ^~~~~~~~~~~~~~~~~~~
In file included from include/linux/atomic.h:84,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
>> include/linux/atomic-fallback.h:1701:1: error: redefinition of 'atomic64_fetch_inc'
1701 | atomic64_fetch_inc(atomic64_t *v)
| ^~~~~~~~~~~~~~~~~~
In file included from arch/sparc/include/asm/atomic_32.h:19,
from arch/sparc/include/asm/atomic.h:7,
from include/linux/atomic.h:7,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
include/asm-generic/atomic64.h:87:1: note: previous definition of 'atomic64_fetch_inc' was here
87 | atomic64_fetch_inc(atomic64_t *v)
| ^~~~~~~~~~~~~~~~~~
In file included from include/linux/atomic.h:84,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
>> include/linux/atomic-fallback.h:1777:1: error: redefinition of 'atomic64_dec'
1777 | atomic64_dec(atomic64_t *v)
| ^~~~~~~~~~~~
In file included from arch/sparc/include/asm/atomic_32.h:19,
from arch/sparc/include/asm/atomic.h:7,
from include/linux/atomic.h:7,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
include/asm-generic/atomic64.h:93:1: note: previous definition of 'atomic64_dec' was here
93 | atomic64_dec(atomic64_t *v)
| ^~~~~~~~~~~~
In file included from include/linux/atomic.h:84,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
>> include/linux/atomic-fallback.h:1798:1: error: redefinition of 'atomic64_dec_return'
1798 | atomic64_dec_return(atomic64_t *v)
| ^~~~~~~~~~~~~~~~~~~
In file included from arch/sparc/include/asm/atomic_32.h:19,
from arch/sparc/include/asm/atomic.h:7,
from include/linux/atomic.h:7,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
include/asm-generic/atomic64.h:99:1: note: previous definition of 'atomic64_dec_return' was here
99 | atomic64_dec_return(atomic64_t *v)
| ^~~~~~~~~~~~~~~~~~~
In file included from include/linux/atomic.h:84,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
>> include/linux/atomic-fallback.h:1884:1: error: redefinition of 'atomic64_fetch_dec'
1884 | atomic64_fetch_dec(atomic64_t *v)
| ^~~~~~~~~~~~~~~~~~
In file included from arch/sparc/include/asm/atomic_32.h:19,
from arch/sparc/include/asm/atomic.h:7,
from include/linux/atomic.h:7,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
include/asm-generic/atomic64.h:105:1: note: previous definition of 'atomic64_fetch_dec' was here
105 | atomic64_fetch_dec(atomic64_t *v)
| ^~~~~~~~~~~~~~~~~~
In file included from include/linux/atomic.h:84,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
>> include/linux/atomic-fallback.h:2009:1: error: redefinition of 'atomic64_andnot'
2009 | atomic64_andnot(s64 i, atomic64_t *v)
| ^~~~~~~~~~~~~~~
In file included from arch/sparc/include/asm/atomic_32.h:19,
from arch/sparc/include/asm/atomic.h:7,
from include/linux/atomic.h:7,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
include/asm-generic/atomic64.h:111:1: note: previous definition of 'atomic64_andnot' was here
111 | atomic64_andnot(s64 i, atomic64_t *v)
| ^~~~~~~~~~~~~~~
In file included from include/linux/atomic.h:84,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
>> include/linux/atomic-fallback.h:2030:1: error: redefinition of 'atomic64_fetch_andnot'
2030 | atomic64_fetch_andnot(s64 i, atomic64_t *v)
| ^~~~~~~~~~~~~~~~~~~~~
In file included from arch/sparc/include/asm/atomic_32.h:19,
from arch/sparc/include/asm/atomic.h:7,
from include/linux/atomic.h:7,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
include/asm-generic/atomic64.h:117:1: note: previous definition of 'atomic64_fetch_andnot' was here
117 | atomic64_fetch_andnot(s64 i, atomic64_t *v)
| ^~~~~~~~~~~~~~~~~~~~~
In file included from include/linux/atomic.h:84,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
>> include/linux/atomic-fallback.h:2234:1: error: static declaration of 'atomic64_xchg' follows non-static declaration
2234 | atomic64_xchg(atomic64_t *v, s64 i)
| ^~~~~~~~~~~~~
In file included from arch/sparc/include/asm/atomic_32.h:19,
from arch/sparc/include/asm/atomic.h:7,
from include/linux/atomic.h:7,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
include/asm-generic/atomic64.h:67:12: note: previous declaration of 'atomic64_xchg' was here
67 | extern s64 atomic64_xchg(atomic64_t *v, s64 new);
| ^~~~~~~~~~~~~
In file included from include/linux/atomic.h:84,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
>> include/linux/atomic-fallback.h:2281:1: error: static declaration of 'atomic64_cmpxchg' follows non-static declaration
2281 | atomic64_cmpxchg(atomic64_t *v, s64 old, s64 new)
| ^~~~~~~~~~~~~~~~
In file included from arch/sparc/include/asm/atomic_32.h:19,
from arch/sparc/include/asm/atomic.h:7,
from include/linux/atomic.h:7,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
include/asm-generic/atomic64.h:63:12: note: previous declaration of 'atomic64_cmpxchg' was here
63 | extern s64 atomic64_cmpxchg(atomic64_t *v, s64 o, s64 n);
| ^~~~~~~~~~~~~~~~
In file included from include/linux/atomic.h:84,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
>> include/linux/atomic-fallback.h:2409:1: error: conflicting types for 'atomic64_sub_and_test'
2409 | atomic64_sub_and_test(s64 i, atomic64_t *v)
| ^~~~~~~~~~~~~~~~~~~~~
In file included from arch/sparc/include/asm/atomic_32.h:19,
from arch/sparc/include/asm/atomic.h:7,
from include/linux/atomic.h:7,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
include/asm-generic/atomic64.h:123:1: note: previous definition of 'atomic64_sub_and_test' was here
123 | atomic64_sub_and_test(int i, atomic64_t *v)
| ^~~~~~~~~~~~~~~~~~~~~
In file included from include/linux/atomic.h:84,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
>> include/linux/atomic-fallback.h:2428:1: error: redefinition of 'atomic64_dec_and_test'
2428 | atomic64_dec_and_test(atomic64_t *v)
| ^~~~~~~~~~~~~~~~~~~~~
In file included from arch/sparc/include/asm/atomic_32.h:19,
from arch/sparc/include/asm/atomic.h:7,
from include/linux/atomic.h:7,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
include/asm-generic/atomic64.h:129:1: note: previous definition of 'atomic64_dec_and_test' was here
129 | atomic64_dec_and_test(atomic64_t *v)
| ^~~~~~~~~~~~~~~~~~~~~
In file included from include/linux/atomic.h:84,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
>> include/linux/atomic-fallback.h:2447:1: error: redefinition of 'atomic64_inc_and_test'
2447 | atomic64_inc_and_test(atomic64_t *v)
| ^~~~~~~~~~~~~~~~~~~~~
In file included from arch/sparc/include/asm/atomic_32.h:19,
from arch/sparc/include/asm/atomic.h:7,
from include/linux/atomic.h:7,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
include/asm-generic/atomic64.h:135:1: note: previous definition of 'atomic64_inc_and_test' was here
135 | atomic64_inc_and_test(atomic64_t *v)
| ^~~~~~~~~~~~~~~~~~~~~
In file included from include/linux/atomic.h:84,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
>> include/linux/atomic-fallback.h:2467:1: error: redefinition of 'atomic64_add_negative'
2467 | atomic64_add_negative(s64 i, atomic64_t *v)
| ^~~~~~~~~~~~~~~~~~~~~
In file included from arch/sparc/include/asm/atomic_32.h:19,
from arch/sparc/include/asm/atomic.h:7,
from include/linux/atomic.h:7,
from include/asm-generic/bitops/lock.h:5,
from arch/sparc/include/asm/bitops_32.h:102,
from arch/sparc/include/asm/bitops.h:7,
from include/linux/bitops.h:32,
from include/linux/kernel.h:11,
from arch/sparc/vdso/vdso32/../vclock_gettime.c:15,
from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
include/asm-generic/atomic64.h:141:1: note: previous definition of 'atomic64_add_negative' was here
141 | atomic64_add_negative(s64 i, atomic64_t *v)
| ^~~~~~~~~~~~~~~~~~~~~
In file included from arch/sparc/vdso/vdso32/vclock_gettime.c:22:
arch/sparc/vdso/vdso32/../vclock_gettime.c:254:1: warning: no previous prototype for '__vdso_clock_gettime' [-Wmissing-prototypes]
254 | __vdso_clock_gettime(clockid_t clock, struct __kernel_old_timespec *ts)
| ^~~~~~~~~~~~~~~~~~~~
arch/sparc/vdso/vdso32/../vclock_gettime.c:282:1: warning: no previous prototype for '__vdso_clock_gettime_stick' [-Wmissing-prototypes]
282 | __vdso_clock_gettime_stick(clockid_t clock, struct __kernel_old_timespec *ts)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
arch/sparc/vdso/vdso32/../vclock_gettime.c:307:1: warning: no previous prototype for '__vdso_gettimeofday' [-Wmissing-prototypes]
307 | __vdso_gettimeofday(struct __kernel_old_timeval *tv, struct timezone *tz)
| ^~~~~~~~~~~~~~~~~~~
arch/sparc/vdso/vdso32/../vclock_gettime.c:343:1: warning: no previous prototype for '__vdso_gettimeofday_stick' [-Wmissing-prototypes]
343 | __vdso_gettimeofday_stick(struct __kernel_old_timeval *tv, struct timezone *tz)
| ^~~~~~~~~~~~~~~~~~~~~~~~~
Kconfig warnings: (for reference only)
WARNING: unmet direct dependencies detected for FRAME_POINTER
Depends on DEBUG_KERNEL && (M68K || UML || SUPERH) || ARCH_WANT_FRAME_POINTERS || MCOUNT
Selected by
- LOCKDEP && DEBUG_KERNEL && LOCK_DEBUGGING_SUPPORT && !MIPS && !PPC && !ARM && !S390 && !MICROBLAZE && !ARC && !X86
vim +/atomic64_add_return +1434 include/linux/atomic-fallback.h
9fa45070a2e59a Mark Rutland 2018-09-04 1431
9fa45070a2e59a Mark Rutland 2018-09-04 1432 #ifndef atomic64_add_return
765dcd209947e7 Marco Elver 2019-11-26 1433 static __always_inline s64
9fa45070a2e59a Mark Rutland 2018-09-04 @1434 atomic64_add_return(s64 i, atomic64_t *v)
9fa45070a2e59a Mark Rutland 2018-09-04 1435 {
9fa45070a2e59a Mark Rutland 2018-09-04 1436 s64 ret;
9fa45070a2e59a Mark Rutland 2018-09-04 1437 __atomic_pre_full_fence();
9fa45070a2e59a Mark Rutland 2018-09-04 1438 ret = atomic64_add_return_relaxed(i, v);
9fa45070a2e59a Mark Rutland 2018-09-04 1439 __atomic_post_full_fence();
9fa45070a2e59a Mark Rutland 2018-09-04 1440 return ret;
9fa45070a2e59a Mark Rutland 2018-09-04 1441 }
9fa45070a2e59a Mark Rutland 2018-09-04 1442 #define atomic64_add_return atomic64_add_return
9fa45070a2e59a Mark Rutland 2018-09-04 1443 #endif
9fa45070a2e59a Mark Rutland 2018-09-04 1444
9fa45070a2e59a Mark Rutland 2018-09-04 1445 #endif /* atomic64_add_return_relaxed */
9fa45070a2e59a Mark Rutland 2018-09-04 1446
5faafd5685764e Peter Zijlstra 2020-06-25 1447 #define arch_atomic64_fetch_add atomic64_fetch_add
5faafd5685764e Peter Zijlstra 2020-06-25 1448 #define arch_atomic64_fetch_add_acquire atomic64_fetch_add_acquire
5faafd5685764e Peter Zijlstra 2020-06-25 1449 #define arch_atomic64_fetch_add_release atomic64_fetch_add_release
5faafd5685764e Peter Zijlstra 2020-06-25 1450 #define arch_atomic64_fetch_add_relaxed atomic64_fetch_add_relaxed
5faafd5685764e Peter Zijlstra 2020-06-25 1451
9fa45070a2e59a Mark Rutland 2018-09-04 1452 #ifndef atomic64_fetch_add_relaxed
9fa45070a2e59a Mark Rutland 2018-09-04 1453 #define atomic64_fetch_add_acquire atomic64_fetch_add
9fa45070a2e59a Mark Rutland 2018-09-04 1454 #define atomic64_fetch_add_release atomic64_fetch_add
9fa45070a2e59a Mark Rutland 2018-09-04 1455 #define atomic64_fetch_add_relaxed atomic64_fetch_add
9fa45070a2e59a Mark Rutland 2018-09-04 1456 #else /* atomic64_fetch_add_relaxed */
9fa45070a2e59a Mark Rutland 2018-09-04 1457
9fa45070a2e59a Mark Rutland 2018-09-04 1458 #ifndef atomic64_fetch_add_acquire
765dcd209947e7 Marco Elver 2019-11-26 1459 static __always_inline s64
9fa45070a2e59a Mark Rutland 2018-09-04 1460 atomic64_fetch_add_acquire(s64 i, atomic64_t *v)
9fa45070a2e59a Mark Rutland 2018-09-04 1461 {
9fa45070a2e59a Mark Rutland 2018-09-04 1462 s64 ret = atomic64_fetch_add_relaxed(i, v);
9fa45070a2e59a Mark Rutland 2018-09-04 1463 __atomic_acquire_fence();
9fa45070a2e59a Mark Rutland 2018-09-04 1464 return ret;
9fa45070a2e59a Mark Rutland 2018-09-04 1465 }
9fa45070a2e59a Mark Rutland 2018-09-04 1466 #define atomic64_fetch_add_acquire atomic64_fetch_add_acquire
9fa45070a2e59a Mark Rutland 2018-09-04 1467 #endif
9fa45070a2e59a Mark Rutland 2018-09-04 1468
9fa45070a2e59a Mark Rutland 2018-09-04 1469 #ifndef atomic64_fetch_add_release
765dcd209947e7 Marco Elver 2019-11-26 1470 static __always_inline s64
9fa45070a2e59a Mark Rutland 2018-09-04 1471 atomic64_fetch_add_release(s64 i, atomic64_t *v)
9fa45070a2e59a Mark Rutland 2018-09-04 1472 {
9fa45070a2e59a Mark Rutland 2018-09-04 1473 __atomic_release_fence();
9fa45070a2e59a Mark Rutland 2018-09-04 1474 return atomic64_fetch_add_relaxed(i, v);
9fa45070a2e59a Mark Rutland 2018-09-04 1475 }
9fa45070a2e59a Mark Rutland 2018-09-04 1476 #define atomic64_fetch_add_release atomic64_fetch_add_release
9fa45070a2e59a Mark Rutland 2018-09-04 1477 #endif
9fa45070a2e59a Mark Rutland 2018-09-04 1478
9fa45070a2e59a Mark Rutland 2018-09-04 1479 #ifndef atomic64_fetch_add
765dcd209947e7 Marco Elver 2019-11-26 1480 static __always_inline s64
9fa45070a2e59a Mark Rutland 2018-09-04 @1481 atomic64_fetch_add(s64 i, atomic64_t *v)
9fa45070a2e59a Mark Rutland 2018-09-04 1482 {
9fa45070a2e59a Mark Rutland 2018-09-04 1483 s64 ret;
9fa45070a2e59a Mark Rutland 2018-09-04 1484 __atomic_pre_full_fence();
9fa45070a2e59a Mark Rutland 2018-09-04 1485 ret = atomic64_fetch_add_relaxed(i, v);
9fa45070a2e59a Mark Rutland 2018-09-04 1486 __atomic_post_full_fence();
9fa45070a2e59a Mark Rutland 2018-09-04 1487 return ret;
9fa45070a2e59a Mark Rutland 2018-09-04 1488 }
9fa45070a2e59a Mark Rutland 2018-09-04 1489 #define atomic64_fetch_add atomic64_fetch_add
9fa45070a2e59a Mark Rutland 2018-09-04 1490 #endif
9fa45070a2e59a Mark Rutland 2018-09-04 1491
9fa45070a2e59a Mark Rutland 2018-09-04 1492 #endif /* atomic64_fetch_add_relaxed */
9fa45070a2e59a Mark Rutland 2018-09-04 1493
5faafd5685764e Peter Zijlstra 2020-06-25 1494 #define arch_atomic64_sub atomic64_sub
5faafd5685764e Peter Zijlstra 2020-06-25 1495
5faafd5685764e Peter Zijlstra 2020-06-25 1496 #define arch_atomic64_sub_return atomic64_sub_return
5faafd5685764e Peter Zijlstra 2020-06-25 1497 #define arch_atomic64_sub_return_acquire atomic64_sub_return_acquire
5faafd5685764e Peter Zijlstra 2020-06-25 1498 #define arch_atomic64_sub_return_release atomic64_sub_return_release
5faafd5685764e Peter Zijlstra 2020-06-25 1499 #define arch_atomic64_sub_return_relaxed atomic64_sub_return_relaxed
5faafd5685764e Peter Zijlstra 2020-06-25 1500
9fa45070a2e59a Mark Rutland 2018-09-04 1501 #ifndef atomic64_sub_return_relaxed
9fa45070a2e59a Mark Rutland 2018-09-04 1502 #define atomic64_sub_return_acquire atomic64_sub_return
9fa45070a2e59a Mark Rutland 2018-09-04 1503 #define atomic64_sub_return_release atomic64_sub_return
9fa45070a2e59a Mark Rutland 2018-09-04 1504 #define atomic64_sub_return_relaxed atomic64_sub_return
9fa45070a2e59a Mark Rutland 2018-09-04 1505 #else /* atomic64_sub_return_relaxed */
9fa45070a2e59a Mark Rutland 2018-09-04 1506
9fa45070a2e59a Mark Rutland 2018-09-04 1507 #ifndef atomic64_sub_return_acquire
765dcd209947e7 Marco Elver 2019-11-26 1508 static __always_inline s64
9fa45070a2e59a Mark Rutland 2018-09-04 1509 atomic64_sub_return_acquire(s64 i, atomic64_t *v)
9fa45070a2e59a Mark Rutland 2018-09-04 1510 {
9fa45070a2e59a Mark Rutland 2018-09-04 1511 s64 ret = atomic64_sub_return_relaxed(i, v);
9fa45070a2e59a Mark Rutland 2018-09-04 1512 __atomic_acquire_fence();
9fa45070a2e59a Mark Rutland 2018-09-04 1513 return ret;
9fa45070a2e59a Mark Rutland 2018-09-04 1514 }
9fa45070a2e59a Mark Rutland 2018-09-04 1515 #define atomic64_sub_return_acquire atomic64_sub_return_acquire
9fa45070a2e59a Mark Rutland 2018-09-04 1516 #endif
9fa45070a2e59a Mark Rutland 2018-09-04 1517
9fa45070a2e59a Mark Rutland 2018-09-04 1518 #ifndef atomic64_sub_return_release
765dcd209947e7 Marco Elver 2019-11-26 1519 static __always_inline s64
9fa45070a2e59a Mark Rutland 2018-09-04 1520 atomic64_sub_return_release(s64 i, atomic64_t *v)
9fa45070a2e59a Mark Rutland 2018-09-04 1521 {
9fa45070a2e59a Mark Rutland 2018-09-04 1522 __atomic_release_fence();
9fa45070a2e59a Mark Rutland 2018-09-04 1523 return atomic64_sub_return_relaxed(i, v);
9fa45070a2e59a Mark Rutland 2018-09-04 1524 }
9fa45070a2e59a Mark Rutland 2018-09-04 1525 #define atomic64_sub_return_release atomic64_sub_return_release
9fa45070a2e59a Mark Rutland 2018-09-04 1526 #endif
9fa45070a2e59a Mark Rutland 2018-09-04 1527
9fa45070a2e59a Mark Rutland 2018-09-04 1528 #ifndef atomic64_sub_return
765dcd209947e7 Marco Elver 2019-11-26 1529 static __always_inline s64
9fa45070a2e59a Mark Rutland 2018-09-04 1530 atomic64_sub_return(s64 i, atomic64_t *v)
9fa45070a2e59a Mark Rutland 2018-09-04 1531 {
9fa45070a2e59a Mark Rutland 2018-09-04 1532 s64 ret;
9fa45070a2e59a Mark Rutland 2018-09-04 1533 __atomic_pre_full_fence();
9fa45070a2e59a Mark Rutland 2018-09-04 1534 ret = atomic64_sub_return_relaxed(i, v);
9fa45070a2e59a Mark Rutland 2018-09-04 1535 __atomic_post_full_fence();
9fa45070a2e59a Mark Rutland 2018-09-04 1536 return ret;
9fa45070a2e59a Mark Rutland 2018-09-04 1537 }
9fa45070a2e59a Mark Rutland 2018-09-04 1538 #define atomic64_sub_return atomic64_sub_return
9fa45070a2e59a Mark Rutland 2018-09-04 1539 #endif
9fa45070a2e59a Mark Rutland 2018-09-04 1540
9fa45070a2e59a Mark Rutland 2018-09-04 1541 #endif /* atomic64_sub_return_relaxed */
9fa45070a2e59a Mark Rutland 2018-09-04 1542
5faafd5685764e Peter Zijlstra 2020-06-25 1543 #define arch_atomic64_fetch_sub atomic64_fetch_sub
5faafd5685764e Peter Zijlstra 2020-06-25 1544 #define arch_atomic64_fetch_sub_acquire atomic64_fetch_sub_acquire
5faafd5685764e Peter Zijlstra 2020-06-25 1545 #define arch_atomic64_fetch_sub_release atomic64_fetch_sub_release
5faafd5685764e Peter Zijlstra 2020-06-25 1546 #define arch_atomic64_fetch_sub_relaxed atomic64_fetch_sub_relaxed
5faafd5685764e Peter Zijlstra 2020-06-25 1547
9fa45070a2e59a Mark Rutland 2018-09-04 1548 #ifndef atomic64_fetch_sub_relaxed
9fa45070a2e59a Mark Rutland 2018-09-04 1549 #define atomic64_fetch_sub_acquire atomic64_fetch_sub
9fa45070a2e59a Mark Rutland 2018-09-04 1550 #define atomic64_fetch_sub_release atomic64_fetch_sub
9fa45070a2e59a Mark Rutland 2018-09-04 1551 #define atomic64_fetch_sub_relaxed atomic64_fetch_sub
9fa45070a2e59a Mark Rutland 2018-09-04 1552 #else /* atomic64_fetch_sub_relaxed */
9fa45070a2e59a Mark Rutland 2018-09-04 1553
9fa45070a2e59a Mark Rutland 2018-09-04 1554 #ifndef atomic64_fetch_sub_acquire
765dcd209947e7 Marco Elver 2019-11-26 1555 static __always_inline s64
9fa45070a2e59a Mark Rutland 2018-09-04 1556 atomic64_fetch_sub_acquire(s64 i, atomic64_t *v)
9fa45070a2e59a Mark Rutland 2018-09-04 1557 {
9fa45070a2e59a Mark Rutland 2018-09-04 1558 s64 ret = atomic64_fetch_sub_relaxed(i, v);
9fa45070a2e59a Mark Rutland 2018-09-04 1559 __atomic_acquire_fence();
9fa45070a2e59a Mark Rutland 2018-09-04 1560 return ret;
9fa45070a2e59a Mark Rutland 2018-09-04 1561 }
9fa45070a2e59a Mark Rutland 2018-09-04 1562 #define atomic64_fetch_sub_acquire atomic64_fetch_sub_acquire
9fa45070a2e59a Mark Rutland 2018-09-04 1563 #endif
9fa45070a2e59a Mark Rutland 2018-09-04 1564
9fa45070a2e59a Mark Rutland 2018-09-04 1565 #ifndef atomic64_fetch_sub_release
765dcd209947e7 Marco Elver 2019-11-26 1566 static __always_inline s64
9fa45070a2e59a Mark Rutland 2018-09-04 1567 atomic64_fetch_sub_release(s64 i, atomic64_t *v)
9fa45070a2e59a Mark Rutland 2018-09-04 1568 {
9fa45070a2e59a Mark Rutland 2018-09-04 1569 __atomic_release_fence();
9fa45070a2e59a Mark Rutland 2018-09-04 1570 return atomic64_fetch_sub_relaxed(i, v);
9fa45070a2e59a Mark Rutland 2018-09-04 1571 }
9fa45070a2e59a Mark Rutland 2018-09-04 1572 #define atomic64_fetch_sub_release atomic64_fetch_sub_release
9fa45070a2e59a Mark Rutland 2018-09-04 1573 #endif
9fa45070a2e59a Mark Rutland 2018-09-04 1574
9fa45070a2e59a Mark Rutland 2018-09-04 1575 #ifndef atomic64_fetch_sub
765dcd209947e7 Marco Elver 2019-11-26 1576 static __always_inline s64
9fa45070a2e59a Mark Rutland 2018-09-04 1577 atomic64_fetch_sub(s64 i, atomic64_t *v)
9fa45070a2e59a Mark Rutland 2018-09-04 1578 {
9fa45070a2e59a Mark Rutland 2018-09-04 1579 s64 ret;
9fa45070a2e59a Mark Rutland 2018-09-04 1580 __atomic_pre_full_fence();
9fa45070a2e59a Mark Rutland 2018-09-04 1581 ret = atomic64_fetch_sub_relaxed(i, v);
9fa45070a2e59a Mark Rutland 2018-09-04 1582 __atomic_post_full_fence();
9fa45070a2e59a Mark Rutland 2018-09-04 1583 return ret;
9fa45070a2e59a Mark Rutland 2018-09-04 1584 }
9fa45070a2e59a Mark Rutland 2018-09-04 1585 #define atomic64_fetch_sub atomic64_fetch_sub
9fa45070a2e59a Mark Rutland 2018-09-04 1586 #endif
9fa45070a2e59a Mark Rutland 2018-09-04 1587
9fa45070a2e59a Mark Rutland 2018-09-04 1588 #endif /* atomic64_fetch_sub_relaxed */
9fa45070a2e59a Mark Rutland 2018-09-04 1589
5faafd5685764e Peter Zijlstra 2020-06-25 1590 #define arch_atomic64_inc atomic64_inc
5faafd5685764e Peter Zijlstra 2020-06-25 1591
9fa45070a2e59a Mark Rutland 2018-09-04 1592 #ifndef atomic64_inc
765dcd209947e7 Marco Elver 2019-11-26 1593 static __always_inline void
9fa45070a2e59a Mark Rutland 2018-09-04 @1594 atomic64_inc(atomic64_t *v)
9fa45070a2e59a Mark Rutland 2018-09-04 1595 {
9fa45070a2e59a Mark Rutland 2018-09-04 1596 atomic64_add(1, v);
9fa45070a2e59a Mark Rutland 2018-09-04 1597 }
9fa45070a2e59a Mark Rutland 2018-09-04 1598 #define atomic64_inc atomic64_inc
9fa45070a2e59a Mark Rutland 2018-09-04 1599 #endif
9fa45070a2e59a Mark Rutland 2018-09-04 1600
5faafd5685764e Peter Zijlstra 2020-06-25 1601 #define arch_atomic64_inc_return atomic64_inc_return
5faafd5685764e Peter Zijlstra 2020-06-25 1602 #define arch_atomic64_inc_return_acquire atomic64_inc_return_acquire
5faafd5685764e Peter Zijlstra 2020-06-25 1603 #define arch_atomic64_inc_return_release atomic64_inc_return_release
5faafd5685764e Peter Zijlstra 2020-06-25 1604 #define arch_atomic64_inc_return_relaxed atomic64_inc_return_relaxed
5faafd5685764e Peter Zijlstra 2020-06-25 1605
9fa45070a2e59a Mark Rutland 2018-09-04 1606 #ifndef atomic64_inc_return_relaxed
9fa45070a2e59a Mark Rutland 2018-09-04 1607 #ifdef atomic64_inc_return
9fa45070a2e59a Mark Rutland 2018-09-04 1608 #define atomic64_inc_return_acquire atomic64_inc_return
9fa45070a2e59a Mark Rutland 2018-09-04 1609 #define atomic64_inc_return_release atomic64_inc_return
9fa45070a2e59a Mark Rutland 2018-09-04 1610 #define atomic64_inc_return_relaxed atomic64_inc_return
9fa45070a2e59a Mark Rutland 2018-09-04 1611 #endif /* atomic64_inc_return */
9fa45070a2e59a Mark Rutland 2018-09-04 1612
9fa45070a2e59a Mark Rutland 2018-09-04 1613 #ifndef atomic64_inc_return
765dcd209947e7 Marco Elver 2019-11-26 1614 static __always_inline s64
9fa45070a2e59a Mark Rutland 2018-09-04 @1615 atomic64_inc_return(atomic64_t *v)
9fa45070a2e59a Mark Rutland 2018-09-04 1616 {
9fa45070a2e59a Mark Rutland 2018-09-04 1617 return atomic64_add_return(1, v);
9fa45070a2e59a Mark Rutland 2018-09-04 1618 }
9fa45070a2e59a Mark Rutland 2018-09-04 1619 #define atomic64_inc_return atomic64_inc_return
9fa45070a2e59a Mark Rutland 2018-09-04 1620 #endif
9fa45070a2e59a Mark Rutland 2018-09-04 1621
:::::: The code at line 1434 was first introduced by commit
:::::: 9fa45070a2e59a871e1cd3370173369f3a4f61e2 locking/atomics: Switch to generated fallbacks
:::::: TO: Mark Rutland <mark.rutland@arm.com>
:::::: CC: Ingo Molnar <mingo@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: 27919 bytes --]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2021-04-17 6:50 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-17 6:50 [csky-linux:v5.12-rc4-riscv-atomic-arch-v2 4/5] include/linux/atomic-fallback.h:1434:1: error: static declaration of 'atomic64_add_return' follows non-static declaration kernel test robot
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.