================================================================== BUG: KASAN: use-after-free in ds_probe+0x5ff/0x750 drivers/w1/masters/ds2490.c:1019 Read of size 1 at addr ffff8881c72c67a2 by task kworker/0:5/5644 CPU: 0 PID: 5644 Comm: kworker/0:5 Not tainted 5.1.0-rc3+ #8 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Workqueue: usb_hub_wq hub_event Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0xca/0x13e lib/dump_stack.c:113 print_address_description+0x67/0x231 mm/kasan/report.c:187 kasan_report.cold+0x1a/0x35 mm/kasan/report.c:317 ds_probe+0x5ff/0x750 drivers/w1/masters/ds2490.c:1019 usb_probe_interface+0x30d/0x7b0 drivers/usb/core/driver.c:361 really_probe+0x296/0x680 drivers/base/dd.c:509 driver_probe_device+0xf9/0x200 drivers/base/dd.c:671 __device_attach_driver+0x1c4/0x230 drivers/base/dd.c:778 bus_for_each_drv+0x15e/0x1e0 drivers/base/bus.c:454 __device_attach+0x21e/0x360 drivers/base/dd.c:844 bus_probe_device+0x1ec/0x2a0 drivers/base/bus.c:514 device_add+0xaf4/0x1700 drivers/base/core.c:2106 usb_set_configuration+0xdf2/0x1670 drivers/usb/core/message.c:2023 generic_probe+0x9d/0xd5 drivers/usb/core/generic.c:210 usb_probe_device+0xa8/0x110 drivers/usb/core/driver.c:266 really_probe+0x296/0x680 drivers/base/dd.c:509 driver_probe_device+0xf9/0x200 drivers/base/dd.c:671 __device_attach_driver+0x1c4/0x230 drivers/base/dd.c:778 bus_for_each_drv+0x15e/0x1e0 drivers/base/bus.c:454 __device_attach+0x21e/0x360 drivers/base/dd.c:844 bus_probe_device+0x1ec/0x2a0 drivers/base/bus.c:514 device_add+0xaf4/0x1700 drivers/base/core.c:2106 usb_new_device.cold+0x8b8/0x1030 drivers/usb/core/hub.c:2534 hub_port_connect drivers/usb/core/hub.c:5089 [inline] hub_port_connect_change drivers/usb/core/hub.c:5204 [inline] port_event drivers/usb/core/hub.c:5350 [inline] hub_event+0x1ac9/0x35a0 drivers/usb/core/hub.c:5432 process_one_work+0x90a/0x1580 kernel/workqueue.c:2269 worker_thread+0x96/0xe20 kernel/workqueue.c:2415 kthread+0x30e/0x420 kernel/kthread.c:253 ret_from_fork+0x3a/0x50 arch/x86/entry/entry_64.S:352 Allocated by task 13552: set_track mm/kasan/common.c:87 [inline] __kasan_kmalloc mm/kasan/common.c:497 [inline] __kasan_kmalloc.constprop.0+0xbf/0xd0 mm/kasan/common.c:470 kmalloc include/linux/slab.h:552 [inline] kzalloc include/linux/slab.h:742 [inline] ext4_htree_store_dirent+0x88/0x600 fs/ext4/dir.c:450 htree_dirblock_to_tree+0x28e/0x5d0 fs/ext4/namei.c:1021 ext4_htree_fill_tree+0x224/0x990 fs/ext4/namei.c:1098 ext4_dx_readdir fs/ext4/dir.c:574 [inline] ext4_readdir+0x1441/0x2930 fs/ext4/dir.c:121 iterate_dir+0x47c/0x5e0 fs/readdir.c:51 __do_sys_getdents fs/readdir.c:231 [inline] __se_sys_getdents fs/readdir.c:212 [inline] __x64_sys_getdents+0x1dd/0x370 fs/readdir.c:212 do_syscall_64+0xbd/0x500 arch/x86/entry/common.c:290 entry_SYSCALL_64_after_hwframe+0x49/0xbe Freed by task 13552: set_track mm/kasan/common.c:87 [inline] __kasan_slab_free+0x130/0x180 mm/kasan/common.c:459 slab_free_hook mm/slub.c:1429 [inline] slab_free_freelist_hook mm/slub.c:1456 [inline] slab_free mm/slub.c:3003 [inline] kfree+0xd7/0x290 mm/slub.c:3958 free_rb_tree_fname+0x7f/0xe0 fs/ext4/dir.c:402 ext4_htree_free_dir_info fs/ext4/dir.c:424 [inline] ext4_release_dir+0x41/0x60 fs/ext4/dir.c:622 __fput+0x2d2/0x7d0 fs/file_table.c:278 task_work_run+0x144/0x1c0 kernel/task_work.c:113 tracehook_notify_resume include/linux/tracehook.h:188 [inline] exit_to_usermode_loop+0x1c5/0x1f0 arch/x86/entry/common.c:166 prepare_exit_to_usermode arch/x86/entry/common.c:197 [inline] syscall_return_slowpath arch/x86/entry/common.c:268 [inline] do_syscall_64+0x3ed/0x500 arch/x86/entry/common.c:293 entry_SYSCALL_64_after_hwframe+0x49/0xbe The buggy address belongs to the object at ffff8881c72c6780 which belongs to the cache kmalloc-64 of size 64 The buggy address is located 34 bytes inside of 64-byte region [ffff8881c72c6780, ffff8881c72c67c0) The buggy address belongs to the page: page:ffffea00071cb180 count:1 mapcount:0 mapping:ffff8881dac03600 index:0x0 flags: 0x200000000000200(slab) raw: 0200000000000200 dead000000000100 dead000000000200 ffff8881dac03600 raw: 0000000000000000 00000000002a002a 00000001ffffffff 0000000000000000 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff8881c72c6680: 00 00 fc fc fc fc fc fc fb fb fb fb fb fb fb fb ffff8881c72c6700: fc fc fc fc 00 00 00 00 00 00 fc fc fc fc fc fc >ffff8881c72c6780: fb fb fb fb fb fb fb fb fc fc fc fc 00 00 00 00 ^ ffff8881c72c6800: 00 00 fc fc fc fc fc fc fb fb fb fb fb fb fb fb ffff8881c72c6880: fc fc fc fc 00 00 00 00 00 00 fc fc fc fc fc fc ==================================================================