Hello,
kernel test robot noticed "BUG:using__this_cpu_read()in_preemptible" on:
commit: 558049054fe90985d650a50b6a757943a9faf646 ("srcu: Add
srcu_read_lock_lite() and srcu_read_unlock_lite()")
https://github.com/paulmckrcu/linux dev.2024.08.30b
in testcase: boot
compiler: gcc-12
test machine: qemu-system-x86_64 -enable-kvm -cpu SandyBridge -smp 2 -m 16G
(please refer to attached dmesg/kmsg for entire log/backtrace)
+------------------------------------------+------------+------------+
| | ddf16dbef6 | 558049054f |
+------------------------------------------+------------+------------+
| BUG:using__this_cpu_read()in_preemptible | 0 | 12 |
+------------------------------------------+------------+------------+
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 <l...@intel.com>
| Closes: https://lore.kernel.org/oe-lkp/202409031433.5ce7c1e3-...@intel.com
[ 10.417780][ T1] BUG: using __this_cpu_read() in preemptible [00000000]
code: swapper/0/1
[ 10.419771][ T1] caller is synchronize_srcu (kernel/rcu/srcutree.c:1242
kernel/rcu/srcutree.c:1553)
[ 10.421326][ T1] CPU: 0 UID: 0 PID: 1 Comm: swapper/0 Tainted: G
T 6.11.0-rc1-00131-g558049054fe9 #1
4f684c68116af3bbce89b0137924bdf81528bc94
[ 10.421734][ T1] Tainted: [T]=RANDSTRUCT
[ 10.421734][ T1] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996),
BIOS 1.16.2-debian-1.16.2-1 04/01/2014
[ 10.421734][ T1] Call Trace:
[ 10.421734][ T1] <TASK>
[ 10.421734][ T1] dump_stack_lvl (lib/dump_stack.c:122)
[ 10.421734][ T1] check_preemption_disabled (arch/x86/include/asm/preempt.h:84
lib/smp_processor_id.c:53)
[ 10.421734][ T1] synchronize_srcu (kernel/rcu/srcutree.c:1242
kernel/rcu/srcutree.c:1553)
[ 10.421734][ T1] kmem_cache_shrink (mm/slab_common.c:612)
[ 10.421734][ T1] acpi_os_purge_cache (drivers/acpi/osl.c:1575)
[ 10.421734][ T1] acpi_purge_cached_objects (drivers/acpi/acpica/utxface.c:238)
[ 10.421734][ T1] acpi_initialize_objects (drivers/acpi/acpica/utxfinit.c:250)
[ 10.421734][ T1] acpi_bus_init (drivers/acpi/bus.c:1365)
[ 10.421734][ T1] ? acpi_sleep_proc_init (drivers/acpi/bus.c:1334)
[ 10.421734][ T1] ? kobject_add (lib/kobject.c:374 lib/kobject.c:426)
[ 10.421734][ T1] ? kset_create_and_add (lib/kobject.c:412)
[ 10.421734][ T1] ? rcu_is_watching (include/linux/context_tracking.h:126
kernel/rcu/tree.c:737)
[ 10.421734][ T1] acpi_init (drivers/acpi/bus.c:1450)
[ 10.421734][ T1] ? acpi_bus_init (drivers/acpi/bus.c:1435)
[ 10.421734][ T1] ? rng_is_initialized (drivers/char/random.c:934)
[ 10.421734][ T1] ? acpi_bus_init (drivers/acpi/bus.c:1435)
[ 10.421734][ T1] do_one_initcall (init/main.c:1267)
[ 10.421734][ T1] ? trace_event_raw_event_initcall_level (init/main.c:1258)
[ 10.421734][ T1] ? parameq (kernel/params.c:168)
[ 10.421734][ T1] ? __kmalloc_noprof (include/trace/events/kmem.h:54
mm/slub.c:4159 mm/slub.c:4170)
[ 10.421734][ T1] do_initcalls (init/main.c:1328 init/main.c:1345)
[ 10.421734][ T1] ? rdinit_setup (init/main.c:1313)
[ 10.421734][ T1] kernel_init_freeable (init/main.c:1582)
[ 10.421734][ T1] ? rest_init (init/main.c:1465)
[ 10.421734][ T1] kernel_init (init/main.c:1469)
[ 10.421734][ T1] ? _raw_spin_unlock_irq (arch/x86/include/asm/preempt.h:103
include/linux/spinlock_api_smp.h:160 kernel/locking/spinlock.c:202)
[ 10.421734][ T1] ret_from_fork (arch/x86/kernel/process.c:153)
[ 10.421734][ T1] ? rest_init (init/main.c:1465)
[ 10.421734][ T1] ret_from_fork_asm (arch/x86/entry/entry_64.S:257)
[ 10.421734][ T1] </TASK>
[ 10.423389][ T1] BUG: using __this_cpu_read() in preemptible [00000000]
code: swapper/0/1
[ 10.424780][ T1] caller is synchronize_srcu (kernel/rcu/srcutree.c:1242
kernel/rcu/srcutree.c:1553)
[ 10.426769][ T1] CPU: 1 UID: 0 PID: 1 Comm: swapper/0 Tainted: G
T 6.11.0-rc1-00131-g558049054fe9 #1
4f684c68116af3bbce89b0137924bdf81528bc94
[ 10.434768][ T1] Tainted: [T]=RANDSTRUCT
[ 10.434768][ T1] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996),
BIOS 1.16.2-debian-1.16.2-1 04/01/2014
[ 10.438767][ T1] Call Trace:
[ 10.438767][ T1] <TASK>
[ 10.440770][ T1] dump_stack_lvl (lib/dump_stack.c:122)
[ 10.440770][ T1] check_preemption_disabled (arch/x86/include/asm/preempt.h:84
lib/smp_processor_id.c:53)
[ 10.442769][ T1] synchronize_srcu (kernel/rcu/srcutree.c:1242
kernel/rcu/srcutree.c:1553)
[ 10.444768][ T1] kmem_cache_shrink (mm/slab_common.c:612)
[ 10.444768][ T1] acpi_os_purge_cache (drivers/acpi/osl.c:1575)
[ 10.446766][ T1] acpi_purge_cached_objects (drivers/acpi/acpica/utxface.c:239)
[ 10.448764][ T1] acpi_initialize_objects (drivers/acpi/acpica/utxfinit.c:250)
[ 10.448764][ T1] acpi_bus_init (drivers/acpi/bus.c:1365)
[ 10.450765][ T1] ? acpi_sleep_proc_init (drivers/acpi/bus.c:1334)
[ 10.452766][ T1] ? kobject_add (lib/kobject.c:374 lib/kobject.c:426)
[ 10.452766][ T1] ? kset_create_and_add (lib/kobject.c:412)
[ 10.454764][ T1] ? rcu_is_watching (include/linux/context_tracking.h:126
kernel/rcu/tree.c:737)
[ 10.456780][ T1] acpi_init (drivers/acpi/bus.c:1450)
[ 10.456780][ T1] ? acpi_bus_init (drivers/acpi/bus.c:1435)
[ 10.458770][ T1] ? rng_is_initialized (drivers/char/random.c:934)
[ 10.460769][ T1] ? acpi_bus_init (drivers/acpi/bus.c:1435)
[ 10.460769][ T1] do_one_initcall (init/main.c:1267)
[ 10.462764][ T1] ? trace_event_raw_event_initcall_level (init/main.c:1258)
[ 10.464766][ T1] ? parameq (kernel/params.c:168)
[ 10.464766][ T1] ? __kmalloc_noprof (include/trace/events/kmem.h:54
mm/slub.c:4159 mm/slub.c:4170)
[ 10.466765][ T1] do_initcalls (init/main.c:1328 init/main.c:1345)
[ 10.468763][ T1] ? rdinit_setup (init/main.c:1313)
[ 10.468763][ T1] kernel_init_freeable (init/main.c:1582)
[ 10.470762][ T1] ? rest_init (init/main.c:1465)
[ 10.472766][ T1] kernel_init (init/main.c:1469)
[ 10.472766][ T1] ? _raw_spin_unlock_irq (arch/x86/include/asm/preempt.h:103
include/linux/spinlock_api_smp.h:160 kernel/locking/spinlock.c:202)
[ 10.474764][ T1] ret_from_fork (arch/x86/kernel/process.c:153)
[ 10.476765][ T1] ? rest_init (init/main.c:1465)
[ 10.476765][ T1] ret_from_fork_asm (arch/x86/entry/entry_64.S:257)
[ 10.478882][ T1] </TASK>
[ 10.481604][ T1] BUG: using __this_cpu_read() in preemptible [00000000]
code: swapper/0/1
[ 10.482582][ T1] caller is synchronize_srcu (kernel/rcu/srcutree.c:1242
kernel/rcu/srcutree.c:1553)
[ 10.483326][ T1] CPU: 0 UID: 0 PID: 1 Comm: swapper/0 Tainted: G
T 6.11.0-rc1-00131-g558049054fe9 #1
4f684c68116af3bbce89b0137924bdf81528bc94
[ 10.483734][ T1] Tainted: [T]=RANDSTRUCT
[ 10.483734][ T1] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996),
BIOS 1.16.2-debian-1.16.2-1 04/01/2014
[ 10.483734][ T1] Call Trace:
[ 10.483734][ T1] <TASK>
[ 10.483734][ T1] dump_stack_lvl (lib/dump_stack.c:122)
[ 10.483734][ T1] check_preemption_disabled (arch/x86/include/asm/preempt.h:84
lib/smp_processor_id.c:53)
[ 10.483734][ T1] synchronize_srcu (kernel/rcu/srcutree.c:1242
kernel/rcu/srcutree.c:1553)
[ 10.483734][ T1] kmem_cache_shrink (mm/slab_common.c:612)
[ 10.483734][ T1] acpi_os_purge_cache (drivers/acpi/osl.c:1575)
[ 10.483734][ T1] acpi_purge_cached_objects (drivers/acpi/acpica/utxface.c:240)
[ 10.483734][ T1] acpi_initialize_objects (drivers/acpi/acpica/utxfinit.c:250)
[ 10.483734][ T1] acpi_bus_init (drivers/acpi/bus.c:1365)
[ 10.483734][ T1] ? acpi_sleep_proc_init (drivers/acpi/bus.c:1334)
[ 10.483734][ T1] ? kobject_add (lib/kobject.c:374 lib/kobject.c:426)
[ 10.483734][ T1] ? kset_create_and_add (lib/kobject.c:412)
[ 10.483734][ T1] ? rcu_is_watching (include/linux/context_tracking.h:126
kernel/rcu/tree.c:737)
[ 10.483734][ T1] acpi_init (drivers/acpi/bus.c:1450)
[ 10.483734][ T1] ? acpi_bus_init (drivers/acpi/bus.c:1435)
[ 10.483734][ T1] ? rng_is_initialized (drivers/char/random.c:934)
[ 10.483734][ T1] ? acpi_bus_init (drivers/acpi/bus.c:1435)
[ 10.483734][ T1] do_one_initcall (init/main.c:1267)
[ 10.483734][ T1] ? trace_event_raw_event_initcall_level (init/main.c:1258)
[ 10.483734][ T1] ? parameq (kernel/params.c:168)
[ 10.483734][ T1] ? __kmalloc_noprof (include/trace/events/kmem.h:54
mm/slub.c:4159 mm/slub.c:4170)
[ 10.483734][ T1] do_initcalls (init/main.c:1328 init/main.c:1345)
[ 10.483734][ T1] ? rdinit_setup (init/main.c:1313)
[ 10.483734][ T1] kernel_init_freeable (init/main.c:1582)
[ 10.483734][ T1] ? rest_init (init/main.c:1465)
[ 10.483734][ T1] kernel_init (init/main.c:1469)
[ 10.483734][ T1] ? _raw_spin_unlock_irq (arch/x86/include/asm/preempt.h:103
include/linux/spinlock_api_smp.h:160 kernel/locking/spinlock.c:202)
[ 10.483734][ T1] ret_from_fork (arch/x86/kernel/process.c:153)
[ 10.483734][ T1] ? rest_init (init/main.c:1465)
[ 10.483734][ T1] ret_from_fork_asm (arch/x86/entry/entry_64.S:257)
[ 10.483734][ T1] </TASK>
[ 10.484500][ T1] BUG: using __this_cpu_read() in preemptible [00000000]
code: swapper/0/1
[ 10.485594][ T1] caller is synchronize_srcu (kernel/rcu/srcutree.c:1242
kernel/rcu/srcutree.c:1553)
[ 10.486311][ T1] CPU: 0 UID: 0 PID: 1 Comm: swapper/0 Tainted: G
T 6.11.0-rc1-00131-g558049054fe9 #1
4f684c68116af3bbce89b0137924bdf81528bc94
[ 10.486734][ T1] Tainted: [T]=RANDSTRUCT
[ 10.486734][ T1] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996),
BIOS 1.16.2-debian-1.16.2-1 04/01/2014
[ 10.486734][ T1] Call Trace:
[ 10.486734][ T1] <TASK>
[ 10.486734][ T1] dump_stack_lvl (lib/dump_stack.c:122)
[ 10.486734][ T1] check_preemption_disabled (arch/x86/include/asm/preempt.h:84
lib/smp_processor_id.c:53)
[ 10.486734][ T1] synchronize_srcu (kernel/rcu/srcutree.c:1242
kernel/rcu/srcutree.c:1553)
[ 10.486734][ T1] kmem_cache_shrink (mm/slab_common.c:612)
[ 10.486734][ T1] acpi_os_purge_cache (drivers/acpi/osl.c:1575)
[ 10.486734][ T1] acpi_purge_cached_objects (drivers/acpi/acpica/utxface.c:243)
[ 10.486734][ T1] acpi_initialize_objects (drivers/acpi/acpica/utxfinit.c:250)
[ 10.486734][ T1] acpi_bus_init (drivers/acpi/bus.c:1365)
[ 10.486734][ T1] ? acpi_sleep_proc_init (drivers/acpi/bus.c:1334)
[ 10.486734][ T1] ? kobject_add (lib/kobject.c:374 lib/kobject.c:426)
[ 10.486734][ T1] ? kset_create_and_add (lib/kobject.c:412)
[ 10.486734][ T1] ? rcu_is_watching (include/linux/context_tracking.h:126
kernel/rcu/tree.c:737)
[ 10.486734][ T1] acpi_init (drivers/acpi/bus.c:1450)
[ 10.486734][ T1] ? acpi_bus_init (drivers/acpi/bus.c:1435)
[ 10.486734][ T1] ? rng_is_initialized (drivers/char/random.c:934)
[ 10.486734][ T1] ? acpi_bus_init (drivers/acpi/bus.c:1435)
[ 10.486734][ T1] do_one_initcall (init/main.c:1267)
[ 10.486734][ T1] ? trace_event_raw_event_initcall_level (init/main.c:1258)
[ 10.486734][ T1] ? parameq (kernel/params.c:168)
[ 10.486734][ T1] ? __kmalloc_noprof (include/trace/events/kmem.h:54
mm/slub.c:4159 mm/slub.c:4170)
[ 10.486734][ T1] do_initcalls (init/main.c:1328 init/main.c:1345)
[ 10.486734][ T1] ? rdinit_setup (init/main.c:1313)
[ 10.486734][ T1] kernel_init_freeable (init/main.c:1582)
[ 10.486734][ T1] ? rest_init (init/main.c:1465)
[ 10.486734][ T1] kernel_init (init/main.c:1469)
[ 10.486734][ T1] ? _raw_spin_unlock_irq (arch/x86/include/asm/preempt.h:103
include/linux/spinlock_api_smp.h:160 kernel/locking/spinlock.c:202)
[ 10.486734][ T1] ret_from_fork (arch/x86/kernel/process.c:153)
[ 10.486734][ T1] ? rest_init (init/main.c:1465)
[ 10.486734][ T1] ret_from_fork_asm (arch/x86/entry/entry_64.S:257)
[ 10.486734][ T1] </TASK>
The kernel config and materials to reproduce are available at:
https://download.01.org/0day-ci/archive/20240903/202409031433.5ce7c1e3-...@intel.com
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki