* include/linux/seqlock.h:1257:undefined reference to `__scoped_seqlock_bug'
@ 2026-01-29 1:32 kernel test robot
2026-01-29 9:39 ` Peter Zijlstra
0 siblings, 1 reply; 9+ messages in thread
From: kernel test robot @ 2026-01-29 1:32 UTC (permalink / raw)
To: Oleg Nesterov; +Cc: oe-kbuild-all, linux-kernel, Peter Zijlstra
Hi Oleg,
FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 8dfce8991b95d8625d0a1d2896e42f93b9d7f68d
commit: 488f48b32654dc6be04d9cc12f75ce030c9cb21b seqlock: Change thread_group_cputime() to use scoped_seqlock_read()
date: 3 months ago
config: s390-randconfig-002-20260129 (https://download.01.org/0day-ci/archive/20260129/202601290910.uwScjRjc-lkp@intel.com/config)
compiler: s390-linux-gcc (GCC) 15.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260129/202601290910.uwScjRjc-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/202601290910.uwScjRjc-lkp@intel.com/
All errors (new ones prefixed by >>):
s390-linux-ld: kernel/sched/build_policy.o: in function `__scoped_seqlock_next':
>> include/linux/seqlock.h:1257:(.text+0x3ee04): undefined reference to `__scoped_seqlock_bug'
vim +1257 include/linux/seqlock.h
cc39f3872c0865 Peter Zijlstra 2025-10-09 1251
cc39f3872c0865 Peter Zijlstra 2025-10-09 1252 static inline void
cc39f3872c0865 Peter Zijlstra 2025-10-09 1253 __scoped_seqlock_next(struct ss_tmp *sst, seqlock_t *lock, enum ss_state target)
cc39f3872c0865 Peter Zijlstra 2025-10-09 1254 {
cc39f3872c0865 Peter Zijlstra 2025-10-09 1255 switch (sst->state) {
cc39f3872c0865 Peter Zijlstra 2025-10-09 1256 case ss_done:
cc39f3872c0865 Peter Zijlstra 2025-10-09 @1257 __scoped_seqlock_bug();
cc39f3872c0865 Peter Zijlstra 2025-10-09 1258 return;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1259
cc39f3872c0865 Peter Zijlstra 2025-10-09 1260 case ss_lock:
cc39f3872c0865 Peter Zijlstra 2025-10-09 1261 case ss_lock_irqsave:
cc39f3872c0865 Peter Zijlstra 2025-10-09 1262 sst->state = ss_done;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1263 return;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1264
cc39f3872c0865 Peter Zijlstra 2025-10-09 1265 case ss_lockless:
cc39f3872c0865 Peter Zijlstra 2025-10-09 1266 if (!read_seqretry(lock, sst->data)) {
cc39f3872c0865 Peter Zijlstra 2025-10-09 1267 sst->state = ss_done;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1268 return;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1269 }
cc39f3872c0865 Peter Zijlstra 2025-10-09 1270 break;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1271 }
cc39f3872c0865 Peter Zijlstra 2025-10-09 1272
cc39f3872c0865 Peter Zijlstra 2025-10-09 1273 switch (target) {
cc39f3872c0865 Peter Zijlstra 2025-10-09 1274 case ss_done:
cc39f3872c0865 Peter Zijlstra 2025-10-09 1275 __scoped_seqlock_invalid_target();
cc39f3872c0865 Peter Zijlstra 2025-10-09 1276 return;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1277
cc39f3872c0865 Peter Zijlstra 2025-10-09 1278 case ss_lock:
cc39f3872c0865 Peter Zijlstra 2025-10-09 1279 sst->lock = &lock->lock;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1280 spin_lock(sst->lock);
cc39f3872c0865 Peter Zijlstra 2025-10-09 1281 sst->state = ss_lock;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1282 return;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1283
cc39f3872c0865 Peter Zijlstra 2025-10-09 1284 case ss_lock_irqsave:
cc39f3872c0865 Peter Zijlstra 2025-10-09 1285 sst->lock_irqsave = &lock->lock;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1286 spin_lock_irqsave(sst->lock_irqsave, sst->data);
cc39f3872c0865 Peter Zijlstra 2025-10-09 1287 sst->state = ss_lock_irqsave;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1288 return;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1289
cc39f3872c0865 Peter Zijlstra 2025-10-09 1290 case ss_lockless:
cc39f3872c0865 Peter Zijlstra 2025-10-09 1291 sst->data = read_seqbegin(lock);
cc39f3872c0865 Peter Zijlstra 2025-10-09 1292 return;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1293 }
cc39f3872c0865 Peter Zijlstra 2025-10-09 1294 }
cc39f3872c0865 Peter Zijlstra 2025-10-09 1295
:::::: The code at line 1257 was first introduced by commit
:::::: cc39f3872c0865bef992b713338df369554fa9e0 seqlock: Introduce scoped_seqlock_read()
:::::: TO: Peter Zijlstra <peterz@infradead.org>
:::::: CC: Peter Zijlstra <peterz@infradead.org>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 9+ messages in thread* Re: include/linux/seqlock.h:1257:undefined reference to `__scoped_seqlock_bug'
2026-01-29 1:32 include/linux/seqlock.h:1257:undefined reference to `__scoped_seqlock_bug' kernel test robot
@ 2026-01-29 9:39 ` Peter Zijlstra
2026-01-29 10:26 ` Uros Bizjak
0 siblings, 1 reply; 9+ messages in thread
From: Peter Zijlstra @ 2026-01-29 9:39 UTC (permalink / raw)
To: kernel test robot
Cc: Oleg Nesterov, oe-kbuild-all, linux-kernel, ubizjak, Ingo Molnar
On Thu, Jan 29, 2026 at 09:32:00AM +0800, kernel test robot wrote:
> Hi Oleg,
>
> FYI, the error/warning still remains.
>
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> head: 8dfce8991b95d8625d0a1d2896e42f93b9d7f68d
> commit: 488f48b32654dc6be04d9cc12f75ce030c9cb21b seqlock: Change thread_group_cputime() to use scoped_seqlock_read()
> date: 3 months ago
> config: s390-randconfig-002-20260129 (https://download.01.org/0day-ci/archive/20260129/202601290910.uwScjRjc-lkp@intel.com/config)
> compiler: s390-linux-gcc (GCC) 15.2.0
> reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260129/202601290910.uwScjRjc-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/202601290910.uwScjRjc-lkp@intel.com/
>
> All errors (new ones prefixed by >>):
>
> s390-linux-ld: kernel/sched/build_policy.o: in function `__scoped_seqlock_next':
> >> include/linux/seqlock.h:1257:(.text+0x3ee04): undefined reference to `__scoped_seqlock_bug'
>
Yeah, this is an UBSAN build, and those sanitizers keep confusing
things.
The problem is, some distros seem to actually ship with that crap on
:-(.
I need to go prod some compiler folks.
Uros, do compiler folks care about optimizer quality in the face of
UBSAN or should I go kick distros for shipping with UBSAN enabled?
If s390 isn't your cup of tea, I think Ingo has a x86 config somewhere
that shows this same.
> vim +1257 include/linux/seqlock.h
>
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1251
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1252 static inline void
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1253 __scoped_seqlock_next(struct ss_tmp *sst, seqlock_t *lock, enum ss_state target)
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1254 {
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1255 switch (sst->state) {
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1256 case ss_done:
> cc39f3872c0865 Peter Zijlstra 2025-10-09 @1257 __scoped_seqlock_bug();
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1258 return;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1259
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1260 case ss_lock:
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1261 case ss_lock_irqsave:
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1262 sst->state = ss_done;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1263 return;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1264
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1265 case ss_lockless:
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1266 if (!read_seqretry(lock, sst->data)) {
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1267 sst->state = ss_done;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1268 return;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1269 }
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1270 break;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1271 }
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1272
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1273 switch (target) {
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1274 case ss_done:
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1275 __scoped_seqlock_invalid_target();
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1276 return;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1277
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1278 case ss_lock:
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1279 sst->lock = &lock->lock;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1280 spin_lock(sst->lock);
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1281 sst->state = ss_lock;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1282 return;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1283
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1284 case ss_lock_irqsave:
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1285 sst->lock_irqsave = &lock->lock;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1286 spin_lock_irqsave(sst->lock_irqsave, sst->data);
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1287 sst->state = ss_lock_irqsave;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1288 return;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1289
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1290 case ss_lockless:
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1291 sst->data = read_seqbegin(lock);
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1292 return;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1293 }
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1294 }
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1295
>
> :::::: The code at line 1257 was first introduced by commit
> :::::: cc39f3872c0865bef992b713338df369554fa9e0 seqlock: Introduce scoped_seqlock_read()
>
> :::::: TO: Peter Zijlstra <peterz@infradead.org>
> :::::: CC: Peter Zijlstra <peterz@infradead.org>
>
> --
> 0-DAY CI Kernel Test Service
> https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 9+ messages in thread* Re: include/linux/seqlock.h:1257:undefined reference to `__scoped_seqlock_bug'
2026-01-29 9:39 ` Peter Zijlstra
@ 2026-01-29 10:26 ` Uros Bizjak
0 siblings, 0 replies; 9+ messages in thread
From: Uros Bizjak @ 2026-01-29 10:26 UTC (permalink / raw)
To: Peter Zijlstra
Cc: kernel test robot, Oleg Nesterov, oe-kbuild-all, linux-kernel,
Ingo Molnar
On Thu, Jan 29, 2026 at 10:39 AM Peter Zijlstra <peterz@infradead.org> wrote:
>
> On Thu, Jan 29, 2026 at 09:32:00AM +0800, kernel test robot wrote:
> > Hi Oleg,
> >
> > FYI, the error/warning still remains.
> >
> > tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> > head: 8dfce8991b95d8625d0a1d2896e42f93b9d7f68d
> > commit: 488f48b32654dc6be04d9cc12f75ce030c9cb21b seqlock: Change thread_group_cputime() to use scoped_seqlock_read()
> > date: 3 months ago
> > config: s390-randconfig-002-20260129 (https://download.01.org/0day-ci/archive/20260129/202601290910.uwScjRjc-lkp@intel.com/config)
> > compiler: s390-linux-gcc (GCC) 15.2.0
> > reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260129/202601290910.uwScjRjc-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/202601290910.uwScjRjc-lkp@intel.com/
> >
> > All errors (new ones prefixed by >>):
> >
> > s390-linux-ld: kernel/sched/build_policy.o: in function `__scoped_seqlock_next':
> > >> include/linux/seqlock.h:1257:(.text+0x3ee04): undefined reference to `__scoped_seqlock_bug'
> >
>
> Yeah, this is an UBSAN build, and those sanitizers keep confusing
> things.
>
> The problem is, some distros seem to actually ship with that crap on
> :-(.
>
> I need to go prod some compiler folks.
>
> Uros, do compiler folks care about optimizer quality in the face of
> UBSAN or should I go kick distros for shipping with UBSAN enabled?
>
> If s390 isn't your cup of tea, I think Ingo has a x86 config somewhere
> that shows this same.
Please file a bug in GCC bugzilla under the "sanitizer" component.
This is more a question for people that deal with sanitizers in GCC.
Thanks,
Uros.
^ permalink raw reply [flat|nested] 9+ messages in thread
* include/linux/seqlock.h:1257:undefined reference to `__scoped_seqlock_bug'
@ 2026-04-21 4:44 kernel test robot
0 siblings, 0 replies; 9+ messages in thread
From: kernel test robot @ 2026-04-21 4:44 UTC (permalink / raw)
To: Oleg Nesterov; +Cc: oe-kbuild-all, linux-kernel, Peter Zijlstra
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: b4e07588e743c989499ca24d49e752c074924a9a
commit: b76f72bea2c601afec81829ea427fc0d20f83216 seqlock: Change do_task_stat() to use scoped_seqlock_read()
date: 6 months ago
config: s390-randconfig-r121-20260421 (https://download.01.org/0day-ci/archive/20260421/202604211202.l5fYUuLq-lkp@intel.com/config)
compiler: s390-linux-gcc (GCC) 15.2.0
sparse: v0.6.5-rc1
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260421/202604211202.l5fYUuLq-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
| Fixes: b76f72bea2c6 ("seqlock: Change do_task_stat() to use scoped_seqlock_read()")
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202604211202.l5fYUuLq-lkp@intel.com/
All errors (new ones prefixed by >>):
s390-linux-ld: kernel/sched/build_policy.o: in function `thread_group_cputime':
build_policy.c:(.text+0x23958): undefined reference to `__scoped_seqlock_bug'
s390-linux-ld: fs/proc/array.o: in function `do_task_stat.isra.0':
>> include/linux/seqlock.h:1257:(.text+0x308c): undefined reference to `__scoped_seqlock_bug'
vim +1257 include/linux/seqlock.h
cc39f3872c0865 Peter Zijlstra 2025-10-09 1251
cc39f3872c0865 Peter Zijlstra 2025-10-09 1252 static inline void
cc39f3872c0865 Peter Zijlstra 2025-10-09 1253 __scoped_seqlock_next(struct ss_tmp *sst, seqlock_t *lock, enum ss_state target)
cc39f3872c0865 Peter Zijlstra 2025-10-09 1254 {
cc39f3872c0865 Peter Zijlstra 2025-10-09 1255 switch (sst->state) {
cc39f3872c0865 Peter Zijlstra 2025-10-09 1256 case ss_done:
cc39f3872c0865 Peter Zijlstra 2025-10-09 @1257 __scoped_seqlock_bug();
cc39f3872c0865 Peter Zijlstra 2025-10-09 1258 return;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1259
cc39f3872c0865 Peter Zijlstra 2025-10-09 1260 case ss_lock:
cc39f3872c0865 Peter Zijlstra 2025-10-09 1261 case ss_lock_irqsave:
cc39f3872c0865 Peter Zijlstra 2025-10-09 1262 sst->state = ss_done;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1263 return;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1264
cc39f3872c0865 Peter Zijlstra 2025-10-09 1265 case ss_lockless:
cc39f3872c0865 Peter Zijlstra 2025-10-09 1266 if (!read_seqretry(lock, sst->data)) {
cc39f3872c0865 Peter Zijlstra 2025-10-09 1267 sst->state = ss_done;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1268 return;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1269 }
cc39f3872c0865 Peter Zijlstra 2025-10-09 1270 break;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1271 }
cc39f3872c0865 Peter Zijlstra 2025-10-09 1272
cc39f3872c0865 Peter Zijlstra 2025-10-09 1273 switch (target) {
cc39f3872c0865 Peter Zijlstra 2025-10-09 1274 case ss_done:
cc39f3872c0865 Peter Zijlstra 2025-10-09 1275 __scoped_seqlock_invalid_target();
cc39f3872c0865 Peter Zijlstra 2025-10-09 1276 return;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1277
cc39f3872c0865 Peter Zijlstra 2025-10-09 1278 case ss_lock:
cc39f3872c0865 Peter Zijlstra 2025-10-09 1279 sst->lock = &lock->lock;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1280 spin_lock(sst->lock);
cc39f3872c0865 Peter Zijlstra 2025-10-09 1281 sst->state = ss_lock;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1282 return;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1283
cc39f3872c0865 Peter Zijlstra 2025-10-09 1284 case ss_lock_irqsave:
cc39f3872c0865 Peter Zijlstra 2025-10-09 1285 sst->lock_irqsave = &lock->lock;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1286 spin_lock_irqsave(sst->lock_irqsave, sst->data);
cc39f3872c0865 Peter Zijlstra 2025-10-09 1287 sst->state = ss_lock_irqsave;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1288 return;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1289
cc39f3872c0865 Peter Zijlstra 2025-10-09 1290 case ss_lockless:
cc39f3872c0865 Peter Zijlstra 2025-10-09 1291 sst->data = read_seqbegin(lock);
cc39f3872c0865 Peter Zijlstra 2025-10-09 1292 return;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1293 }
cc39f3872c0865 Peter Zijlstra 2025-10-09 1294 }
cc39f3872c0865 Peter Zijlstra 2025-10-09 1295
:::::: The code at line 1257 was first introduced by commit
:::::: cc39f3872c0865bef992b713338df369554fa9e0 seqlock: Introduce scoped_seqlock_read()
:::::: TO: Peter Zijlstra <peterz@infradead.org>
:::::: CC: Peter Zijlstra <peterz@infradead.org>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 9+ messages in thread* include/linux/seqlock.h:1257:undefined reference to `__scoped_seqlock_bug'
@ 2026-02-19 15:39 kernel test robot
0 siblings, 0 replies; 9+ messages in thread
From: kernel test robot @ 2026-02-19 15:39 UTC (permalink / raw)
To: Oleg Nesterov; +Cc: oe-kbuild-all, linux-kernel, Peter Zijlstra
Hi Oleg,
FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 2b7a25df823dc7d8f56f8ce7c2d2dac391cea9c2
commit: 488f48b32654dc6be04d9cc12f75ce030c9cb21b seqlock: Change thread_group_cputime() to use scoped_seqlock_read()
date: 4 months ago
config: s390-randconfig-r113-20260219 (https://download.01.org/0day-ci/archive/20260219/202602192356.E8iIJTI4-lkp@intel.com/config)
compiler: s390-linux-gcc (GCC) 15.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260219/202602192356.E8iIJTI4-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/202602192356.E8iIJTI4-lkp@intel.com/
All errors (new ones prefixed by >>):
s390-linux-ld: kernel/sched/build_policy.o: in function `__scoped_seqlock_next':
>> include/linux/seqlock.h:1257:(.text+0x12f20): undefined reference to `__scoped_seqlock_bug'
vim +1257 include/linux/seqlock.h
cc39f3872c0865b Peter Zijlstra 2025-10-09 1251
cc39f3872c0865b Peter Zijlstra 2025-10-09 1252 static inline void
cc39f3872c0865b Peter Zijlstra 2025-10-09 1253 __scoped_seqlock_next(struct ss_tmp *sst, seqlock_t *lock, enum ss_state target)
cc39f3872c0865b Peter Zijlstra 2025-10-09 1254 {
cc39f3872c0865b Peter Zijlstra 2025-10-09 1255 switch (sst->state) {
cc39f3872c0865b Peter Zijlstra 2025-10-09 1256 case ss_done:
cc39f3872c0865b Peter Zijlstra 2025-10-09 @1257 __scoped_seqlock_bug();
cc39f3872c0865b Peter Zijlstra 2025-10-09 1258 return;
cc39f3872c0865b Peter Zijlstra 2025-10-09 1259
cc39f3872c0865b Peter Zijlstra 2025-10-09 1260 case ss_lock:
cc39f3872c0865b Peter Zijlstra 2025-10-09 1261 case ss_lock_irqsave:
cc39f3872c0865b Peter Zijlstra 2025-10-09 1262 sst->state = ss_done;
cc39f3872c0865b Peter Zijlstra 2025-10-09 1263 return;
cc39f3872c0865b Peter Zijlstra 2025-10-09 1264
cc39f3872c0865b Peter Zijlstra 2025-10-09 1265 case ss_lockless:
cc39f3872c0865b Peter Zijlstra 2025-10-09 1266 if (!read_seqretry(lock, sst->data)) {
cc39f3872c0865b Peter Zijlstra 2025-10-09 1267 sst->state = ss_done;
cc39f3872c0865b Peter Zijlstra 2025-10-09 1268 return;
cc39f3872c0865b Peter Zijlstra 2025-10-09 1269 }
cc39f3872c0865b Peter Zijlstra 2025-10-09 1270 break;
cc39f3872c0865b Peter Zijlstra 2025-10-09 1271 }
cc39f3872c0865b Peter Zijlstra 2025-10-09 1272
cc39f3872c0865b Peter Zijlstra 2025-10-09 1273 switch (target) {
cc39f3872c0865b Peter Zijlstra 2025-10-09 1274 case ss_done:
cc39f3872c0865b Peter Zijlstra 2025-10-09 1275 __scoped_seqlock_invalid_target();
cc39f3872c0865b Peter Zijlstra 2025-10-09 1276 return;
cc39f3872c0865b Peter Zijlstra 2025-10-09 1277
cc39f3872c0865b Peter Zijlstra 2025-10-09 1278 case ss_lock:
cc39f3872c0865b Peter Zijlstra 2025-10-09 1279 sst->lock = &lock->lock;
cc39f3872c0865b Peter Zijlstra 2025-10-09 1280 spin_lock(sst->lock);
cc39f3872c0865b Peter Zijlstra 2025-10-09 1281 sst->state = ss_lock;
cc39f3872c0865b Peter Zijlstra 2025-10-09 1282 return;
cc39f3872c0865b Peter Zijlstra 2025-10-09 1283
cc39f3872c0865b Peter Zijlstra 2025-10-09 1284 case ss_lock_irqsave:
cc39f3872c0865b Peter Zijlstra 2025-10-09 1285 sst->lock_irqsave = &lock->lock;
cc39f3872c0865b Peter Zijlstra 2025-10-09 1286 spin_lock_irqsave(sst->lock_irqsave, sst->data);
cc39f3872c0865b Peter Zijlstra 2025-10-09 1287 sst->state = ss_lock_irqsave;
cc39f3872c0865b Peter Zijlstra 2025-10-09 1288 return;
cc39f3872c0865b Peter Zijlstra 2025-10-09 1289
cc39f3872c0865b Peter Zijlstra 2025-10-09 1290 case ss_lockless:
cc39f3872c0865b Peter Zijlstra 2025-10-09 1291 sst->data = read_seqbegin(lock);
cc39f3872c0865b Peter Zijlstra 2025-10-09 1292 return;
cc39f3872c0865b Peter Zijlstra 2025-10-09 1293 }
cc39f3872c0865b Peter Zijlstra 2025-10-09 1294 }
cc39f3872c0865b Peter Zijlstra 2025-10-09 1295
:::::: The code at line 1257 was first introduced by commit
:::::: cc39f3872c0865bef992b713338df369554fa9e0 seqlock: Introduce scoped_seqlock_read()
:::::: TO: Peter Zijlstra <peterz@infradead.org>
:::::: CC: Peter Zijlstra <peterz@infradead.org>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 9+ messages in thread* include/linux/seqlock.h:1257:undefined reference to `__scoped_seqlock_bug'
@ 2025-12-03 14:22 kernel test robot
2025-12-04 8:19 ` Peter Zijlstra
2025-12-04 11:05 ` Peter Zijlstra
0 siblings, 2 replies; 9+ messages in thread
From: kernel test robot @ 2025-12-03 14:22 UTC (permalink / raw)
To: Oleg Nesterov; +Cc: oe-kbuild-all, linux-kernel, Peter Zijlstra
Hi Oleg,
FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 3f9f0252130e7dd60d41be0802bf58f6471c691d
commit: 488f48b32654dc6be04d9cc12f75ce030c9cb21b seqlock: Change thread_group_cputime() to use scoped_seqlock_read()
date: 6 weeks ago
config: arm-mvebu_v5_defconfig (https://download.01.org/0day-ci/archive/20251203/202512032230.5pqkcg8x-lkp@intel.com/config)
compiler: arm-linux-gnueabi-gcc (GCC) 15.1.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251203/202512032230.5pqkcg8x-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/202512032230.5pqkcg8x-lkp@intel.com/
All errors (new ones prefixed by >>):
arm-linux-gnueabi-ld: kernel/sched/build_policy.o: in function `__scoped_seqlock_next':
>> include/linux/seqlock.h:1257:(.text+0x96a0): undefined reference to `__scoped_seqlock_bug'
vim +1257 include/linux/seqlock.h
cc39f3872c0865 Peter Zijlstra 2025-10-09 1251
cc39f3872c0865 Peter Zijlstra 2025-10-09 1252 static inline void
cc39f3872c0865 Peter Zijlstra 2025-10-09 1253 __scoped_seqlock_next(struct ss_tmp *sst, seqlock_t *lock, enum ss_state target)
cc39f3872c0865 Peter Zijlstra 2025-10-09 1254 {
cc39f3872c0865 Peter Zijlstra 2025-10-09 1255 switch (sst->state) {
cc39f3872c0865 Peter Zijlstra 2025-10-09 1256 case ss_done:
cc39f3872c0865 Peter Zijlstra 2025-10-09 @1257 __scoped_seqlock_bug();
cc39f3872c0865 Peter Zijlstra 2025-10-09 1258 return;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1259
cc39f3872c0865 Peter Zijlstra 2025-10-09 1260 case ss_lock:
cc39f3872c0865 Peter Zijlstra 2025-10-09 1261 case ss_lock_irqsave:
cc39f3872c0865 Peter Zijlstra 2025-10-09 1262 sst->state = ss_done;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1263 return;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1264
cc39f3872c0865 Peter Zijlstra 2025-10-09 1265 case ss_lockless:
cc39f3872c0865 Peter Zijlstra 2025-10-09 1266 if (!read_seqretry(lock, sst->data)) {
cc39f3872c0865 Peter Zijlstra 2025-10-09 1267 sst->state = ss_done;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1268 return;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1269 }
cc39f3872c0865 Peter Zijlstra 2025-10-09 1270 break;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1271 }
cc39f3872c0865 Peter Zijlstra 2025-10-09 1272
cc39f3872c0865 Peter Zijlstra 2025-10-09 1273 switch (target) {
cc39f3872c0865 Peter Zijlstra 2025-10-09 1274 case ss_done:
cc39f3872c0865 Peter Zijlstra 2025-10-09 1275 __scoped_seqlock_invalid_target();
cc39f3872c0865 Peter Zijlstra 2025-10-09 1276 return;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1277
cc39f3872c0865 Peter Zijlstra 2025-10-09 1278 case ss_lock:
cc39f3872c0865 Peter Zijlstra 2025-10-09 1279 sst->lock = &lock->lock;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1280 spin_lock(sst->lock);
cc39f3872c0865 Peter Zijlstra 2025-10-09 1281 sst->state = ss_lock;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1282 return;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1283
cc39f3872c0865 Peter Zijlstra 2025-10-09 1284 case ss_lock_irqsave:
cc39f3872c0865 Peter Zijlstra 2025-10-09 1285 sst->lock_irqsave = &lock->lock;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1286 spin_lock_irqsave(sst->lock_irqsave, sst->data);
cc39f3872c0865 Peter Zijlstra 2025-10-09 1287 sst->state = ss_lock_irqsave;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1288 return;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1289
cc39f3872c0865 Peter Zijlstra 2025-10-09 1290 case ss_lockless:
cc39f3872c0865 Peter Zijlstra 2025-10-09 1291 sst->data = read_seqbegin(lock);
cc39f3872c0865 Peter Zijlstra 2025-10-09 1292 return;
cc39f3872c0865 Peter Zijlstra 2025-10-09 1293 }
cc39f3872c0865 Peter Zijlstra 2025-10-09 1294 }
cc39f3872c0865 Peter Zijlstra 2025-10-09 1295
:::::: The code at line 1257 was first introduced by commit
:::::: cc39f3872c0865bef992b713338df369554fa9e0 seqlock: Introduce scoped_seqlock_read()
:::::: TO: Peter Zijlstra <peterz@infradead.org>
:::::: CC: Peter Zijlstra <peterz@infradead.org>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 9+ messages in thread* Re: include/linux/seqlock.h:1257:undefined reference to `__scoped_seqlock_bug'
2025-12-03 14:22 kernel test robot
@ 2025-12-04 8:19 ` Peter Zijlstra
2025-12-04 11:05 ` Peter Zijlstra
1 sibling, 0 replies; 9+ messages in thread
From: Peter Zijlstra @ 2025-12-04 8:19 UTC (permalink / raw)
To: kernel test robot; +Cc: Oleg Nesterov, oe-kbuild-all, linux-kernel
On Wed, Dec 03, 2025 at 10:22:28PM +0800, kernel test robot wrote:
> Hi Oleg,
>
> FYI, the error/warning still remains.
I don't have this report in my inbox. I had some for other builds, which
I fixed, but not this one.
Anyway, let me go stare at it. This is the optimizer failing in some
way.
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> head: 3f9f0252130e7dd60d41be0802bf58f6471c691d
> commit: 488f48b32654dc6be04d9cc12f75ce030c9cb21b seqlock: Change thread_group_cputime() to use scoped_seqlock_read()
> date: 6 weeks ago
> config: arm-mvebu_v5_defconfig (https://download.01.org/0day-ci/archive/20251203/202512032230.5pqkcg8x-lkp@intel.com/config)
> compiler: arm-linux-gnueabi-gcc (GCC) 15.1.0
> reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251203/202512032230.5pqkcg8x-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/202512032230.5pqkcg8x-lkp@intel.com/
>
> All errors (new ones prefixed by >>):
>
> arm-linux-gnueabi-ld: kernel/sched/build_policy.o: in function `__scoped_seqlock_next':
> >> include/linux/seqlock.h:1257:(.text+0x96a0): undefined reference to `__scoped_seqlock_bug'
>
>
> vim +1257 include/linux/seqlock.h
>
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1251
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1252 static inline void
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1253 __scoped_seqlock_next(struct ss_tmp *sst, seqlock_t *lock, enum ss_state target)
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1254 {
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1255 switch (sst->state) {
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1256 case ss_done:
> cc39f3872c0865 Peter Zijlstra 2025-10-09 @1257 __scoped_seqlock_bug();
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1258 return;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1259
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1260 case ss_lock:
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1261 case ss_lock_irqsave:
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1262 sst->state = ss_done;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1263 return;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1264
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1265 case ss_lockless:
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1266 if (!read_seqretry(lock, sst->data)) {
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1267 sst->state = ss_done;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1268 return;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1269 }
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1270 break;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1271 }
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1272
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1273 switch (target) {
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1274 case ss_done:
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1275 __scoped_seqlock_invalid_target();
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1276 return;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1277
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1278 case ss_lock:
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1279 sst->lock = &lock->lock;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1280 spin_lock(sst->lock);
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1281 sst->state = ss_lock;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1282 return;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1283
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1284 case ss_lock_irqsave:
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1285 sst->lock_irqsave = &lock->lock;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1286 spin_lock_irqsave(sst->lock_irqsave, sst->data);
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1287 sst->state = ss_lock_irqsave;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1288 return;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1289
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1290 case ss_lockless:
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1291 sst->data = read_seqbegin(lock);
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1292 return;
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1293 }
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1294 }
> cc39f3872c0865 Peter Zijlstra 2025-10-09 1295
>
> :::::: The code at line 1257 was first introduced by commit
> :::::: cc39f3872c0865bef992b713338df369554fa9e0 seqlock: Introduce scoped_seqlock_read()
>
> :::::: TO: Peter Zijlstra <peterz@infradead.org>
> :::::: CC: Peter Zijlstra <peterz@infradead.org>
>
> --
> 0-DAY CI Kernel Test Service
> https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 9+ messages in thread* Re: include/linux/seqlock.h:1257:undefined reference to `__scoped_seqlock_bug'
2025-12-03 14:22 kernel test robot
2025-12-04 8:19 ` Peter Zijlstra
@ 2025-12-04 11:05 ` Peter Zijlstra
2025-12-05 3:34 ` Oliver Sang
1 sibling, 1 reply; 9+ messages in thread
From: Peter Zijlstra @ 2025-12-04 11:05 UTC (permalink / raw)
To: kernel test robot; +Cc: Oleg Nesterov, oe-kbuild-all, linux-kernel
On Wed, Dec 03, 2025 at 10:22:28PM +0800, kernel test robot wrote:
> Hi Oleg,
>
> FYI, the error/warning still remains.
>
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> head: 3f9f0252130e7dd60d41be0802bf58f6471c691d
> commit: 488f48b32654dc6be04d9cc12f75ce030c9cb21b seqlock: Change thread_group_cputime() to use scoped_seqlock_read()
> date: 6 weeks ago
> config: arm-mvebu_v5_defconfig (https://download.01.org/0day-ci/archive/20251203/202512032230.5pqkcg8x-lkp@intel.com/config)
> compiler: arm-linux-gnueabi-gcc (GCC) 15.1.0
> arm-linux-gnueabi-ld: kernel/sched/build_policy.o: in function `__scoped_seqlock_next':
> >> include/linux/seqlock.h:1257:(.text+0x96a0): undefined reference to `__scoped_seqlock_bug'
I cannot reproduce using the gcc-15.1 toolchain from kernel.org
$ make O=tmp-build/ ARCH=arm CROSS_COMPILE=/opt/cross-15.1/bin/arm-linux-gnueabi- -j64
completes using your .config. I've tried twice now. In any case, if this
reliably fails for you, could you try:
https://lkml.kernel.org/r/20251204104332.GG2528459@noisy.programming.kicks-ass.net
perhaps it is that same problem. If not, could you perhaps hand me the
kernel/sched/build_policy.s file?
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: include/linux/seqlock.h:1257:undefined reference to `__scoped_seqlock_bug'
2025-12-04 11:05 ` Peter Zijlstra
@ 2025-12-05 3:34 ` Oliver Sang
0 siblings, 0 replies; 9+ messages in thread
From: Oliver Sang @ 2025-12-05 3:34 UTC (permalink / raw)
To: Peter Zijlstra
Cc: kernel test robot, Oleg Nesterov, oe-kbuild-all, linux-kernel,
oliver.sang
hi, Peter Zijlstra,
On Thu, Dec 04, 2025 at 12:05:04PM +0100, Peter Zijlstra wrote:
> On Wed, Dec 03, 2025 at 10:22:28PM +0800, kernel test robot wrote:
> > Hi Oleg,
> >
> > FYI, the error/warning still remains.
> >
> > tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> > head: 3f9f0252130e7dd60d41be0802bf58f6471c691d
> > commit: 488f48b32654dc6be04d9cc12f75ce030c9cb21b seqlock: Change thread_group_cputime() to use scoped_seqlock_read()
> > date: 6 weeks ago
> > config: arm-mvebu_v5_defconfig (https://download.01.org/0day-ci/archive/20251203/202512032230.5pqkcg8x-lkp@intel.com/config)
> > compiler: arm-linux-gnueabi-gcc (GCC) 15.1.0
>
> > arm-linux-gnueabi-ld: kernel/sched/build_policy.o: in function `__scoped_seqlock_next':
> > >> include/linux/seqlock.h:1257:(.text+0x96a0): undefined reference to `__scoped_seqlock_bug'
>
> I cannot reproduce using the gcc-15.1 toolchain from kernel.org
>
> $ make O=tmp-build/ ARCH=arm CROSS_COMPILE=/opt/cross-15.1/bin/arm-linux-gnueabi- -j64
>
> completes using your .config. I've tried twice now. In any case, if this
> reliably fails for you, could you try:
yes, we can reproduce reliably with the reproducer.
and yes, the issue can be fixed by below patch. thanks
Tested-by: kernel test robot <oliver.sang@intel.com>
>
> https://lkml.kernel.org/r/20251204104332.GG2528459@noisy.programming.kicks-ass.net
>
> perhaps it is that same problem. If not, could you perhaps hand me the
> kernel/sched/build_policy.s file?
>
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2026-04-21 4:45 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-01-29 1:32 include/linux/seqlock.h:1257:undefined reference to `__scoped_seqlock_bug' kernel test robot
2026-01-29 9:39 ` Peter Zijlstra
2026-01-29 10:26 ` Uros Bizjak
-- strict thread matches above, loose matches on Subject: below --
2026-04-21 4:44 kernel test robot
2026-02-19 15:39 kernel test robot
2025-12-03 14:22 kernel test robot
2025-12-04 8:19 ` Peter Zijlstra
2025-12-04 11:05 ` Peter Zijlstra
2025-12-05 3:34 ` Oliver Sang
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox