KASAN: slab-use-after-free Write in ms_read_bytes

Status: upstream: reported on 2026/09/23 00:33
Subsystems: mmc
Labels: prio:high actionable
[Documentation on labels]
Reported-by: syzbot+ccffdf05833ebdaeae70@syzkaller.appspotmail.com
First crash: 8d17h, last: 2d01h
▶ ▼ ✨ AI Jobs (3)
ID Workflow Result Correct Bug Created Started Finished Revision
999637e7 repro-c Reproduced: ✅ ❓ KASAN: slab-use-after-free Write in ms_read_bytes 2026/09/23 01:06 2026/09/23 01:15 2026/09/23 03:18 5207b90e
7c33f4b7 moderation Actionable: ✅ ❓ KASAN: slab-use-after-free Write in ms_read_bytes 2026/09/23 00:00 2026/09/23 00:00 2026/09/23 00:32 5207b90e
03dd2127 assessment-security DenialOfService: ✅ Exploitable: ✅ FilesystemTrigger: ❌ NetworkTrigger: ❌ PeripheralTrigger: ✅ RemoteTrigger: ❌ Unprivileged: ❌ UserNamespace: ❌ VMGuestTrigger: ❌ VMHostTrigger: ❌ ❓ KASAN: slab-use-after-free Write in ms_read_bytes 2026/09/19 00:00 2026/09/19 00:00 2026/09/19 00:33 853b104b
▶ ▼ Discussions (3)
Title Replies (including bot) Last reply
[PATCH] memstick: core: wait for request completion before freeing card 1 (1) 2026/09/24 20:41
[PATCH] memstick: core: wait for request completion before freeing card 1 (1) 2026/09/24 19:29
[syzbot] [mmc?] KASAN: slab-use-after-free Write in ms_read_bytes 0 (1) 2026/09/23 00:33
▶ ▼ Last patch testing requests (1)
Created Duration User Patch Repo Result
2026/09/23 03:18 13m retest repro git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git c4e9f74da4389a6b3e505d329d99232915a6b9cd report job log log

Sample crash report:
==================================================================
BUG: KASAN: slab-use-after-free in ms_read_bytes+0x772/0xc70 drivers/memstick/host/rtsx_usb_ms.c:450
Write of size 1 at addr ffff88806434f079 by task kworker/1:12/13281

CPU: 1 UID: 0 PID: 13281 Comm: kworker/1:12 Tainted: G             L      syzkaller #0 PREEMPT(full) 
Tainted: [L]=SOFTLOCKUP
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026
Workqueue: events rtsx_usb_ms_handle_req
Call Trace:
 <TASK>
 dump_stack_lvl+0xe8/0x150 lib/dump_stack.c:120
 print_address_description+0x55/0x1e0 mm/kasan/report.c:378
 print_report+0x58/0x70 mm/kasan/report.c:482
 kasan_report+0x117/0x150 mm/kasan/report.c:595
 ms_read_bytes+0x772/0xc70 drivers/memstick/host/rtsx_usb_ms.c:450
 rtsx_usb_ms_issue_cmd drivers/memstick/host/rtsx_usb_ms.c:477 [inline]
 rtsx_usb_ms_handle_req+0x345/0x1900 drivers/memstick/host/rtsx_usb_ms.c:531
 process_one_work kernel/workqueue.c:3396 [inline]
 process_scheduled_works+0xc3d/0x1630 kernel/workqueue.c:3479
 worker_thread+0xa47/0xfb0 kernel/workqueue.c:3560
 kthread+0x38b/0x480 kernel/kthread.c:436
 ret_from_fork+0x514/0xb70 arch/x86/kernel/process.c:158
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245
 </TASK>

