WARNING: refcount bug in config_item_get

Status: premoderation: reported C repro on 2026/07/28 17:48
Reported-by: syzbot+5e849ced214eddf56628@syzkaller.appspotmail.com
First crash: 5d10h, last: 20h14m
Similar bugs (3)
Kernel Title Rank 🛈 Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream WARNING: refcount bug in config_item_get fs prio:normal 13 syz, C error 28 23h09m 5d04h 0/29 upstream: reported C repro on 2026/07/29 00:08
linux-6.1 WARNING: refcount bug in config_item_get 13 syz, C 2 21h02m 5d18h 0/3 upstream: reported C repro on 2026/07/28 10:20
linux-5.15 WARNING: refcount bug in config_item_get origin:upstream 13 syz, C 1 8d07h 8d07h 0/3 upstream: reported C repro on 2026/07/25 20:51

Sample crash report:
Mass Storage Function, version: 2009/09/11
LUN: removable file: (no medium)
------------[ cut here ]------------
refcount_t: addition on 0; use-after-free.
WARNING: CPU: 0 PID: 513 at lib/refcount.c:25 refcount_warn_saturate+0xfd/0x1c0 lib/refcount.c:25
Modules linked in:
CPU: 0 UID: 0 PID: 513 Comm: syz-executor170 Not tainted syzkaller #0 200dea8a17c83f35b0a1e1238c384757fc17b797
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026
RIP: 0010:refcount_warn_saturate+0xfd/0x1c0 lib/refcount.c:25
Code: 00 00 00 e8 c5 a1 d8 fe 5b 41 5e 5d c3 cc cc cc cc cc e8 b6 a1 d8 fe c6 05 b3 74 36 05 01 48 c7 c7 c0 eb 51 86 e8 d3 79 55 fe <0f> 0b eb da e8 9a a1 d8 fe c6 05 98 74 36 05 01 48 c7 c7 20 ec 51
RSP: 0018:ffffc9000176fc38 EFLAGS: 00010246
RAX: 651fefe182003800 RBX: 0000000000000002 RCX: ffff8881308dcc00
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000002
RBP: ffffc9000176fc48 R08: 0000000000000003 R09: 0000000000000004
R10: dffffc0000000000 R11: fffffbfff0e9f34c R12: ffff88810cf904e0
R13: dffffc0000000000 R14: ffff88810d3b7c24 R15: 0000000000000000
FS:  0000555591db23c0(0000) GS:ffff8881f6e00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007fbb0546587c CR3: 000000010d336000 CR4: 00000000003526b0
Call Trace:
 <TASK>
 __refcount_add include/linux/refcount.h:-1 [inline]
 __refcount_inc include/linux/refcount.h:366 [inline]
 refcount_inc include/linux/refcount.h:383 [inline]
 kref_get include/linux/kref.h:45 [inline]
 config_item_get+0x95/0xa0 fs/configfs/item.c:104
 configfs_get_config_item fs/configfs/configfs_internal.h:128 [inline]
 get_target fs/configfs/symlink.c:125 [inline]
 configfs_symlink+0x455/0x1050 fs/configfs/symlink.c:191
 vfs_symlink+0x3f7/0x620 fs/namei.c:4623
 do_symlinkat+0x1ba/0x400 fs/namei.c:4649
 __do_sys_symlinkat fs/namei.c:4665 [inline]
 __se_sys_symlinkat fs/namei.c:4662 [inline]
 __x64_sys_symlinkat+0x99/0xb0 fs/namei.c:4662
 x64_sys_call+0x1f79/0x2ee0 arch/x86/include/generated/asm/syscalls_64.h:267
 do_syscall_x64 arch/x86/entry/common.c:47 [inline]
 do_syscall_64+0x57/0xf0 arch/x86/entry/common.c:78
 entry_SYSCALL_64_after_hwframe+0x76/0x7e
