syzbot


KASAN: use-after-free Read in exact_lock (2)

Status: premoderation: reported on 2025/04/26 10:29
Reported-by: syzbot+aa263e6e56f76eeacb80@syzkaller.appspotmail.com
First crash: 67d, last: 6h24m
Similar bugs (2)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
android-54 KASAN: use-after-free Read in exact_lock 1 922d 922d 0/2 auto-obsoleted due to no activity on 2023/04/22 15:12
android-5-10 KASAN: use-after-free Read in exact_lock 53 120d 129d 0/2 auto-obsoleted due to no activity on 2025/04/24 06:37

Sample crash report:
==================================================================
BUG: KASAN: use-after-free in get_disk_and_module block/genhd.c:1787 [inline]
BUG: KASAN: use-after-free in exact_lock+0x38/0xc0 block/genhd.c:677
Read of size 8 at addr ffff888109685460 by task syz.1.21869/15240

CPU: 0 PID: 15240 Comm: syz.1.21869 Tainted: G        W         5.10.238-syzkaller-00008-g59e9a7228857 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025
Call Trace:
 __dump_stack+0x21/0x24 lib/dump_stack.c:77
 dump_stack_lvl+0x169/0x1d8 lib/dump_stack.c:118
 print_address_description+0x7f/0x2c0 mm/kasan/report.c:248
 __kasan_report mm/kasan/report.c:435 [inline]
 kasan_report+0xe2/0x130 mm/kasan/report.c:452
 __asan_report_load8_noabort+0x14/0x20 mm/kasan/report_generic.c:309
 get_disk_and_module block/genhd.c:1787 [inline]
 exact_lock+0x38/0xc0 block/genhd.c:677
 kobj_lookup+0x298/0x430 drivers/base/map.c:119
 get_gendisk+0xe9/0x340 block/genhd.c:1001
 bdev_get_gendisk fs/block_dev.c:1110 [inline]
 __blkdev_get+0x1b0/0x12f0 fs/block_dev.c:1474
 blkdev_get fs/block_dev.c:1653 [inline]
 blkdev_open+0x208/0x430 fs/block_dev.c:1770
 do_dentry_open+0x793/0x1090 fs/open.c:819
 vfs_open+0x73/0x80 fs/open.c:942
 do_open fs/namei.c:3391 [inline]
 path_openat+0x27ad/0x3160 fs/namei.c:3509
 do_filp_open+0x1b3/0x3e0 fs/namei.c:3536
 do_sys_openat2+0x14c/0x6d0 fs/open.c:1217
 do_sys_open fs/open.c:1233 [inline]
 __do_sys_openat fs/open.c:1249 [inline]
 __se_sys_openat fs/open.c:1244 [inline]
 __x64_sys_openat+0x136/0x160 fs/open.c:1244
 do_syscall_64+0x31/0x40 arch/x86/entry/common.c:46
 entry_SYSCALL_64_after_hwframe+0x61/0xcb
RIP: 0033:0x7f8f6b8c1929
Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 a8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007f8f69f2a038 EFLAGS: 00000246 ORIG_RAX: 0000000000000101
RAX: ffffffffffffffda RBX: 00007f8f6bae8fa0 RCX: 00007f8f6b8c1929
RDX: 0000000000000000 RSI: 0000200000004280 RDI: ffffffffffffff9c
RBP: 00007f8f6b943b39 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 0000000000000000 R14: 00007f8f6bae8fa0 R15: 00007ffceacf5618

Allocated by task 1:
 kasan_save_stack mm/kasan/common.c:38 [inline]
 kasan_set_track mm/kasan/common.c:45 [inline]
 set_alloc_info mm/kasan/common.c:430 [inline]
 ____kasan_kmalloc mm/kasan/common.c:509 [inline]
 __kasan_kmalloc+0xda/0x110 mm/kasan/common.c:518
 kasan_kmalloc include/linux/kasan.h:254 [inline]
 kmem_cache_alloc_trace+0x184/0x2e0 mm/slub.c:2974
 kmem_cache_alloc_node_trace include/linux/slab.h:440 [inline]
 kmalloc_node include/linux/slab.h:570 [inline]
 kzalloc_node include/linux/slab.h:675 [inline]
 __alloc_disk_node+0x79/0x580 block/genhd.c:1727
 loop_add+0x33f/0x7b0 drivers/block/loop.c:2158
 loop_init+0x1bf/0x1ff drivers/block/loop.c:2403
 do_one_initcall+0x187/0x510 init/main.c:1197
 do_initcall_level+0x16f/0x2cf init/main.c:1270
 do_initcalls+0x50/0x92 init/main.c:1286
 do_basic_setup+0x88/0x8f init/main.c:1306
 kernel_init_freeable+0x287/0x3be init/main.c:1510
 kernel_init+0x11/0x1a0 init/main.c:1397
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:298

