==================================================================
BUG: KASAN: use-after-free in __list_del_entry_valid+0xa6/0x120 lib/list_debug.c:62
Read of size 8 at addr ffff888126666c70 by task kworker/0:58/19064
CPU: 0 PID: 19064 Comm: kworker/0:58 Tainted: G W syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/25/2025
Workqueue: events bpf_prog_free_deferred
Call Trace:
__dump_stack+0x21/0x30 lib/dump_stack.c:88
dump_stack_lvl+0xee/0x150 lib/dump_stack.c:106
print_address_description+0x7f/0x2c0 mm/kasan/report.c:248
__kasan_report mm/kasan/report.c:427 [inline]
kasan_report+0xf1/0x140 mm/kasan/report.c:444
__asan_report_load8_noabort+0x14/0x20 mm/kasan/report_generic.c:309
__list_del_entry_valid+0xa6/0x120 lib/list_debug.c:62
__list_del_entry include/linux/list.h:132 [inline]
list_del_init include/linux/list.h:204 [inline]
process_one_work+0x453/0xba0 kernel/workqueue.c:2269
worker_thread+0xa59/0x1200 kernel/workqueue.c:2472
kthread+0x411/0x500 kernel/kthread.c:337
ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:287
Allocated by task 100:
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:433 [inline]
____kasan_kmalloc mm/kasan/common.c:512 [inline]
__kasan_kmalloc+0xda/0x110 mm/kasan/common.c:521
kasan_kmalloc include/linux/kasan.h:227 [inline]
kmem_cache_alloc_trace+0x119/0x270 mm/slub.c:3274
kmalloc include/linux/slab.h:619 [inline]
kzalloc include/linux/slab.h:750 [inline]
uevent_show+0x160/0x330 drivers/base/core.c:2413
dev_attr_show+0x56/0xd0 drivers/base/core.c:2120
sysfs_kf_seq_show+0x266/0x3d0 fs/sysfs/file.c:61
kernfs_seq_show+0x119/0x160 fs/kernfs/file.c:168
seq_read_iter+0x490/0xd30 fs/seq_file.c:230
kernfs_fop_read_iter+0x147/0x470 fs/kernfs/file.c:241
call_read_iter include/linux/fs.h:2206 [inline]
new_sync_read fs/read_write.c:404 [inline]
vfs_read+0x68b/0xbe0 fs/read_write.c:485
ksys_read+0x140/0x240 fs/read_write.c:623
__do_sys_read fs/read_write.c:633 [inline]
__se_sys_read fs/read_write.c:631 [inline]
__x64_sys_read+0x7b/0x90 fs/read_write.c:631
x64_sys_call+0x96d/0x9a0 arch/x86/include/generated/asm/syscalls_64.h:1
do_syscall_x64 arch/x86/entry/common.c:50 [inline]
do_syscall_64+0x4c/0xa0 arch/x86/entry/common.c:80
entry_SYSCALL_64_after_hwframe+0x66/0xd0
Freed by task 100:
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:365
__kasan_slab_free+0x11/0x20 mm/kasan/common.c:373
kasan_slab_free include/linux/kasan.h:193 [inline]
slab_free_hook mm/slub.c:1728 [inline]
slab_free_freelist_hook+0xc2/0x190 mm/slub.c:1754
slab_free mm/slub.c:3526 [inline]
kfree+0xc4/0x270 mm/slub.c:4588
uevent_show+0x1fb/0x330 drivers/base/core.c:2429
dev_attr_show+0x56/0xd0 drivers/base/core.c:2120
sysfs_kf_seq_show+0x266/0x3d0 fs/sysfs/file.c:61
kernfs_seq_show+0x119/0x160 fs/kernfs/file.c:168
seq_read_iter+0x490/0xd30 fs/seq_file.c:230
kernfs_fop_read_iter+0x147/0x470 fs/kernfs/file.c:241
call_read_iter include/linux/fs.h:2206 [inline]
new_sync_read fs/read_write.c:404 [inline]
vfs_read+0x68b/0xbe0 fs/read_write.c:485
ksys_read+0x140/0x240 fs/read_write.c:623
__do_sys_read fs/read_write.c:633 [inline]
__se_sys_read fs/read_write.c:631 [inline]
__x64_sys_read+0x7b/0x90 fs/read_write.c:631
x64_sys_call+0x96d/0x9a0 arch/x86/include/generated/asm/syscalls_64.h:1
do_syscall_x64 arch/x86/entry/common.c:50 [inline]
do_syscall_64+0x4c/0xa0 arch/x86/entry/common.c:80
entry_SYSCALL_64_after_hwframe+0x66/0xd0
Last potentially related work creation:
kasan_save_stack+0x3a/0x60 mm/kasan/common.c:38
__kasan_record_aux_stack+0xd2/0x100 mm/kasan/generic.c:348
kasan_record_aux_stack_noalloc+0xb/0x10 mm/kasan/generic.c:358
insert_work+0x51/0x310 kernel/workqueue.c:1373
__queue_work+0x8e5/0xc60 kernel/workqueue.c:1539
queue_work_on+0xd2/0x140 kernel/workqueue.c:1566
queue_work include/linux/workqueue.h:510 [inline]
schedule_work include/linux/workqueue.h:571 [inline]
usbnet_defer_kevent drivers/net/usb/usbnet.c:482 [inline]
usbnet_link_change+0x189/0x1b0 drivers/net/usb/usbnet.c:-1
usbnet_probe+0x1dfd/0x2860 drivers/net/usb/usbnet.c:1871
usb_probe_interface+0x5ff/0xae0 drivers/usb/core/driver.c:396
call_driver_probe drivers/base/dd.c:-1 [inline]
really_probe+0x285/0x970 drivers/base/dd.c:595
__driver_probe_device+0x198/0x280 drivers/base/dd.c:755
driver_probe_device+0x54/0x3e0 drivers/base/dd.c:785
__device_attach_driver+0x2a6/0x460 drivers/base/dd.c:907
bus_for_each_drv+0x175/0x200 drivers/base/bus.c:429
__device_attach+0x2a2/0x400 drivers/base/dd.c:979
device_initial_probe+0x1a/0x20 drivers/base/dd.c:1028
bus_probe_device+0xc0/0x1e0 drivers/base/bus.c:489
device_add+0xb31/0xed0 drivers/base/core.c:3422
usb_set_configuration+0x19c2/0x1f10 drivers/usb/core/message.c:2165
usb_generic_driver_probe+0x91/0x150 drivers/usb/core/generic.c:238
usb_probe_device+0x148/0x260 drivers/usb/core/driver.c:293
call_driver_probe drivers/base/dd.c:-1 [inline]
really_probe+0x285/0x970 drivers/base/dd.c:595
__driver_probe_device+0x198/0x280 drivers/base/dd.c:755
driver_probe_device+0x54/0x3e0 drivers/base/dd.c:785
__device_attach_driver+0x2a6/0x460 drivers/base/dd.c:907
bus_for_each_drv+0x175/0x200 drivers/base/bus.c:429
__device_attach+0x2a2/0x400 drivers/base/dd.c:979
device_initial_probe+0x1a/0x20 drivers/base/dd.c:1028
bus_probe_device+0xc0/0x1e0 drivers/base/bus.c:489
device_add+0xb31/0xed0 drivers/base/core.c:3422
usb_new_device+0xd06/0x1620 drivers/usb/core/hub.c:2638
hub_port_connect drivers/usb/core/hub.c:5555 [inline]
hub_port_connect_change drivers/usb/core/hub.c:5695 [inline]
port_event drivers/usb/core/hub.c:5861 [inline]
hub_event+0x29c4/0x4480 drivers/usb/core/hub.c:5943
process_one_work+0x6be/0xba0 kernel/workqueue.c:2325
worker_thread+0xa59/0x1200 kernel/workqueue.c:2472
kthread+0x411/0x500 kernel/kthread.c:337
ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:287
The buggy address belongs to the object at ffff888126666000
which belongs to the cache kmalloc-4k of size 4096
The buggy address is located 3184 bytes inside of
4096-byte region [ffff888126666000, ffff888126667000)
The buggy address belongs to the page:
page:ffffea0004999800 refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x126660
head:ffffea0004999800 order:3 compound_mapcount:0 compound_pincount:0
flags: 0x4000000000010200(slab|head|zone=1)
raw: 4000000000010200 dead000000000100 dead000000000122 ffff888100043380
raw: 0000000000000000 0000000000040004 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 0x1d2a20(GFP_ATOMIC|__GFP_NOWARN|__GFP_NORETRY|__GFP_COMP|__GFP_NOMEMALLOC|__GFP_HARDWALL), pid 17960, ts 895164039655, free_ts 894498697548
set_page_owner include/linux/page_owner.h:33 [inline]
post_alloc_hook+0x192/0x1b0 mm/page_alloc.c:2605
prep_new_page+0x1c/0x110 mm/page_alloc.c:2611
get_page_from_freelist+0x2cc5/0x2d50 mm/page_alloc.c:4485
__alloc_pages+0x18f/0x440 mm/page_alloc.c:5808
alloc_slab_page mm/slub.c:-1 [inline]
allocate_slab mm/slub.c:1937 [inline]
new_slab+0xa1/0x4d0 mm/slub.c:2000
___slab_alloc+0x381/0x810 mm/slub.c:3033
__slab_alloc+0x49/0x90 mm/slub.c:3120
slab_alloc_node mm/slub.c:3211 [inline]
slab_alloc mm/slub.c:3255 [inline]
__kmalloc_track_caller+0x169/0x2c0 mm/slub.c:4954
kmalloc_reserve net/core/skbuff.c:357 [inline]
__alloc_skb+0x21a/0x740 net/core/skbuff.c:428
alloc_skb include/linux/skbuff.h:1183 [inline]
nlmsg_new include/net/netlink.h:953 [inline]
rtmsg_ifinfo_build_skb+0x7c/0x180 net/core/rtnetlink.c:3884
rtmsg_ifinfo_event net/core/rtnetlink.c:3920 [inline]
rtmsg_ifinfo+0x7a/0x130 net/core/rtnetlink.c:3929
__dev_notify_flags+0xdb/0x500 net/core/dev.c:8895
rtnl_configure_link+0x22e/0x330 net/core/rtnetlink.c:-1
__rtnl_newlink net/core/rtnetlink.c:3532 [inline]
rtnl_newlink+0x1358/0x17b0 net/core/rtnetlink.c:3572
rtnetlink_rcv_msg+0x9e4/0xb90 net/core/rtnetlink.c:5650
netlink_rcv_skb+0x1e0/0x430 net/netlink/af_netlink.c:2511
page last free stack trace:
reset_page_owner include/linux/page_owner.h:26 [inline]
free_pages_prepare mm/page_alloc.c:1472 [inline]
free_pcp_prepare mm/page_alloc.c:1544 [inline]
free_unref_page_prepare+0x542/0x550 mm/page_alloc.c:3534
free_unref_page+0xa2/0x550 mm/page_alloc.c:3616
free_the_page mm/page_alloc.c:805 [inline]
__free_pages+0x6c/0x100 mm/page_alloc.c:5884
__free_slab+0xe8/0x1e0 mm/slub.c:2025
free_slab mm/slub.c:2040 [inline]
discard_slab mm/slub.c:2046 [inline]
__unfreeze_partials+0x160/0x190 mm/slub.c:2532
put_cpu_partial+0xc6/0x120 mm/slub.c:2612
__slab_free+0x1d4/0x290 mm/slub.c:3395
do_slab_free mm/slub.c:3514 [inline]
___cache_free+0x104/0x120 mm/slub.c:3535
qlink_free+0x4d/0x90 mm/kasan/quarantine.c:157
qlist_free_all+0x5f/0xb0 mm/kasan/quarantine.c:176
kasan_quarantine_reduce+0x14a/0x170 mm/kasan/quarantine.c:283
__kasan_slab_alloc+0x2f/0xf0 mm/kasan/common.c:443
kasan_slab_alloc include/linux/kasan.h:217 [inline]
slab_post_alloc_hook+0x4f/0x2b0 mm/slab.h:550
slab_alloc_node mm/slub.c:3245 [inline]
slab_alloc mm/slub.c:3255 [inline]
kmem_cache_alloc+0xf7/0x260 mm/slub.c:3260
kmem_cache_alloc_node include/linux/slab.h:492 [inline]
__alloc_skb+0xe0/0x740 net/core/skbuff.c:416
alloc_skb_fclone include/linux/skbuff.h:1233 [inline]
tipc_buf_acquire net/tipc/msg.c:72 [inline]
tipc_msg_build+0xd1/0xfb0 net/tipc/msg.c:390
Memory state around the buggy address:
ffff888126666b00: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
ffff888126666b80: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
>ffff888126666c00: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
^
ffff888126666c80: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
ffff888126666d00: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
==================================================================
list_del corruption. next->prev should be ffff88812376ea98, but was 0000000000000000
------------[ cut here ]------------
kernel BUG at lib/list_debug.c:64!
invalid opcode: 0000 [#1] PREEMPT SMP KASAN
CPU: 0 PID: 19064 Comm: kworker/0:58 Tainted: G B W syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/25/2025
Workqueue: events bpf_prog_free_deferred
RIP: 0010:__list_del_entry_valid+0x11d/0x120 lib/list_debug.c:62
Code: 48 89 de e8 d5 cd 4f 02 0f 0b 48 c7 c7 a0 4c 63 85 48 89 de e8 c4 cd 4f 02 0f 0b 48 c7 c7 00 4d 63 85 48 89 de e8 b3 cd 4f 02 <0f> 0b 00 55 48 89 e5 41 56 53 48 89 fb e8 e1 7b 18 ff 48 85 db 74
RSP: 0018:ffffc90001e47cf0 EFLAGS: 00010046
RAX: 0000000000000054 RBX: ffff88812376ea98 RCX: 104df8bd5356e000
RDX: 0000000000000000 RSI: 0000000080000001 RDI: 0000000000000000
RBP: ffffc90001e47d10 R08: dffffc0000000000 R09: ffffed103ee04e93
R10: ffffed103ee04e93 R11: 1ffff1103ee04e92 R12: dffffc0000000000
R13: ffff8881f703b700 R14: ffff888126666c70 R15: ffff8881f70371e0
FS: 0000000000000000(0000) GS:ffff8881f7000000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f97de3a5f98 CR3: 000000010d14d000 CR4: 00000000003526b0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 000000000000000d DR6: 00000000ffff0ff0 DR7: 0000000000000400
Call Trace:
__list_del_entry include/linux/list.h:132 [inline]
list_del_init include/linux/list.h:204 [inline]
process_one_work+0x453/0xba0 kernel/workqueue.c:2269
worker_thread+0xa59/0x1200 kernel/workqueue.c:2472
kthread+0x411/0x500 kernel/kthread.c:337
ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:287
Modules linked in:
---[ end trace 1c76576fbaf99e89 ]---
RIP: 0010:__list_del_entry_valid+0x11d/0x120 lib/list_debug.c:62
Code: 48 89 de e8 d5 cd 4f 02 0f 0b 48 c7 c7 a0 4c 63 85 48 89 de e8 c4 cd 4f 02 0f 0b 48 c7 c7 00 4d 63 85 48 89 de e8 b3 cd 4f 02 <0f> 0b 00 55 48 89 e5 41 56 53 48 89 fb e8 e1 7b 18 ff 48 85 db 74
RSP: 0018:ffffc90001e47cf0 EFLAGS: 00010046
RAX: 0000000000000054 RBX: ffff88812376ea98 RCX: 104df8bd5356e000
RDX: 0000000000000000 RSI: 0000000080000001 RDI: 0000000000000000
RBP: ffffc90001e47d10 R08: dffffc0000000000 R09: ffffed103ee04e93
R10: ffffed103ee04e93 R11: 1ffff1103ee04e92 R12: dffffc0000000000
R13: ffff8881f703b700 R14: ffff888126666c70 R15: ffff8881f70371e0
FS: 0000000000000000(0000) GS:ffff8881f7000000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f97de3a5f98 CR3: 000000010d14d000 CR4: 00000000003526b0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 000000000000000d DR6: 00000000ffff0ff0 DR7: 0000000000000400