bisecting fixing commit since ddef1e8e3f6eb26034833b7255e3fa584d54a230 building syzkaller on af5c522d02400b35a930d6fbdf286f9ce2afc8ba testing commit ddef1e8e3f6eb26034833b7255e3fa584d54a230 with gcc (GCC) 8.1.0 kernel signature: 032008b91d6282b2070bc63178ac28083df7d80e6daa365e7ed3e8217228a8a6 run #0: crashed: KASAN: use-after-free Read in relay_switch_subbuf run #1: crashed: KASAN: use-after-free Read in relay_switch_subbuf run #2: crashed: KASAN: use-after-free Read in relay_switch_subbuf run #3: crashed: KASAN: use-after-free Read in relay_switch_subbuf run #4: crashed: KASAN: use-after-free Read in relay_switch_subbuf run #5: crashed: KASAN: use-after-free Read in relay_switch_subbuf run #6: crashed: WARNING: bad unlock balance detected! run #7: crashed: KASAN: use-after-free Read in relay_switch_subbuf run #8: crashed: KASAN: use-after-free Read in relay_switch_subbuf run #9: crashed: KASAN: use-after-free Read in relay_switch_subbuf testing current HEAD 12cd844a39ed16aa183a820a54fe6f9a0bb4cd14 testing commit 12cd844a39ed16aa183a820a54fe6f9a0bb4cd14 with gcc (GCC) 8.1.0 kernel signature: 1509cbcd288d0176ce43cc8a5641762dab4f419ebbdf7fd487c6189ce7701fbd run #0: crashed: KASAN: use-after-free Read in relay_switch_subbuf run #1: crashed: KASAN: use-after-free Read in relay_switch_subbuf run #2: crashed: KASAN: use-after-free Read in relay_switch_subbuf run #3: crashed: KASAN: use-after-free Read in relay_switch_subbuf run #4: crashed: KASAN: use-after-free Read in relay_switch_subbuf run #5: crashed: KASAN: use-after-free Read in relay_switch_subbuf run #6: crashed: KASAN: use-after-free Read in relay_switch_subbuf run #7: crashed: KASAN: use-after-free Read in debugfs_remove run #8: crashed: KASAN: use-after-free Read in relay_switch_subbuf run #9: crashed: KASAN: use-after-free Read in relay_switch_subbuf revisions tested: 2, total time: 25m45.557062203s (build: 17m6.988072225s, test: 7m40.645825873s) the crash still happens on HEAD commit msg: Linux 4.14.173 crash: KASAN: use-after-free Read in relay_switch_subbuf devpts: called with bogus options devpts: called with bogus options devpts: called with bogus options devpts: called with bogus options ================================================================== BUG: KASAN: use-after-free in relay_switch_subbuf+0xb0a/0xc40 kernel/relay.c:754 Read of size 8 at addr ffff8880752a2058 by task kworker/1:2/2506 devpts: called with bogus options CPU: 1 PID: 2506 Comm: kworker/1:2 Not tainted 4.14.173-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Workqueue: events __blk_release_queue Call Trace: __dump_stack lib/dump_stack.c:17 [inline] dump_stack+0xf7/0x13b lib/dump_stack.c:58 print_address_description.cold.7+0x9/0x1c9 mm/kasan/report.c:252 devpts: called with bogus options kasan_report_error mm/kasan/report.c:351 [inline] kasan_report.cold.8+0x11a/0x2d3 mm/kasan/report.c:409 __asan_report_load8_noabort+0x14/0x20 mm/kasan/report.c:430 relay_switch_subbuf+0xb0a/0xc40 kernel/relay.c:754 relay_flush+0x183/0x230 kernel/relay.c:882 devpts: called with bogus options blk_trace_startstop+0x40c/0x570 kernel/trace/blktrace.c:657 blk_trace_shutdown+0x3a/0x50 kernel/trace/blktrace.c:727 __blk_release_queue+0x1f9/0x470 block/blk-sysfs.c:830 process_one_work+0x79e/0x16c0 kernel/workqueue.c:2114 worker_thread+0xcc/0xee0 kernel/workqueue.c:2248 kthread+0x338/0x400 kernel/kthread.c:232 ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:404 Allocated by task 9478: save_stack_trace+0x16/0x20 arch/x86/kernel/stacktrace.c:59 save_stack+0x43/0xd0 mm/kasan/kasan.c:447 set_track mm/kasan/kasan.c:459 [inline] kasan_kmalloc+0xc7/0xe0 mm/kasan/kasan.c:551 kasan_slab_alloc+0x12/0x20 mm/kasan/kasan.c:489 kmem_cache_alloc+0x12e/0x790 mm/slab.c:3552 __d_alloc+0x28/0x9f0 fs/dcache.c:1623 d_alloc+0x43/0x260 fs/dcache.c:1710 __lookup_hash+0x40/0x160 fs/namei.c:1571 lookup_one_len+0x26e/0x3a0 fs/namei.c:2539 start_creating+0x91/0x190 fs/debugfs/inode.c:314 __debugfs_create_file+0x37/0x390 fs/debugfs/inode.c:353 debugfs_create_file+0x24/0x30 fs/debugfs/inode.c:404 blk_create_buf_file_callback+0x19/0x20 kernel/trace/blktrace.c:445 relay_create_buf_file+0xea/0x160 kernel/relay.c:427 relay_open_buf.part.11+0x5e7/0x940 kernel/relay.c:456 relay_open_buf kernel/relay.c:448 [inline] relay_open+0x47f/0x880 kernel/relay.c:598 do_blk_trace_setup+0x39c/0xb10 kernel/trace/blktrace.c:533 blk_trace_setup+0xa8/0x110 kernel/trace/blktrace.c:579 blk_trace_ioctl+0x136/0x230 kernel/trace/blktrace.c:694 blkdev_ioctl+0x6ae/0x16b0 block/ioctl.c:580 block_ioctl+0xd7/0x130 fs/block_dev.c:1881 vfs_ioctl fs/ioctl.c:46 [inline] file_ioctl fs/ioctl.c:500 [inline] do_vfs_ioctl+0x180/0xfb0 fs/ioctl.c:684 SYSC_ioctl fs/ioctl.c:701 [inline] SyS_ioctl+0x74/0x80 fs/ioctl.c:692 do_syscall_64+0x1c7/0x5b0 arch/x86/entry/common.c:292 entry_SYSCALL_64_after_hwframe+0x42/0xb7 Freed by task 7089: save_stack_trace+0x16/0x20 arch/x86/kernel/stacktrace.c:59 save_stack+0x43/0xd0 mm/kasan/kasan.c:447 set_track mm/kasan/kasan.c:459 [inline] kasan_slab_free+0x71/0xc0 mm/kasan/kasan.c:524 __cache_free mm/slab.c:3496 [inline] kmem_cache_free+0x80/0x2d0 mm/slab.c:3758 __d_free+0x17/0x20 fs/dcache.c:270 __rcu_reclaim kernel/rcu/rcu.h:195 [inline] rcu_do_batch kernel/rcu/tree.c:2699 [inline] invoke_rcu_callbacks kernel/rcu/tree.c:2962 [inline] __rcu_process_callbacks kernel/rcu/tree.c:2929 [inline] rcu_process_callbacks+0x7e0/0x11e0 kernel/rcu/tree.c:2946 __do_softirq+0x246/0x9b0 kernel/softirq.c:288 The buggy address belongs to the object at ffff8880752a2000 which belongs to the cache dentry of size 288 The buggy address is located 88 bytes inside of 288-byte region [ffff8880752a2000, ffff8880752a2120) The buggy address belongs to the page: page:ffffea0001d4a880 count:1 mapcount:0 mapping:ffff8880752a2000 index:0x0 flags: 0x1fffc0000000100(slab) raw: 01fffc0000000100 ffff8880752a2000 0000000000000000 000000010000000b raw: ffffea0001d4a6e0 ffffea0001d4a920 ffff88821f8b5680 0000000000000000 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff8880752a1f00: fb fb fb fb fc fc fc fc fc fc fc fc fc fc fc fc ffff8880752a1f80: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc >ffff8880752a2000: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ^ ffff8880752a2080: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ffff8880752a2100: fb fb fb fb fc fc fc fc fc fc fc fc fb fb fb fb ==================================================================