syzbot


KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list

Status: upstream: reported C repro on 2022/10/28 20:42
Labels: reiserfs (incorrect?)
Reported-by: syzbot+174ea873dedcd7fb6de3@syzkaller.appspotmail.com
First crash: 218d, last: 3d13h

Cause bisection: failed (error log, bisect log)
Discussions (1)
Title Replies (including bot) Last reply
[syzbot] KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list 0 (1) 2022/10/28 20:42
Similar bugs (4)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
linux-6.1 KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list origin:upstream C 1 11d 11d 0/3 upstream: reported C repro on 2023/05/22 16:15
linux-5.15 KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list 2 36d 40d 0/3 upstream: reported on 2023/04/23 04:32
linux-4.14 BUG: unable to handle kernel paging request in cleanup_bitmap_list C 1 102d 215d 0/1 upstream: reported C repro on 2022/10/30 13:58
linux-4.19 BUG: unable to handle kernel paging request in cleanup_bitmap_list reiserfs C error 2 134d 217d 0/1 upstream: reported C repro on 2022/10/28 06:50

Sample crash report:
REISERFS (device loop1): Using r5 hash to sort names
REISERFS warning (device loop1): jdm-20006 create_privroot: xattrs/ACLs enabled and couldn't find/create .reiserfs_priv. Failing mount.
==================================================================
BUG: KASAN: vmalloc-out-of-bounds in cleanup_bitmap_list+0x175/0x500 fs/reiserfs/journal.c:231
Read of size 8 at addr ffffc90002e0e008 by task syz-executor100/5129

CPU: 1 PID: 5129 Comm: syz-executor100 Not tainted 6.3.0-rc3-syzkaller-00317-g65aca32efdcb #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/02/2023
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0x1e7/0x2d0 lib/dump_stack.c:106
 print_address_description mm/kasan/report.c:319 [inline]
 print_report+0x163/0x540 mm/kasan/report.c:430
 kasan_report+0x176/0x1b0 mm/kasan/report.c:536
 cleanup_bitmap_list+0x175/0x500 fs/reiserfs/journal.c:231
 free_list_bitmaps+0x48/0x1a0 fs/reiserfs/journal.c:249
 free_journal_ram+0xf8/0x3f0 fs/reiserfs/journal.c:1887
 do_journal_release fs/reiserfs/journal.c:1960 [inline]
 journal_release_error+0x7a/0x90 fs/reiserfs/journal.c:1978
 reiserfs_fill_super+0x1599/0x2620 fs/reiserfs/super.c:2223
 mount_bdev+0x271/0x3a0 fs/super.c:1380
 legacy_get_tree+0xef/0x190 fs/fs_context.c:610
 vfs_get_tree+0x8c/0x270 fs/super.c:1510
 do_new_mount+0x28f/0xae0 fs/namespace.c:3042
 do_mount fs/namespace.c:3385 [inline]
 __do_sys_mount fs/namespace.c:3594 [inline]
 __se_sys_mount+0x2d9/0x3c0 fs/namespace.c:3571
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x41/0xc0 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x63/0xcd
RIP: 0033:0x7fe73d6f77ba
Code: 48 c7 c2 c0 ff ff ff f7 d8 64 89 02 b8 ff ff ff ff eb d2 e8 a8 00 00 00 0f 1f 84 00 00 00 00 00 49 89 ca b8 a5 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 c0 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007ffe8c01cc98 EFLAGS: 00000286 ORIG_RAX: 00000000000000a5
RAX: ffffffffffffffda RBX: 0000000000000003 RCX: 00007fe73d6f77ba
RDX: 0000000020001100 RSI: 0000000020001140 RDI: 00007ffe8c01ccb0
RBP: 00007ffe8c01ccb0 R08: 00007ffe8c01ccf0 R09: 0000000000000000
R10: 0000000000800008 R11: 0000000000000286 R12: 0000000000000004
R13: 0000555556c082c0 R14: 0000000000800008 R15: 00007ffe8c01ccf0
 </TASK>