Allocated by task 40:
 kasan_save_stack mm/kasan/common.c:57 [inline]
 kasan_save_track+0x3e/0x80 mm/kasan/common.c:78
 poison_kmalloc_redzone mm/kasan/common.c:398 [inline]
 __kasan_kmalloc+0x93/0xb0 mm/kasan/common.c:415
 kasan_kmalloc include/linux/kasan.h:263 [inline]
 __kmalloc_cache_noprof+0x321/0x600 mm/slub.c:5563
 _kmalloc_noprof include/linux/slab.h:991 [inline]
 _kzalloc_noprof include/linux/slab.h:1312 [inline]
 memstick_alloc_card drivers/memstick/core/memstick.c:383 [inline]
 memstick_check+0x1a7/0x1250 drivers/memstick/core/memstick.c:452
 process_one_work kernel/workqueue.c:3396 [inline]
 process_scheduled_works+0xc3d/0x1630 kernel/workqueue.c:3479
 worker_thread+0xa47/0xfb0 kernel/workqueue.c:3560
 kthread+0x38b/0x480 kernel/kthread.c:436
 ret_from_fork+0x514/0xb70 arch/x86/kernel/process.c:158
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245

Freed by task 40:
 kasan_save_stack mm/kasan/common.c:57 [inline]
 kasan_save_track+0x3e/0x80 mm/kasan/common.c:78
 kasan_save_free_info+0x40/0x50 mm/kasan/generic.c:584
 poison_slab_object mm/kasan/common.c:253 [inline]
 __kasan_slab_free+0x5c/0x80 mm/kasan/common.c:285
 kasan_slab_free include/linux/kasan.h:235 [inline]
 slab_free_hook mm/slub.c:2748 [inline]
 slab_free mm/slub.c:6508 [inline]
 kfree+0x1c5/0x650 mm/slub.c:6801
 memstick_alloc_card drivers/memstick/core/memstick.c:420 [inline]
 memstick_check+0x7b6/0x1250 drivers/memstick/core/memstick.c:452
 process_one_work kernel/workqueue.c:3396 [inline]
 process_scheduled_works+0xc3d/0x1630 kernel/workqueue.c:3479
 worker_thread+0xa47/0xfb0 kernel/workqueue.c:3560
 kthread+0x38b/0x480 kernel/kthread.c:436
 ret_from_fork+0x514/0xb70 arch/x86/kernel/process.c:158
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245

The buggy address belongs to the object at ffff88806434f000
 which belongs to the cache kmalloc-2k of size 2048
The buggy address is located 121 bytes inside of
 freed 2048-byte region [ffff88806434f000, ffff88806434f800)

The buggy address belongs to the physical page:
page: refcount:0 mapcount:0 mapping:0000000000000000 index:0xffff88806434a000 pfn:0x64348
head: order:3 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0
flags: 0xfff00000000240(workingset|head|node=0|zone=1|lastcpupid=0x7ff)
page_type: f5(slab)
raw: 00fff00000000240 ffff88801b042000 ffffea0001006810 ffffea0001ffba10
raw: ffff88806434a000 0000000000080003 00000000f5000000 0000000000000000
head: 00fff00000000240 ffff88801b042000 ffffea0001006810 ffffea0001ffba10
head: ffff88806434a000 0000000000080003 00000000f5000000 0000000000000000
head: 00fff00000000003 fffffffffffffe01 00000000ffffffff 00000000ffffffff
head: ffffffffffffffff 0000000000000000 00000000ffffffff 0000000000000008
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 23108, tgid 23108 (syz.5.5908), ts 1042160003485
 set_page_owner include/linux/page_owner.h:33 [inline]
 post_alloc_hook+0x1f9/0x250 mm/page_alloc.c:1871
 prep_new_page mm/page_alloc.c:1879 [inline]
 get_page_from_freelist+0x2209/0x2280 mm/page_alloc.c:3943
 __alloc_frozen_pages_noprof+0x217/0x5a0 mm/page_alloc.c:5436
 alloc_slab_page mm/slub.c:3347 [inline]
 allocate_slab+0x7d/0x620 mm/slub.c:3462
 new_slab mm/slub.c:3513 [inline]
 refill_objects+0x2d5/0x350 mm/slub.c:7417
 refill_sheaf mm/slub.c:2885 [inline]
 __pcs_replace_empty_main+0x2c8/0x6c0 mm/slub.c:4774
 alloc_from_pcs mm/slub.c:4850 [inline]
 slab_alloc_node mm/slub.c:4984 [inline]
 __do_kmalloc_node mm/slub.c:5413 [inline]
 __kmalloc_node_track_caller_noprof+0x548/0x720 mm/slub.c:5545
 kmalloc_reserve net/core/skbuff.c:637 [inline]
 __alloc_skb+0x2c1/0x7a0 net/core/skbuff.c:715
 alloc_skb include/linux/skbuff.h:1384 [inline]
 nlmsg_new include/net/netlink.h:1055 [inline]
 audit_buffer_alloc kernel/audit.c:1846 [inline]
 audit_log_start+0x1b3/0xa10 kernel/audit.c:1965
 audit_seccomp+0x63/0x190 kernel/auditsc.c:2949
 seccomp_log kernel/seccomp.c:1048 [inline]
 __seccomp_filter+0xd14/0x1de0 kernel/seccomp.c:1342
 syscall_trace_enter include/linux/entry-common.h:98 [inline]
 syscall_enter_from_user_mode_work include/linux/entry-common.h:147 [inline]
 __do_fast_syscall_32+0x235/0x6a0 arch/x86/entry/syscall_32.c:290
 do_fast_syscall_32+0x33/0x70 arch/x86/entry/syscall_32.c:316
 entry_SYSENTER_compat_after_hwframe+0x84/0x8e
