bisecting fixing commit since 8961076ed318dfd22aa357b41589f07bf67e73b6 building syzkaller on 0767f13fbd87c99aea7893eb64199b76be42cd61 testing commit 8961076ed318dfd22aa357b41589f07bf67e73b6 with gcc (GCC) 8.4.1 20210217 kernel signature: 46f33a1daf110235c3c45f2ce91522a2086867a76c51af0d5c60b4a11e341b73 run #0: crashed: KASAN: use-after-free Read in squashfs_get_id run #1: crashed: KASAN: use-after-free Read in squashfs_get_id run #2: crashed: KASAN: use-after-free Read in squashfs_get_id run #3: crashed: KASAN: use-after-free Read in squashfs_get_id run #4: crashed: KASAN: use-after-free Read in squashfs_get_id run #5: crashed: KASAN: use-after-free Read in squashfs_get_id run #6: crashed: KASAN: use-after-free Read in squashfs_get_id run #7: crashed: KASAN: use-after-free Read in squashfs_get_id run #8: crashed: KASAN: use-after-free Read in squashfs_get_id run #9: crashed: KASAN: use-after-free Read in squashfs_get_id run #10: crashed: KASAN: use-after-free Read in squashfs_get_id run #11: crashed: KASAN: slab-out-of-bounds Read in squashfs_get_id run #12: crashed: KASAN: use-after-free Read in squashfs_get_id run #13: crashed: KASAN: use-after-free Read in squashfs_get_id run #14: crashed: KASAN: use-after-free Read in squashfs_get_id run #15: crashed: KASAN: use-after-free Read in squashfs_get_id run #16: crashed: KASAN: use-after-free Read in squashfs_get_id run #17: crashed: KASAN: use-after-free Read in squashfs_get_id run #18: crashed: KASAN: slab-out-of-bounds Read in squashfs_get_id run #19: crashed: KASAN: slab-out-of-bounds Read in squashfs_get_id testing current HEAD 29c52025152bab4c557d8174da58f1a4c8e70438 testing commit 29c52025152bab4c557d8174da58f1a4c8e70438 with gcc (GCC) 8.4.1 20210217 kernel signature: 91228786976938ea738bf97038544e98a74decaba085946ecea81956ac20274a all runs: crashed: KASAN: use-after-free Read in squashfs_get_id revisions tested: 2, total time: 21m28.588013941s (build: 13m50.18363765s, test: 6m43.267514216s) the crash still happens on HEAD commit msg: Linux 4.14.221 crash: KASAN: use-after-free Read in squashfs_get_id IPv6: ADDRCONF(NETDEV_CHANGE): macvlan1: link becomes ready IPv6: ADDRCONF(NETDEV_CHANGE): macvlan0: link becomes ready IPv6: ADDRCONF(NETDEV_CHANGE): macvlan1: link becomes ready ================================================================== IPv6: ADDRCONF(NETDEV_CHANGE): veth1_vlan: link becomes ready BUG: KASAN: use-after-free in squashfs_get_id+0x1af/0x1f0 fs/squashfs/id.c:51 Read of size 8 at addr ffff8881d846ef80 by task syz-executor.1/9051 CPU: 0 PID: 9051 Comm: syz-executor.1 Not tainted 4.14.221-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:17 [inline] dump_stack+0x14b/0x1e7 lib/dump_stack.c:58 print_address_description.cold.6+0x9/0x1ca mm/kasan/report.c:252 IPv6: ADDRCONF(NETDEV_CHANGE): veth0_vlan: link becomes ready kasan_report_error mm/kasan/report.c:351 [inline] kasan_report mm/kasan/report.c:409 [inline] kasan_report.cold.7+0x11a/0x2d3 mm/kasan/report.c:393 __asan_report_load8_noabort+0x14/0x20 mm/kasan/report.c:430 squashfs_get_id+0x1af/0x1f0 fs/squashfs/id.c:51 squashfs_new_inode fs/squashfs/inode.c:64 [inline] squashfs_read_inode+0x1d6/0x1cd0 fs/squashfs/inode.c:133 IPv6: ADDRCONF(NETDEV_UP): veth0_macvtap: link is not ready device veth0_vlan entered promiscuous mode device veth1_vlan entered promiscuous mode squashfs_fill_super+0x135d/0x1a20 fs/squashfs/super.c:318 mount_bdev+0x26f/0x330 fs/super.c:1134 IPv6: ADDRCONF(NETDEV_UP): macvlan0: link is not ready IPv6: ADDRCONF(NETDEV_CHANGE): vlan0: link becomes ready squashfs_mount+0x10/0x20 fs/squashfs/super.c:404 IPv6: ADDRCONF(NETDEV_CHANGE): vlan1: link becomes ready mount_fs+0x7f/0x270 fs/super.c:1237 vfs_kern_mount.part.9+0x58/0x3c0 fs/namespace.c:1046 vfs_kern_mount fs/namespace.c:1036 [inline] do_new_mount fs/namespace.c:2549 [inline] do_mount+0x352/0x2af0 fs/namespace.c:2879 SYSC_mount fs/namespace.c:3095 [inline] SyS_mount+0xb1/0xd0 fs/namespace.c:3072 IPv6: ADDRCONF(NETDEV_CHANGE): macvlan0: link becomes ready do_syscall_64+0x1c7/0x5b0 arch/x86/entry/common.c:292 entry_SYSCALL_64_after_hwframe+0x46/0xbb RIP: 0033:0x466daa RSP: 002b:00007f475b8f1fa8 EFLAGS: 00000246 ORIG_RAX: 00000000000000a5 RAX: ffffffffffffffda RBX: 0000000020000200 RCX: 0000000000466daa RDX: 0000000020000000 RSI: 00000000200000c0 RDI: 00007f475b8f2000 RBP: 00007f475b8f2040 R08: 00007f475b8f2040 R09: 0000000020000000 IPv6: ADDRCONF(NETDEV_UP): veth1_macvtap: link is not ready R10: 0000000000000000 R11: 0000000000000246 R12: 0000000020000000 IPv6: ADDRCONF(NETDEV_UP): veth0_macvtap: link is not ready R13: 00000000200000c0 R14: 00007f475b8f2000 R15: 0000000020010200 IPv6: ADDRCONF(NETDEV_UP): macvlan1: link is not ready Allocated by task 9046: save_stack_trace+0x16/0x20 arch/x86/kernel/stacktrace.c:59 save_stack mm/kasan/kasan.c:447 [inline] set_track mm/kasan/kasan.c:459 [inline] kasan_kmalloc.part.1+0x62/0xf0 mm/kasan/kasan.c:551 kasan_kmalloc+0xaf/0xc0 mm/kasan/kasan.c:536 __do_kmalloc mm/slab.c:3720 [inline] __kmalloc+0x15d/0x410 mm/slab.c:3729 kmalloc include/linux/slab.h:493 [inline] load_elf_binary+0x5cc/0x5070 fs/binfmt_elf.c:749 search_binary_handler fs/exec.c:1653 [inline] search_binary_handler+0x12b/0x630 fs/exec.c:1631 exec_binprm fs/exec.c:1695 [inline] do_execveat_common.isra.14+0xfc0/0x1d70 fs/exec.c:1815 do_execve+0x1e/0x20 fs/exec.c:1860 call_usermodehelper_exec_async+0x2de/0x530 kernel/umh.c:109 ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:404 IPv6: ADDRCONF(NETDEV_CHANGE): macvlan1: link becomes ready Freed by task 9046: save_stack_trace+0x16/0x20 arch/x86/kernel/stacktrace.c:59 save_stack mm/kasan/kasan.c:447 [inline] set_track mm/kasan/kasan.c:459 [inline] kasan_slab_free+0xab/0x190 mm/kasan/kasan.c:524 __cache_free mm/slab.c:3496 [inline] kfree+0xcc/0x270 mm/slab.c:3815 load_elf_binary+0x315a/0x5070 fs/binfmt_elf.c:1087 search_binary_handler fs/exec.c:1653 [inline] search_binary_handler+0x12b/0x630 fs/exec.c:1631 exec_binprm fs/exec.c:1695 [inline] do_execveat_common.isra.14+0xfc0/0x1d70 fs/exec.c:1815 do_execve+0x1e/0x20 fs/exec.c:1860 call_usermodehelper_exec_async+0x2de/0x530 kernel/umh.c:109 ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:404 IPv6: ADDRCONF(NETDEV_CHANGE): veth1_macvtap: link becomes ready IPv6: ADDRCONF(NETDEV_CHANGE): veth0_macvtap: link becomes ready The buggy address belongs to the object at ffff8881d846ef80 which belongs to the cache kmalloc-32 of size 32 The buggy address is located 0 bytes inside of 32-byte region [ffff8881d846ef80, ffff8881d846efa0) The buggy address belongs to the page: page:ffffea0007611b80 count:1 mapcount:0 mapping:ffff8881d846e000 index:0xffff8881d846efc1 flags: 0x17ff00000000100(slab) raw: 017ff00000000100 ffff8881d846e000 ffff8881d846efc1 000000010000003f raw: ffffea00076c1420 ffffea0007cec760 ffff8881f60001c0 0000000000000000 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff8881d846ee80: fb fb fb fb fc fc fc fc 00 fc fc fc fc fc fc fc ffff8881d846ef00: fb fb fb fb fc fc fc fc fb fb fb fb fc fc fc fc >ffff8881d846ef80: fb fb fb fb fc fc fc fc fc fc fc fc fc fc fc fc ^ ffff8881d846f000: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ffff8881d846f080: fc fc fc fc fc fc fc fc fb fb fb fb fb fb fb fb ================================================================== IPv6: ADDRCONF(NETDEV_UP): veth0_macvtap: link is not ready