attempt to access beyond end of device loop0: rw=0, want=45072, limit=40427 attempt to access beyond end of device loop0: rw=2049, want=45120, limit=40427 ================================================================== BUG: KASAN: use-after-free in device_for_each_child+0x136/0x140 drivers/base/core.c:2208 Read of size 8 at addr ffff88009fd15288 by task kbnepd bnep0/4220 CPU: 1 PID: 4220 Comm: kbnepd bnep0 Not tainted 4.19.0-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024 Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0x10c/0x17a lib/dump_stack.c:113 print_address_description.cold.6+0x9/0x244 mm/kasan/report.c:256 kasan_report_error mm/kasan/report.c:354 [inline] kasan_report mm/kasan/report.c:412 [inline] kasan_report.cold.7+0x242/0x305 mm/kasan/report.c:396 __asan_report_load8_noabort+0x14/0x20 mm/kasan/report.c:433 device_for_each_child+0x136/0x140 drivers/base/core.c:2208 pm_runtime_set_memalloc_noio+0xc4/0x100 drivers/base/power/runtime.c:224 netdev_unregister_kobject+0x17c/0x1e0 net/core/net-sysfs.c:1715 rollback_registered_many+0x669/0xcc0 net/core/dev.c:8000 rollback_registered+0xdc/0x190 net/core/dev.c:8018 unregister_netdevice_queue net/core/dev.c:9062 [inline] unregister_netdevice_queue net/core/dev.c:9055 [inline] unregister_netdevice include/linux/netdevice.h:2599 [inline] unregister_netdev+0x1a/0x30 net/core/dev.c:9103 bnep_session+0x1685/0x21a0 net/bluetooth/bnep/core.c:523 kthread+0x2f2/0x3b0 kernel/kthread.c:246 ret_from_fork+0x35/0x40 arch/x86/entry/entry_64.S:413 Allocated by task 3901: save_stack mm/kasan/kasan.c:448 [inline] set_track mm/kasan/kasan.c:460 [inline] kasan_kmalloc.part.1+0x62/0xf0 mm/kasan/kasan.c:553 kasan_kmalloc+0xaf/0xc0 mm/kasan/kasan.c:538 kmem_cache_alloc_trace+0x13c/0x260 mm/slub.c:2733 kmalloc include/linux/slab.h:513 [inline] kzalloc include/linux/slab.h:707 [inline] hci_alloc_dev+0x3f/0x1b50 net/bluetooth/hci_core.c:3053 __vhci_create_device+0xd8/0x4f0 drivers/bluetooth/hci_vhci.c:114 vhci_create_device drivers/bluetooth/hci_vhci.c:163 [inline] vhci_get_user drivers/bluetooth/hci_vhci.c:219 [inline] vhci_write+0x281/0x3e0 drivers/bluetooth/hci_vhci.c:299 call_write_iter include/linux/fs.h:1808 [inline] new_sync_write fs/read_write.c:474 [inline] __vfs_write+0x44b/0x890 fs/read_write.c:487 vfs_write fs/read_write.c:549 [inline] vfs_write+0x13e/0x4b0 fs/read_write.c:533 ksys_write+0xcd/0x1b0 fs/read_write.c:598 __do_sys_write fs/read_write.c:610 [inline] __se_sys_write fs/read_write.c:607 [inline] __x64_sys_write+0x6e/0xb0 fs/read_write.c:607 do_syscall_64+0xd0/0x340 arch/x86/entry/common.c:290 entry_SYSCALL_64_after_hwframe+0x44/0xa9 Freed by task 3901: save_stack mm/kasan/kasan.c:448 [inline] set_track mm/kasan/kasan.c:460 [inline] __kasan_slab_free+0x167/0x240 mm/kasan/kasan.c:521 kasan_slab_free+0xe/0x10 mm/kasan/kasan.c:528 slab_free_hook mm/slub.c:1371 [inline] slab_free_freelist_hook mm/slub.c:1398 [inline] slab_free mm/slub.c:2953 [inline] kfree+0x110/0x2c0 mm/slub.c:3906 bt_host_release+0x10/0x20 net/bluetooth/hci_sysfs.c:86 device_release+0x74/0x170 drivers/base/core.c:891 kobject_cleanup lib/kobject.c:662 [inline] kobject_release lib/kobject.c:691 [inline] kref_put include/linux/kref.h:70 [inline] kobject_put+0x121/0x390 lib/kobject.c:708 put_device+0x12/0x20 drivers/base/core.c:2024 hci_free_dev+0x10/0x20 net/bluetooth/hci_core.c:3143 vhci_release+0x73/0xe0 drivers/bluetooth/hci_vhci.c:355 __fput+0x1e0/0x740 fs/file_table.c:278 ____fput+0x9/0x10 fs/file_table.c:309 task_work_run+0x10e/0x180 kernel/task_work.c:113 exit_task_work include/linux/task_work.h:22 [inline] do_exit+0x9c9/0x2a80 kernel/exit.c:867 do_group_exit+0xf1/0x2b0 kernel/exit.c:970 __do_sys_exit_group kernel/exit.c:981 [inline] __se_sys_exit_group kernel/exit.c:979 [inline] __x64_sys_exit_group+0x39/0x40 kernel/exit.c:979 do_syscall_64+0xd0/0x340 arch/x86/entry/common.c:290 entry_SYSCALL_64_after_hwframe+0x44/0xa9 The buggy address belongs to the object at ffff88009fd14200 which belongs to the cache kmalloc-8192 of size 8192 The buggy address is located 4232 bytes inside of 8192-byte region [ffff88009fd14200, ffff88009fd16200) The buggy address belongs to the page: page:ffffea00027f4400 count:1 mapcount:0 mapping:ffff88013bff4400 index:0x0 compound_mapcount: 0 flags: 0xfff00000008100(slab|head) raw: 00fff00000008100 dead000000000100 dead000000000200 ffff88013bff4400 raw: 0000000000000000 0000000000030003 00000001ffffffff 0000000000000000 page dumped because: kasan: bad access detected page allocated via order 3, migratetype Unmovable, gfp_mask 0x4352c0(GFP_NOWAIT|__GFP_IO|__GFP_FS|__GFP_NOWARN|__GFP_NORETRY|__GFP_COMP|__GFP_NOMEMALLOC|__GFP_HARDWALL) set_page_owner include/linux/page_owner.h:31 [inline] post_alloc_hook mm/page_alloc.c:1906 [inline] prep_new_page mm/page_alloc.c:1914 [inline] get_page_from_freelist+0x2c68/0x41c0 mm/page_alloc.c:3345 __alloc_pages_nodemask+0x390/0x2380 mm/page_alloc.c:4370 alloc_pages_current+0xfd/0x290 mm/mempolicy.c:2093 alloc_pages include/linux/gfp.h:509 [inline] alloc_slab_page mm/slub.c:1438 [inline] allocate_slab mm/slub.c:1583 [inline] new_slab+0x49d/0x7f0 mm/slub.c:1654 new_slab_objects mm/slub.c:2417 [inline] ___slab_alloc+0x5b3/0x8e0 mm/slub.c:2569 __slab_alloc.isra.22+0x6a/0xa0 mm/slub.c:2609 slab_alloc_node mm/slub.c:2672 [inline] __kmalloc_node_track_caller+0xe3/0x340 mm/slub.c:4320 __kmalloc_reserve.isra.8+0x2c/0xc0 net/core/skbuff.c:137 __alloc_skb+0xd7/0x580 net/core/skbuff.c:205 alloc_skb include/linux/skbuff.h:995 [inline] netlink_dump+0x1e9/0xab0 net/netlink/af_netlink.c:2208 netlink_recvmsg+0x977/0xe70 net/netlink/af_netlink.c:1991 sock_recvmsg_nosec net/socket.c:794 [inline] sock_recvmsg net/socket.c:801 [inline] sock_recvmsg+0xb9/0xf0 net/socket.c:797 ___sys_recvmsg+0x21c/0x530 net/socket.c:2278 __sys_recvmsg+0xd6/0x180 net/socket.c:2327 __do_sys_recvmsg net/socket.c:2337 [inline] __se_sys_recvmsg net/socket.c:2334 [inline] __x64_sys_recvmsg+0x73/0xb0 net/socket.c:2334 do_syscall_64+0xd0/0x340 arch/x86/entry/common.c:290 Memory state around the buggy address: ffff88009fd15180: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ffff88009fd15200: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb >ffff88009fd15280: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ^ ffff88009fd15300: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ffff88009fd15380: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ==================================================================