================================================================== BUG: KASAN: use-after-free in __lock_acquire+0x2cb4/0x3ff0 syzkaller/managers/linux-4-19/kernel/kernel/locking/lockdep.c:3294 Read of size 8 at addr ffff8880aa2cd2e0 by task syz-executor.0/8132 CPU: 0 PID: 8132 Comm: syz-executor.0 Not tainted 4.19.172-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack syzkaller/managers/linux-4-19/kernel/lib/dump_stack.c:77 [inline] dump_stack+0x1fc/0x2ef syzkaller/managers/linux-4-19/kernel/lib/dump_stack.c:118 print_address_description.cold+0x54/0x219 syzkaller/managers/linux-4-19/kernel/mm/kasan/report.c:256 kasan_report_error.cold+0x8a/0x1b9 syzkaller/managers/linux-4-19/kernel/mm/kasan/report.c:354 kasan_report syzkaller/managers/linux-4-19/kernel/mm/kasan/report.c:412 [inline] __asan_report_load8_noabort+0x88/0x90 syzkaller/managers/linux-4-19/kernel/mm/kasan/report.c:433 __lock_acquire+0x2cb4/0x3ff0 syzkaller/managers/linux-4-19/kernel/kernel/locking/lockdep.c:3294 lock_acquire+0x170/0x3c0 syzkaller/managers/linux-4-19/kernel/kernel/locking/lockdep.c:3907 __raw_spin_lock_bh syzkaller/managers/linux-4-19/kernel/./include/linux/spinlock_api_smp.h:135 [inline] _raw_spin_lock_bh+0x2f/0x40 syzkaller/managers/linux-4-19/kernel/kernel/locking/spinlock.c:168 spin_lock_bh syzkaller/managers/linux-4-19/kernel/./include/linux/spinlock.h:334 [inline] lock_sock_nested+0x3b/0x110 syzkaller/managers/linux-4-19/kernel/net/core/sock.c:2864 l2cap_sock_teardown_cb+0xa0/0x6d0 syzkaller/managers/linux-4-19/kernel/net/bluetooth/l2cap_sock.c:1340 l2cap_chan_del+0xbc/0xa50 syzkaller/managers/linux-4-19/kernel/net/bluetooth/l2cap_core.c:599 l2cap_conn_del+0x3a6/0x6e0 syzkaller/managers/linux-4-19/kernel/net/bluetooth/l2cap_core.c:1729 l2cap_disconn_cfm syzkaller/managers/linux-4-19/kernel/net/bluetooth/l2cap_core.c:7441 [inline] l2cap_disconn_cfm+0x98/0xd0 syzkaller/managers/linux-4-19/kernel/net/bluetooth/l2cap_core.c:7434 hci_disconn_cfm syzkaller/managers/linux-4-19/kernel/./include/net/bluetooth/hci_core.h:1261 [inline] hci_conn_hash_flush+0x127/0x260 syzkaller/managers/linux-4-19/kernel/net/bluetooth/hci_conn.c:1512 hci_dev_do_close+0x659/0xf10 syzkaller/managers/linux-4-19/kernel/net/bluetooth/hci_core.c:1666 hci_unregister_dev+0x18b/0x910 syzkaller/managers/linux-4-19/kernel/net/bluetooth/hci_core.c:3271 vhci_release+0x70/0xe0 syzkaller/managers/linux-4-19/kernel/drivers/bluetooth/hci_vhci.c:354 __fput+0x2ce/0x890 syzkaller/managers/linux-4-19/kernel/fs/file_table.c:278 task_work_run+0x148/0x1c0 syzkaller/managers/linux-4-19/kernel/kernel/task_work.c:113 exit_task_work syzkaller/managers/linux-4-19/kernel/./include/linux/task_work.h:22 [inline] do_exit+0xbf3/0x2be0 syzkaller/managers/linux-4-19/kernel/kernel/exit.c:870 do_group_exit+0x125/0x310 syzkaller/managers/linux-4-19/kernel/kernel/exit.c:967 __do_sys_exit_group syzkaller/managers/linux-4-19/kernel/kernel/exit.c:978 [inline] __se_sys_exit_group syzkaller/managers/linux-4-19/kernel/kernel/exit.c:976 [inline] __x64_sys_exit_group+0x3a/0x50 syzkaller/managers/linux-4-19/kernel/kernel/exit.c:976 do_syscall_64+0xf9/0x620 syzkaller/managers/linux-4-19/kernel/arch/x86/entry/common.c:293 entry_SYSCALL_64_after_hwframe+0x49/0xbe RIP: 0033:0x465b09 Code: 00 e9 30 ff ff ff 83 f9 77 75 26 48 83 b8 d8 00 00 00 00 7c e2 83 f9 72 75 10 80 78 19 00 74 0a b9 03 00 00 00 e9 0c ff ff ff <31> c9 e9 05 ff ff ff 83 f9 72 eb e2 e8 c6 35 00 00 e9 c1 fe ff ff RSP: 002b:00007ffc60227a18 EFLAGS: 00000246 ORIG_RAX: 00000000000000e7 RAX: ffffffffffffffda RBX: 0000000000002852 RCX: 0000000000465b09 RDX: 0000000000000000 RSI: 0000000000000001 RDI: 0000000000000043 RBP: 00000000004b0265 R08: 000000000000000b R09: 0000000000000005 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 000000000018c513 R14: 0000000000000005 R15: 00007ffc60227c00 Allocated by task 18925: __do_kmalloc syzkaller/managers/linux-4-19/kernel/mm/slab.c:3727 [inline] __kmalloc+0x15a/0x3c0 syzkaller/managers/linux-4-19/kernel/mm/slab.c:3736 kmalloc syzkaller/managers/linux-4-19/kernel/./include/linux/slab.h:520 [inline] sk_prot_alloc+0x1e2/0x2d0 syzkaller/managers/linux-4-19/kernel/net/core/sock.c:1466 sk_alloc+0x36/0xec0 syzkaller/managers/linux-4-19/kernel/net/core/sock.c:1520 l2cap_sock_alloc.constprop.0+0x31/0x210 syzkaller/managers/linux-4-19/kernel/net/bluetooth/l2cap_sock.c:1617 l2cap_sock_create+0x123/0x1f0 syzkaller/managers/linux-4-19/kernel/net/bluetooth/l2cap_sock.c:1663 bt_sock_create+0x154/0x2a0 syzkaller/managers/linux-4-19/kernel/net/bluetooth/af_bluetooth.c:130 __sock_create+0x3d8/0x740 syzkaller/managers/linux-4-19/kernel/net/socket.c:1276 sock_create syzkaller/managers/linux-4-19/kernel/net/socket.c:1316 [inline] __sys_socket+0xef/0x200 syzkaller/managers/linux-4-19/kernel/net/socket.c:1346 __do_sys_socket syzkaller/managers/linux-4-19/kernel/net/socket.c:1355 [inline] __se_sys_socket syzkaller/managers/linux-4-19/kernel/net/socket.c:1353 [inline] __x64_sys_socket+0x6f/0xb0 syzkaller/managers/linux-4-19/kernel/net/socket.c:1353 do_syscall_64+0xf9/0x620 syzkaller/managers/linux-4-19/kernel/arch/x86/entry/common.c:293 entry_SYSCALL_64_after_hwframe+0x49/0xbe Freed by task 18924: __cache_free syzkaller/managers/linux-4-19/kernel/mm/slab.c:3503 [inline] kfree+0xcc/0x210 syzkaller/managers/linux-4-19/kernel/mm/slab.c:3822 sk_prot_free syzkaller/managers/linux-4-19/kernel/net/core/sock.c:1503 [inline] __sk_destruct+0x684/0x8a0 syzkaller/managers/linux-4-19/kernel/net/core/sock.c:1584 sk_destruct syzkaller/managers/linux-4-19/kernel/net/core/sock.c:1599 [inline] __sk_free+0x165/0x3b0 syzkaller/managers/linux-4-19/kernel/net/core/sock.c:1610 sk_free+0x3b/0x50 syzkaller/managers/linux-4-19/kernel/net/core/sock.c:1621 sock_put syzkaller/managers/linux-4-19/kernel/./include/net/sock.h:1711 [inline] l2cap_sock_kill.part.0+0x124/0x150 syzkaller/managers/linux-4-19/kernel/net/bluetooth/l2cap_sock.c:1055 l2cap_sock_kill syzkaller/managers/linux-4-19/kernel/net/bluetooth/l2cap_sock.c:1046 [inline] l2cap_sock_release+0x1e6/0x290 syzkaller/managers/linux-4-19/kernel/net/bluetooth/l2cap_sock.c:1209 __sock_release+0xcd/0x2a0 syzkaller/managers/linux-4-19/kernel/net/socket.c:579 sock_close+0x15/0x20 syzkaller/managers/linux-4-19/kernel/net/socket.c:1140 __fput+0x2ce/0x890 syzkaller/managers/linux-4-19/kernel/fs/file_table.c:278 task_work_run+0x148/0x1c0 syzkaller/managers/linux-4-19/kernel/kernel/task_work.c:113 tracehook_notify_resume syzkaller/managers/linux-4-19/kernel/./include/linux/tracehook.h:193 [inline] exit_to_usermode_loop+0x251/0x2a0 syzkaller/managers/linux-4-19/kernel/arch/x86/entry/common.c:167 prepare_exit_to_usermode syzkaller/managers/linux-4-19/kernel/arch/x86/entry/common.c:198 [inline] syscall_return_slowpath syzkaller/managers/linux-4-19/kernel/arch/x86/entry/common.c:271 [inline] do_syscall_64+0x538/0x620 syzkaller/managers/linux-4-19/kernel/arch/x86/entry/common.c:296 entry_SYSCALL_64_after_hwframe+0x49/0xbe The buggy address belongs to the object at ffff8880aa2cd240 which belongs to the cache kmalloc-2048 of size 2048 The buggy address is located 160 bytes inside of 2048-byte region [ffff8880aa2cd240, ffff8880aa2cda40) The buggy address belongs to the page: page:ffffea0002a8b300 count:1 mapcount:0 mapping:ffff88813bff0c40 index:0x0 compound_mapcount: 0 flags: 0xfff00000008100(slab|head) raw: 00fff00000008100 ffffea00027e6488 ffffea0002a68308 ffff88813bff0c40 raw: 0000000000000000 ffff8880aa2cc140 0000000100000003 0000000000000000 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff8880aa2cd180: fb fb fb fb fb fb fb fb fc fc fc fc fc fc fc fc ffff8880aa2cd200: fc fc fc fc fc fc fc fc fb fb fb fb fb fb fb fb >ffff8880aa2cd280: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ^ ffff8880aa2cd300: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ffff8880aa2cd380: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ==================================================================