BUG: kernel NULL pointer dereference, address: 0000000000000138 #PF: supervisor read access in kernel mode #PF: error_code(0x0000) - not-present page PGD 101b98067 P4D 101b98067 PUD 106baa067 PMD 0 Oops: 0000 [#1] PREEMPT SMP CPU: 1 PID: 22 Comm: kworker/1:0 Not tainted 6.5.0-rc7-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 08/04/2023 Workqueue: events l2cap_info_timeout RIP: 0010:__lock_acquire.constprop.0+0x2f2/0x540 kernel/locking/lockdep.c:5016 Code: 0a 48 83 f8 ff 0f 85 a1 01 00 00 0f b7 45 20 66 25 ff 1f 66 89 44 24 16 0f b6 45 22 83 e0 03 88 44 24 10 e9 6d fe ff ff 89 f0 <48> 8b 44 c7 08 48 85 c0 0f 85 68 fd ff ff e9 39 fd ff ff e8 c6 8d RSP: 0018:ffffc900000c3c98 EFLAGS: 00010097 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000 RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000130 RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000001 R12: 0000000000000000 R13: 0000000000000000 R14: ffff88810267b680 R15: 0000000000000200 FS: 0000000000000000(0000) GS:ffff888237d00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000000000000138 CR3: 0000000101b3b000 CR4: 00000000003506e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: lock_acquire kernel/locking/lockdep.c:5761 [inline] lock_acquire+0xab/0x180 kernel/locking/lockdep.c:5726 lock_sock_nested+0x2d/0x70 net/core/sock.c:3504 lock_sock include/net/sock.h:1716 [inline] l2cap_sock_ready_cb+0x17/0x60 net/bluetooth/l2cap_sock.c:1630 l2cap_chan_ready net/bluetooth/l2cap_core.c:1365 [inline] l2cap_conn_start+0x75/0x340 net/bluetooth/l2cap_core.c:1640 process_one_work+0x297/0x4f0 kernel/workqueue.c:2600 worker_thread+0x4e/0x330 kernel/workqueue.c:2751 kthread+0xde/0x110 kernel/kthread.c:389 ret_from_fork+0x2c/0x40 arch/x86/kernel/process.c:145 ret_from_fork_asm+0x11/0x20 arch/x86/entry/entry_64.S:304 Modules linked in: CR2: 0000000000000138 ---[ end trace 0000000000000000 ]--- RIP: 0010:__lock_acquire.constprop.0+0x2f2/0x540 kernel/locking/lockdep.c:5016 Code: 0a 48 83 f8 ff 0f 85 a1 01 00 00 0f b7 45 20 66 25 ff 1f 66 89 44 24 16 0f b6 45 22 83 e0 03 88 44 24 10 e9 6d fe ff ff 89 f0 <48> 8b 44 c7 08 48 85 c0 0f 85 68 fd ff ff e9 39 fd ff ff e8 c6 8d RSP: 0018:ffffc900000c3c98 EFLAGS: 00010097 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000 RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000130 RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000001 R12: 0000000000000000 R13: 0000000000000000 R14: ffff88810267b680 R15: 0000000000000200 FS: 0000000000000000(0000) GS:ffff888237d00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000000000000138 CR3: 0000000101b3b000 CR4: 00000000003506e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 ---------------- Code disassembly (best guess): 0: 0a 48 83 or -0x7d(%rax),%cl 3: f8 clc 4: ff 0f decl (%rdi) 6: 85 a1 01 00 00 0f test %esp,0xf000001(%rcx) c: b7 45 mov $0x45,%bh e: 20 66 25 and %ah,0x25(%rsi) 11: ff 1f lcall *(%rdi) 13: 66 89 44 24 16 mov %ax,0x16(%rsp) 18: 0f b6 45 22 movzbl 0x22(%rbp),%eax 1c: 83 e0 03 and $0x3,%eax 1f: 88 44 24 10 mov %al,0x10(%rsp) 23: e9 6d fe ff ff jmp 0xfffffe95 28: 89 f0 mov %esi,%eax * 2a: 48 8b 44 c7 08 mov 0x8(%rdi,%rax,8),%rax <-- trapping instruction 2f: 48 85 c0 test %rax,%rax 32: 0f 85 68 fd ff ff jne 0xfffffda0 38: e9 39 fd ff ff jmp 0xfffffd76 3d: e8 .byte 0xe8 3e: c6 (bad) 3f: 8d .byte 0x8d