The buggy address belongs to the virtual mapping at
 [ffffc90002e0e000, ffffc90002e10000) created by:
 reiserfs_allocate_list_bitmaps+0x50/0x220 fs/reiserfs/journal.c:290

The buggy address belongs to the physical page:
page:ffffea000072f4c0 refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x1cbd3
flags: 0xfff00000000000(node=0|zone=1|lastcpupid=0x7ff)
raw: 00fff00000000000 0000000000000000 dead000000000122 0000000000000000
raw: 0000000000000000 0000000000000000 00000001ffffffff 0000000000000000
page dumped because: kasan: bad access detected
page_owner tracks the page as allocated
page last allocated via order 0, migratetype Unmovable, gfp_mask 0x2dc2(GFP_KERNEL|__GFP_HIGHMEM|__GFP_NOWARN|__GFP_ZERO), pid 5129, tgid 5129 (syz-executor100), ts 60773363133, free_ts 59975933908
 prep_new_page mm/page_alloc.c:2553 [inline]
 get_page_from_freelist+0x3246/0x33c0 mm/page_alloc.c:4326
 __alloc_pages+0x255/0x670 mm/page_alloc.c:5592
 __alloc_pages_bulk+0x729/0xd40 mm/page_alloc.c:5540
 vm_area_alloc_pages mm/vmalloc.c:2918 [inline]
 __vmalloc_area_node mm/vmalloc.c:3029 [inline]
 __vmalloc_node_range+0x798/0x13f0 mm/vmalloc.c:3199
 __vmalloc_node mm/vmalloc.c:3264 [inline]
 vzalloc+0x79/0x90 mm/vmalloc.c:3337
 reiserfs_allocate_list_bitmaps+0x50/0x220 fs/reiserfs/journal.c:290
 journal_init+0x2ec/0x24b0 fs/reiserfs/journal.c:2733
 reiserfs_fill_super+0x1039/0x2620 fs/reiserfs/super.c:2022
 mount_bdev+0x271/0x3a0 fs/super.c:1380
 legacy_get_tree+0xef/0x190 fs/fs_context.c:610
 vfs_get_tree+0x8c/0x270 fs/super.c:1510
 do_new_mount+0x28f/0xae0 fs/namespace.c:3042
 do_mount fs/namespace.c:3385 [inline]
 __do_sys_mount fs/namespace.c:3594 [inline]
 __se_sys_mount+0x2d9/0x3c0 fs/namespace.c:3571
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x41/0xc0 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x63/0xcd
page last free stack trace:
 reset_page_owner include/linux/page_owner.h:24 [inline]
 free_pages_prepare mm/page_alloc.c:1454 [inline]
 free_pcp_prepare mm/page_alloc.c:1504 [inline]
 free_unref_page_prepare+0xe2f/0xe70 mm/page_alloc.c:3388
 free_unref_page+0x37/0x3f0 mm/page_alloc.c:3483
 vfree+0x186/0x2e0 mm/vmalloc.c:2742
 free_list_bitmaps+0xed/0x1a0 fs/reiserfs/journal.c:250
 free_journal_ram+0xf8/0x3f0 fs/reiserfs/journal.c:1887
 do_journal_release fs/reiserfs/journal.c:1960 [inline]
 journal_release_error+0x7a/0x90 fs/reiserfs/journal.c:1978
 reiserfs_fill_super+0x1599/0x2620 fs/reiserfs/super.c:2223
 mount_bdev+0x271/0x3a0 fs/super.c:1380
 legacy_get_tree+0xef/0x190 fs/fs_context.c:610
 vfs_get_tree+0x8c/0x270 fs/super.c:1510
 do_new_mount+0x28f/0xae0 fs/namespace.c:3042
 do_mount fs/namespace.c:3385 [inline]
 __do_sys_mount fs/namespace.c:3594 [inline]
 __se_sys_mount+0x2d9/0x3c0 fs/namespace.c:3571
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x41/0xc0 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x63/0xcd

Memory state around the buggy address:
 ffffc90002e0df00: f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8
 ffffc90002e0df80: f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8