page last free pid 158 tgid 158 ts 1034416776777 stack trace:
 reset_page_owner include/linux/page_owner.h:26 [inline]
 __free_pages_prepare mm/page_alloc.c:1418 [inline]
 free_unref_folios+0xdc2/0x14e0 mm/page_alloc.c:3022
 folios_put_refs+0x9e9/0xb30 mm/folio.c:1036
 release_pages+0x464/0x4d0 mm/folio.c:1076
 io_free_region+0xb3/0x300 io_uring/memmap.c:117
 io_rings_free io_uring/io_uring.c:2072 [inline]
 io_ring_ctx_free+0x2e6/0x620 io_uring/io_uring.c:2180
 io_ring_exit_work+0x913/0x9a0 io_uring/io_uring.c:2410
 process_one_work kernel/workqueue.c:3396 [inline]
 process_scheduled_works+0xc3d/0x1630 kernel/workqueue.c:3479
 worker_thread+0xa47/0xfb0 kernel/workqueue.c:3560
 kthread+0x38b/0x480 kernel/kthread.c:436
 ret_from_fork+0x514/0xb70 arch/x86/kernel/process.c:158
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245

Memory state around the buggy address:
 ffff88806434ef00: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
 ffff88806434ef80: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
>ffff88806434f000: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
                                                                ^
 ffff88806434f080: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
 ffff88806434f100: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
==================================================================

Crashes (9):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2026/09/24 05:37 upstream fe2ec83746e5 0a1606bc .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-386 KASAN: slab-use-after-free Write in ms_read_bytes
2026/09/24 11:42 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing d58dffe9ee2c 0281b448 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-usb KASAN: slab-use-after-free Write in ms_read_bytes
2026/09/24 05:20 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing d58dffe9ee2c 0281b448 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-usb KASAN: slab-use-after-free Write in ms_read_bytes
2026/09/24 05:16 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing d58dffe9ee2c 0281b448 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-usb KASAN: slab-use-after-free Write in ms_read_bytes
2026/09/23 15:00 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing d58dffe9ee2c abce1216 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-usb KASAN: slab-use-after-free Write in ms_read_bytes
2026/09/21 15:20 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing d58dffe9ee2c 853b104b .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-usb KASAN: slab-use-after-free Write in ms_read_bytes
2026/09/20 06:59 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing d58dffe9ee2c 853b104b .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-usb KASAN: slab-use-after-free Write in ms_read_bytes
2026/09/19 04:18 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing d58dffe9ee2c 853b104b .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-usb KASAN: slab-use-after-free Write in ms_read_bytes
2026/09/17 20:10 https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing d58dffe9ee2c 8d7d05f1 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-usb KASAN: slab-use-after-free Write in ms_read_bytes
* Struck through repros no longer work on HEAD.