lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
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

Powered by Openwall GNU/*/Linux Powered by OpenVZ