==================================================================
BUG: KASAN: slab-use-after-free in rose_send_frame net/rose/rose_link.c:101 [inline]
BUG: KASAN: slab-use-after-free in rose_transmit_restart_request net/rose/rose_link.c:198 [inline]
BUG: KASAN: slab-use-after-free in rose_t0timer_expiry+0x1aa/0x560 net/rose/rose_link.c:83
Read of size 8 at addr ffff888059be0020 by task syz-executor/5838
CPU: 1 UID: 0 PID: 5838 Comm: syz-executor Not tainted syzkaller #0 PREEMPT(full)
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2026
Call Trace:
dump_stack_lvl+0xe8/0x150 lib/dump_stack.c:120
print_address_description mm/kasan/report.c:378 [inline]
print_report+0xba/0x230 mm/kasan/report.c:482
kasan_report+0x117/0x150 mm/kasan/report.c:595
rose_send_frame net/rose/rose_link.c:101 [inline]
rose_transmit_restart_request net/rose/rose_link.c:198 [inline]
rose_t0timer_expiry+0x1aa/0x560 net/rose/rose_link.c:83
call_timer_fn+0x192/0x640 kernel/time/timer.c:1748
expire_timers kernel/time/timer.c:1799 [inline]
__run_timers kernel/time/timer.c:2373 [inline]
__run_timer_base+0x652/0x8b0 kernel/time/timer.c:2385
run_timer_base kernel/time/timer.c:2394 [inline]
run_timer_softirq+0xb7/0x170 kernel/time/timer.c:2404
handle_softirqs+0x22a/0x870 kernel/softirq.c:622
__do_softirq kernel/softirq.c:656 [inline]
invoke_softirq kernel/softirq.c:496 [inline]
__irq_exit_rcu+0x5f/0x150 kernel/softirq.c:723
irq_exit_rcu+0x9/0x30 kernel/softirq.c:739
instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1056 [inline]
sysvec_apic_timer_interrupt+0xa6/0xc0 arch/x86/kernel/apic/apic.c:1056
asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:697
RIP: 0010:finish_task_switch+0x245/0x920 kernel/sched/core.c:5155
Code: 00 00 48 85 db 0f 85 e8 01 00 00 0f 1f 44 00 00 4c 8b 75 d0 49 83 c4 48 4c 89 e7 e8 05 27 1d 0a e8 80 7f 38 00 fb 4c 8b 65 c0 <49> 8d bc 24 80 16 00 00 48 89 f8 48 c1 e8 03 42 0f b6 04 28 84 c0
RSP: 0018:ffffc90003987958 EFLAGS: 00000202
RAX: 00000000002c78f1 RBX: 0000000000000000 RCX: 0000000080000001
RDX: 0000000000000000 RSI: ffffffff8df23a17 RDI: ffffffff8c27c180
RBP: ffffc900039879b0 R08: ffffffff90114ab7 R09: 1ffffffff2022956
R10: dffffc0000000000 R11: fffffbfff2022957 R12: ffff888054785b80
R13: dffffc0000000000 R14: ffff888032560000 R15: ffff8880b873b918
context_switch kernel/sched/core.c:5301 [inline]
__schedule+0x15e5/0x52d0 kernel/sched/core.c:6911
__schedule_loop kernel/sched/core.c:6993 [inline]
schedule+0x164/0x360 kernel/sched/core.c:7008
do_nanosleep+0x1c2/0x620 kernel/time/hrtimer.c:2124
hrtimer_nanosleep+0x188/0x390 kernel/time/hrtimer.c:2171
__do_sys_clock_nanosleep kernel/time/posix-timers.c:1391 [inline]
__se_sys_clock_nanosleep+0x35b/0x3b0 kernel/time/posix-timers.c:1368
do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
do_syscall_64+0x14d/0xf80 arch/x86/entry/syscall_64.c:94
entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7faf0055cfce
Code: 08 0f 85 a5 a8 ff ff 49 89 fb 48 89 f0 48 89 d7 48 89 ce 4c 89 c2 4d 89 ca 4c 8b 44 24 08 4c 8b 4c 24 10 4c 89 5c 24 08 0f 05 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 80 00 00 00 00 48 83 ec 08
RSP: 002b:00007ffccfbbd778 EFLAGS: 00000246 ORIG_RAX: 00000000000000e6
RAX: ffffffffffffffda RBX: 000055557459e500 RCX: 00007faf0055cfce
RDX: 00007ffccfbbd7d0 RSI: 0000000000000000 RDI: 0000000000000000
RBP: 00007ffccfbbd83c R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000001388
R13: 00000000000927c0 R14: 00000000000844af R15: 00007ffccfbbd890
Allocated by task 12874:
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+0x31c/0x660 mm/slub.c:5380
kmalloc_noprof include/linux/slab.h:950 [inline]
rose_add_node+0x23c/0xf00 net/rose/rose_route.c:85
rose_rt_ioctl+0xd35/0x12a0 net/rose/rose_route.c:748
rose_ioctl+0x3fb/0x8f0 net/rose/af_rose.c:1387
sock_do_ioctl+0x101/0x320 net/socket.c:1247
sock_ioctl+0x5c6/0x7f0 net/socket.c:1368
vfs_ioctl fs/ioctl.c:51 [inline]
__do_sys_ioctl fs/ioctl.c:597 [inline]
__se_sys_ioctl+0xfc/0x170 fs/ioctl.c:583
do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
do_syscall_64+0x14d/0xf80 arch/x86/entry/syscall_64.c:94
entry_SYSCALL_64_after_hwframe+0x77/0x7f
Freed by task 3:
kasan_save_stack mm/kasan/common.c:57 [inline]
kasan_save_track+0x3e/0x80 mm/kasan/common.c:78
kasan_save_free_info+0x46/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:2685 [inline]
slab_free mm/slub.c:6165 [inline]
kfree+0x1c1/0x630 mm/slub.c:6483
rose_neigh_put include/net/rose.h:166 [inline]
rose_timer_expiry+0x4cb/0x600 net/rose/rose_timer.c:183
call_timer_fn+0x192/0x640 kernel/time/timer.c:1748
expire_timers kernel/time/timer.c:1799 [inline]
__run_timers kernel/time/timer.c:2373 [inline]
__run_timer_base+0x652/0x8b0 kernel/time/timer.c:2385
run_timer_base kernel/time/timer.c:2394 [inline]
run_timer_softirq+0xb7/0x170 kernel/time/timer.c:2404
handle_softirqs+0x22a/0x870 kernel/softirq.c:622
__do_softirq kernel/softirq.c:656 [inline]
invoke_softirq kernel/softirq.c:496 [inline]
__irq_exit_rcu+0x5f/0x150 kernel/softirq.c:723
irq_exit_rcu+0x9/0x30 kernel/softirq.c:739
instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1056 [inline]
sysvec_apic_timer_interrupt+0xa6/0xc0 arch/x86/kernel/apic/apic.c:1056
asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:697
The buggy address belongs to the object at ffff888059be0000
which belongs to the cache kmalloc-512 of size 512
The buggy address is located 32 bytes inside of
freed 512-byte region [ffff888059be0000, ffff888059be0200)
The buggy address belongs to the physical page:
page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x59be0
head: order:2 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0
flags: 0xfff00000000040(head|node=0|zone=1|lastcpupid=0x7ff)
page_type: f5(slab)
raw: 00fff00000000040 ffff88813fea8c80 dead000000000100 dead000000000122
raw: 0000000000000000 0000000800100010 00000000f5000000 0000000000000000
head: 00fff00000000040 ffff88813fea8c80 dead000000000100 dead000000000122
head: 0000000000000000 0000000800100010 00000000f5000000 0000000000000000
head: 00fff00000000002 ffffea000166f801 00000000ffffffff 00000000ffffffff
head: ffffffffffffffff 0000000000000000 00000000ffffffff 0000000000000004
page dumped because: kasan: bad access detected
page_owner tracks the page as allocated
page last allocated via order 2, migratetype Unmovable, gfp_mask 0xd2820(GFP_ATOMIC|__GFP_NOWARN|__GFP_NORETRY|__GFP_COMP|__GFP_NOMEMALLOC), pid 1112, tgid 1112 (kworker/u8:8), ts 206791960539, free_ts 109666467830
set_page_owner include/linux/page_owner.h:32 [inline]
post_alloc_hook+0x231/0x280 mm/page_alloc.c:1889
prep_new_page mm/page_alloc.c:1897 [inline]
get_page_from_freelist+0x24dc/0x2580 mm/page_alloc.c:3962
__alloc_frozen_pages_noprof+0x18d/0x380 mm/page_alloc.c:5250
alloc_slab_page mm/slub.c:3292 [inline]
allocate_slab+0x77/0x660 mm/slub.c:3481
new_slab mm/slub.c:3539 [inline]
refill_objects+0x331/0x3c0 mm/slub.c:7175
refill_sheaf mm/slub.c:2812 [inline]
__pcs_replace_empty_main+0x2e6/0x730 mm/slub.c:4615
alloc_from_pcs mm/slub.c:4717 [inline]
slab_alloc_node mm/slub.c:4851 [inline]
__kmalloc_cache_noprof+0x392/0x660 mm/slub.c:5375
kmalloc_noprof include/linux/slab.h:950 [inline]
batadv_forw_packet_alloc+0x1e9/0x390 net/batman-adv/send.c:506
batadv_iv_ogm_aggregate_new net/batman-adv/bat_iv_ogm.c:573 [inline]
batadv_iv_ogm_queue_add+0x955/0xe80 net/batman-adv/bat_iv_ogm.c:680
batadv_iv_ogm_schedule_buff net/batman-adv/bat_iv_ogm.c:857 [inline]
batadv_iv_ogm_schedule+0xb5c/0xf50 net/batman-adv/bat_iv_ogm.c:876
batadv_iv_send_outstanding_bat_ogm_packet+0x6c8/0x7e0 net/batman-adv/bat_iv_ogm.c:1712
process_one_work kernel/workqueue.c:3276 [inline]
process_scheduled_works+0xb6e/0x18c0 kernel/workqueue.c:3359
worker_thread+0xa53/0xfc0 kernel/workqueue.c:3440
kthread+0x388/0x470 kernel/kthread.c:436
ret_from_fork+0x51e/0xb90 arch/x86/kernel/process.c:158
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245
page last free pid 5816 tgid 5816 stack trace:
reset_page_owner include/linux/page_owner.h:25 [inline]
__free_pages_prepare mm/page_alloc.c:1433 [inline]
__free_frozen_pages+0xc2b/0xdb0 mm/page_alloc.c:2978
__slab_free+0x263/0x2b0 mm/slub.c:5573
qlink_free mm/kasan/quarantine.c:163 [inline]
qlist_free_all+0x97/0x100 mm/kasan/quarantine.c:179
kasan_quarantine_reduce+0x148/0x160 mm/kasan/quarantine.c:286
__kasan_slab_alloc+0x22/0x80 mm/kasan/common.c:350
kasan_slab_alloc include/linux/kasan.h:253 [inline]
slab_post_alloc_hook mm/slub.c:4538 [inline]
slab_alloc_node mm/slub.c:4866 [inline]
kmem_cache_alloc_noprof+0x2bc/0x650 mm/slub.c:4873
new_handle fs/jbd2/transaction.c:457 [inline]
jbd2__journal_start+0x145/0x5b0 fs/jbd2/transaction.c:484
__ext4_journal_start_sb+0x203/0x620 fs/ext4/ext4_jbd2.c:114
__ext4_journal_start fs/ext4/ext4_jbd2.h:242 [inline]
ext4_dirty_inode+0x93/0x110 fs/ext4/inode.c:6447
__mark_inode_dirty+0x3a4/0x1470 fs/fs-writeback.c:2609
generic_update_time fs/inode.c:2198 [inline]
file_update_time_flags+0x3ee/0x4a0 fs/inode.c:2428
ext4_page_mkwrite+0x219/0x11a0 fs/ext4/inode.c:6616
do_page_mkwrite+0x14d/0x310 mm/memory.c:3589
wp_page_shared mm/memory.c:3990 [inline]
do_wp_page+0x1a4b/0x5a00 mm/memory.c:4209
handle_pte_fault mm/memory.c:6333 [inline]
__handle_mm_fault mm/memory.c:6455 [inline]
handle_mm_fault+0x1520/0x3310 mm/memory.c:6624
do_user_addr_fault+0xa73/0x1340 arch/x86/mm/fault.c:1334
Memory state around the buggy address:
ffff888059bdff00: fe fe fe fe fe fe fe fe fe fe fe fe fe fe fe fe
ffff888059bdff80: fe fe fe fe fe fe fe fe fe fe fe fe fe fe fe fe
>ffff888059be0000: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
^
ffff888059be0080: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
ffff888059be0100: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
==================================================================
----------------
Code disassembly (best guess):
0: 00 00 add %al,(%rax)
2: 48 85 db test %rbx,%rbx
5: 0f 85 e8 01 00 00 jne 0x1f3
b: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1)
10: 4c 8b 75 d0 mov -0x30(%rbp),%r14
14: 49 83 c4 48 add $0x48,%r12
18: 4c 89 e7 mov %r12,%rdi
1b: e8 05 27 1d 0a call 0xa1d2725
20: e8 80 7f 38 00 call 0x387fa5
25: fb sti
26: 4c 8b 65 c0 mov -0x40(%rbp),%r12
* 2a: 49 8d bc 24 80 16 00 lea 0x1680(%r12),%rdi <-- trapping instruction
31: 00
32: 48 89 f8 mov %rdi,%rax
35: 48 c1 e8 03 shr $0x3,%rax
39: 42 0f b6 04 28 movzbl (%rax,%r13,1),%eax
3e: 84 c0 test %al,%al