================================================================== BUG: KASAN: use-after-free in p9_poll_mux net/9p/trans_fd.c:622 [inline] BUG: KASAN: use-after-free in p9_poll_workfn+0x2cc/0x330 net/9p/trans_fd.c:1097 Read of size 4 at addr ffff8801cd265ba8 by task kworker/0:3/4556 CPU: 0 PID: 4556 Comm: kworker/0:3 Not tainted 4.9.123-g7fa8c15 #28 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Workqueue: events p9_poll_workfn ffff8801c2137b60 ffffffff81eb9689 ffffea0007349900 ffff8801cd265ba8 0000000000000000 ffff8801cd265ba8 ffff8801db221280 ffff8801c2137b98 ffffffff8156c3fe ffff8801cd265ba8 0000000000000004 0000000000000000 Call Trace: [] __dump_stack lib/dump_stack.c:15 [inline] [] dump_stack+0xc1/0x128 lib/dump_stack.c:51 [] print_address_description+0x6c/0x234 mm/kasan/report.c:256 [] kasan_report_error mm/kasan/report.c:355 [inline] [] kasan_report.cold.6+0x242/0x2fe mm/kasan/report.c:412 [] __asan_report_load4_noabort+0x14/0x20 mm/kasan/report.c:432 [] p9_poll_mux net/9p/trans_fd.c:622 [inline] [] p9_poll_workfn+0x2cc/0x330 net/9p/trans_fd.c:1097 [] process_one_work+0x7e1/0x1500 kernel/workqueue.c:2092 [] worker_thread+0xd6/0x10a0 kernel/workqueue.c:2226 [] kthread+0x26d/0x300 kernel/kthread.c:211 [] ret_from_fork+0x5c/0x70 arch/x86/entry/entry_64.S:373 Allocated by task 15501: save_stack_trace+0x16/0x20 arch/x86/kernel/stacktrace.c:57 save_stack+0x43/0xd0 mm/kasan/kasan.c:505 set_track mm/kasan/kasan.c:517 [inline] kasan_kmalloc+0xc7/0xe0 mm/kasan/kasan.c:609 kmem_cache_alloc_trace+0xfd/0x2b0 mm/slub.c:2742 kmalloc include/linux/slab.h:490 [inline] kzalloc include/linux/slab.h:636 [inline] p9_fd_open net/9p/trans_fd.c:792 [inline] p9_fd_create+0xf3/0x330 net/9p/trans_fd.c:1029 p9_client_create+0x6ff/0x10a0 net/9p/client.c:1036 v9fs_session_init+0x333/0x13a0 fs/9p/v9fs.c:343 v9fs_mount+0x7d/0x810 fs/9p/vfs_super.c:130 mount_fs+0x28c/0x370 fs/super.c:1206 vfs_kern_mount.part.29+0xd1/0x3d0 fs/namespace.c:1000 vfs_kern_mount fs/namespace.c:982 [inline] do_new_mount fs/namespace.c:2537 [inline] do_mount+0x3c9/0x2740 fs/namespace.c:2859 SYSC_mount fs/namespace.c:3075 [inline] SyS_mount+0xfe/0x110 fs/namespace.c:3052 do_syscall_64+0x1a6/0x490 arch/x86/entry/common.c:282 entry_SYSCALL_64_after_swapgs+0x5d/0xdb Freed by task 15501: save_stack_trace+0x16/0x20 arch/x86/kernel/stacktrace.c:57 save_stack+0x43/0xd0 mm/kasan/kasan.c:505 set_track mm/kasan/kasan.c:517 [inline] kasan_slab_free+0x72/0xc0 mm/kasan/kasan.c:582 slab_free_hook mm/slub.c:1355 [inline] slab_free_freelist_hook mm/slub.c:1377 [inline] slab_free mm/slub.c:2958 [inline] kfree+0xfb/0x310 mm/slub.c:3878 p9_fd_close+0x298/0x330 net/9p/trans_fd.c:890 p9_client_create+0x825/0x10a0 net/9p/client.c:1050 v9fs_session_init+0x333/0x13a0 fs/9p/v9fs.c:343 v9fs_mount+0x7d/0x810 fs/9p/vfs_super.c:130 mount_fs+0x28c/0x370 fs/super.c:1206 vfs_kern_mount.part.29+0xd1/0x3d0 fs/namespace.c:1000 vfs_kern_mount fs/namespace.c:982 [inline] do_new_mount fs/namespace.c:2537 [inline] do_mount+0x3c9/0x2740 fs/namespace.c:2859 SYSC_mount fs/namespace.c:3075 [inline] SyS_mount+0xfe/0x110 fs/namespace.c:3052 do_syscall_64+0x1a6/0x490 arch/x86/entry/common.c:282 entry_SYSCALL_64_after_swapgs+0x5d/0xdb The buggy address belongs to the object at ffff8801cd265b80 which belongs to the cache kmalloc-512 of size 512 The buggy address is located 40 bytes inside of 512-byte region [ffff8801cd265b80, ffff8801cd265d80) The buggy address belongs to the page: page:ffffea0007349900 count:1 mapcount:0 mapping: (null) index:0x0 compound_mapcount: 0 flags: 0x8000000000004080(slab|head) page dumped because: kasan: bad access detected Memory state around the buggy address: ffff8801cd265a80: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ffff8801cd265b00: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc >ffff8801cd265b80: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ^ ffff8801cd265c00: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ffff8801cd265c80: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ================================================================== netlink: 6 bytes leftover after parsing attributes in process `syz-executor6'. netlink: 6 bytes leftover after parsing attributes in process `syz-executor6'.