RIP: 0033:0x7fbb053fe6b9
Code: c0 79 93 eb d5 48 8d 7c 1d 00 eb 99 0f 1f 44 00 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 d8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007fff958d57b8 EFLAGS: 00000246 ORIG_RAX: 000000000000010a
RAX: ffffffffffffffda RBX: 0000200000000200 RCX: 00007fbb053fe6b9
RDX: 0000200000000300 RSI: 00000000ffffff9c RDI: 0000200000000200
RBP: 0000200000000300 R08: 0000000000000009 R09: 0000000000000009
R10: 0000000000000009 R11: 0000000000000246 R12: 0000000000005e1b
R13: 00007fff958d57cc R14: 00007fff958d57e0 R15: 0000200000000008
 </TASK>
---[ end trace 0000000000000000 ]---
==================================================================
BUG: KASAN: slab-use-after-free in instrument_atomic_read_write include/linux/instrumented.h:96 [inline]
BUG: KASAN: slab-use-after-free in atomic_fetch_sub_release include/linux/atomic/atomic-instrumented.h:400 [inline]
BUG: KASAN: slab-use-after-free in __refcount_sub_and_test include/linux/refcount.h:389 [inline]
BUG: KASAN: slab-use-after-free in __refcount_dec_and_test include/linux/refcount.h:432 [inline]
BUG: KASAN: slab-use-after-free in refcount_dec_and_test include/linux/refcount.h:450 [inline]
BUG: KASAN: slab-use-after-free in kref_put include/linux/kref.h:64 [inline]
BUG: KASAN: slab-use-after-free in config_item_put+0x37/0x240 fs/configfs/item.c:149
Write of size 4 at addr ffff88810d3b7c24 by task syz-executor170/513

CPU: 0 UID: 0 PID: 513 Comm: syz-executor170 Tainted: G        W          syzkaller #0 200dea8a17c83f35b0a1e1238c384757fc17b797
Tainted: [W]=WARN
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026
Call Trace:
 <TASK>
 __dump_stack+0x21/0x30 lib/dump_stack.c:94
 dump_stack_lvl+0x140/0x1c0 lib/dump_stack.c:120
 print_address_description+0x71/0x210 mm/kasan/report.c:377
 print_report+0x4a/0x70 mm/kasan/report.c:481
 kasan_report+0x162/0x1a0 mm/kasan/report.c:594
 check_region_inline mm/kasan/generic.c:-1 [inline]
 kasan_check_range+0x25a/0x2b0 mm/kasan/generic.c:189
 __kasan_check_write+0x18/0x20 mm/kasan/shadow.c:37
 instrument_atomic_read_write include/linux/instrumented.h:96 [inline]
 atomic_fetch_sub_release include/linux/atomic/atomic-instrumented.h:400 [inline]
 __refcount_sub_and_test include/linux/refcount.h:389 [inline]
 __refcount_dec_and_test include/linux/refcount.h:432 [inline]
 refcount_dec_and_test include/linux/refcount.h:450 [inline]
 kref_put include/linux/kref.h:64 [inline]
 config_item_put+0x37/0x240 fs/configfs/item.c:149
 configfs_symlink+0x4b5/0x1050 fs/configfs/symlink.c:212
 vfs_symlink+0x3f7/0x620 fs/namei.c:4623
 do_symlinkat+0x1ba/0x400 fs/namei.c:4649
 __do_sys_symlinkat fs/namei.c:4665 [inline]
 __se_sys_symlinkat fs/namei.c:4662 [inline]
 __x64_sys_symlinkat+0x99/0xb0 fs/namei.c:4662
 x64_sys_call+0x1f79/0x2ee0 arch/x86/include/generated/asm/syscalls_64.h:267
 do_syscall_x64 arch/x86/entry/common.c:47 [inline]
 do_syscall_64+0x57/0xf0 arch/x86/entry/common.c:78
 entry_SYSCALL_64_after_hwframe+0x76/0x7e
RIP: 0033:0x7fbb053fe6b9
Code: c0 79 93 eb d5 48 8d 7c 1d 00 eb 99 0f 1f 44 00 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 d8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007fff958d57b8 EFLAGS: 00000246 ORIG_RAX: 000000000000010a
RAX: ffffffffffffffda RBX: 0000200000000200 RCX: 00007fbb053fe6b9
RDX: 0000200000000300 RSI: 00000000ffffff9c RDI: 0000200000000200
RBP: 0000200000000300 R08: 0000000000000009 R09: 0000000000000009
R10: 0000000000000009 R11: 0000000000000246 R12: 0000000000005e1b
R13: 00007fff958d57cc R14: 00007fff958d57e0 R15: 0000200000000008
 </TASK>

