================================================================== BUG: KASAN: slab-use-after-free in instrument_atomic_read_write include/linux/instrumented.h:96 [inline] BUG: KASAN: slab-use-after-free in atomic_fetch_add_relaxed include/linux/atomic/atomic-instrumented.h:252 [inline] BUG: KASAN: slab-use-after-free in __refcount_add include/linux/refcount.h:182 [inline] BUG: KASAN: slab-use-after-free in __refcount_inc include/linux/refcount.h:239 [inline] BUG: KASAN: slab-use-after-free in refcount_inc include/linux/refcount.h:256 [inline] BUG: KASAN: slab-use-after-free in sock_hold include/net/sock.h:760 [inline] BUG: KASAN: slab-use-after-free in sco_conn_del+0x9c/0x498 net/bluetooth/sco.c:195 Write of size 4 at addr ffff0000f4d10080 by task syz-executor.3/5034 CPU: 1 PID: 5034 Comm: syz-executor.3 Not tainted 6.8.0-rc7-syzkaller-g707081b61156 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/25/2024 Call trace: dump_backtrace+0x1b8/0x1e4 arch/arm64/kernel/stacktrace.c:291 show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:298 __dump_stack lib/dump_stack.c:88 [inline] dump_stack_lvl+0xd0/0x124 lib/dump_stack.c:106 print_address_description mm/kasan/report.c:377 [inline] print_report+0x178/0x518 mm/kasan/report.c:488 kasan_report+0xd8/0x138 mm/kasan/report.c:601 kasan_check_range+0x254/0x294 mm/kasan/generic.c:189 __kasan_check_write+0x20/0x30 mm/kasan/shadow.c:37 instrument_atomic_read_write include/linux/instrumented.h:96 [inline] atomic_fetch_add_relaxed include/linux/atomic/atomic-instrumented.h:252 [inline] __refcount_add include/linux/refcount.h:182 [inline] __refcount_inc include/linux/refcount.h:239 [inline] refcount_inc include/linux/refcount.h:256 [inline] sock_hold include/net/sock.h:760 [inline] sco_conn_del+0x9c/0x498 net/bluetooth/sco.c:195 sco_disconn_cfm+0x8c/0xdc net/bluetooth/sco.c:1371 hci_disconn_cfm include/net/bluetooth/hci_core.h:2001 [inline] hci_conn_hash_flush+0x100/0x220 net/bluetooth/hci_conn.c:2645 hci_dev_close_sync+0x7d8/0xf20 net/bluetooth/hci_sync.c:4957 hci_dev_do_close net/bluetooth/hci_core.c:554 [inline] hci_unregister_dev+0x1e4/0x4a8 net/bluetooth/hci_core.c:2740 vhci_release+0x7c/0xd0 drivers/bluetooth/hci_vhci.c:674 __fput+0x30c/0x738 fs/file_table.c:376 ____fput+0x20/0x30 fs/file_table.c:404 task_work_run+0x230/0x2e0 kernel/task_work.c:180 exit_task_work include/linux/task_work.h:38 [inline] do_exit+0x618/0x1f64 kernel/exit.c:871 do_group_exit+0x194/0x22c kernel/exit.c:1020 get_signal+0x1500/0x15ec kernel/signal.c:2893 do_signal+0x238/0x3e8c arch/arm64/kernel/signal.c:1308 do_notify_resume+0x74/0x1f4 arch/arm64/kernel/entry-common.c:148 exit_to_user_mode_prepare arch/arm64/kernel/entry-common.c:169 [inline] exit_to_user_mode arch/arm64/kernel/entry-common.c:178 [inline] el0_svc+0xac/0x168 arch/arm64/kernel/entry-common.c:713 el0t_64_sync_handler+0x84/0xfc arch/arm64/kernel/entry-common.c:730 el0t_64_sync+0x190/0x194 arch/arm64/kernel/entry.S:598 Allocated by task 20141: kasan_save_stack mm/kasan/common.c:47 [inline] kasan_save_track+0x40/0x78 mm/kasan/common.c:68 kasan_save_alloc_info+0x40/0x50 mm/kasan/generic.c:575 poison_kmalloc_redzone mm/kasan/common.c:370 [inline] __kasan_kmalloc+0xac/0xc4 mm/kasan/common.c:387 kasan_kmalloc include/linux/kasan.h:211 [inline] __do_kmalloc_node mm/slub.c:3981 [inline] __kmalloc_node_track_caller+0x2f8/0x620 mm/slub.c:4001 kmalloc_reserve+0x11c/0x23c net/core/skbuff.c:582 __alloc_skb+0x1c8/0x3d8 net/core/skbuff.c:651 alloc_skb include/linux/skbuff.h:1296 [inline] nlmsg_new include/net/netlink.h:1010 [inline] audit_buffer_alloc kernel/audit.c:1796 [inline] audit_log_start+0x154/0x894 kernel/audit.c:1914 common_lsm_audit+0xd0/0x1744 security/lsm_audit.c:449 smack_log+0x35c/0x48c security/smack/smack_access.c:383 smk_tskacc+0x250/0x320 security/smack/smack_access.c:253 smk_curacc+0xa8/0xe8 security/smack/smack_access.c:275 smack_inode_permission+0x280/0x318 security/smack/smack_lsm.c:1229 security_inode_permission+0xac/0xfc security/security.c:2196 inode_permission+0xd0/0x3b4 fs/namei.c:537 may_lookup fs/namei.c:1727 [inline] link_path_walk+0x284/0xc78 fs/namei.c:2274 path_lookupat+0x90/0x3d0 fs/namei.c:2485 filename_lookup+0x1d4/0x4e0 fs/namei.c:2515 user_path_at_empty+0x5c/0x84 fs/namei.c:2924 user_path_at include/linux/namei.h:57 [inline] ksys_umount fs/namespace.c:1916 [inline] __do_sys_umount fs/namespace.c:1924 [inline] __se_sys_umount fs/namespace.c:1922 [inline] __arm64_sys_umount+0xf8/0x17c fs/namespace.c:1922 __invoke_syscall arch/arm64/kernel/syscall.c:34 [inline] invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:48 el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:133 do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:152 el0_svc+0x54/0x168 arch/arm64/kernel/entry-common.c:712 el0t_64_sync_handler+0x84/0xfc arch/arm64/kernel/entry-common.c:730 el0t_64_sync+0x190/0x194 arch/arm64/kernel/entry.S:598 Freed by task 28: kasan_save_stack mm/kasan/common.c:47 [inline] kasan_save_track+0x40/0x78 mm/kasan/common.c:68 kasan_save_free_info+0x54/0x6c mm/kasan/generic.c:589 poison_slab_object+0x124/0x18c mm/kasan/common.c:240 __kasan_slab_free+0x3c/0x70 mm/kasan/common.c:256 kasan_slab_free include/linux/kasan.h:184 [inline] slab_free_hook mm/slub.c:2121 [inline] slab_free mm/slub.c:4299 [inline] kfree+0x144/0x3cc mm/slub.c:4409 skb_kfree_head net/core/skbuff.c:986 [inline] skb_free_head+0xd0/0x19c net/core/skbuff.c:998 skb_release_data+0x444/0x5c8 net/core/skbuff.c:1028 skb_release_all net/core/skbuff.c:1094 [inline] __kfree_skb net/core/skbuff.c:1108 [inline] kfree_skb_reason+0x238/0x6f4 net/core/skbuff.c:1144 kfree_skb include/linux/skbuff.h:1244 [inline] kauditd_hold_skb+0x11c/0x200 kernel/audit.c:611 kauditd_send_queue+0x27c/0x2e4 kernel/audit.c:766 kauditd_thread+0x778/0xa00 kernel/audit.c:890 kthread+0x288/0x310 kernel/kthread.c:388 ret_from_fork+0x10/0x20 arch/arm64/kernel/entry.S:860 The buggy address belongs to the object at ffff0000f4d10000 which belongs to the cache kmalloc-2k of size 2048 The buggy address is located 128 bytes inside of freed 2048-byte region [ffff0000f4d10000, ffff0000f4d10800) The buggy address belongs to the physical page: page:00000000b1b78682 refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x134d10 head:00000000b1b78682 order:3 entire_mapcount:0 nr_pages_mapped:0 pincount:0 flags: 0x5ffc00000000840(slab|head|node=0|zone=2|lastcpupid=0x7ff) page_type: 0xffffffff() raw: 05ffc00000000840 ffff0000c0002000 dead000000000100 dead000000000122 raw: 0000000000000000 0000000000080008 00000001ffffffff 0000000000000000 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff0000f4d0ff80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ffff0000f4d10000: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb >ffff0000f4d10080: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ^ ffff0000f4d10100: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ffff0000f4d10180: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ================================================================== ------------[ cut here ]------------ UBSAN: array-index-out-of-bounds in kernel/locking/qspinlock.c:131:9 index 7452 is out of range for type 'unsigned long[8]' CPU: 1 PID: 5034 Comm: syz-executor.3 Tainted: G B 6.8.0-rc7-syzkaller-g707081b61156 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/25/2024 Call trace: dump_backtrace+0x1b8/0x1e4 arch/arm64/kernel/stacktrace.c:291 show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:298 __dump_stack lib/dump_stack.c:88 [inline] dump_stack_lvl+0xd0/0x124 lib/dump_stack.c:106 dump_stack+0x1c/0x28 lib/dump_stack.c:113 ubsan_epilogue lib/ubsan.c:217 [inline] __ubsan_handle_out_of_bounds+0xf8/0x148 lib/ubsan.c:347 decode_tail kernel/locking/qspinlock.c:131 [inline] queued_spin_lock_slowpath+0x944/0xcf8 kernel/locking/qspinlock.c:471 queued_spin_lock include/asm-generic/qspinlock.h:114 [inline] do_raw_spin_lock+0x320/0x348 kernel/locking/spinlock_debug.c:116 __raw_spin_lock_bh include/linux/spinlock_api_smp.h:127 [inline] _raw_spin_lock_bh+0x50/0x60 kernel/locking/spinlock.c:178 spin_lock_bh include/linux/spinlock.h:356 [inline] lock_sock_nested+0x74/0x11c net/core/sock.c:3526 lock_sock include/net/sock.h:1691 [inline] sco_conn_del+0xec/0x498 net/bluetooth/sco.c:199 sco_disconn_cfm+0x8c/0xdc net/bluetooth/sco.c:1371 hci_disconn_cfm include/net/bluetooth/hci_core.h:2001 [inline] hci_conn_hash_flush+0x100/0x220 net/bluetooth/hci_conn.c:2645 hci_dev_close_sync+0x7d8/0xf20 net/bluetooth/hci_sync.c:4957 hci_dev_do_close net/bluetooth/hci_core.c:554 [inline] hci_unregister_dev+0x1e4/0x4a8 net/bluetooth/hci_core.c:2740 vhci_release+0x7c/0xd0 drivers/bluetooth/hci_vhci.c:674 __fput+0x30c/0x738 fs/file_table.c:376 ____fput+0x20/0x30 fs/file_table.c:404 task_work_run+0x230/0x2e0 kernel/task_work.c:180 exit_task_work include/linux/task_work.h:38 [inline] do_exit+0x618/0x1f64 kernel/exit.c:871 do_group_exit+0x194/0x22c kernel/exit.c:1020 get_signal+0x1500/0x15ec kernel/signal.c:2893 do_signal+0x238/0x3e8c arch/arm64/kernel/signal.c:1308 do_notify_resume+0x74/0x1f4 arch/arm64/kernel/entry-common.c:148 exit_to_user_mode_prepare arch/arm64/kernel/entry-common.c:169 [inline] exit_to_user_mode arch/arm64/kernel/entry-common.c:178 [inline] el0_svc+0xac/0x168 arch/arm64/kernel/entry-common.c:713 el0t_64_sync_handler+0x84/0xfc arch/arm64/kernel/entry-common.c:730 el0t_64_sync+0x190/0x194 arch/arm64/kernel/entry.S:598 ---[ end trace ]--- Unable to handle kernel paging request at virtual address ffff80008ec00db8 KASAN: probably user-memory-access in range [0x0000000476006dc0-0x0000000476006dc7] Mem abort info: ESR = 0x0000000096000047 EC = 0x25: DABT (current EL), IL = 32 bits SET = 0, FnV = 0 EA = 0, S1PTW = 0 FSC = 0x07: level 3 translation fault Data abort info: ISV = 0, ISS = 0x00000047, ISS2 = 0x00000000 CM = 0, WnR = 1, TnD = 0, TagAccess = 0 GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0 swapper pgtable: 4k pages, 48-bit VAs, pgdp=00000001adbd5000 [ffff80008ec00db8] pgd=10000001b2c71003, p4d=10000001b2c71003, pud=10000001b2c72003, pmd=10000001b2c77003, pte=0000000000000000 Internal error: Oops: 0000000096000047 [#1] PREEMPT SMP Modules linked in: CPU: 1 PID: 5034 Comm: syz-executor.3 Tainted: G B 6.8.0-rc7-syzkaller-g707081b61156 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/25/2024 pstate: 80400005 (Nzcv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : queued_spin_lock_slowpath+0x3c8/0xcf8 kernel/locking/qspinlock.c:474 lr : decode_tail kernel/locking/qspinlock.c:131 [inline] lr : queued_spin_lock_slowpath+0x944/0xcf8 kernel/locking/qspinlock.c:471 sp : ffff80009e0f7240 x29: ffff80009e0f72e0 x28: 0000000000007475 x27: 1ffff00013c1ee54 x26: dfff800000000000 x25: 1fffe0001e9a2013 x24: 0000000000080000 x23: ffff0001b4036d88 x22: ffff80008ec00db8 x21: ffff0001b4036d80 x20: 1fffe00036806db0 x19: ffff0000f4d10098 x18: 1fffe00036804396 x17: 0000000000000000 x16: ffff80008ad6b09c x15: ffff7000123e3bf0 x14: 1ffff000123e3bf0 x13: 0000000000000004 x12: ffffffffffffffff x11: ffff7000123e3bf0 x10: ffff80008ec00d80 x9 : 0000000000000001 x8 : 0000000000000000 x7 : fffffffffffd5d80 x6 : fffffffffffd5d50 x5 : ffff80009e0f6af8 x4 : ffff80008ed5a390 x3 : ffff8000801c14f0 x2 : 0000000000000001 x1 : 0000000000000004 x0 : ffff0001b4036d88 Call trace: queued_spin_lock_slowpath+0x3c8/0xcf8 kernel/locking/qspinlock.c:477 queued_spin_lock include/asm-generic/qspinlock.h:114 [inline] do_raw_spin_lock+0x320/0x348 kernel/locking/spinlock_debug.c:116 __raw_spin_lock_bh include/linux/spinlock_api_smp.h:127 [inline] _raw_spin_lock_bh+0x50/0x60 kernel/locking/spinlock.c:178 spin_lock_bh include/linux/spinlock.h:356 [inline] lock_sock_nested+0x74/0x11c net/core/sock.c:3526 lock_sock include/net/sock.h:1691 [inline] sco_conn_del+0xec/0x498 net/bluetooth/sco.c:199 sco_disconn_cfm+0x8c/0xdc net/bluetooth/sco.c:1371 hci_disconn_cfm include/net/bluetooth/hci_core.h:2001 [inline] hci_conn_hash_flush+0x100/0x220 net/bluetooth/hci_conn.c:2645 hci_dev_close_sync+0x7d8/0xf20 net/bluetooth/hci_sync.c:4957 hci_dev_do_close net/bluetooth/hci_core.c:554 [inline] hci_unregister_dev+0x1e4/0x4a8 net/bluetooth/hci_core.c:2740 vhci_release+0x7c/0xd0 drivers/bluetooth/hci_vhci.c:674 __fput+0x30c/0x738 fs/file_table.c:376 ____fput+0x20/0x30 fs/file_table.c:404 task_work_run+0x230/0x2e0 kernel/task_work.c:180 exit_task_work include/linux/task_work.h:38 [inline] do_exit+0x618/0x1f64 kernel/exit.c:871 do_group_exit+0x194/0x22c kernel/exit.c:1020 get_signal+0x1500/0x15ec kernel/signal.c:2893 do_signal+0x238/0x3e8c arch/arm64/kernel/signal.c:1308 do_notify_resume+0x74/0x1f4 arch/arm64/kernel/entry-common.c:148 exit_to_user_mode_prepare arch/arm64/kernel/entry-common.c:169 [inline] exit_to_user_mode arch/arm64/kernel/entry-common.c:178 [inline] el0_svc+0xac/0x168 arch/arm64/kernel/entry-common.c:713 el0t_64_sync_handler+0x84/0xfc arch/arm64/kernel/entry-common.c:730 el0t_64_sync+0x190/0x194 arch/arm64/kernel/entry.S:598 Code: aa1603e0 97431587 aa1703e0 52800081 (f90002d5) ---[ end trace 0000000000000000 ]--- ---------------- Code disassembly (best guess): 0: aa1603e0 mov x0, x22 4: 97431587 bl 0xfffffffffd0c5620 8: aa1703e0 mov x0, x23 c: 52800081 mov w1, #0x4 // #4 * 10: f90002d5 str x21, [x22] <-- trapping instruction