[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <5e89ae97.XlZ1PbIKMXWOOfLI%lkp@intel.com>
Date: Sun, 05 Apr 2020 18:10:31 +0800
From: kernel test robot <lkp@...el.com>
To: Madhuparna Bhowmik <madhuparnabhowmik10@...il.com>
Cc: LKP <lkp@...ts.01.org>, linux-kernel@...r.kernel.org,
Amol Grover <frextrite@...il.com>,
"Paul E. McKenney" <paulmck@...nel.org>, philip.li@...el.com
Subject: db4ead2cd5 ("Default enable RCU list lockdep debugging with .."): WARNING: suspicious RCU usage
Greetings,
0day kernel testing robot got the below dmesg and the first bad commit is
https://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git dev.2020.03.21a
commit db4ead2cd52533bf97d630f5561841246c5f3725
Author: Madhuparna Bhowmik <madhuparnabhowmik10@...il.com>
AuthorDate: Fri Feb 28 14:54:51 2020 +0530
Commit: Paul E. McKenney <paulmck@...nel.org>
CommitDate: Sat Mar 21 19:50:34 2020 -0700
Default enable RCU list lockdep debugging with PROVE_RCU
This patch default enables CONFIG_PROVE_RCU_LIST option with
CONFIG_PROVE_RCU for RCU list lockdep debugging.
With this change, RCU list lockdep debugging will be default
enabled in CONFIG_PROVE_RCU=y kernels.
Most of the RCU users (in core kernel/, drivers/, and net/
subsystem) have already been modified to include lockdep
expressions hence RCU list debugging can be enabled by
default.
However, there are still chances of enountering
false-positive lockdep splats because not everything is converted,
in case RCU list primitives are used in non-RCU read-side critical
section but under the protection of a lock. It would be okay to
have a few false-positives, as long as bugs are identified, since this
patch only affects debugging kernels.
Co-developed-by: Amol Grover <frextrite@...il.com>
Signed-off-by: Amol Grover <frextrite@...il.com>
Signed-off-by: Madhuparna Bhowmik <madhuparnabhowmik10@...il.com>
Acked-by: Joel Fernandes (Google) <joel@...lfernandes.org>
Signed-off-by: Paul E. McKenney <paulmck@...nel.org>
cf8f47c8ae Documentation/locking/atomic: Add a litmus test smp_mb__after_atomic()
db4ead2cd5 Default enable RCU list lockdep debugging with PROVE_RCU
7351c51a0d MAINTAINERS: Update maintainers for new Documentaion/litmus-tests/
+-----------------------------------------------------------------------------+------------+------------+------------+
| | cf8f47c8ae | db4ead2cd5 | 7351c51a0d |
+-----------------------------------------------------------------------------+------------+------------+------------+
| boot_successes | 32 | 0 | 0 |
| boot_failures | 1 | 15 | 11 |
| BUG:kernel_hang_in_boot_stage | 1 | | |
| WARNING:suspicious_RCU_usage | 0 | 15 | 10 |
| net/netfilter/ipset/ip_set_core.c:#RCU-list_traversed_in_non-reader_section | 0 | 15 | 10 |
| net/ipv6/ip6mr.c:#RCU-list_traversed_in_non-reader_section | 0 | 15 | 10 |
| net/caif/caif_dev.c:#RCU-list_traversed_in_non-reader_section | 0 | 15 | 10 |
| kernel/kprobes.c:#RCU-list_traversed_in_non-reader_section | 0 | 4 | |
| security/device_cgroup.c:#RCU-list_traversed_in_non-reader_section | 0 | 1 | |
| net/ipv4/fib_trie.c:#RCU-list_traversed_in_non-reader_section | 0 | 1 | 2 |
| BUG:kernel_timeout_in_boot_stage | 0 | 0 | 1 |
+-----------------------------------------------------------------------------+------------+------------+------------+
If you fix the issue, kindly add following tag
Reported-by: kernel test robot <lkp@...el.com>
[ 11.651810] input device check on
[ 11.652195] Actions configured
[ 11.652952] random: get_random_u32 called from bucket_table_alloc+0x1c9/0x1f0 with crng_init=0
[ 11.653119]
[ 11.654186] =============================
[ 11.654619] WARNING: suspicious RCU usage
[ 11.655022] 5.6.0-rc1-00179-gdb4ead2cd5253 #1 Not tainted
[ 11.655583] -----------------------------
[ 11.656001] net/netfilter/ipset/ip_set_core.c:89 RCU-list traversed in non-reader section!!
[ 11.657003]
[ 11.657003] other info that might help us debug this:
[ 11.657003]
[ 11.657805]
[ 11.657805] rcu_scheduler_active = 2, debug_locks = 1
[ 11.658478] 1 lock held by swapper/1:
[ 11.658848] #0: ffffffffaf73d3a8 (ip_set_type_mutex){+.+.}, at: ip_set_type_register+0xad/0x220
[ 11.659741]
[ 11.659741] stack backtrace:
[ 11.660184] CPU: 0 PID: 1 Comm: swapper Not tainted 5.6.0-rc1-00179-gdb4ead2cd5253 #1
[ 11.660968] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.12.0-1 04/01/2014
[ 11.661802] Call Trace:
[ 11.662068] find_set_type+0x4e/0xd0
[ 11.662469] ip_set_type_register+0xcf/0x220
[ 11.662903] ? ip_set_net_init+0x173/0x173
[ 11.663322] ? rdinit_setup+0x3d/0x3d
[ 11.663723] do_one_initcall+0x180/0x3c0
[ 11.664131] ? boot_config_checksum+0x40/0x40
[ 11.664624] ? rdinit_setup+0x3d/0x3d
[ 11.664994] ? rcu_read_lock_sched_held+0x68/0x90
[ 11.665496] ? rdinit_setup+0x3d/0x3d
[ 11.665862] kernel_init_freeable+0x1e2/0x26a
[ 11.666294] ? rest_init+0x150/0x150
[ 11.666691] kernel_init+0xf/0x110
[ 11.667034] ? _raw_spin_unlock_irq+0x24/0x30
[ 11.667493] ? rest_init+0x150/0x150
[ 11.667853] ret_from_fork+0x3a/0x50
[ 11.669523] random: get_random_u32 called from cache_alloc_refill+0x5e7/0xa90 with crng_init=0
[ 11.669748] ipip: IPv4 and MPLS over IPv4 tunneling driver
[ 11.674200] Initializing XFRM netlink socket
[ 11.674883] random: get_random_u64 called from cache_random_seq_create+0x7b/0x160 with crng_init=0
[ 11.676317] NET: Registered protocol family 10
[ 11.677022]
[ 11.677242] =============================
[ 11.677668] WARNING: suspicious RCU usage
[ 11.678065] 5.6.0-rc1-00179-gdb4ead2cd5253 #1 Not tainted
[ 11.678614] -----------------------------
[ 11.679013] net/ipv6/ip6mr.c:123 RCU-list traversed in non-reader section!!
[ 11.679880]
[ 11.679880] other info that might help us debug this:
[ 11.679880]
[ 11.680672]
[ 11.680672] rcu_scheduler_active = 2, debug_locks = 1
[ 11.681297] 1 lock held by swapper/1:
[ 11.681690] #0: ffffffffaf6da050 (pernet_ops_rwsem){+.+.}, at: register_pernet_subsys+0x15/0x40
[ 11.682567]
[ 11.682567] stack backtrace:
[ 11.682996] CPU: 0 PID: 1 Comm: swapper Not tainted 5.6.0-rc1-00179-gdb4ead2cd5253 #1
[ 11.683765] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.12.0-1 04/01/2014
[ 11.684596] Call Trace:
[ 11.684858] ip6mr_get_table+0x49/0xb0
[ 11.685240] ip6mr_new_table+0x11/0x40
[ 11.685650] ip6mr_net_init+0xf0/0x208
[ 11.686032] ops_init+0x171/0x1a0
[ 11.686512] register_pernet_operations+0xe5/0x130
[ 11.686985] ? unix_sysctl_register+0xac/0xac
[ 11.687449] register_pernet_subsys+0x24/0x40
[ 11.687898] ip6_mr_init+0x42/0xe9
[ 11.688247] inet6_init+0x115/0x3a2
[ 11.688630] do_one_initcall+0x180/0x3c0
[ 11.689024] ? boot_config_checksum+0x40/0x40
[ 11.689513] ? rdinit_setup+0x3d/0x3d
[ 11.689884] ? rcu_read_lock_sched_held+0x68/0x90
[ 11.690361] ? rdinit_setup+0x3d/0x3d
[ 11.690760] kernel_init_freeable+0x1e2/0x26a
[ 11.691193] ? rest_init+0x150/0x150
[ 11.691593] kernel_init+0xf/0x110
[ 11.691946] ? _raw_spin_unlock_irq+0x24/0x30
[ 11.692378] ? rest_init+0x150/0x150
[ 11.692764] ret_from_fork+0x3a/0x50
[ 11.753551] Segment Routing with IPv6
[ 11.758974] NET: Registered protocol family 15
[ 11.759476] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 11.760073] Bluetooth: BNEP socket layer initialized
[ 11.784884] NET: Registered protocol family 33
# HH:MM RESULT GOOD BAD GOOD_BUT_DIRTY DIRTY_NOT_BAD
git bisect start 73b26e71d01ce8404dc027a706629e8929b36d1b bb6d3fb354c5ee8d6bde2d576eb7220ea09862b9 --
git bisect bad 34362bbc3d05f71ec02fcaa838ceede3d1630cf0 # 12:25 B 0 4 20 0 rcu: update.c: get rid of some doc warnings
git bisect good 748300715e5446d8c068a31cf175ff6176bf2b5c # 12:55 G 10 0 0 0 rcutorture: Make kvm-recheck-rcu.sh handle truncated lines
git bisect good 4afdf88fdb2cde22a569131a5138fe25b76b4e84 # 13:19 G 11 0 1 1 Documentation/locking/atomic: Fix atomic-set litmus test
git bisect bad c0b2582103dd8ecc5940c408476d157f375e1c35 # 14:42 B 0 2 18 0 tools/memory-model: Fix "conflict" definition
git bisect good f6640be5aa933c8463d537ef3194ae7f3ea86de0 # 15:20 G 10 0 0 0 Documentation/locking/atomic: Add a litmus test for atomic_set()
git bisect good cf8f47c8aeb07af6c4b2aeca776c273fdae0f532 # 15:52 G 10 0 0 0 Documentation/locking/atomic: Add a litmus test smp_mb__after_atomic()
git bisect bad db4ead2cd52533bf97d630f5561841246c5f3725 # 16:12 B 0 1 17 0 Default enable RCU list lockdep debugging with PROVE_RCU
# first bad commit: [db4ead2cd52533bf97d630f5561841246c5f3725] Default enable RCU list lockdep debugging with PROVE_RCU
git bisect good cf8f47c8aeb07af6c4b2aeca776c273fdae0f532 # 16:23 G 31 0 0 1 Documentation/locking/atomic: Add a litmus test smp_mb__after_atomic()
# extra tests with debug options
git bisect bad db4ead2cd52533bf97d630f5561841246c5f3725 # 16:59 B 0 4 20 0 Default enable RCU list lockdep debugging with PROVE_RCU
# extra tests on head commit of rcu/dev.2020.03.21a
git bisect bad 7351c51a0dd642488f1889ba01e53258fa8ef419 # 17:37 B 0 1 17 0 MAINTAINERS: Update maintainers for new Documentaion/litmus-tests/
# bad: [7351c51a0dd642488f1889ba01e53258fa8ef419] MAINTAINERS: Update maintainers for new Documentaion/litmus-tests/
# extra tests on revert first bad commit
git bisect good b52d80817f291a4d33804db66576edda2c4b9c04 # 18:10 G 10 0 0 0 Revert "Default enable RCU list lockdep debugging with PROVE_RCU"
# good: [b52d80817f291a4d33804db66576edda2c4b9c04] Revert "Default enable RCU list lockdep debugging with PROVE_RCU"
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/lkp@lists.01.org
Download attachment "dmesg-yocto-vm-yocto-5:20200405161343:x86_64-randconfig-e001-20200324:5.6.0-rc1-00179-gdb4ead2cd5253:1.gz" of type "application/gzip" (16823 bytes)
Download attachment "dmesg-yocto-vm-yocto-4:20200405155313:x86_64-randconfig-e001-20200324:5.6.0-rc1-00178-gcf8f47c8aeb07:1.gz" of type "application/gzip" (9517 bytes)
View attachment "reproduce-yocto-vm-yocto-5:20200405161343:x86_64-randconfig-e001-20200324:5.6.0-rc1-00179-gdb4ead2cd5253:1" of type "text/plain" (934 bytes)
Download attachment "73b26e71d01ce8404dc027a706629e8929b36d1b:gcc-7:x86_64-randconfig-e001-20200324:WARNING:suspicious_RCU_usage.xz" of type "application/x-xz" (7064 bytes)
View attachment "config-5.6.0-rc1-00179-gdb4ead2cd5253" of type "text/plain" (141749 bytes)
View attachment "config-5.6.0-rc1-00179-gdb4ead2cd5253" of type "text/plain" (141750 bytes)
Powered by blists - more mailing lists