Subject: WARNING in lockdep_unregister_key

From: syzbot <[email-masked]>
Date: Mon, 11 Mar 2019 07:12:05 -0700

Hello,

syzbot found the following crash on:

HEAD commit:    12ad143e Merge branch 'perf-urgent-for-linus' of git://git..
git tree:       upstream
console output: https://syzkaller.appspot.com/x/log.txt?x=15e7404d200000
kernel config:  https://syzkaller.appspot.com/x/.config?x=e9d91b7192a5e96e
dashboard link: https://syzkaller.appspot.com/bug?extid=be0c198232f86389c3dd
compiler:       gcc (GCC) 9.0.0 20181231 (experimental)
userspace arch: amd64
syz repro:      https://syzkaller.appspot.com/x/repro.syz?x=1006dc83200000
C reproducer:   https://syzkaller.appspot.com/x/repro.c?x=137d0027200000

IMPORTANT: if you fix the bug, please add the following tag to the commit:
Reported-by: [email-masked]

RAX: ffffffffffffffda RBX: 0000000000000003 RCX: 0000000000441019
RDX: 0000000000000001 RSI: 00000000400455c8 RDI: 0000000000000003
RBP: 00007ffee4c7fe00 R08: 0000000000000001 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: ffffffffffffffff
R13: 0000000000000004 R14: 0000000000000000 R15: 0000000000000000
WARNING: CPU: 0 PID: 7719 at kernel/locking/lockdep.c:4925  
lockdep_unregister_key+0x1ef/0x4c0 kernel/locking/lockdep.c:4925
Kernel panic - not syncing: panic_on_warn set ...
CPU: 0 PID: 7719 Comm: syz-executor066 Not tainted 5.0.0+ #17
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:179 [inline]
  fixup_bug arch/x86/kernel/traps.c:174 [inline]
  do_error_trap+0x11b/0x200 arch/x86/kernel/traps.c:272
  do_invalid_op+0x37/0x50 arch/x86/kernel/traps.c:291
  invalid_op+0x14/0x20 arch/x86/entry/entry_64.S:973
RIP: 0010:lockdep_unregister_key+0x1ef/0x4c0 kernel/locking/lockdep.c:4925
Code: 00 00 00 00 00 fc ff df 4c 89 c2 48 c1 ea 03 80 3c 02 00 0f 85 c9 02  
00 00 48 b8 00 02 00 00 00 00 ad de 49 89 44 24 08 eb 02 <0f> 0b ba 01 00  
00 00 4c 89 e6 4c 89 ff e8 8f de ff ff 4c 89 ff e8
RSP: 0018:ffff88808cd37950 EFLAGS: 00010046
RAX: dffffc0000000000 RBX: 0000000000000000 RCX: 1ffffffff12bad2b
RDX: 1ffffffff1465a7c RSI: 0000000000000000 RDI: ffffffff8a32d3e0
RBP: ffff88808cd37980 R08: 1ffff110119a6f1e R09: ffffed10119a6f1f
R10: ffffed10119a6f1e R11: 0000000000000003 R12: ffff888095231398
R13: dffffc0000000000 R14: 0000000000000282 R15: ffffffff8a0a6748
  wq_unregister_lockdep kernel/workqueue.c:3455 [inline]
  alloc_workqueue+0xc52/0xf30 kernel/workqueue.c:4296
  hci_register_dev+0x1b8/0x860 net/bluetooth/hci_core.c:3288
  hci_uart_register_dev drivers/bluetooth/hci_ldisc.c:676 [inline]
  hci_uart_set_proto drivers/bluetooth/hci_ldisc.c:700 [inline]
  hci_uart_tty_ioctl+0x766/0xb00 drivers/bluetooth/hci_ldisc.c:754
  tty_ioctl+0xac9/0x14d0 drivers/tty/tty_io.c:2664
  vfs_ioctl fs/ioctl.c:46 [inline]
  file_ioctl fs/ioctl.c:509 [inline]
  do_vfs_ioctl+0xd6e/0x1390 fs/ioctl.c:696
  ksys_ioctl+0xab/0xd0 fs/ioctl.c:713
  __do_sys_ioctl fs/ioctl.c:720 [inline]
  __se_sys_ioctl fs/ioctl.c:718 [inline]
  __x64_sys_ioctl+0x73/0xb0 fs/ioctl.c:718
  do_syscall_64+0x103/0x610 arch/x86/entry/common.c:290
  entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x441019
Code: e8 0c ad 02 00 48 83 c4 18 c3 0f 1f 80 00 00 00 00 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 bb 0a fc ff c3 66 2e 0f 1f 84 00 00 00 00
RSP: 002b:00007ffee4c7fde8 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 0000000000000003 RCX: 0000000000441019
RDX: 0000000000000001 RSI: 00000000400455c8 RDI: 0000000000000003
RBP: 00007ffee4c7fe00 R08: 0000000000000001 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: ffffffffffffffff
R13: 0000000000000004 R14: 0000000000000000 R15: 0000000000000000
Shutting down cpus with NMI
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 [email-masked].

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