Freed by task 14789:
 kasan_save_stack mm/kasan/common.c:38 [inline]
 kasan_set_track+0x4a/0x70 mm/kasan/common.c:45
 kasan_set_free_info+0x23/0x40 mm/kasan/generic.c:370
 ____kasan_slab_free+0x125/0x160 mm/kasan/common.c:362
 __kasan_slab_free+0x11/0x20 mm/kasan/common.c:370
 kasan_slab_free include/linux/kasan.h:220 [inline]
 slab_free_hook mm/slub.c:1595 [inline]
 slab_free_freelist_hook+0xc5/0x190 mm/slub.c:1621
 slab_free mm/slub.c:3203 [inline]
 kfree+0xc0/0x270 mm/slub.c:4191
 disk_release+0x248/0x2b0 block/genhd.c:1568
 device_release+0x96/0x1c0 drivers/base/core.c:-1
 kobject_cleanup lib/kobject.c:713 [inline]
 kobject_release lib/kobject.c:744 [inline]
 kref_put include/linux/kref.h:65 [inline]
 kobject_put+0x18a/0x270 lib/kobject.c:761
 put_disk+0x23/0x30 block/genhd.c:1815
 loop_remove+0x93/0xb0 drivers/block/loop.c:2213
 loop_control_ioctl+0x487/0x550 drivers/block/loop.c:2309
 vfs_ioctl fs/ioctl.c:48 [inline]
 __do_sys_ioctl fs/ioctl.c:753 [inline]
 __se_sys_ioctl+0x121/0x1a0 fs/ioctl.c:739
 __x64_sys_ioctl+0x7b/0x90 fs/ioctl.c:739
 do_syscall_64+0x31/0x40 arch/x86/entry/common.c:46
 entry_SYSCALL_64_after_hwframe+0x61/0xcb

The buggy address belongs to the object at ffff888109685000
 which belongs to the cache kmalloc-2k of size 2048
The buggy address is located 1120 bytes inside of
 2048-byte region [ffff888109685000, ffff888109685800)
The buggy address belongs to the page:
page:ffffea000425a000 refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x109680
head:ffffea000425a000 order:3 compound_mapcount:0 compound_pincount:0
flags: 0x4000000000010200(slab|head)
raw: 4000000000010200 dead000000000100 dead000000000122 ffff888100042d80
raw: 0000000000000000 0000000000080008 00000001ffffffff 0000000000000000
page dumped because: kasan: bad access detected
page_owner tracks the page as allocated
page last allocated via order 3, migratetype Unmovable, gfp_mask 0xd20c0(__GFP_IO|__GFP_FS|__GFP_NOWARN|__GFP_NORETRY|__GFP_COMP|__GFP_NOMEMALLOC), pid 1, ts 2225824626, free_ts 0
 set_page_owner include/linux/page_owner.h:35 [inline]
 post_alloc_hook mm/page_alloc.c:2456 [inline]
 prep_new_page+0x179/0x180 mm/page_alloc.c:2462
 get_page_from_freelist+0x2235/0x23d0 mm/page_alloc.c:4254
 __alloc_pages_nodemask+0x268/0x5f0 mm/page_alloc.c:5357
 alloc_slab_page mm/slub.c:-1 [inline]
 allocate_slab mm/slub.c:1808 [inline]
 new_slab+0x84/0x3f0 mm/slub.c:1869
 new_slab_objects mm/slub.c:2627 [inline]
 ___slab_alloc+0x2a6/0x450 mm/slub.c:2791
 __slab_alloc+0x63/0xa0 mm/slub.c:2831
 slab_alloc_node mm/slub.c:2913 [inline]
 slab_alloc mm/slub.c:2955 [inline]
 kmem_cache_alloc_trace+0x1b3/0x2e0 mm/slub.c:2972
 kmem_cache_alloc_node_trace include/linux/slab.h:440 [inline]
 kmalloc_node include/linux/slab.h:570 [inline]
 kzalloc_node include/linux/slab.h:675 [inline]
 bdi_alloc+0x4e/0x110 mm/backing-dev.c:746
 blk_alloc_queue+0x103/0x610 block/blk-core.c:535
 blk_mq_init_queue_data block/blk-mq.c:3155 [inline]
 blk_mq_init_queue+0x37/0xd0 block/blk-mq.c:3174
 loop_add+0x266/0x7b0 drivers/block/loop.c:2140
 loop_init+0x1bf/0x1ff drivers/block/loop.c:2403
 do_one_initcall+0x187/0x510 init/main.c:1197
 do_initcall_level+0x16f/0x2cf init/main.c:1270
 do_initcalls+0x50/0x92 init/main.c:1286
 do_basic_setup+0x88/0x8f init/main.c:1306