>ffffc90002e0e000: 00 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8
                      ^
 ffffc90002e0e080: f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8
 ffffc90002e0e100: f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8
==================================================================

Crashes (43):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets Manager Title
2023/03/25 17:41 upstream 65aca32efdcb fbf0499a .config strace log report syz C [disk image] [vmlinux] [kernel image] [mounted in repro] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/03/25 17:17 upstream 65aca32efdcb fbf0499a .config strace log report syz C [disk image] [vmlinux] [kernel image] [mounted in repro] ci-upstream-kasan-gce-root KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2022/11/06 14:55 upstream 2f5065a0bc9d 6d752409 .config console log report syz C [disk image] [vmlinux] [kernel image] [mounted in repro] ci-upstream-kasan-gce-root KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2022/10/27 22:02 upstream b229b6ca5abb 5c716ff6 .config strace log report syz C [disk image] [vmlinux] [kernel image] [mounted in repro] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/05/28 12:04 upstream 416839029e38 cf184559 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/05/21 07:16 upstream 0dd2a6fb1e34 4bce1a3e .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu-upstream KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/05/19 01:00 upstream 4d6d4c7f541d 3bb7af1d .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-root KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/05/12 17:12 upstream cc3c44c9fda2 ecca8a24 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/04/28 08:27 upstream 91ec4b0d11fe 70a605de .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/04/26 09:50 upstream 4173cf6fb6b7 7560799c .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/04/24 19:04 upstream 457391b03803 fdc18293 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/04/22 14:19 upstream 8e41e0a57566 2b32bd34 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/04/21 09:45 upstream b7bc77e2f2c7 2b32bd34 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-root KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/04/16 22:32 upstream 3e7bb4f24617 ec410564 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/04/12 01:54 upstream e62252bc55b6 49faf98d .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/04/08 23:59 upstream a79d5c76f705 71147e29 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/04/05 16:51 upstream 76f598ba7d8e 8b834965 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-root KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/04/05 12:48 upstream 76f598ba7d8e 831373d3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/04/03 11:12 upstream 7e364e56293b 41147e3e .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/03/31 20:55 upstream 62bad54b26db f325deb0 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-root KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/03/31 06:45 upstream 8bb95a1662f8 f325deb0 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/03/04 12:50 upstream 0988a0ea7919 f8902b57 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/03/04 06:08 upstream 0a3f9a6b0265 f8902b57 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/03/04 00:15 upstream 0a3f9a6b0265 f8902b57 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/03/03 23:18 upstream 0a3f9a6b0265 f8902b57 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/03/03 20:46 upstream 2eb29d59ddf0 f8902b57 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/03/03 13:58 upstream 2eb29d59ddf0 f8902b57 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/03/03 10:59 upstream 2eb29d59ddf0 f8902b57 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/03/02 20:52 upstream 04a357b1f6f0 f8902b57 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/03/02 08:38 upstream ee3f96b16468 f8902b57 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/02/26 04:27 upstream 489fa31ea873 ee50e71c .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/02/15 12:12 upstream e1c04510f521 e62ba3c1 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/01/26 14:21 upstream 7c46948a6e9c 9dfcf09c .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/01/21 15:29 upstream f883675bf652 559a440a .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-root KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/01/09 18:13 upstream 1fe4fd6f5cad 1dac8c7a .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2022/12/15 19:20 upstream 041fae9c105a 6f9c033e .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2022/12/12 02:10 upstream 4cee37b3a4e6 67be1ae7 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2022/11/29 17:02 upstream ca57f02295f1 579a3740 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2022/11/26 15:23 upstream 644e9524388a f4470a7b .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2022/10/27 21:42 upstream b229b6ca5abb 5c716ff6 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-fs KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/05/30 09:03 linux-next 715abedee4cd 8d5c7541 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/04/13 21:06 linux-next e3342532ecd3 3cfcaa1b .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
2023/03/25 11:57 linux-next e5dbf24e8b9e fbf0499a .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root KASAN: vmalloc-out-of-bounds Read in cleanup_bitmap_list
* Struck through repros no longer work on HEAD.