bisecting cause commit starting from f40ddce88593482919761f74910f42f4b84c004b building syzkaller on 3e5ed8b45e7a561d6344a4d3d7bf3bfb8f24a7b3 testing commit f40ddce88593482919761f74910f42f4b84c004b with gcc (GCC) 10.2.1 20210217 kernel signature: 401ae697250340a8f19fafbe34755b1004207c8f3a328d8b50087c42f968b433 run #0: crashed: KASAN: use-after-free Read in blk_update_request run #1: crashed: KASAN: use-after-free Read in blk_update_request run #2: crashed: KASAN: use-after-free Read in blk_update_request run #3: crashed: KASAN: use-after-free Read in blk_update_request run #4: OK run #5: OK run #6: OK run #7: OK run #8: OK run #9: OK run #10: OK run #11: OK run #12: OK run #13: OK run #14: OK run #15: OK run #16: OK run #17: OK run #18: OK run #19: crashed: KASAN: use-after-free Read in blk_update_request reproducer seems to be flaky testing release v5.10 testing commit 2c85ebc57b3e1817b6ce1a6b703928e113a90442 with gcc (GCC) 10.2.1 20210217 kernel signature: ab71b74ae43b8e01293cb6979afead33d9008edddcb466f6d56f0f23bb6fe207 run #0: crashed: KASAN: use-after-free Read in blk_update_request run #1: crashed: KASAN: use-after-free Read in blk_update_request run #2: crashed: KASAN: use-after-free Read in blk_update_request run #3: crashed: KASAN: use-after-free Read in blk_update_request run #4: crashed: KASAN: use-after-free Read in blk_update_request run #5: crashed: KASAN: use-after-free Read in blk_update_request run #6: crashed: KASAN: use-after-free Read in blk_update_request run #7: crashed: KASAN: use-after-free Read in blk_update_request run #8: crashed: KASAN: use-after-free Read in blk_update_request run #9: crashed: KASAN: use-after-free Read in blk_update_request run #10: OK run #11: OK run #12: OK run #13: OK run #14: OK run #15: OK run #16: OK run #17: OK run #18: OK run #19: OK testing release v5.9 testing commit bbf5c979011a099af5dc76498918ed7df445635b with gcc (GCC) 10.2.1 20210217 kernel signature: a101d649bf0962eb896349f53f42525108b593f186d2cd8f9a781778a3990b4a run #0: crashed: KASAN: use-after-free Read in blk_update_request run #1: crashed: KASAN: use-after-free Read in blk_update_request run #2: crashed: KASAN: use-after-free Read in blk_update_request run #3: crashed: KASAN: use-after-free Read in blk_update_request run #4: crashed: KASAN: use-after-free Read in blk_update_request run #5: crashed: KASAN: use-after-free Read in blk_update_request run #6: crashed: KASAN: use-after-free Read in blk_update_request run #7: OK run #8: OK run #9: OK run #10: OK run #11: OK run #12: OK run #13: OK run #14: OK run #15: OK run #16: OK run #17: OK run #18: OK run #19: OK testing release v5.8 testing commit bcf876870b95592b52519ed4aafcf9d95999bc9c with gcc (GCC) 8.4.1 20210217 kernel signature: c3faff30c5f5505242b19b31fedfebb792b2b6db3ca15c5100cee4b3da2ac1e3 run #0: crashed: KASAN: use-after-free Read in blk_update_request run #1: crashed: KASAN: use-after-free Read in blk_update_request run #2: crashed: KASAN: use-after-free Read in blk_update_request run #3: crashed: KASAN: use-after-free Read in blk_update_request run #4: crashed: KASAN: use-after-free Read in blk_update_request run #5: crashed: KASAN: use-after-free Read in blk_update_request run #6: crashed: KASAN: use-after-free Read in blk_update_request run #7: crashed: KASAN: use-after-free Read in blk_update_request run #8: OK run #9: OK run #10: OK run #11: OK run #12: OK run #13: OK run #14: OK run #15: OK run #16: OK run #17: OK run #18: OK run #19: OK testing release v5.7 testing commit 3d77e6a8804abcc0504c904bd6e5cdf3a5cf8162 with gcc (GCC) 8.4.1 20210217 kernel signature: 3904fdeb990b0e70b8bda8efd10815e1863a3601695796bfbb63af277701bb1b run #0: crashed: KASAN: use-after-free Read in blk_update_request run #1: crashed: KASAN: use-after-free Read in blk_update_request run #2: crashed: KASAN: use-after-free Read in blk_update_request run #3: crashed: KASAN: use-after-free Read in blk_update_request run #4: crashed: KASAN: use-after-free Read in blk_update_request run #5: OK run #6: OK run #7: OK run #8: OK run #9: OK run #10: OK run #11: OK run #12: OK run #13: OK run #14: OK run #15: OK run #16: OK run #17: OK run #18: OK run #19: OK testing release v5.6 testing commit 7111951b8d4973bda27ff663f2cf18b663d15b48 with gcc (GCC) 8.4.1 20210217 kernel signature: 589b17bb836575ebde53035ba6933173a07823dbf21cd598cf3fcca3079e81a6 run #0: crashed: KASAN: use-after-free Read in blk_update_request run #1: crashed: KASAN: use-after-free Read in blk_update_request run #2: crashed: KASAN: use-after-free Read in blk_update_request run #3: crashed: KASAN: use-after-free Read in blk_update_request run #4: crashed: KASAN: use-after-free Read in blk_update_request run #5: crashed: KASAN: use-after-free Read in blk_update_request run #6: crashed: KASAN: use-after-free Read in blk_update_request run #7: crashed: KASAN: use-after-free Read in blk_update_request run #8: crashed: KASAN: use-after-free Read in blk_update_request run #9: crashed: KASAN: use-after-free Read in blk_update_request run #10: crashed: KASAN: use-after-free Read in blk_update_request run #11: OK run #12: OK run #13: OK run #14: OK run #15: OK run #16: OK run #17: OK run #18: OK run #19: OK testing release v5.5 testing commit d5226fa6dbae0569ee43ecfc08bdcd6770fc4755 with gcc (GCC) 8.4.1 20210217 kernel signature: bffa4480d6797812f3856d4c5267c180c0d1b2a36cbe2e4e7655785f988916d4 run #0: crashed: KASAN: use-after-free Read in blk_update_request run #1: crashed: KASAN: use-after-free Read in blk_update_request run #2: crashed: KASAN: use-after-free Read in blk_update_request run #3: crashed: KASAN: use-after-free Read in blk_update_request run #4: crashed: KASAN: use-after-free Read in blk_update_request run #5: crashed: KASAN: use-after-free Read in blk_update_request run #6: crashed: KASAN: use-after-free Read in blk_update_request run #7: crashed: KASAN: use-after-free Read in blk_update_request run #8: crashed: KASAN: use-after-free Read in blk_update_request run #9: crashed: KASAN: use-after-free Read in blk_update_request run #10: crashed: KASAN: use-after-free Read in blk_update_request run #11: crashed: KASAN: use-after-free Read in blk_update_request run #12: OK run #13: OK run #14: OK run #15: OK run #16: OK run #17: OK run #18: OK run #19: OK testing release v5.4 testing commit 219d54332a09e8d8741c1e1982f5eae56099de85 with gcc (GCC) 8.4.1 20210217 kernel signature: 5990a270cce9c81faec881266cc65d1936a61f5e0651b36c7ec5a3ec8b43379d run #0: crashed: KASAN: use-after-free Read in blk_update_request run #1: crashed: KASAN: use-after-free Read in blk_update_request run #2: crashed: KASAN: use-after-free Read in blk_update_request run #3: crashed: KASAN: use-after-free Read in blk_update_request run #4: crashed: KASAN: use-after-free Read in blk_update_request run #5: crashed: KASAN: use-after-free Read in blk_update_request run #6: crashed: KASAN: use-after-free Read in blk_update_request run #7: crashed: KASAN: use-after-free Read in blk_update_request run #8: crashed: KASAN: use-after-free Read in blk_update_request run #9: crashed: KASAN: use-after-free Read in blk_update_request run #10: OK run #11: OK run #12: OK run #13: OK run #14: OK run #15: OK run #16: OK run #17: OK run #18: OK run #19: OK testing release v5.3 testing commit 4d856f72c10ecb060868ed10ff1b1453943fc6c8 with gcc (GCC) 8.4.1 20210217 kernel signature: 5ddb139a897ab246638dd8d8c4fb8e49f5d59779b05ffc045372555b42d40702 all runs: boot failed: BUG: spinlock bad magic in nf_connlabels_get testing release v5.2 testing commit 0ecfebd2b52404ae0c54a878c872bb93363ada36 with gcc (GCC) 8.4.1 20210217 kernel signature: dc6892aaf4def9037b74bf4632dc05024de897a85ae276de4d5b6956bc5f2f04 all runs: boot failed: can't ssh into the instance testing release v5.1 testing commit e93c9c99a629c61837d5a7fc2120cd2b6c70dbdd with gcc (GCC) 8.4.1 20210217 kernel signature: 5de01a34558fd6fecab66c87b1983148f709c4c11f6bf9d11e7ddd56973e2358 all runs: boot failed: can't ssh into the instance testing release v5.0 testing commit 1c163f4c7b3f621efff9b28a47abb36f7378d783 with gcc (GCC) 8.4.1 20210217 kernel signature: b448a70cff684391b1dae8ad450cd71da69806025d3ecdcf83a92b7a08ac0e5b all runs: boot failed: can't ssh into the instance testing release v4.20 testing commit 8fe28cb58bcb235034b64cbbb7550a8a43fd88be with gcc (GCC) 8.4.1 20210217 kernel signature: 02349d1d1f1792997e102f56627768cd919d4d3ad15e21d0d35cd4074c7fad6e all runs: boot failed: can't ssh into the instance testing release v4.19 testing commit 84df9525b0c27f3ebc2ebb1864fa62a97fdedb7d with gcc (GCC) 8.4.1 20210217 kernel signature: b8f9fe1821760cad81bb6f1b20f2147bea8271705243385b6eb0814ed3825c13 all runs: boot failed: can't ssh into the instance testing release v4.18 testing commit 94710cac0ef4ee177a63b5227664b38c95bbf703 with gcc (GCC) 8.4.1 20210217 kernel signature: e96cb7405157cfb193a292cd67d64105f4dfd4e094b6e0bcd1654f80f87bab5b all runs: boot failed: can't ssh into the instance testing release v4.17 testing commit 29dcea88779c856c7dc92040a0c01233263101d4 with gcc (GCC) 8.4.1 20210217 failed to run ["make" "-j" "64" "ARCH=x86_64" "CC=/syzkaller/shared/bisect_bin/gcc-8.1.0/bin/gcc" "bzImage"]: exit status 2 testing release v4.16 testing commit 0adb32858b0bddf4ada5f364a84ed60b196dbcda with gcc (GCC) 8.4.1 20210217 orc_dump.c:106:2: error: 'elf_getshnum' is deprecated [-Werror=deprecated-declarations] orc_dump.c:111:2: error: 'elf_getshstrndx' is deprecated [-Werror=deprecated-declarations] elf.c:135:2: error: 'elf_getshnum' is deprecated [-Werror=deprecated-declarations] elf.c:140:2: error: 'elf_getshstrndx' is deprecated [-Werror=deprecated-declarations] testing release v4.15 testing commit d8a5b80568a9cb66810e75b182018e9edb68e8ff with gcc (GCC) 8.4.1 20210217 orc_dump.c:106:2: error: 'elf_getshnum' is deprecated [-Werror=deprecated-declarations] orc_dump.c:111:2: error: 'elf_getshstrndx' is deprecated [-Werror=deprecated-declarations] elf.c:135:2: error: 'elf_getshnum' is deprecated [-Werror=deprecated-declarations] elf.c:140:2: error: 'elf_getshstrndx' is deprecated [-Werror=deprecated-declarations] pager.c:36:12: error: passing argument 2 to 'restrict'-qualified parameter aliases with argument 4 [-Werror=restrict] testing release v4.14 testing commit bebc6082da0a9f5d47a1ea2edc099bf671058bd4 with gcc (GCC) 8.4.1 20210217 orc_dump.c:105:2: error: 'elf_getshnum' is deprecated [-Werror=deprecated-declarations] orc_dump.c:110:2: error: 'elf_getshstrndx' is deprecated [-Werror=deprecated-declarations] elf.c:134:2: error: 'elf_getshnum' is deprecated [-Werror=deprecated-declarations] elf.c:139:2: error: 'elf_getshstrndx' is deprecated [-Werror=deprecated-declarations] pager.c:36:12: error: passing argument 2 to 'restrict'-qualified parameter aliases with argument 4 [-Werror=restrict] testing release v4.13 testing commit 569dbb88e80deb68974ef6fdd6a13edb9d686261 with gcc (GCC) 8.4.1 20210217 pager.c:35:12: error: passing argument 2 to 'restrict'-qualified parameter aliases with argument 4 [-Werror=restrict] elf.c:144:2: error: 'elf_getshnum' is deprecated [-Werror=deprecated-declarations] elf.c:149:2: error: 'elf_getshstrndx' is deprecated [-Werror=deprecated-declarations] testing release v4.12 testing commit 6f7da290413ba713f0cdd9ff1a2a9bb129ef4f6c with gcc (GCC) 8.4.1 20210217 pager.c:35:12: error: passing argument 2 to 'restrict'-qualified parameter aliases with argument 4 [-Werror=restrict] elf.c:141:2: error: 'elf_getshnum' is deprecated [-Werror=deprecated-declarations] elf.c:146:2: error: 'elf_getshstrndx' is deprecated [-Werror=deprecated-declarations] testing release v4.11 testing commit a351e9b9fc24e982ec2f0e76379a49826036da12 with gcc (GCC) 7.5.0 pager.c:35:12: error: passing argument 2 to 'restrict'-qualified parameter aliases with argument 4 [-Werror=restrict] elf.c:141:2: error: 'elf_getshnum' is deprecated [-Werror=deprecated-declarations] elf.c:146:2: error: 'elf_getshstrndx' is deprecated [-Werror=deprecated-declarations] testing release v4.10 testing commit c470abd4fde40ea6a0846a2beab642a578c0b8cd with gcc (GCC) 5.5.0 tools/include/linux/log2.h:19:1: error: ignoring attribute 'noreturn' because it conflicts with attribute 'const' [-Werror=attributes] elf.c:129:2: error: 'elf_getshnum' is deprecated [-Werror=deprecated-declarations] elf.c:134:2: error: 'elf_getshstrndx' is deprecated [-Werror=deprecated-declarations] pager.c:35:12: error: passing argument 2 to 'restrict'-qualified parameter aliases with argument 4 [-Werror=restrict] testing release v4.9 testing commit 69973b830859bc6529a7a0468ba0d80ee5117826 with gcc (GCC) 5.5.0 tools/include/linux/log2.h:19:1: error: ignoring attribute 'noreturn' because it conflicts with attribute 'const' [-Werror=attributes] elf.c:129:2: error: 'elf_getshnum' is deprecated [-Werror=deprecated-declarations] elf.c:134:2: error: 'elf_getshstrndx' is deprecated [-Werror=deprecated-declarations] pager.c:35:12: error: passing argument 2 to 'restrict'-qualified parameter aliases with argument 4 [-Werror=restrict] testing release v4.8 testing commit c8d2bc9bc39ebea8437fd974fdbc21847bb897a3 with gcc (GCC) 5.5.0 tools/include/linux/log2.h:19:1: error: ignoring attribute 'noreturn' because it conflicts with attribute 'const' [-Werror=attributes] elf.c:129:2: error: 'elf_getshnum' is deprecated [-Werror=deprecated-declarations] elf.c:134:2: error: 'elf_getshstrndx' is deprecated [-Werror=deprecated-declarations] pager.c:33:12: error: passing argument 2 to 'restrict'-qualified parameter aliases with argument 4 [-Werror=restrict] testing release v4.7 testing commit 523d939ef98fd712632d93a5a2b588e477a7565e with gcc (GCC) 5.5.0 tools/include/linux/log2.h:19:1: error: ignoring attribute 'noreturn' because it conflicts with attribute 'const' [-Werror=attributes] elf.c:122:2: error: 'elf_getshnum' is deprecated [-Werror=deprecated-declarations] elf.c:127:2: error: 'elf_getshstrndx' is deprecated [-Werror=deprecated-declarations] pager.c:33:12: error: passing argument 2 to 'restrict'-qualified parameter aliases with argument 4 [-Werror=restrict] testing release v4.6 testing commit 2dcd0af568b0cf583645c8a317dd12e344b1c72a with gcc (GCC) 5.5.0 tools/include/linux/log2.h:19:1: error: ignoring attribute 'noreturn' because it conflicts with attribute 'const' [-Werror=attributes] pager.c:33:12: error: passing argument 2 to 'restrict'-qualified parameter aliases with argument 4 [-Werror=restrict] Reproducer flagged being flaky revisions tested: 15, total time: 4h43m28.236100067s (build: 1h45m2.244003313s, test: 2h54m10.503513721s) the crash already happened on the oldest tested release commit msg: Linux 5.4 crash: KASAN: use-after-free Read in blk_update_request ================================================================== BUG: KASAN: use-after-free in __lock_acquire+0x3743/0x4550 kernel/locking/lockdep.c:3828 Read of size 8 at addr ffff88808b2f0968 by task ksoftirqd/1/16 CPU: 1 PID: 16 Comm: ksoftirqd/1 Not tainted 5.4.0-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0x96/0xe0 lib/dump_stack.c:118 print_address_description.constprop.4.cold.6+0x9/0x373 mm/kasan/report.c:374 __kasan_report.cold.7+0x7a/0x95 mm/kasan/report.c:506 kasan_report+0xe/0x20 mm/kasan/common.c:634 __lock_acquire+0x3743/0x4550 kernel/locking/lockdep.c:3828 lock_acquire+0x12e/0x360 kernel/locking/lockdep.c:4487 __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline] _raw_spin_lock_irqsave+0x33/0x50 kernel/locking/spinlock.c:159 __wake_up_common_lock+0xa8/0x120 kernel/sched/wait.c:122 req_bio_endio block/blk-core.c:242 [inline] blk_update_request+0x2ff/0x1130 block/blk-core.c:1462 blk_mq_end_request+0x45/0x4c0 block/blk-mq.c:568 blk_done_softirq+0x279/0x3d0 block/blk-softirq.c:37 __do_softirq+0x24a/0xa97 kernel/softirq.c:292 run_ksoftirqd kernel/softirq.c:603 [inline] run_ksoftirqd+0x2b/0x50 kernel/softirq.c:595 smpboot_thread_fn+0x51e/0x880 kernel/smpboot.c:165 kthread+0x31d/0x3e0 kernel/kthread.c:255 ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:352 Allocated by task 12013: save_stack+0x19/0x80 mm/kasan/common.c:69 set_track mm/kasan/common.c:77 [inline] __kasan_kmalloc mm/kasan/common.c:510 [inline] __kasan_kmalloc.constprop.11+0xc1/0xd0 mm/kasan/common.c:483 kmalloc include/linux/slab.h:556 [inline] lbmLogInit fs/jfs/jfs_logmgr.c:1829 [inline] lmLogInit+0x3bf/0x1280 fs/jfs/jfs_logmgr.c:1278 open_inline_log fs/jfs/jfs_logmgr.c:1183 [inline] lmLogOpen+0x84c/0x11b0 fs/jfs/jfs_logmgr.c:1077 jfs_mount_rw+0x215/0x40e fs/jfs/jfs_mount.c:258 jfs_fill_super+0x8d5/0xb20 fs/jfs/super.c:571 mount_bdev+0x25e/0x320 fs/super.c:1415 legacy_get_tree+0xfe/0x200 fs/fs_context.c:647 vfs_get_tree+0x7e/0x330 fs/super.c:1545 do_new_mount fs/namespace.c:2822 [inline] do_mount+0x103a/0x16c0 fs/namespace.c:3142 ksys_mount+0xb1/0xd0 fs/namespace.c:3351 __do_sys_mount fs/namespace.c:3365 [inline] __se_sys_mount fs/namespace.c:3362 [inline] __x64_sys_mount+0xb5/0x150 fs/namespace.c:3362 do_syscall_64+0x8e/0x4e0 arch/x86/entry/common.c:290 entry_SYSCALL_64_after_hwframe+0x49/0xbe Freed by task 12013: save_stack+0x19/0x80 mm/kasan/common.c:69 set_track mm/kasan/common.c:77 [inline] kasan_set_free_info mm/kasan/common.c:332 [inline] __kasan_slab_free+0x124/0x170 mm/kasan/common.c:471 slab_free_hook mm/slub.c:1424 [inline] slab_free_freelist_hook+0x53/0x140 mm/slub.c:1457 slab_free mm/slub.c:3004 [inline] kfree+0xd6/0x3b0 mm/slub.c:3956 lbmLogShutdown+0x71/0x90 fs/jfs/jfs_logmgr.c:1872 lmLogInit fs/jfs/jfs_logmgr.c:1423 [inline] lmLogInit+0x7c5/0x1280 fs/jfs/jfs_logmgr.c:1248 open_inline_log fs/jfs/jfs_logmgr.c:1183 [inline] lmLogOpen+0x84c/0x11b0 fs/jfs/jfs_logmgr.c:1077 jfs_mount_rw+0x215/0x40e fs/jfs/jfs_mount.c:258 jfs_fill_super+0x8d5/0xb20 fs/jfs/super.c:571 mount_bdev+0x25e/0x320 fs/super.c:1415 legacy_get_tree+0xfe/0x200 fs/fs_context.c:647 vfs_get_tree+0x7e/0x330 fs/super.c:1545 do_new_mount fs/namespace.c:2822 [inline] do_mount+0x103a/0x16c0 fs/namespace.c:3142 ksys_mount+0xb1/0xd0 fs/namespace.c:3351 __do_sys_mount fs/namespace.c:3365 [inline] __se_sys_mount fs/namespace.c:3362 [inline] __x64_sys_mount+0xb5/0x150 fs/namespace.c:3362 do_syscall_64+0x8e/0x4e0 arch/x86/entry/common.c:290 entry_SYSCALL_64_after_hwframe+0x49/0xbe The buggy address belongs to the object at ffff88808b2f0900 which belongs to the cache kmalloc-192 of size 192 The buggy address is located 104 bytes inside of 192-byte region [ffff88808b2f0900, ffff88808b2f09c0) The buggy address belongs to the page: page:ffffea00022cbc00 refcount:1 mapcount:0 mapping:ffff8880b5802a00 index:0x0 raw: 00fff00000000200 ffffea0002d07280 0000000700000007 ffff8880b5802a00 raw: 0000000000000000 0000000000100010 00000001ffffffff 0000000000000000 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff88808b2f0800: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ffff88808b2f0880: 00 00 00 00 fc fc fc fc fc fc fc fc fc fc fc fc >ffff88808b2f0900: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ^ ffff88808b2f0980: fb fb fb fb fb fb fb fb fc fc fc fc fc fc fc fc ffff88808b2f0a00: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ==================================================================