BTRFS error (device loop5): superblock checksum mismatch ================================================================== BUG: KASAN: use-after-free in free_fs_info fs/btrfs/ctree.h:2932 [inline] BUG: KASAN: use-after-free in btrfs_mount+0x1c3f/0x1fe0 fs/btrfs/super.c:1650 Read of size 8 at addr ffff8880569a2510 by task syz-executor.5/18466 CPU: 1 PID: 18466 Comm: syz-executor.5 Not tainted 4.14.257-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+0x1b2/0x281 lib/dump_stack.c:58 print_address_description.cold+0x54/0x1d3 mm/kasan/report.c:252 kasan_report_error.cold+0x8a/0x191 mm/kasan/report.c:351 kasan_report mm/kasan/report.c:409 [inline] __asan_report_load8_noabort+0x68/0x70 mm/kasan/report.c:430 free_fs_info fs/btrfs/ctree.h:2932 [inline] btrfs_mount+0x1c3f/0x1fe0 fs/btrfs/super.c:1650 mount_fs+0x92/0x2a0 fs/super.c:1237 vfs_kern_mount.part.0+0x5b/0x470 fs/namespace.c:1046 vfs_kern_mount+0x3c/0x60 fs/namespace.c:1036 mount_subvol fs/btrfs/super.c:1398 [inline] btrfs_mount+0x42a/0x1fe0 fs/btrfs/super.c:1569 mount_fs+0x92/0x2a0 fs/super.c:1237 vfs_kern_mount.part.0+0x5b/0x470 fs/namespace.c:1046 vfs_kern_mount fs/namespace.c:1036 [inline] do_new_mount fs/namespace.c:2572 [inline] do_mount+0xe65/0x2a10 fs/namespace.c:2902 SYSC_mount fs/namespace.c:3118 [inline] SyS_mount+0xa8/0x120 fs/namespace.c:3095 do_syscall_64+0x1d5/0x640 arch/x86/entry/common.c:292 entry_SYSCALL_64_after_hwframe+0x46/0xbb RIP: 0033:0x7f1bd0c313ca RSP: 002b:00007f1bcf5a4f88 EFLAGS: 00000206 ORIG_RAX: 00000000000000a5 RAX: ffffffffffffffda RBX: 0000000020000200 RCX: 00007f1bd0c313ca RDX: 0000000020000000 RSI: 0000000020000100 RDI: 00007f1bcf5a4fe0 RBP: 00007f1bcf5a5020 R08: 00007f1bcf5a5020 R09: 0000000020000000 R10: 0000000000000801 R11: 0000000000000206 R12: 0000000020000000 R13: 0000000020000100 R14: 00007f1bcf5a4fe0 R15: 0000000020016800 Allocated by task 18466: save_stack mm/kasan/kasan.c:447 [inline] set_track mm/kasan/kasan.c:459 [inline] kasan_kmalloc+0xeb/0x160 mm/kasan/kasan.c:551 __do_kmalloc_node mm/slab.c:3682 [inline] __kmalloc_node+0x4c/0x70 mm/slab.c:3689 kmalloc_node include/linux/slab.h:530 [inline] kvmalloc_node+0x88/0xd0 mm/util.c:397 kvmalloc include/linux/mm.h:531 [inline] kvzalloc include/linux/mm.h:539 [inline] btrfs_mount+0x911/0x1fe0 fs/btrfs/super.c:1590 mount_fs+0x92/0x2a0 fs/super.c:1237 vfs_kern_mount.part.0+0x5b/0x470 fs/namespace.c:1046 vfs_kern_mount+0x3c/0x60 fs/namespace.c:1036 mount_subvol fs/btrfs/super.c:1398 [inline] btrfs_mount+0x42a/0x1fe0 fs/btrfs/super.c:1569 mount_fs+0x92/0x2a0 fs/super.c:1237 vfs_kern_mount.part.0+0x5b/0x470 fs/namespace.c:1046 vfs_kern_mount fs/namespace.c:1036 [inline] do_new_mount fs/namespace.c:2572 [inline] do_mount+0xe65/0x2a10 fs/namespace.c:2902 SYSC_mount fs/namespace.c:3118 [inline] SyS_mount+0xa8/0x120 fs/namespace.c:3095 do_syscall_64+0x1d5/0x640 arch/x86/entry/common.c:292 entry_SYSCALL_64_after_hwframe+0x46/0xbb Freed by task 18466: save_stack mm/kasan/kasan.c:447 [inline] set_track mm/kasan/kasan.c:459 [inline] kasan_slab_free+0xc3/0x1a0 mm/kasan/kasan.c:524 __cache_free mm/slab.c:3496 [inline] kfree+0xc9/0x250 mm/slab.c:3815 kvfree+0x45/0x50 mm/util.c:416 deactivate_locked_super+0x6c/0xd0 fs/super.c:319 sget_userns+0x9c4/0xc10 fs/super.c:537 sget+0xd1/0x110 fs/super.c:572 btrfs_mount+0xbbe/0x1fe0 fs/btrfs/super.c:1616 mount_fs+0x92/0x2a0 fs/super.c:1237 vfs_kern_mount.part.0+0x5b/0x470 fs/namespace.c:1046 vfs_kern_mount+0x3c/0x60 fs/namespace.c:1036 mount_subvol fs/btrfs/super.c:1398 [inline] btrfs_mount+0x42a/0x1fe0 fs/btrfs/super.c:1569 mount_fs+0x92/0x2a0 fs/super.c:1237 vfs_kern_mount.part.0+0x5b/0x470 fs/namespace.c:1046 vfs_kern_mount fs/namespace.c:1036 [inline] do_new_mount fs/namespace.c:2572 [inline] do_mount+0xe65/0x2a10 fs/namespace.c:2902 SYSC_mount fs/namespace.c:3118 [inline] SyS_mount+0xa8/0x120 fs/namespace.c:3095 do_syscall_64+0x1d5/0x640 arch/x86/entry/common.c:292 entry_SYSCALL_64_after_hwframe+0x46/0xbb The buggy address belongs to the object at ffff8880569a0ec0 which belongs to the cache kmalloc-8192 of size 8192 The buggy address is located 5712 bytes inside of 8192-byte region [ffff8880569a0ec0, ffff8880569a2ec0) The buggy address belongs to the page: page:ffffea00015a6800 count:1 mapcount:0 mapping:ffff8880569a0ec0 index:0x0 compound_mapcount: 0 flags: 0xfff00000008100(slab|head) raw: 00fff00000008100 ffff8880569a0ec0 0000000000000000 0000000100000001 raw: ffffea00015b7720 ffffea0002567120 ffff88813fe64080 0000000000000000 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff8880569a2400: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ffff8880569a2480: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb >ffff8880569a2500: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ^ ffff8880569a2580: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ffff8880569a2600: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ================================================================== sp0: Synchronizing with TNC BTRFS error (device loop5): open_ctree failed