Allocated by task 513:
 kasan_save_stack mm/kasan/common.c:49 [inline]
 kasan_save_track+0x3e/0x80 mm/kasan/common.c:70
 kasan_save_alloc_info+0x3a/0x50 mm/kasan/generic.c:565
 poison_kmalloc_redzone mm/kasan/common.c:379 [inline]
 __kasan_kmalloc+0x96/0xb0 mm/kasan/common.c:396
 kasan_kmalloc include/linux/kasan.h:261 [inline]
 __kmalloc_cache_noprof+0x23c/0x470 mm/slub.c:4426
 kmalloc_noprof include/linux/slab.h:881 [inline]
 kzalloc_noprof include/linux/slab.h:1017 [inline]
 fsg_alloc_inst+0xe0/0x7f0 drivers/usb/gadget/function/f_mass_storage.c:3500
 try_get_usb_function_instance drivers/usb/gadget/functions.c:28 [inline]
 usb_get_function_instance+0xf7/0x320 drivers/usb/gadget/functions.c:44
 function_make+0x125/0x370 drivers/usb/gadget/configfs.c:631
 configfs_mkdir+0x523/0xb70 fs/configfs/dir.c:1339
 vfs_mkdir+0x58e/0x810 fs/namei.c:4265
 do_mkdirat+0x240/0x530 fs/namei.c:4288
 __do_sys_mkdirat fs/namei.c:4303 [inline]
 __se_sys_mkdirat fs/namei.c:4301 [inline]
 __x64_sys_mkdirat+0x8b/0xa0 fs/namei.c:4301
 x64_sys_call+0x2ba8/0x2ee0 arch/x86/include/generated/asm/syscalls_64.h:259
 do_syscall_x64 arch/x86/entry/common.c:47 [inline]
 do_syscall_64+0x57/0xf0 arch/x86/entry/common.c:78
 entry_SYSCALL_64_after_hwframe+0x76/0x7e

Freed by task 512:
 kasan_save_stack mm/kasan/common.c:49 [inline]
 kasan_save_track+0x3e/0x80 mm/kasan/common.c:70
 kasan_save_free_info+0x44/0x50 mm/kasan/generic.c:579
 poison_slab_object mm/kasan/common.c:249 [inline]
 __kasan_slab_free+0x5f/0x80 mm/kasan/common.c:266
 kasan_slab_free include/linux/kasan.h:234 [inline]
 slab_free_hook mm/slub.c:2445 [inline]
 slab_free mm/slub.c:4714 [inline]
 kfree+0x158/0x440 mm/slub.c:4875
 fsg_free_inst+0x340/0x430 drivers/usb/gadget/function/f_mass_storage.c:3491
 usb_put_function_instance+0xa2/0xc0 drivers/usb/gadget/functions.c:77
 fsg_attr_release+0x19/0x30 drivers/usb/gadget/function/f_mass_storage.c:3377
 config_item_cleanup fs/configfs/item.c:128 [inline]
 config_item_release fs/configfs/item.c:137 [inline]
 kref_put include/linux/kref.h:65 [inline]
 config_item_put+0x178/0x240 fs/configfs/item.c:149
 configfs_rmdir+0x8e8/0x9b0 fs/configfs/dir.c:1550
 vfs_rmdir+0x3de/0x560 fs/namei.c:4348
 do_rmdir+0x29a/0x590 fs/namei.c:4407
 __do_sys_rmdir fs/namei.c:4426 [inline]
 __se_sys_rmdir fs/namei.c:4424 [inline]
 __x64_sys_rmdir+0x4b/0x60 fs/namei.c:4424
 x64_sys_call+0xaf7/0x2ee0 arch/x86/include/generated/asm/syscalls_64.h:85
 do_syscall_x64 arch/x86/entry/common.c:47 [inline]
 do_syscall_64+0x57/0xf0 arch/x86/entry/common.c:78
 entry_SYSCALL_64_after_hwframe+0x76/0x7e

