bisecting cause commit starting from 510e2ceda031eed97a7a0f9aad65d271a58b460d building syzkaller on 7fb690f39a0394eb6691d7014d509c966836c8a1 testing commit 510e2ceda031eed97a7a0f9aad65d271a58b460d with gcc (GCC) 8.1.0 run #0: crashed: BUG: spinlock bad magic in rhashtable_walk_enter run #1: crashed: WARNING: locking bug in rhashtable_walk_enter run #2: crashed: KASAN: use-after-free Read in rhashtable_walk_enter run #3: crashed: KASAN: use-after-free Read in rhashtable_walk_enter run #4: crashed: KASAN: use-after-free Read in rhashtable_walk_enter run #5: crashed: KASAN: slab-out-of-bounds Read in rhashtable_walk_enter run #6: crashed: KASAN: use-after-free Read in rhashtable_walk_enter run #7: crashed: KASAN: slab-out-of-bounds Read in rhashtable_walk_enter run #8: crashed: WARNING: locking bug in rhashtable_walk_enter run #9: crashed: KASAN: use-after-free Read in rhashtable_walk_enter testing release v5.1 testing commit e93c9c99a629c61837d5a7fc2120cd2b6c70dbdd with gcc (GCC) 8.1.0 all runs: OK # git bisect start 510e2ceda031eed97a7a0f9aad65d271a58b460d v5.1 Bisecting: 5346 revisions left to test after this (roughly 12 steps) [80f232121b69cc69a31ccb2b38c1665d770b0710] Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next testing commit 80f232121b69cc69a31ccb2b38c1665d770b0710 with gcc (GCC) 8.1.0 all runs: OK # git bisect good 80f232121b69cc69a31ccb2b38c1665d770b0710 Bisecting: 2669 revisions left to test after this (roughly 11 steps) [a2d635decbfa9c1e4ae15cb05b68b2559f7f827c] Merge tag 'drm-next-2019-05-09' of git://anongit.freedesktop.org/drm/drm testing commit a2d635decbfa9c1e4ae15cb05b68b2559f7f827c with gcc (GCC) 8.1.0 all runs: OK # git bisect good a2d635decbfa9c1e4ae15cb05b68b2559f7f827c Bisecting: 1424 revisions left to test after this (roughly 10 steps) [c3b7112df86b769927a60a6d7175988ca3d60f09] fork: do not release lock that wasn't taken testing commit c3b7112df86b769927a60a6d7175988ca3d60f09 with gcc (GCC) 8.1.0 all runs: OK # git bisect good c3b7112df86b769927a60a6d7175988ca3d60f09 Bisecting: 706 revisions left to test after this (roughly 10 steps) [55472bae5331f33582d9f0e8919fed8bebcda0da] Merge tag 'linux-watchdog-5.2-rc1' of git://www.linux-watchdog.org/linux-watchdog testing commit 55472bae5331f33582d9f0e8919fed8bebcda0da with gcc (GCC) 8.1.0 all runs: OK # git bisect good 55472bae5331f33582d9f0e8919fed8bebcda0da Bisecting: 325 revisions left to test after this (roughly 9 steps) [318222a35bfb0ae9b5ff3e359a583463e6cfcd94] Merge branch 'akpm' (patches from Andrew) testing commit 318222a35bfb0ae9b5ff3e359a583463e6cfcd94 with gcc (GCC) 8.1.0 all runs: OK # git bisect good 318222a35bfb0ae9b5ff3e359a583463e6cfcd94 Bisecting: 165 revisions left to test after this (roughly 7 steps) [f8587c80c62a65c004ee838275351814b52c428c] Merge branch 'pci/printk-portdrv' testing commit f8587c80c62a65c004ee838275351814b52c428c with gcc (GCC) 8.1.0 all runs: OK # git bisect good f8587c80c62a65c004ee838275351814b52c428c Bisecting: 81 revisions left to test after this (roughly 6 steps) [280664f558c9d973315d48f125eb664cc607d089] Merge tag 'modules-for-v5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/jeyu/linux testing commit 280664f558c9d973315d48f125eb664cc607d089 with gcc (GCC) 8.1.0 all runs: OK # git bisect good 280664f558c9d973315d48f125eb664cc607d089 Bisecting: 40 revisions left to test after this (roughly 5 steps) [f4a0be84d73ec648628bf8094600ceb73cb6073f] enetc: Fix NULL dma address unmap for Tx BD extensions testing commit f4a0be84d73ec648628bf8094600ceb73cb6073f with gcc (GCC) 8.1.0 all runs: OK # git bisect good f4a0be84d73ec648628bf8094600ceb73cb6073f Bisecting: 20 revisions left to test after this (roughly 4 steps) [ba6306e3f648a857ae52ddcabc2859542fd2f94c] rhashtable: Remove RCU marking from rhash_lock_head testing commit ba6306e3f648a857ae52ddcabc2859542fd2f94c with gcc (GCC) 8.1.0 all runs: OK # git bisect good ba6306e3f648a857ae52ddcabc2859542fd2f94c Bisecting: 10 revisions left to test after this (roughly 3 steps) [b4e467c82f8c12af78b6f6fa5730cb7dea7af1b4] net: usb: qmi_wwan: add Telit 0x1260 and 0x1261 compositions testing commit b4e467c82f8c12af78b6f6fa5730cb7dea7af1b4 with gcc (GCC) 8.1.0 all runs: OK # git bisect good b4e467c82f8c12af78b6f6fa5730cb7dea7af1b4 Bisecting: 5 revisions left to test after this (roughly 3 steps) [5aee080f2cf18215dfc10ad2bb4be29fa7381050] Revert "aqc111: fix double endianness swap on BE" testing commit 5aee080f2cf18215dfc10ad2bb4be29fa7381050 with gcc (GCC) 8.1.0 run #0: crashed: KASAN: slab-out-of-bounds Read in rhashtable_walk_enter run #1: crashed: KASAN: use-after-free Read in rhashtable_walk_enter run #2: crashed: KASAN: use-after-free Read in rhashtable_walk_enter run #3: crashed: INFO: trying to register non-static key in rhashtable_walk_enter run #4: crashed: BUG: spinlock bad magic in rhashtable_walk_enter run #5: crashed: KASAN: slab-out-of-bounds Read in rhashtable_walk_enter run #6: crashed: KASAN: slab-out-of-bounds Read in rhashtable_walk_enter run #7: crashed: WARNING: locking bug in rhashtable_walk_enter run #8: crashed: KASAN: slab-out-of-bounds Read in rhashtable_walk_enter run #9: crashed: KASAN: use-after-free Read in rhashtable_walk_enter # git bisect bad 5aee080f2cf18215dfc10ad2bb4be29fa7381050 Bisecting: 2 revisions left to test after this (roughly 1 step) [61fb0d01680771f72cc9d39783fb2c122aaad51e] ipv6: prevent possible fib6 leaks testing commit 61fb0d01680771f72cc9d39783fb2c122aaad51e with gcc (GCC) 8.1.0 all runs: OK # git bisect good 61fb0d01680771f72cc9d39783fb2c122aaad51e Bisecting: 0 revisions left to test after this (roughly 1 step) [858e5400e682370d0f8d217fcd6fd6ae5b256f5f] xfrm: ressurrect "Fix uninitialized memory read in _decode_session4" testing commit 858e5400e682370d0f8d217fcd6fd6ae5b256f5f with gcc (GCC) 8.1.0 run #0: crashed: KASAN: use-after-free Read in rhashtable_walk_enter run #1: crashed: INFO: trying to register non-static key in rhashtable_walk_enter run #2: crashed: KASAN: slab-out-of-bounds Read in rhashtable_walk_enter run #3: crashed: KASAN: slab-out-of-bounds Read in rhashtable_walk_enter run #4: crashed: KASAN: use-after-free Read in rhashtable_walk_enter run #5: crashed: WARNING: locking bug in rhashtable_walk_enter run #6: crashed: KASAN: use-after-free Read in rhashtable_walk_enter run #7: crashed: KASAN: slab-out-of-bounds Read in rhashtable_walk_enter run #8: crashed: KASAN: use-after-free Read in rhashtable_walk_enter run #9: crashed: KASAN: use-after-free Read in rhashtable_walk_enter # git bisect bad 858e5400e682370d0f8d217fcd6fd6ae5b256f5f Bisecting: 0 revisions left to test after this (roughly 0 steps) [7e27e8d6130c5e88fac9ddec4249f7f2337fe7f8] tipc: switch order of device registration to fix a crash testing commit 7e27e8d6130c5e88fac9ddec4249f7f2337fe7f8 with gcc (GCC) 8.1.0 run #0: crashed: KASAN: use-after-free Read in rhashtable_walk_enter run #1: crashed: KASAN: use-after-free Read in rhashtable_walk_enter run #2: crashed: KASAN: slab-out-of-bounds Read in rhashtable_walk_enter run #3: crashed: WARNING: locking bug in rhashtable_walk_enter run #4: crashed: KASAN: slab-out-of-bounds Read in rhashtable_walk_enter run #5: crashed: KASAN: slab-out-of-bounds Read in rhashtable_walk_enter run #6: crashed: KASAN: slab-out-of-bounds Read in rhashtable_walk_enter run #7: crashed: KASAN: slab-out-of-bounds Read in rhashtable_walk_enter run #8: crashed: KASAN: slab-out-of-bounds Read in rhashtable_walk_enter run #9: crashed: WARNING: locking bug in rhashtable_walk_enter # git bisect bad 7e27e8d6130c5e88fac9ddec4249f7f2337fe7f8 7e27e8d6130c5e88fac9ddec4249f7f2337fe7f8 is the first bad commit commit 7e27e8d6130c5e88fac9ddec4249f7f2337fe7f8 Author: Junwei Hu Date: Thu May 16 10:51:15 2019 +0800 tipc: switch order of device registration to fix a crash When tipc is loaded while many processes try to create a TIPC socket, a crash occurs: PANIC: Unable to handle kernel paging request at virtual address "dfff20000000021d" pc : tipc_sk_create+0x374/0x1180 [tipc] lr : tipc_sk_create+0x374/0x1180 [tipc] Exception class = DABT (current EL), IL = 32 bits Call trace: tipc_sk_create+0x374/0x1180 [tipc] __sock_create+0x1cc/0x408 __sys_socket+0xec/0x1f0 __arm64_sys_socket+0x74/0xa8 ... This is due to race between sock_create and unfinished register_pernet_device. tipc_sk_insert tries to do "net_generic(net, tipc_net_id)". but tipc_net_id is not initialized yet. So switch the order of the two to close the race. This can be reproduced with multiple processes doing socket(AF_TIPC, ...) and one process doing module removal. Fixes: a62fbccecd62 ("tipc: make subscriber server support net namespace") Signed-off-by: Junwei Hu Reported-by: Wang Wang Reviewed-by: Xiaogang Wang Signed-off-by: David S. Miller :040000 040000 a8c27e7716c8b1c2b8a3c3758b7ed317c27a4397 576758d95f3ab1f0b4ce1c811eebe81b1322c5e1 M net revisions tested: 16, total time: 5h6m29.186250841s (build: 2h33m19.929664243s, test: 2h24m49.023600427s) first bad commit: 7e27e8d6130c5e88fac9ddec4249f7f2337fe7f8 tipc: switch order of device registration to fix a crash cc: ["davem@davemloft.net" "hujunwei4@huawei.com" "jon.maloy@ericsson.com" "linux-kernel@vger.kernel.org" "netdev@vger.kernel.org" "tipc-discussion@lists.sourceforge.net" "wangxiaogang3@huawei.com" "ying.xue@windriver.com"] crash: WARNING: locking bug in rhashtable_walk_enter ------------[ cut here ]------------ DEBUG_LOCKS_WARN_ON(class_idx > MAX_LOCKDEP_KEYS) WARNING: CPU: 1 PID: 7405 at kernel/locking/lockdep.c:3764 __lock_acquire+0x1844/0x55b0 kernel/locking/lockdep.c:3764 Kernel panic - not syncing: panic_on_warn set ... CPU: 1 PID: 7405 Comm: syz-executor.2 Not tainted 5.1.0+ #1 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0x113/0x167 lib/dump_stack.c:113 panic+0x212/0x41d kernel/panic.c:214 __warn.cold.8+0x1b/0x36 kernel/panic.c:566 report_bug+0x1a4/0x200 lib/bug.c:186 fixup_bug arch/x86/kernel/traps.c:180 [inline] do_error_trap+0x11b/0x200 arch/x86/kernel/traps.c:273 do_invalid_op+0x36/0x40 arch/x86/kernel/traps.c:292 invalid_op+0x14/0x20 arch/x86/entry/entry_64.S:972 RIP: 0010:__lock_acquire+0x1844/0x55b0 kernel/locking/lockdep.c:3764 Code: d2 0f 85 68 2b 00 00 44 8b 3d 28 e9 a5 07 45 85 ff 0f 85 80 f3 ff ff 48 c7 c6 20 bd 0a 87 48 c7 c7 00 94 0a 87 e8 1f 44 ed ff <0f> 0b e9 69 f3 ff ff 0f 0b e9 fc f1 ff ff 48 c7 c2 80 2c d5 89 48 RSP: 0018:ffff88807a18f3e0 EFLAGS: 00010086 RAX: 0000000000000000 RBX: 0000000000000003 RCX: 0000000000000000 RDX: 0000000000000000 RSI: 0000000000000004 RDI: 0000000000000000 RBP: ffff88807a18f5a0 R08: fffffbfff1072309 R09: fffffbfff1072308 R10: fffffbfff1072308 R11: ffffffff88391843 R12: 00000000a3d48cf0 R13: 00000000a3d48cf0 R14: ffff888095a56f5a R15: 0000000000000000 lock_acquire+0x173/0x3d0 kernel/locking/lockdep.c:4302 __raw_spin_lock include/linux/spinlock_api_smp.h:142 [inline] _raw_spin_lock+0x2d/0x40 kernel/locking/spinlock.c:151 spin_lock include/linux/spinlock.h:338 [inline] rhashtable_walk_enter+0xf4/0x300 lib/rhashtable.c:669 __tipc_dump_start+0x1bb/0x2c0 net/tipc/socket.c:3414 tipc_dump_start+0x6e/0x90 net/tipc/socket.c:3396 __netlink_dump_start+0x485/0x810 net/netlink/af_netlink.c:2351 netlink_dump_start include/linux/netlink.h:226 [inline] tipc_sock_diag_handler_dump+0x186/0x260 net/tipc/diag.c:91 __sock_diag_cmd net/core/sock_diag.c:232 [inline] sock_diag_rcv_msg+0x291/0x380 net/core/sock_diag.c:263 netlink_rcv_skb+0x13f/0x380 net/netlink/af_netlink.c:2486 sock_diag_rcv+0x25/0x40 net/core/sock_diag.c:274 netlink_unicast_kernel net/netlink/af_netlink.c:1311 [inline] netlink_unicast+0x444/0x640 net/netlink/af_netlink.c:1337 netlink_sendmsg+0x765/0xc50 net/netlink/af_netlink.c:1926 sock_sendmsg_nosec net/socket.c:660 [inline] sock_sendmsg+0xd6/0x100 net/socket.c:671 ___sys_sendmsg+0x658/0x960 net/socket.c:2292 __sys_sendmsg+0xd9/0x180 net/socket.c:2330 __do_sys_sendmsg net/socket.c:2339 [inline] __se_sys_sendmsg net/socket.c:2337 [inline] __x64_sys_sendmsg+0x73/0xb0 net/socket.c:2337 do_syscall_64+0xd6/0x530 arch/x86/entry/common.c:301 entry_SYSCALL_64_after_hwframe+0x49/0xbe RIP: 0033:0x458da9 Code: ad b8 fb ff c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 0f 83 7b b8 fb ff c3 66 2e 0f 1f 84 00 00 00 00 RSP: 002b:00007fd9dfe1ec78 EFLAGS: 00000246 ORIG_RAX: 000000000000002e RAX: ffffffffffffffda RBX: 0000000000000003 RCX: 0000000000458da9 RDX: 0000000000000000 RSI: 0000000020000040 RDI: 0000000000000003 RBP: 000000000073bf00 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 00007fd9dfe1f6d4 R13: 00000000004c6790 R14: 00000000004db3e8 R15: 00000000ffffffff Kernel Offset: disabled Rebooting in 86400 seconds..