Bluetooth: hci1: failed to register connection device
==================================================================
BUG: KASAN: slab-use-after-free in l2cap_connect_cfm+0x902/0x1560
Read of size 8 at addr ffff88810a713480 by task kworker/u11:2/5612

CPU: 0 UID: 0 PID: 5612 Comm: kworker/u11:2 Not tainted syzkaller #0 PREEMPT(full) 
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.2-debian-1.16.2-1 04/01/2014
Workqueue: hci1 hci_rx_work
Call Trace:
 <TASK>
 dump_stack_lvl+0xe8/0x150
 print_address_description+0x55/0x1e0
 print_report+0x58/0x70
 kasan_report+0x117/0x150
 l2cap_connect_cfm+0x902/0x1560
 hci_connect_cfm+0x95/0x140
 le_conn_complete_evt+0x1134/0x16b0
 hci_le_conn_complete_evt+0x187/0x470
 hci_event_packet+0x659/0xef0
 hci_rx_work+0x3ee/0x1040
 process_scheduled_works+0xb5d/0x1860
 worker_thread+0xa53/0xfc0
 kthread+0x388/0x470
 ret_from_fork+0x514/0xb70
 ret_from_fork_asm+0x1a/0x30
 </TASK>

Allocated by task 5612:
 kasan_save_track+0x3e/0x80
 __kasan_kmalloc+0x93/0xb0
 __kmalloc_cache_noprof+0x31c/0x660
 l2cap_chan_create+0x51/0x790
 l2cap_sock_new_connection_cb+0x191/0x2f0
 l2cap_connect_cfm+0x368/0x1560
 hci_connect_cfm+0x95/0x140
 le_conn_complete_evt+0x1134/0x16b0
 hci_le_conn_complete_evt+0x187/0x470
 hci_event_packet+0x659/0xef0
 hci_rx_work+0x3ee/0x1040
 process_scheduled_works+0xb5d/0x1860
 worker_thread+0xa53/0xfc0
 kthread+0x388/0x470
 ret_from_fork+0x514/0xb70
 ret_from_fork_asm+0x1a/0x30

Freed by task 7275:
 kasan_save_track+0x3e/0x80
 kasan_save_free_info+0x46/0x50
 __kasan_slab_free+0x5c/0x80
 kfree+0x1c5/0x640
 l2cap_sock_cleanup_listen+0xf0/0x440
 l2cap_sock_release+0x6a/0x230
 sock_close+0xc3/0x240
 __fput+0x44f/0xa60
 task_work_run+0x1d9/0x270
 exit_to_user_mode_loop+0xf3/0x4d0
 do_syscall_64+0x33e/0xf80
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

The buggy address belongs to the object at ffff88810a713000
 which belongs to the cache kmalloc-2k of size 2048
The buggy address is located 1152 bytes inside of
 freed 2048-byte region [ffff88810a713000, ffff88810a713800)

The buggy address belongs to the physical page:
page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x10a710
head: order:3 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0
flags: 0x17ff00000000040(head|node=0|zone=2|lastcpupid=0x7ff)
page_type: f5(slab)
raw: 017ff00000000040 ffff888100042000 dead000000000100 dead000000000122
raw: 0000000000000000 0000000800080008 00000000f5000000 0000000000000000
head: 017ff00000000040 ffff888100042000 dead000000000100 dead000000000122
head: 0000000000000000 0000000800080008 00000000f5000000 0000000000000000
head: 017ff00000000003 fffffffffffffe01 00000000ffffffff 00000000ffffffff
head: ffffffffffffffff 0000000000000000 00000000ffffffff 0000000000000008
page dumped because: kasan: bad access detected
page_owner tracks the page as allocated
page last allocated via order 3, migratetype Unmovable, gfp_mask 0xd20c0(__GFP_IO|__GFP_FS|__GFP_NOWARN|__GFP_NORETRY|__GFP_COMP|__GFP_NOMEMALLOC), pid 1, tgid 1 (swapper/0), ts 13309580022, free_ts 0
 post_alloc_hook+0x231/0x280
 get_page_from_freelist+0x24ba/0x2540
 __alloc_frozen_pages_noprof+0x18d/0x380
 allocate_slab+0x77/0x660
 refill_objects+0x339/0x3d0
 __pcs_replace_empty_main+0x321/0x720
 __kmalloc_node_track_caller_noprof+0x572/0x7b0
 __alloc_skb+0x2c1/0x7d0
 rtmsg_ifinfo_build_skb+0x84/0x260
 rtmsg_ifinfo+0x8c/0x1a0
 register_netdevice+0x1aca/0x1ec0
 cfg80211_register_netdevice+0x138/0x2d0
 ieee80211_if_add+0xeac/0x13d0
 ieee80211_register_hw+0x3ebc/0x4a70
 mac80211_hwsim_new_radio+0x3335/0x5aa0
 init_mac80211_hwsim+0x44d/0x570
page_owner free stack trace missing

Memory state around the buggy address:
 ffff88810a713380: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
 ffff88810a713400: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
>ffff88810a713480: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
                   ^
 ffff88810a713500: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
 ffff88810a713580: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
==================================================================
