------------[ cut here ]------------
1
WARNING: net/ipv4/route.c:1275 at ip_rt_bug+0x2d/0x140 net/ipv4/route.c:1275, CPU#1: syz.0.14430/27557
Modules linked in:
CPU: 1 UID: 0 PID: 27557 Comm: syz.0.14430 Not tainted syzkaller #0 PREEMPT(full)
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2026
RIP: 0010:ip_rt_bug+0x2d/0x140 net/ipv4/route.c:1275
Code: fa 55 41 57 41 56 41 55 41 54 53 48 89 d3 e8 0a 5c ba f7 66 90 e8 03 5c ba f7 31 ff 48 89 de ba 02 00 00 00 e8 d4 2c 6a ff 90 <0f> 0b 90 31 c0 5b 41 5c 41 5d 41 5e 41 5f 5d e9 0f a6 a6 01 cc 49
RSP: 0018:ffffc90000a08740 EFLAGS: 00010282
RAX: a7b2a50a3349d400 RBX: ffff8880441c1000 RCX: 0000000000000303
RDX: 0000000000000002 RSI: ffffffff8def989e RDI: ffffffff8c27cb00
RBP: ffffc90000a08a30 R08: ffffffff9011beb7 R09: 1ffffffff20237d6
R10: dffffc0000000000 R11: fffffbfff20237d7 R12: dffffc0000000000
R13: 0000000000000000 R14: ffff8880441c1000 R15: dffffc0000000000
FS: 0000000000000000(0000) GS:ffff88812555a000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000200000000100 CR3: 000000000e54c000 CR4: 00000000003526f0
Call Trace:
ip_send_skb net/ipv4/ip_output.c:1508 [inline]
ip_push_pending_frames+0x8b/0x110 net/ipv4/ip_output.c:1528
__icmp_send+0x118d/0x1590 net/ipv4/icmp.c:1000
ipv4_send_dest_unreach net/ipv4/route.c:1255 [inline]
ipv4_link_failure+0x66c/0xa70 net/ipv4/route.c:1262
dst_link_failure include/net/dst.h:438 [inline]
arp_error_report+0x118/0x160 net/ipv4/arp.c:297
neigh_invalidate+0x235/0x460 net/core/neighbour.c:1081
neigh_timer_handler+0xb99/0x11e0 net/core/neighbour.c:1173
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:lock_release+0x2d7/0x3d0 kernel/locking/lockdep.c:5893
Code: e7 7a 11 00 00 00 00 eb b5 e8 05 54 0d 0a f7 c3 00 02 00 00 74 b9 65 48 8b 05 85 a1 7a 11 48 3b 44 24 28 75 44 fb 48 83 c4 30 <5b> 41 5c 41 5d 41 5e 41 5f 5d c3 cc cc cc cc cc 48 8d 3d 32 57 73
RSP: 0018:ffffc900056cf520 EFLAGS: 00000282
RAX: a7b2a50a3349d400 RBX: 0000000000000206 RCX: 0000000080000002
RDX: 0000000000000003 RSI: ffffffff8e16a5c2 RDI: ffffffff8c27cb00
RBP: ffff8880330e6750 R08: ffffffff823c4aea R09: ffffffff8e75e6e0
R10: dffffc0000000000 R11: fffff94000b30e81 R12: 0000000000000003
R13: 0000000000000003 R14: ffffffff8e75e6e0 R15: ffff8880330e5b80
rcu_lock_release include/linux/rcupdate.h:322 [inline]
rcu_read_unlock_sched include/linux/rcupdate.h:972 [inline]
pfn_valid+0x3b2/0x480 include/linux/mmzone.h:2207
page_table_check_clear+0x21/0x5f0 mm/page_table_check.c:70
ptep_get_and_clear_full arch/x86/include/asm/jump_label.h:-1 [inline]
get_and_clear_full_ptes include/linux/pgtable.h:846 [inline]
zap_present_folio_ptes mm/memory.c:1643 [inline]
zap_present_ptes mm/memory.c:1725 [inline]
do_zap_pte_range mm/memory.c:1827 [inline]
zap_pte_range mm/memory.c:1929 [inline]
zap_pmd_range mm/memory.c:2021 [inline]
zap_pud_range mm/memory.c:2049 [inline]
zap_p4d_range mm/memory.c:2070 [inline]
unmap_page_range+0x33b3/0x48f0 mm/memory.c:2091
unmap_single_vma mm/memory.c:2133 [inline]
unmap_vmas+0x48f/0x6a0 mm/memory.c:2171
exit_mmap+0x280/0xa10 mm/mmap.c:1302
__mmput+0x118/0x430 kernel/fork.c:1175
exit_mm+0x168/0x220 kernel/exit.c:581
do_exit+0x6a2/0x23c0 kernel/exit.c:964
do_group_exit+0x21b/0x2d0 kernel/exit.c:1118
__do_sys_exit_group kernel/exit.c:1129 [inline]
__se_sys_exit_group kernel/exit.c:1127 [inline]
__x64_sys_exit_group+0x3f/0x40 kernel/exit.c:1127
x64_sys_call+0x221a/0x2240 arch/x86/include/generated/asm/syscalls_64.h:232
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:0x7eff7459c799
Code: Unable to access opcode bytes at 0x7eff7459c76f.
RSP: 002b:00007ffc48074408 EFLAGS: 00000246 ORIG_RAX: 00000000000000e7
RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007eff7459c799
RDX: 0000000000000064 RSI: 0000000000000000 RDI: 0000000000000000
RBP: 00007ffc4807446c R08: 0000000000000000 R09: 00000000000927c0
R10: 0000000000000001 R11: 0000000000000246 R12: 00000000000001b2
R13: 00000000000927c0 R14: 0000000000185da9 R15: 00007ffc480744c0
----------------
Code disassembly (best guess):
0: e7 7a out %eax,$0x7a
2: 11 00 adc %eax,(%rax)
4: 00 00 add %al,(%rax)
6: 00 eb add %ch,%bl
8: b5 e8 mov $0xe8,%ch
a: 05 54 0d 0a f7 add $0xf70a0d54,%eax
f: c3 ret
10: 00 02 add %al,(%rdx)
12: 00 00 add %al,(%rax)
14: 74 b9 je 0xffffffcf
16: 65 48 8b 05 85 a1 7a mov %gs:0x117aa185(%rip),%rax # 0x117aa1a3
1d: 11
1e: 48 3b 44 24 28 cmp 0x28(%rsp),%rax
23: 75 44 jne 0x69
25: fb sti
26: 48 83 c4 30 add $0x30,%rsp
* 2a: 5b pop %rbx <-- trapping instruction
2b: 41 5c pop %r12
2d: 41 5d pop %r13
2f: 41 5e pop %r14
31: 41 5f pop %r15
33: 5d pop %rbp
34: c3 ret
35: cc int3
36: cc int3
37: cc int3
38: cc int3
39: cc int3
3a: 48 rex.W
3b: 8d .byte 0x8d
3c: 3d .byte 0x3d
3d: 32 57 73 xor 0x73(%rdi),%dl