The buggy address belongs to the object at ffff88810d3b7c00
 which belongs to the cache kmalloc-512 of size 512
The buggy address is located 36 bytes inside of
 freed 512-byte region [ffff88810d3b7c00, ffff88810d3b7e00)

The buggy address belongs to the physical page:
page: refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x10d3b4
head: order:2 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0
anon flags: 0x4000000000000040(head|zone=1)
page_type: f5(slab)
raw: 4000000000000040 ffff888100041c80 0000000000000000 dead000000000001
raw: 0000000000000000 0000000080100010 00000001f5000000 0000000000000000
head: 4000000000000040 ffff888100041c80 0000000000000000 dead000000000001
head: 0000000000000000 0000000080100010 00000001f5000000 0000000000000000
head: 4000000000000002 ffffea000434ed01 ffffffffffffffff 0000000000000000
head: 0000000000000004 0000000000000000 00000000ffffffff 0000000000000000
page dumped because: kasan: bad access detected
page_owner tracks the page as allocated
page last allocated via order 2, migratetype Unmovable, gfp_mask 0xd20c0(__GFP_IO|__GFP_FS|__GFP_NOWARN|__GFP_NORETRY|__GFP_COMP|__GFP_NOMEMALLOC), pid 99, tgid 99 (klogd), ts 4495063755, free_ts 0
 set_page_owner include/linux/page_owner.h:35 [inline]
 post_alloc_hook+0x37d/0x3b0 mm/page_alloc.c:1863
 prep_new_page+0x2d/0x180 mm/page_alloc.c:1871
 get_page_from_freelist+0x4aea/0x4ba0 mm/page_alloc.c:3948
 __alloc_pages_noprof+0x35a/0x7e0 mm/page_alloc.c:5315
 alloc_slab_page+0x6b/0x1e0 mm/slub.c:-1
 allocate_slab+0x69/0x430 mm/slub.c:2687
 new_slab mm/slub.c:2741 [inline]
 ___slab_alloc+0x591/0x8c0 mm/slub.c:3934
 __slab_alloc mm/slub.c:4025 [inline]
 __slab_alloc_node mm/slub.c:4078 [inline]
 slab_alloc_node mm/slub.c:4239 [inline]
 __do_kmalloc_node mm/slub.c:4394 [inline]
 __kmalloc_node_track_caller_noprof+0x2e3/0x4f0 mm/slub.c:4414
 kmalloc_reserve+0x144/0x4f0 net/core/skbuff.c:618
 __alloc_skb+0x13f/0x360 net/core/skbuff.c:687
 alloc_skb include/linux/skbuff.h:1363 [inline]
 alloc_skb_with_frags+0xd0/0x8b0 net/core/skbuff.c:6617
 sock_alloc_send_pskb+0x883/0x9a0 net/core/sock.c:2923
 unix_dgram_sendmsg+0x63a/0x1a90 net/unix/af_unix.c:2040
 sock_sendmsg_nosec net/socket.c:730 [inline]
 __sock_sendmsg net/socket.c:745 [inline]
 __sys_sendto+0x68d/0x700 net/socket.c:2216
 __do_sys_sendto net/socket.c:2228 [inline]
 __se_sys_sendto net/socket.c:2224 [inline]
 __x64_sys_sendto+0xe9/0x100 net/socket.c:2224
 x64_sys_call+0x2c2c/0x2ee0 arch/x86/include/generated/asm/syscalls_64.h:45
page_owner free stack trace missing

Memory state around the buggy address:
 ffff88810d3b7b00: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
 ffff88810d3b7b80: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
>ffff88810d3b7c00: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
                               ^
 ffff88810d3b7c80: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
 ffff88810d3b7d00: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
