* [linux-next:master] [kasan] 187292be96: WARNING:suspicious_RCU_usage
@ 2024-02-20 7:34 kernel test robot
2024-02-20 8:02 ` Marco Elver
0 siblings, 1 reply; 3+ messages in thread
From: kernel test robot @ 2024-02-20 7:34 UTC (permalink / raw)
To: Marco Elver
Cc: oe-lkp, lkp, Linux Memory Management List, Andrew Morton,
Andrey Konovalov, Alexander Potapenko, Dmitry Vyukov,
Andrey Ryabinin, Vincenzo Frascino, Vlastimil Babka, kasan-dev,
oliver.sang
Hello,
we noticed this is a revert commit, below report is for an issue we observed
on this commit but not on its parent. just FYI.
113edefd366346b3 187292be96ae2be247807fac1c3
---------------- ---------------------------
fail:runs %reproduction fail:runs
| | |
:6 100% 6:6 dmesg.WARNING:suspicious_RCU_usage
kernel test robot noticed "WARNING:suspicious_RCU_usage" on:
commit: 187292be96ae2be247807fac1c3a6d89a7cc2a84 ("kasan: revert eviction of stack traces in generic mode")
https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git master
in testcase: rcutorture
version:
with following parameters:
runtime: 300s
test: cpuhotplug
torture_type: busted_srcud
compiler: clang-17
test machine: qemu-system-x86_64 -enable-kvm -cpu SandyBridge -smp 2 -m 16G
(please refer to attached dmesg/kmsg for entire log/backtrace)
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 <oliver.sang@intel.com>
| Closes: https://lore.kernel.org/oe-lkp/202402201506.b7e4b9b6-oliver.sang@intel.com
[ 292.513535][ T653] WARNING: suspicious RCU usage
[ 292.514923][ T653] 6.8.0-rc4-00126-g187292be96ae #1 Not tainted
[ 292.516369][ T653] -----------------------------
[ 292.517743][ T653] kernel/rcu/rcutorture.c:1983 suspicious rcu_dereference_check() usage!
[ 292.519310][ T653]
[ 292.519310][ T653] other info that might help us debug this:
[ 292.519310][ T653]
[ 292.523130][ T653]
[ 292.523130][ T653] rcu_scheduler_active = 2, debug_locks = 1
[ 292.525644][ T653] no locks held by rcu_torture_rea/653.
[ 292.526974][ T653]
[ 292.526974][ T653] stack backtrace:
[ 292.529271][ T653] CPU: 0 PID: 653 Comm: rcu_torture_rea Not tainted 6.8.0-rc4-00126-g187292be96ae #1
[ 292.530780][ T653] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.2-debian-1.16.2-1 04/01/2014
[ 292.532329][ T653] Call Trace:
[ 292.533524][ T653] <TASK>
[ 292.534696][ T653] dump_stack_lvl (lib/dump_stack.c:?)
[ 292.535941][ T653] ? __cfi_dump_stack_lvl (lib/dump_stack.c:98)
[ 292.537221][ T653] ? lockdep_rcu_suspicious (kernel/locking/lockdep.c:6712)
[ 292.538523][ T653] rcu_torture_one_read (kernel/rcu/rcutorture.c:?) rcutorture
[ 292.539887][ T653] ? __cfi_lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4312)
[ 292.541226][ T653] ? rcu_torture_timer (kernel/rcu/rcutorture.c:1955) rcutorture
[ 292.542621][ T653] ? __cfi_rcu_torture_timer (kernel/rcu/rcutorture.c:2055) rcutorture
[ 292.544012][ T653] ? init_timer_key (include/linux/lockdep.h:135 include/linux/lockdep.h:142 include/linux/lockdep.h:148 kernel/time/timer.c:847 kernel/time/timer.c:867)
[ 292.545262][ T653] rcu_torture_reader (kernel/rcu/rcutorture.c:2093) rcutorture
[ 292.546579][ T653] ? __cfi_rcu_torture_reader (kernel/rcu/rcutorture.c:2076) rcutorture
[ 292.547872][ T653] ? __cfi__raw_spin_unlock_irqrestore (kernel/locking/spinlock.c:193)
[ 292.549108][ T653] ? __cfi_rcu_torture_timer (kernel/rcu/rcutorture.c:2055) rcutorture
[ 292.550341][ T653] ? __kthread_parkme (kernel/kthread.c:?)
[ 292.551425][ T653] ? __kthread_parkme (include/linux/instrumented.h:? include/asm-generic/bitops/instrumented-non-atomic.h:141 kernel/kthread.c:280)
[ 292.552489][ T653] kthread (kernel/kthread.c:390)
[ 292.553504][ T653] ? __cfi_rcu_torture_reader (kernel/rcu/rcutorture.c:2076) rcutorture
[ 292.554689][ T653] ? __cfi_kthread (kernel/kthread.c:341)
[ 292.555749][ T653] ret_from_fork (arch/x86/kernel/process.c:153)
[ 292.556792][ T653] ? __cfi_kthread (kernel/kthread.c:341)
[ 292.557852][ T653] ret_from_fork_asm (arch/x86/entry/entry_64.S:250)
[ 292.558920][ T653] </TASK>
The kernel config and materials to reproduce are available at:
https://download.01.org/0day-ci/archive/20240220/202402201506.b7e4b9b6-oliver.sang@intel.com
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [linux-next:master] [kasan] 187292be96: WARNING:suspicious_RCU_usage 2024-02-20 7:34 [linux-next:master] [kasan] 187292be96: WARNING:suspicious_RCU_usage kernel test robot @ 2024-02-20 8:02 ` Marco Elver 2024-02-24 2:55 ` Neeraj upadhyay 0 siblings, 1 reply; 3+ messages in thread From: Marco Elver @ 2024-02-20 8:02 UTC (permalink / raw) To: kernel test robot, Paul E. McKenney, RCU, Frederic Weisbecker, Neeraj Upadhyay, Joel Fernandes, Josh Triplett, Boqun Feng Cc: oe-lkp, lkp, Linux Memory Management List, Andrew Morton, Andrey Konovalov, Alexander Potapenko, Dmitry Vyukov, Andrey Ryabinin, Vincenzo Frascino, Vlastimil Babka, kasan-dev On Tue, 20 Feb 2024 at 08:35, kernel test robot <oliver.sang@intel.com> wrote: > > > > Hello, > > we noticed this is a revert commit, below report is for an issue we observed > on this commit but not on its parent. just FYI. > > 113edefd366346b3 187292be96ae2be247807fac1c3 > ---------------- --------------------------- > fail:runs %reproduction fail:runs > | | | > :6 100% 6:6 dmesg.WARNING:suspicious_RCU_usage > > > kernel test robot noticed "WARNING:suspicious_RCU_usage" on: > > commit: 187292be96ae2be247807fac1c3a6d89a7cc2a84 ("kasan: revert eviction of stack traces in generic mode") > https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git master This commit didn't touch rcutorture or the rcu subsystem in any way, so I currently don't understand how rcutorture would be affected. While stackdepot has started to use RCU, this already happened in a previous commit, and this particular commit actually reduced RCU usage (no more evictions and re-allocations of stacktraces). The only explanation I have is that it improved performance of a KASAN-enabled kernel (which the config here has enabled) so much that previously undiscovered issues have now become much more likely to occur. [+Cc rcu folks] > in testcase: rcutorture > version: > with following parameters: > > runtime: 300s > test: cpuhotplug > torture_type: busted_srcud > > > > compiler: clang-17 > test machine: qemu-system-x86_64 -enable-kvm -cpu SandyBridge -smp 2 -m 16G > > (please refer to attached dmesg/kmsg for entire log/backtrace) > > > > 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 <oliver.sang@intel.com> > | Closes: https://lore.kernel.org/oe-lkp/202402201506.b7e4b9b6-oliver.sang@intel.com > > > [ 292.513535][ T653] WARNING: suspicious RCU usage > [ 292.514923][ T653] 6.8.0-rc4-00126-g187292be96ae #1 Not tainted > [ 292.516369][ T653] ----------------------------- > [ 292.517743][ T653] kernel/rcu/rcutorture.c:1983 suspicious rcu_dereference_check() usage! > [ 292.519310][ T653] > [ 292.519310][ T653] other info that might help us debug this: > [ 292.519310][ T653] > [ 292.523130][ T653] > [ 292.523130][ T653] rcu_scheduler_active = 2, debug_locks = 1 > [ 292.525644][ T653] no locks held by rcu_torture_rea/653. > [ 292.526974][ T653] > [ 292.526974][ T653] stack backtrace: > [ 292.529271][ T653] CPU: 0 PID: 653 Comm: rcu_torture_rea Not tainted 6.8.0-rc4-00126-g187292be96ae #1 > [ 292.530780][ T653] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.2-debian-1.16.2-1 04/01/2014 > [ 292.532329][ T653] Call Trace: > [ 292.533524][ T653] <TASK> > [ 292.534696][ T653] dump_stack_lvl (lib/dump_stack.c:?) > [ 292.535941][ T653] ? __cfi_dump_stack_lvl (lib/dump_stack.c:98) > [ 292.537221][ T653] ? lockdep_rcu_suspicious (kernel/locking/lockdep.c:6712) > [ 292.538523][ T653] rcu_torture_one_read (kernel/rcu/rcutorture.c:?) rcutorture > [ 292.539887][ T653] ? __cfi_lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4312) > [ 292.541226][ T653] ? rcu_torture_timer (kernel/rcu/rcutorture.c:1955) rcutorture > [ 292.542621][ T653] ? __cfi_rcu_torture_timer (kernel/rcu/rcutorture.c:2055) rcutorture > [ 292.544012][ T653] ? init_timer_key (include/linux/lockdep.h:135 include/linux/lockdep.h:142 include/linux/lockdep.h:148 kernel/time/timer.c:847 kernel/time/timer.c:867) > [ 292.545262][ T653] rcu_torture_reader (kernel/rcu/rcutorture.c:2093) rcutorture > [ 292.546579][ T653] ? __cfi_rcu_torture_reader (kernel/rcu/rcutorture.c:2076) rcutorture > [ 292.547872][ T653] ? __cfi__raw_spin_unlock_irqrestore (kernel/locking/spinlock.c:193) > [ 292.549108][ T653] ? __cfi_rcu_torture_timer (kernel/rcu/rcutorture.c:2055) rcutorture > [ 292.550341][ T653] ? __kthread_parkme (kernel/kthread.c:?) > [ 292.551425][ T653] ? __kthread_parkme (include/linux/instrumented.h:? include/asm-generic/bitops/instrumented-non-atomic.h:141 kernel/kthread.c:280) > [ 292.552489][ T653] kthread (kernel/kthread.c:390) > [ 292.553504][ T653] ? __cfi_rcu_torture_reader (kernel/rcu/rcutorture.c:2076) rcutorture > [ 292.554689][ T653] ? __cfi_kthread (kernel/kthread.c:341) > [ 292.555749][ T653] ret_from_fork (arch/x86/kernel/process.c:153) > [ 292.556792][ T653] ? __cfi_kthread (kernel/kthread.c:341) > [ 292.557852][ T653] ret_from_fork_asm (arch/x86/entry/entry_64.S:250) > [ 292.558920][ T653] </TASK> > > > > The kernel config and materials to reproduce are available at: > https://download.01.org/0day-ci/archive/20240220/202402201506.b7e4b9b6-oliver.sang@intel.com > > > > -- > 0-DAY CI Kernel Test Service > https://github.com/intel/lkp-tests/wiki > ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [linux-next:master] [kasan] 187292be96: WARNING:suspicious_RCU_usage 2024-02-20 8:02 ` Marco Elver @ 2024-02-24 2:55 ` Neeraj upadhyay 0 siblings, 0 replies; 3+ messages in thread From: Neeraj upadhyay @ 2024-02-24 2:55 UTC (permalink / raw) To: Marco Elver Cc: kernel test robot, Paul E. McKenney, RCU, Frederic Weisbecker, Neeraj Upadhyay, Joel Fernandes, Josh Triplett, Boqun Feng, oe-lkp, lkp, Linux Memory Management List, Andrew Morton, Andrey Konovalov, Alexander Potapenko, Dmitry Vyukov, Andrey Ryabinin, Vincenzo Frascino, Vlastimil Babka, kasan-dev Hi, On Tue, Feb 20, 2024 at 1:33 PM Marco Elver <elver@google.com> wrote: > > On Tue, 20 Feb 2024 at 08:35, kernel test robot <oliver.sang@intel.com> wrote: > > > > > > > > Hello, > > > > we noticed this is a revert commit, below report is for an issue we observed > > on this commit but not on its parent. just FYI. > > > > 113edefd366346b3 187292be96ae2be247807fac1c3 > > ---------------- --------------------------- > > fail:runs %reproduction fail:runs > > | | | > > :6 100% 6:6 dmesg.WARNING:suspicious_RCU_usage > > > > > > kernel test robot noticed "WARNING:suspicious_RCU_usage" on: > > > > commit: 187292be96ae2be247807fac1c3a6d89a7cc2a84 ("kasan: revert eviction of stack traces in generic mode") > > https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git master > > This commit didn't touch rcutorture or the rcu subsystem in any way, > so I currently don't understand how rcutorture would be affected. > While stackdepot has started to use RCU, this already happened in a > previous commit, and this particular commit actually reduced RCU usage > (no more evictions and re-allocations of stacktraces). > > The only explanation I have is that it improved performance of a > KASAN-enabled kernel (which the config here has enabled) so much that > previously undiscovered issues have now become much more likely to > occur. > > [+Cc rcu folks] > > > in testcase: rcutorture The rcutorture test type executed here is busted_srcud (torture_type: busted_srcud). The busted_srcud torture test creates bad reader critical section usages - in this case the rcu reader lock acquired was not srcu lock, which subsequently resulted in rcu_dereference_check() to cause a splat due to srcu read lock not being held. So, this is expected behavior, and not a problem in either KASAN or RCU. Thanks Neeraj > > version: > > with following parameters: > > > > runtime: 300s > > test: cpuhotplug > > torture_type: busted_srcud > > > > > > > > compiler: clang-17 > > test machine: qemu-system-x86_64 -enable-kvm -cpu SandyBridge -smp 2 -m 16G > > > > (please refer to attached dmesg/kmsg for entire log/backtrace) > > > > > > > > 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 <oliver.sang@intel.com> > > | Closes: https://lore.kernel.org/oe-lkp/202402201506.b7e4b9b6-oliver.sang@intel.com > > > > > > [ 292.513535][ T653] WARNING: suspicious RCU usage > > [ 292.514923][ T653] 6.8.0-rc4-00126-g187292be96ae #1 Not tainted > > [ 292.516369][ T653] ----------------------------- > > [ 292.517743][ T653] kernel/rcu/rcutorture.c:1983 suspicious rcu_dereference_check() usage! > > [ 292.519310][ T653] > > [ 292.519310][ T653] other info that might help us debug this: > > [ 292.519310][ T653] > > [ 292.523130][ T653] > > [ 292.523130][ T653] rcu_scheduler_active = 2, debug_locks = 1 > > [ 292.525644][ T653] no locks held by rcu_torture_rea/653. > > [ 292.526974][ T653] > > [ 292.526974][ T653] stack backtrace: > > [ 292.529271][ T653] CPU: 0 PID: 653 Comm: rcu_torture_rea Not tainted 6.8.0-rc4-00126-g187292be96ae #1 > > [ 292.530780][ T653] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.2-debian-1.16.2-1 04/01/2014 > > [ 292.532329][ T653] Call Trace: > > [ 292.533524][ T653] <TASK> > > [ 292.534696][ T653] dump_stack_lvl (lib/dump_stack.c:?) > > [ 292.535941][ T653] ? __cfi_dump_stack_lvl (lib/dump_stack.c:98) > > [ 292.537221][ T653] ? lockdep_rcu_suspicious (kernel/locking/lockdep.c:6712) > > [ 292.538523][ T653] rcu_torture_one_read (kernel/rcu/rcutorture.c:?) rcutorture > > [ 292.539887][ T653] ? __cfi_lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4312) > > [ 292.541226][ T653] ? rcu_torture_timer (kernel/rcu/rcutorture.c:1955) rcutorture > > [ 292.542621][ T653] ? __cfi_rcu_torture_timer (kernel/rcu/rcutorture.c:2055) rcutorture > > [ 292.544012][ T653] ? init_timer_key (include/linux/lockdep.h:135 include/linux/lockdep.h:142 include/linux/lockdep.h:148 kernel/time/timer.c:847 kernel/time/timer.c:867) > > [ 292.545262][ T653] rcu_torture_reader (kernel/rcu/rcutorture.c:2093) rcutorture > > [ 292.546579][ T653] ? __cfi_rcu_torture_reader (kernel/rcu/rcutorture.c:2076) rcutorture > > [ 292.547872][ T653] ? __cfi__raw_spin_unlock_irqrestore (kernel/locking/spinlock.c:193) > > [ 292.549108][ T653] ? __cfi_rcu_torture_timer (kernel/rcu/rcutorture.c:2055) rcutorture > > [ 292.550341][ T653] ? __kthread_parkme (kernel/kthread.c:?) > > [ 292.551425][ T653] ? __kthread_parkme (include/linux/instrumented.h:? include/asm-generic/bitops/instrumented-non-atomic.h:141 kernel/kthread.c:280) > > [ 292.552489][ T653] kthread (kernel/kthread.c:390) > > [ 292.553504][ T653] ? __cfi_rcu_torture_reader (kernel/rcu/rcutorture.c:2076) rcutorture > > [ 292.554689][ T653] ? __cfi_kthread (kernel/kthread.c:341) > > [ 292.555749][ T653] ret_from_fork (arch/x86/kernel/process.c:153) > > [ 292.556792][ T653] ? __cfi_kthread (kernel/kthread.c:341) > > [ 292.557852][ T653] ret_from_fork_asm (arch/x86/entry/entry_64.S:250) > > [ 292.558920][ T653] </TASK> > > > > > > > > The kernel config and materials to reproduce are available at: > > https://download.01.org/0day-ci/archive/20240220/202402201506.b7e4b9b6-oliver.sang@intel.com > > > > > > > > -- > > 0-DAY CI Kernel Test Service > > https://github.com/intel/lkp-tests/wiki > > > ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2024-02-24 2:55 UTC | newest] Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2024-02-20 7:34 [linux-next:master] [kasan] 187292be96: WARNING:suspicious_RCU_usage kernel test robot 2024-02-20 8:02 ` Marco Elver 2024-02-24 2:55 ` Neeraj upadhyay
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox