From: kernel test robot <lkp@intel.com>
To: Bradley Morgan <brads@mainlining.org>
Cc: oe-kbuild-all@lists.linux.dev,
linux-snps-arc@lists.infradead.org,
"Paul E. McKenney" <paulmck@kernel.org>
Subject: [paulmckrcu:cmpxchg2.2026.09.22a 25/28] arch/arc/include/asm/cmpxchg.h:71:23: warning: unused variable '_new_'
Date: Thu, 24 Sep 2026 05:12:09 +0800 [thread overview]
Message-ID: <202609240539.AkulvjVe-lkp@intel.com> (raw)
tree: https://github.com/paulmckrcu/linux cmpxchg2.2026.09.22a
head: 54c282c15475ebfae4712fe3ab637c9d19c723d6
commit: b6d4f6af38f85e7948fd64f9bf09cbb858b4dade [25/28] ARC: Emulate two-byte cmpxchg
config: arc-randconfig-1001-20260924 (https://download.01.org/0day-ci/archive/20260924/202609240539.AkulvjVe-lkp@intel.com/config)
compiler: arc-linux-gcc (GCC) 14.3.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260924/202609240539.AkulvjVe-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202609240539.AkulvjVe-lkp@intel.com/
All warnings (new ones prefixed by >>):
In file included from arch/arc/include/asm/atomic.h:13,
from include/linux/atomic.h:7,
from include/asm-generic/bitops/lock.h:5,
from arch/arc/include/asm/bitops.h:190,
from include/linux/bitops.h:67,
from include/linux/log2.h:12,
from kernel/bounds.c:14:
include/linux/atomic/atomic-arch-fallback.h: In function 'raw_atomic_cmpxchg':
arch/arc/include/asm/cmpxchg.h:80:23: error: '_o_' undeclared (first use in this function); did you mean '_p_'?
80 | if (_prev_ == _o_) \
| ^~~
include/linux/atomic/atomic-arch-fallback.h:55:21: note: in expansion of macro 'arch_cmpxchg'
55 | #define raw_cmpxchg arch_cmpxchg
| ^~~~~~~~~~~~
include/linux/atomic/atomic-arch-fallback.h:2026:16: note: in expansion of macro 'raw_cmpxchg'
2026 | return raw_cmpxchg(&v->counter, old, new);
| ^~~~~~~~~~~
arch/arc/include/asm/cmpxchg.h:80:23: note: each undeclared identifier is reported only once for each function it appears in
80 | if (_prev_ == _o_) \
| ^~~
include/linux/atomic/atomic-arch-fallback.h:55:21: note: in expansion of macro 'arch_cmpxchg'
55 | #define raw_cmpxchg arch_cmpxchg
| ^~~~~~~~~~~~
include/linux/atomic/atomic-arch-fallback.h:2026:16: note: in expansion of macro 'raw_cmpxchg'
2026 | return raw_cmpxchg(&v->counter, old, new);
| ^~~~~~~~~~~
arch/arc/include/asm/cmpxchg.h:81:24: error: '_n_' undeclared (first use in this function); did you mean '_p_'?
81 | *_p_ = _n_; \
| ^~~
include/linux/atomic/atomic-arch-fallback.h:55:21: note: in expansion of macro 'arch_cmpxchg'
55 | #define raw_cmpxchg arch_cmpxchg
| ^~~~~~~~~~~~
include/linux/atomic/atomic-arch-fallback.h:2026:16: note: in expansion of macro 'raw_cmpxchg'
2026 | return raw_cmpxchg(&v->counter, old, new);
| ^~~~~~~~~~~
>> arch/arc/include/asm/cmpxchg.h:71:23: warning: unused variable '_new_' [-Wunused-variable]
71 | unsigned long _new_ = (unsigned long)(0 ? *(_p_) : (new)); \
| ^~~~~
include/linux/atomic/atomic-arch-fallback.h:55:21: note: in expansion of macro 'arch_cmpxchg'
55 | #define raw_cmpxchg arch_cmpxchg
| ^~~~~~~~~~~~
include/linux/atomic/atomic-arch-fallback.h:2026:16: note: in expansion of macro 'raw_cmpxchg'
2026 | return raw_cmpxchg(&v->counter, old, new);
| ^~~~~~~~~~~
>> arch/arc/include/asm/cmpxchg.h:70:23: warning: unused variable '_old_' [-Wunused-variable]
70 | unsigned long _old_ = (unsigned long)(0 ? *(_p_) : (old)); \
| ^~~~~
include/linux/atomic/atomic-arch-fallback.h:55:21: note: in expansion of macro 'arch_cmpxchg'
55 | #define raw_cmpxchg arch_cmpxchg
| ^~~~~~~~~~~~
include/linux/atomic/atomic-arch-fallback.h:2026:16: note: in expansion of macro 'raw_cmpxchg'
2026 | return raw_cmpxchg(&v->counter, old, new);
| ^~~~~~~~~~~
include/linux/atomic/atomic-arch-fallback.h: In function 'raw_atomic_cmpxchg_acquire':
arch/arc/include/asm/cmpxchg.h:80:23: error: '_o_' undeclared (first use in this function); did you mean '_p_'?
80 | if (_prev_ == _o_) \
| ^~~
include/linux/atomic/atomic-arch-fallback.h:70:29: note: in expansion of macro 'arch_cmpxchg'
70 | #define raw_cmpxchg_acquire arch_cmpxchg
| ^~~~~~~~~~~~
include/linux/atomic/atomic-arch-fallback.h:2055:16: note: in expansion of macro 'raw_cmpxchg_acquire'
2055 | return raw_cmpxchg_acquire(&v->counter, old, new);
| ^~~~~~~~~~~~~~~~~~~
arch/arc/include/asm/cmpxchg.h:81:24: error: '_n_' undeclared (first use in this function); did you mean '_p_'?
81 | *_p_ = _n_; \
| ^~~
include/linux/atomic/atomic-arch-fallback.h:70:29: note: in expansion of macro 'arch_cmpxchg'
70 | #define raw_cmpxchg_acquire arch_cmpxchg
| ^~~~~~~~~~~~
include/linux/atomic/atomic-arch-fallback.h:2055:16: note: in expansion of macro 'raw_cmpxchg_acquire'
2055 | return raw_cmpxchg_acquire(&v->counter, old, new);
| ^~~~~~~~~~~~~~~~~~~
>> arch/arc/include/asm/cmpxchg.h:71:23: warning: unused variable '_new_' [-Wunused-variable]
71 | unsigned long _new_ = (unsigned long)(0 ? *(_p_) : (new)); \
| ^~~~~
include/linux/atomic/atomic-arch-fallback.h:70:29: note: in expansion of macro 'arch_cmpxchg'
70 | #define raw_cmpxchg_acquire arch_cmpxchg
| ^~~~~~~~~~~~
include/linux/atomic/atomic-arch-fallback.h:2055:16: note: in expansion of macro 'raw_cmpxchg_acquire'
2055 | return raw_cmpxchg_acquire(&v->counter, old, new);
| ^~~~~~~~~~~~~~~~~~~
>> arch/arc/include/asm/cmpxchg.h:70:23: warning: unused variable '_old_' [-Wunused-variable]
70 | unsigned long _old_ = (unsigned long)(0 ? *(_p_) : (old)); \
| ^~~~~
include/linux/atomic/atomic-arch-fallback.h:70:29: note: in expansion of macro 'arch_cmpxchg'
70 | #define raw_cmpxchg_acquire arch_cmpxchg
| ^~~~~~~~~~~~
include/linux/atomic/atomic-arch-fallback.h:2055:16: note: in expansion of macro 'raw_cmpxchg_acquire'
2055 | return raw_cmpxchg_acquire(&v->counter, old, new);
| ^~~~~~~~~~~~~~~~~~~
include/linux/atomic/atomic-arch-fallback.h: In function 'raw_atomic_cmpxchg_release':
arch/arc/include/asm/cmpxchg.h:80:23: error: '_o_' undeclared (first use in this function); did you mean '_p_'?
80 | if (_prev_ == _o_) \
| ^~~
include/linux/atomic/atomic-arch-fallback.h:82:29: note: in expansion of macro 'arch_cmpxchg'
82 | #define raw_cmpxchg_release arch_cmpxchg
| ^~~~~~~~~~~~
include/linux/atomic/atomic-arch-fallback.h:2083:16: note: in expansion of macro 'raw_cmpxchg_release'
2083 | return raw_cmpxchg_release(&v->counter, old, new);
| ^~~~~~~~~~~~~~~~~~~
arch/arc/include/asm/cmpxchg.h:81:24: error: '_n_' undeclared (first use in this function); did you mean '_p_'?
81 | *_p_ = _n_; \
| ^~~
include/linux/atomic/atomic-arch-fallback.h:82:29: note: in expansion of macro 'arch_cmpxchg'
82 | #define raw_cmpxchg_release arch_cmpxchg
| ^~~~~~~~~~~~
include/linux/atomic/atomic-arch-fallback.h:2083:16: note: in expansion of macro 'raw_cmpxchg_release'
2083 | return raw_cmpxchg_release(&v->counter, old, new);
| ^~~~~~~~~~~~~~~~~~~
>> arch/arc/include/asm/cmpxchg.h:71:23: warning: unused variable '_new_' [-Wunused-variable]
71 | unsigned long _new_ = (unsigned long)(0 ? *(_p_) : (new)); \
| ^~~~~
include/linux/atomic/atomic-arch-fallback.h:82:29: note: in expansion of macro 'arch_cmpxchg'
82 | #define raw_cmpxchg_release arch_cmpxchg
| ^~~~~~~~~~~~
include/linux/atomic/atomic-arch-fallback.h:2083:16: note: in expansion of macro 'raw_cmpxchg_release'
2083 | return raw_cmpxchg_release(&v->counter, old, new);
| ^~~~~~~~~~~~~~~~~~~
>> arch/arc/include/asm/cmpxchg.h:70:23: warning: unused variable '_old_' [-Wunused-variable]
70 | unsigned long _old_ = (unsigned long)(0 ? *(_p_) : (old)); \
| ^~~~~
include/linux/atomic/atomic-arch-fallback.h:82:29: note: in expansion of macro 'arch_cmpxchg'
82 | #define raw_cmpxchg_release arch_cmpxchg
| ^~~~~~~~~~~~
include/linux/atomic/atomic-arch-fallback.h:2083:16: note: in expansion of macro 'raw_cmpxchg_release'
2083 | return raw_cmpxchg_release(&v->counter, old, new);
| ^~~~~~~~~~~~~~~~~~~
include/linux/atomic/atomic-arch-fallback.h: In function 'raw_atomic_cmpxchg_relaxed':
arch/arc/include/asm/cmpxchg.h:80:23: error: '_o_' undeclared (first use in this function); did you mean '_p_'?
80 | if (_prev_ == _o_) \
| ^~~
include/linux/atomic/atomic-arch-fallback.h:91:29: note: in expansion of macro 'arch_cmpxchg'
91 | #define raw_cmpxchg_relaxed arch_cmpxchg
| ^~~~~~~~~~~~
include/linux/atomic/atomic-arch-fallback.h:2108:16: note: in expansion of macro 'raw_cmpxchg_relaxed'
2108 | return raw_cmpxchg_relaxed(&v->counter, old, new);
| ^~~~~~~~~~~~~~~~~~~
arch/arc/include/asm/cmpxchg.h:81:24: error: '_n_' undeclared (first use in this function); did you mean '_p_'?
81 | *_p_ = _n_; \
| ^~~
include/linux/atomic/atomic-arch-fallback.h:91:29: note: in expansion of macro 'arch_cmpxchg'
91 | #define raw_cmpxchg_relaxed arch_cmpxchg
| ^~~~~~~~~~~~
include/linux/atomic/atomic-arch-fallback.h:2108:16: note: in expansion of macro 'raw_cmpxchg_relaxed'
2108 | return raw_cmpxchg_relaxed(&v->counter, old, new);
| ^~~~~~~~~~~~~~~~~~~
>> arch/arc/include/asm/cmpxchg.h:71:23: warning: unused variable '_new_' [-Wunused-variable]
71 | unsigned long _new_ = (unsigned long)(0 ? *(_p_) : (new)); \
| ^~~~~
include/linux/atomic/atomic-arch-fallback.h:91:29: note: in expansion of macro 'arch_cmpxchg'
91 | #define raw_cmpxchg_relaxed arch_cmpxchg
| ^~~~~~~~~~~~
include/linux/atomic/atomic-arch-fallback.h:2108:16: note: in expansion of macro 'raw_cmpxchg_relaxed'
2108 | return raw_cmpxchg_relaxed(&v->counter, old, new);
| ^~~~~~~~~~~~~~~~~~~
>> arch/arc/include/asm/cmpxchg.h:70:23: warning: unused variable '_old_' [-Wunused-variable]
70 | unsigned long _old_ = (unsigned long)(0 ? *(_p_) : (old)); \
| ^~~~~
include/linux/atomic/atomic-arch-fallback.h:91:29: note: in expansion of macro 'arch_cmpxchg'
91 | #define raw_cmpxchg_relaxed arch_cmpxchg
| ^~~~~~~~~~~~
include/linux/atomic/atomic-arch-fallback.h:2108:16: note: in expansion of macro 'raw_cmpxchg_relaxed'
2108 | return raw_cmpxchg_relaxed(&v->counter, old, new);
| ^~~~~~~~~~~~~~~~~~~
make[3]: *** [scripts/Makefile.build:185: kernel/bounds.s] Error 1 shuffle=1050985161
make[3]: Target 'prepare' not remade because of errors.
make[2]: *** [Makefile:1425: prepare0] Error 2 shuffle=1050985161
make[2]: Target 'prepare' not remade because of errors.
make[1]: *** [Makefile:248: __sub-make] Error 2 shuffle=1050985161
make[1]: Target 'prepare' not remade because of errors.
make: *** [Makefile:248: __sub-make] Error 2 shuffle=1050985161
make: Target 'prepare' not remade because of errors.
vim +/_new_ +71 arch/arc/include/asm/cmpxchg.h
66
67 #define arch_cmpxchg(ptr, old, new) \
68 ({ \
69 volatile __typeof__(ptr) _p_ = (ptr); \
> 70 unsigned long _old_ = (unsigned long)(0 ? *(_p_) : (old)); \
> 71 unsigned long _new_ = (unsigned long)(0 ? *(_p_) : (new)); \
72 __typeof__(*(ptr)) _prev_; \
73 unsigned long __flags; \
74 \
75 /* \
76 * spin lock/unlock provide the needed smp_mb() before/after \
77 */ \
78 atomic_ops_lock(__flags); \
79 _prev_ = *_p_; \
80 if (_prev_ == _o_) \
81 *_p_ = _n_; \
82 atomic_ops_unlock(__flags); \
83 _prev_; \
84 })
85
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
_______________________________________________
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc
next reply other threads:[~2026-09-23 21:12 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-23 21:12 kernel test robot [this message]
2026-09-23 21:13 ` [paulmckrcu:cmpxchg2.2026.09.22a 25/28] arch/arc/include/asm/cmpxchg.h:71:23: warning: unused variable '_new_' Bradley Morgan
2026-09-23 22:23 ` Vineet Gupta
2026-09-24 3:25 ` Paul E. McKenney
2026-09-29 19:16 ` Paul E. McKenney
2026-09-29 19:42 ` Vineet Gupta
2026-09-29 19:44 ` Bradley Morgan
2026-09-30 17:52 ` Paul E. McKenney
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=202609240539.AkulvjVe-lkp@intel.com \
--to=lkp@intel.com \
--cc=brads@mainlining.org \
--cc=linux-snps-arc@lists.infradead.org \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=paulmck@kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox