WARNING: locking bug in __queue_work

17 views
Skip to first unread message

syzbot

unread,
Dec 12, 2018, 6:11:05 AM12/12/18
to da...@davemloft.net, kuz...@ms2.inr.ac.ru, linux-...@vger.kernel.org, net...@vger.kernel.org, syzkall...@googlegroups.com, yosh...@linux-ipv6.org
Hello,

syzbot found the following crash on:

HEAD commit: f5d582777bcb Merge branch 'for-linus' of git://git.kernel...
git tree: upstream
console output: https://syzkaller.appspot.com/x/log.txt?x=12b32705400000
kernel config: https://syzkaller.appspot.com/x/.config?x=c8970c89a0efbb23
dashboard link: https://syzkaller.appspot.com/bug?extid=6174a6c5eba4b3cdd606
compiler: gcc (GCC) 8.0.1 20180413 (experimental)
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=11cff7d5400000

IMPORTANT: if you fix the bug, please add the following tag to the commit:
Reported-by: syzbot+6174a6...@syzkaller.appspotmail.com

Enabled bearer <udp:syz1>, priority 10
Enabling of bearer <udp:syz1> rejected, already enabled
Enabling of bearer <udp:syz1> rejected, already enabled
------------[ cut here ]------------
DEBUG_LOCKS_WARN_ON(class_idx > MAX_LOCKDEP_KEYS)
WARNING: CPU: 0 PID: 7613 at kernel/locking/lockdep.c:3318
__lock_acquire+0x1615/0x4c20 kernel/locking/lockdep.c:3318
Kernel panic - not syncing: panic_on_warn set ...
CPU: 0 PID: 7613 Comm: ip Not tainted 4.20.0-rc6+ #371
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+0x244/0x39d lib/dump_stack.c:113
panic+0x2ad/0x55c kernel/panic.c:188
__warn.cold.8+0x20/0x45 kernel/panic.c:540
report_bug+0x254/0x2d0 lib/bug.c:186
fixup_bug arch/x86/kernel/traps.c:178 [inline]
do_error_trap+0x11b/0x200 arch/x86/kernel/traps.c:271
do_invalid_op+0x36/0x40 arch/x86/kernel/traps.c:290
invalid_op+0x14/0x20 arch/x86/entry/entry_64.S:973
RIP: 0010:__lock_acquire+0x1615/0x4c20 kernel/locking/lockdep.c:3318
Code: 00 00 8b 05 9d f2 b4 08 85 c0 89 84 24 98 00 00 00 0f 85 90 f3 ff ff
48 c7 c6 40 67 2b 88 48 c7 c7 a0 3c 2b 88 e8 cb 66 e7 ff <0f> 0b e9 81 f3
ff ff 48 c7 c2 e0 97 0f 8b 48 b8 00 00 00 00 00 fc
RSP: 0018:ffff8881d220eaf0 EFLAGS: 00010082
RAX: 0000000000000000 RBX: 0000000066c3d2bf RCX: 0000000000000000
RDX: 0000000000000000 RSI: ffffffff8165e495 RDI: 0000000000000006
RBP: ffff8881d220ee78 R08: ffff8881afa064c0 R09: fffffbfff12b2314
R10: fffffbfff12b2314 R11: ffffffff895918a3 R12: 0000000000000001
R13: 0000000066c3d2bf R14: ffff8881afa06d8a R15: ffff8881afa06d68
lock_acquire+0x1ed/0x520 kernel/locking/lockdep.c:3844
__raw_spin_lock include/linux/spinlock_api_smp.h:142 [inline]
_raw_spin_lock+0x2d/0x40 kernel/locking/spinlock.c:144
spin_lock include/linux/spinlock.h:329 [inline]
__queue_work+0x2ff/0x1440 kernel/workqueue.c:1417
__queue_delayed_work+0x29f/0x380 kernel/workqueue.c:1522
mod_delayed_work_on+0xe3/0x260 kernel/workqueue.c:1596
mod_delayed_work include/linux/workqueue.h:542 [inline]
addrconf_mod_dad_work+0x3b/0x90 net/ipv6/addrconf.c:328
addrconf_dad_start+0x73/0xa0 net/ipv6/addrconf.c:3976
inet6_addr_add+0x5c2/0x980 net/ipv6/addrconf.c:2930
inet6_rtm_newaddr+0x1201/0x1b90 net/ipv6/addrconf.c:4757
rtnetlink_rcv_msg+0x46a/0xc20 net/core/rtnetlink.c:4950
netlink_rcv_skb+0x172/0x440 net/netlink/af_netlink.c:2477
rtnetlink_rcv+0x1c/0x20 net/core/rtnetlink.c:4968
netlink_unicast_kernel net/netlink/af_netlink.c:1310 [inline]
netlink_unicast+0x5a5/0x760 net/netlink/af_netlink.c:1336
netlink_sendmsg+0xa18/0xfc0 net/netlink/af_netlink.c:1917
sock_sendmsg_nosec net/socket.c:621 [inline]
sock_sendmsg+0xd5/0x120 net/socket.c:631
___sys_sendmsg+0x7fd/0x930 net/socket.c:2116
__sys_sendmsg+0x11d/0x280 net/socket.c:2154
__do_sys_sendmsg net/socket.c:2163 [inline]
__se_sys_sendmsg net/socket.c:2161 [inline]
__x64_sys_sendmsg+0x78/0xb0 net/socket.c:2161
do_syscall_64+0x1b9/0x820 arch/x86/entry/common.c:290
entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x7f22c194e320
Code: 02 48 83 c8 ff eb 8d 48 8b 05 14 7b 2a 00 f7 da 64 89 10 48 83 c8 ff
eb c9 90 83 3d d5 d2 2a 00 00 75 10 b8 2e 00 00 00 0f 05 <48> 3d 01 f0 ff
ff 73 31 c3 48 83 ec 08 e8 5e ba 00 00 48 89 04 24
RSP: 002b:00007fffc0b2be98 EFLAGS: 00000246 ORIG_RAX: 000000000000002e
RAX: ffffffffffffffda RBX: 00007fffc0b30301 RCX: 00007f22c194e320
RDX: 0000000000000000 RSI: 00007fffc0b2bed0 RDI: 0000000000000003
RBP: 00007fffc0b2bed0 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 000000005c102fb3
R13: 0000000000000000 R14: 00000000006395c0 R15: 0000000000000000
Kernel Offset: disabled
Rebooting in 86400 seconds..


---
This bug is generated by a bot. It may contain errors.
See https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at syzk...@googlegroups.com.

syzbot will keep track of this bug report. See:
https://goo.gl/tpsmEJ#bug-status-tracking for how to communicate with
syzbot.
syzbot can test patches for this bug, for details see:
https://goo.gl/tpsmEJ#testing-patches

syzbot

unread,
Feb 15, 2019, 11:37:04 AM2/15/19
to da...@davemloft.net, kuz...@ms2.inr.ac.ru, linux-...@vger.kernel.org, net...@vger.kernel.org, syzkall...@googlegroups.com, yosh...@linux-ipv6.org
syzbot has found a reproducer for the following crash on:

HEAD commit: cb5b020a8d38 Revert "exec: load_script: don't blindly trun..
git tree: upstream
console output: https://syzkaller.appspot.com/x/log.txt?x=12b68c8f400000
kernel config: https://syzkaller.appspot.com/x/.config?x=ee434566c893c7b1
dashboard link: https://syzkaller.appspot.com/bug?extid=6174a6c5eba4b3cdd606
compiler: gcc (GCC) 9.0.0 20181231 (experimental)
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=11635d24c00000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=12f2ed58c00000

IMPORTANT: if you fix the bug, please add the following tag to the commit:
Reported-by: syzbot+6174a6...@syzkaller.appspotmail.com

Own node identity ac1414aa, cluster identity 4711
New replicast peer: 172.20.20.187
Enabled bearer <udp:syz1>, priority 10
------------[ cut here ]------------
DEBUG_LOCKS_WARN_ON(class_idx > MAX_LOCKDEP_KEYS)
WARNING: CPU: 0 PID: 7892 at kernel/locking/lockdep.c:3315
__lock_acquire+0x13bf/0x4700 kernel/locking/lockdep.c:3315
Kernel panic - not syncing: panic_on_warn set ...
CPU: 0 PID: 7892 Comm: syz-executor432 Not tainted 5.0.0-rc6+ #72
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+0x172/0x1f0 lib/dump_stack.c:113
panic+0x2cb/0x65c kernel/panic.c:214
__warn.cold+0x20/0x45 kernel/panic.c:571
report_bug+0x263/0x2b0 lib/bug.c:186
fixup_bug arch/x86/kernel/traps.c:178 [inline]
fixup_bug arch/x86/kernel/traps.c:173 [inline]
do_error_trap+0x11b/0x200 arch/x86/kernel/traps.c:271
do_invalid_op+0x37/0x50 arch/x86/kernel/traps.c:290
invalid_op+0x14/0x20 arch/x86/entry/entry_64.S:973
RIP: 0010:__lock_acquire+0x13bf/0x4700 kernel/locking/lockdep.c:3315
Code: 8b 1d 69 a5 05 08 45 85 db 0f 85 d6 f4 ff ff 48 c7 c6 e0 a3 6b 87 48
c7 c7 40 78 6b 87 44 89 9c 24 98 00 00 00 e8 df 29 ec ff <0f> 0b 44 8b 9c
24 98 00 00 00 e9 af f4 ff ff 8b 3d dc 67 fe 08 85
RSP: 0018:ffff8880a5467250 EFLAGS: 00010086
RAX: 0000000000000000 RBX: 00000000339133e8 RCX: 0000000000000000
RDX: 0000000000000000 RSI: ffffffff815a9266 RDI: ffffed1014a8ce3c
RBP: ffff8880a5467418 R08: ffff888092346380 R09: fffffbfff1133341
R10: fffffbfff1133340 R11: ffffffff88999a03 R12: ffff888092346c40
R13: ffff888092346c4a R14: 00000000339133e8 R15: ffff888092346380
lock_acquire+0x16f/0x3f0 kernel/locking/lockdep.c:3841
__raw_spin_lock include/linux/spinlock_api_smp.h:142 [inline]
_raw_spin_lock+0x2f/0x40 kernel/locking/spinlock.c:144
spin_lock include/linux/spinlock.h:329 [inline]
__queue_work+0x23d/0x1180 kernel/workqueue.c:1437
__queue_delayed_work+0x1d6/0x270 kernel/workqueue.c:1542
mod_delayed_work_on+0xd8/0x200 kernel/workqueue.c:1616
mod_delayed_work include/linux/workqueue.h:542 [inline]
addrconf_mod_dad_work+0x3f/0xa0 net/ipv6/addrconf.c:328
addrconf_dad_start+0x76/0xb0 net/ipv6/addrconf.c:3976
inet6_addr_add+0x4e4/0x970 net/ipv6/addrconf.c:2930
inet6_rtm_newaddr+0xb9f/0x14c0 net/ipv6/addrconf.c:4757
rtnetlink_rcv_msg+0x465/0xb00 net/core/rtnetlink.c:5130
netlink_rcv_skb+0x17a/0x460 net/netlink/af_netlink.c:2477
rtnetlink_rcv+0x1d/0x30 net/core/rtnetlink.c:5148
netlink_unicast_kernel net/netlink/af_netlink.c:1310 [inline]
netlink_unicast+0x536/0x720 net/netlink/af_netlink.c:1336
netlink_sendmsg+0x8ae/0xd70 net/netlink/af_netlink.c:1917
sock_sendmsg_nosec net/socket.c:621 [inline]
sock_sendmsg+0xdd/0x130 net/socket.c:631
__sys_sendto+0x262/0x380 net/socket.c:1786
__do_sys_sendto net/socket.c:1798 [inline]
__se_sys_sendto net/socket.c:1794 [inline]
__x64_sys_sendto+0xe1/0x1a0 net/socket.c:1794
do_syscall_64+0x103/0x610 arch/x86/entry/common.c:290
entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x404073
Code: ff 0f 83 d0 0a 00 00 c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00
83 3d 1d 1f 3f 00 00 75 17 49 89 ca b8 2c 00 00 00 0f 05 <48> 3d 01 f0 ff
ff 0f 83 a1 0a 00 00 c3 48 83 ec 08 e8 57 01 00 00
RSP: 002b:00000000007efa18 EFLAGS: 00000246 ORIG_RAX: 000000000000002c
RAX: ffffffffffffffda RBX: 0000000000000003 RCX: 0000000000404073
RDX: 0000000000000040 RSI: 00000000007f0070 RDI: 0000000000000003
RBP: 00000000007efa80 R08: 00000000007efa20 R09: 000000000000000c
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000003
R13: 00000000004abc6c R14: 0000000000000000 R15: 0000000000000006

syzbot

unread,
Mar 16, 2019, 10:49:02 AM3/16/19
to da...@davemloft.net, jon....@ericsson.com, kees...@chromium.org, kuz...@ms2.inr.ac.ru, linux-...@vger.kernel.org, lu...@amacapital.net, net...@vger.kernel.org, syzkall...@googlegroups.com, tipc-di...@lists.sourceforge.net, w...@chromium.org, ying...@windriver.com, yosh...@linux-ipv6.org
syzbot has bisected this bug to:

commit 52dfae5c85a4c1078e9f1d5e8947d4a25f73dd81
Author: Jon Maloy <jon....@ericsson.com>
Date: Thu Mar 22 19:42:52 2018 +0000

tipc: obtain node identity from interface by default

bisection log: https://syzkaller.appspot.com/x/bisect.txt?x=152adcd7200000
start commit: 52dfae5c tipc: obtain node identity from interface by defa..
git tree: upstream
final crash: https://syzkaller.appspot.com/x/report.txt?x=172adcd7200000
console output: https://syzkaller.appspot.com/x/log.txt?x=132adcd7200000
Reported-by: syzbot+6174a6...@syzkaller.appspotmail.com
Fixes: 52dfae5c ("tipc: obtain node identity from interface by default")

syzbot

unread,
Jun 17, 2020, 2:34:05 PM6/17/20
to agru...@redhat.com, b...@alien8.de, cluste...@redhat.com, da...@davemloft.net, h...@zytor.com, jon....@ericsson.com, kees...@chromium.org, konra...@oracle.com, kuz...@ms2.inr.ac.ru, len....@intel.com, linux-...@vger.kernel.org, lu...@amacapital.net, mi...@redhat.com, net...@vger.kernel.org, nst...@suse.de, pu...@hygon.cn, rpet...@redhat.com, syzkall...@googlegroups.com, tg...@linutronix.de, tipc-di...@lists.sourceforge.net, w...@chromium.org, wang...@zte.com.cn, x...@kernel.org, ying...@windriver.com, yosh...@linux-ipv6.org
syzbot suspects this bug was fixed by commit:

commit ea22eee4e6027d8927099de344f7fff43c507ef9
Author: Bob Peterson <rpet...@redhat.com>
Date: Wed Apr 29 13:45:54 2020 +0000

gfs2: Allow lock_nolock mount to specify jid=X

bisection log: https://syzkaller.appspot.com/x/bisect.txt?x=16fcf249100000
start commit: fe5cdef2 Merge tag 'for-linus-5.1-2' of git://github.com/c..
git tree: upstream
kernel config: https://syzkaller.appspot.com/x/.config?x=856fc6d0fbbeede9
dashboard link: https://syzkaller.appspot.com/bug?extid=6174a6c5eba4b3cdd606
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=17f6c7e3200000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=101507fd200000

If the result looks correct, please mark the bug fixed by replying with:

#syz fix: gfs2: Allow lock_nolock mount to specify jid=X

For information about bisection process see: https://goo.gl/tpsmEJ#bisection
Reply all
Reply to author
Forward
0 new messages