==================================================================
------------[ cut here ]------------
refcount_t: underflow; use-after-free.
WARNING: CPU: 0 PID: 513 at lib/refcount.c:28 refcount_warn_saturate+0x119/0x1c0 lib/refcount.c:28
Modules linked in:
CPU: 0 UID: 0 PID: 513 Comm: syz-executor170 Tainted: G    B   W          syzkaller #0 200dea8a17c83f35b0a1e1238c384757fc17b797
Tainted: [B]=BAD_PAGE, [W]=WARN
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026
RIP: 0010:refcount_warn_saturate+0x119/0x1c0 lib/refcount.c:28
Code: 05 01 48 c7 c7 c0 eb 51 86 e8 d3 79 55 fe 0f 0b eb da e8 9a a1 d8 fe c6 05 98 74 36 05 01 48 c7 c7 20 ec 51 86 e8 b7 79 55 fe <0f> 0b eb be e8 7e a1 d8 fe c6 05 79 74 36 05 01 48 c7 c7 60 eb 51
RSP: 0018:ffffc9000176fc18 EFLAGS: 00010246
RAX: 651fefe182003800 RBX: 0000000000000003 RCX: ffff8881308dcc00
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000002
RBP: ffffc9000176fc28 R08: ffffc9000176f907 R09: 1ffff920002edf20
R10: dffffc0000000000 R11: fffff520002edf21 R12: 00000000ffffffea
R13: dffffc0000000000 R14: ffff88810d3b7c24 R15: 00000000c0000000
FS:  0000555591db23c0(0000) GS:ffff8881f6e00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007fbb0546587c CR3: 000000010d336000 CR4: 00000000003526b0
Call Trace:
 <TASK>
 __refcount_sub_and_test include/linux/refcount.h:400 [inline]
 __refcount_dec_and_test include/linux/refcount.h:432 [inline]
 refcount_dec_and_test include/linux/refcount.h:450 [inline]
 kref_put include/linux/kref.h:64 [inline]
 config_item_put+0x230/0x240 fs/configfs/item.c:149
 configfs_symlink+0x4b5/0x1050 fs/configfs/symlink.c:212
 vfs_symlink+0x3f7/0x620 fs/namei.c:4623
 do_symlinkat+0x1ba/0x400 fs/namei.c:4649
 __do_sys_symlinkat fs/namei.c:4665 [inline]
 __se_sys_symlinkat fs/namei.c:4662 [inline]
 __x64_sys_symlinkat+0x99/0xb0 fs/namei.c:4662
 x64_sys_call+0x1f79/0x2ee0 arch/x86/include/generated/asm/syscalls_64.h:267
 do_syscall_x64 arch/x86/entry/common.c:47 [inline]
 do_syscall_64+0x57/0xf0 arch/x86/entry/common.c:78
 entry_SYSCALL_64_after_hwframe+0x76/0x7e
RIP: 0033:0x7fbb053fe6b9
Code: c0 79 93 eb d5 48 8d 7c 1d 00 eb 99 0f 1f 44 00 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 d8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007fff958d57b8 EFLAGS: 00000246 ORIG_RAX: 000000000000010a
RAX: ffffffffffffffda RBX: 0000200000000200 RCX: 00007fbb053fe6b9
RDX: 0000200000000300 RSI: 00000000ffffff9c RDI: 0000200000000200
RBP: 0000200000000300 R08: 0000000000000009 R09: 0000000000000009
R10: 0000000000000009 R11: 0000000000000246 R12: 0000000000005e1b
R13: 00007fff958d57cc R14: 00007fff958d57e0 R15: 0000200000000008
 </TASK>
---[ end trace 0000000000000000 ]---

Crashes (4):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2026/08/02 08:17 android16-6.12 1a138e24e292 e611ffe1 .config strace log report syz / log C [disk image] [vmlinux] [kernel image] ci2-android-6-12-rust WARNING: refcount bug in config_item_get
2026/07/29 11:34 android16-6.12 6f69867ef141 19622d9d .config console log report syz / log C [disk image] [vmlinux] [kernel image] ci2-android-6-12-rust WARNING: refcount bug in config_item_get
2026/07/28 17:47 android16-6.12 7b9e76cc9df5 edc8a875 .config console log report syz / log C [disk image] [vmlinux] [kernel image] ci2-android-6-12-rust WARNING: refcount bug in config_item_get
2026/07/28 20:04 android16-6.12 c56681255a47 edc8a875 .config console log report syz / log [disk image] [vmlinux] [kernel image] ci2-android-6-12-rust WARNING: refcount bug in config_item_get
* Struck through repros no longer work on HEAD.