page_owner free stack trace missing

Memory state around the buggy address:
 ffff888109685300: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
 ffff888109685380: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
>ffff888109685400: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
                                                       ^
 ffff888109685480: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
 ffff888109685500: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
==================================================================

Crashes (121):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/07/03 03:59 android13-5.10-lts 59e9a7228857 115ceea7 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/07/03 03:25 android13-5.10-lts 59e9a7228857 bc80e4f0 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/07/02 15:45 android13-5.10-lts 59e9a7228857 bc80e4f0 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/07/02 14:40 android13-5.10-lts 59e9a7228857 bc80e4f0 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/07/02 13:27 android13-5.10-lts 59e9a7228857 bc80e4f0 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/07/01 13:54 android13-5.10-lts 59e9a7228857 091a06cd .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/30 12:33 android13-5.10-lts 59e9a7228857 fc9d8ee5 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/30 01:42 android13-5.10-lts 59e9a7228857 fc9d8ee5 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/29 22:41 android13-5.10-lts 59e9a7228857 fc9d8ee5 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/29 19:40 android13-5.10-lts 59e9a7228857 fc9d8ee5 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/29 10:09 android13-5.10-lts 59e9a7228857 fc9d8ee5 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/29 08:31 android13-5.10-lts 59e9a7228857 fc9d8ee5 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/29 04:33 android13-5.10-lts 59e9a7228857 fc9d8ee5 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/29 03:23 android13-5.10-lts 59e9a7228857 fc9d8ee5 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/28 23:26 android13-5.10-lts 59e9a7228857 fc9d8ee5 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/28 21:53 android13-5.10-lts 59e9a7228857 fc9d8ee5 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/28 14:23 android13-5.10-lts 59e9a7228857 fc9d8ee5 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/27 19:40 android13-5.10-lts 59e9a7228857 803ce19b .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/27 18:36 android13-5.10-lts 59e9a7228857 803ce19b .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/27 15:46 android13-5.10-lts 59e9a7228857 803ce19b .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/27 11:10 android13-5.10-lts 59e9a7228857 803ce19b .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/27 08:49 android13-5.10-lts 59e9a7228857 803ce19b .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/26 12:28 android13-5.10-lts 59e9a7228857 26d77996 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/26 09:59 android13-5.10-lts 59e9a7228857 26d77996 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/26 06:29 android13-5.10-lts 59e9a7228857 26d77996 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/25 23:00 android13-5.10-lts 59e9a7228857 26d77996 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/25 08:53 android13-5.10-lts d76d4cd0623a 26d77996 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/25 07:49 android13-5.10-lts d76d4cd0623a 26d77996 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/25 05:42 android13-5.10-lts d76d4cd0623a 26d77996 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/24 16:33 android13-5.10-lts d76d4cd0623a e2f27c35 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/24 14:44 android13-5.10-lts d76d4cd0623a e2f27c35 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/24 06:49 android13-5.10-lts d76d4cd0623a e2f27c35 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/23 11:15 android13-5.10-lts d76d4cd0623a d6cdfb8a .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/23 00:07 android13-5.10-lts d76d4cd0623a d6cdfb8a .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/22 13:46 android13-5.10-lts d76d4cd0623a d6cdfb8a .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/22 10:32 android13-5.10-lts d76d4cd0623a d6cdfb8a .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/22 04:04 android13-5.10-lts d76d4cd0623a d6cdfb8a .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/20 12:25 android13-5.10-lts d76d4cd0623a 804b3919 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/20 08:10 android13-5.10-lts d76d4cd0623a ed3e87f7 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/20 03:57 android13-5.10-lts d76d4cd0623a ed3e87f7 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/20 00:13 android13-5.10-lts d76d4cd0623a ed3e87f7 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/19 22:59 android13-5.10-lts d76d4cd0623a ed3e87f7 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/19 16:28 android13-5.10-lts d76d4cd0623a ed3e87f7 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: use-after-free Read in exact_lock
2025/06/26 08:33 android13-5.10-lts 59e9a7228857 26d77996 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 general protection fault in exact_lock
2025/05/12 00:23 android13-5.10-lts 7e2543346ff7 77908e5f .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: slab-out-of-bounds Read in exact_lock
* Struck through repros no longer work on HEAD.