------------[ cut here ]------------
WARNING: CPU: 0 PID: 3598 at net/ipv4/tcp_timer.c:470 tcp_retransmit_timer+0x19b6/0x33d0 net/ipv4/tcp_timer.c:470
Modules linked in:
CPU: 0 PID: 3598 Comm: sshd Not tainted 5.19.0-syzkaller-13930-g7ebfc85e2cd7 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/22/2022
RIP: 0010:tcp_retransmit_timer+0x19b6/0x33d0 net/ipv4/tcp_timer.c:470
Code: 03 0f b6 04 02 40 38 f0 0f 8f 9b fc ff ff 84 c0 0f 84 93 fc ff ff 48 8b 7c 24 18 e8 c4 69 e5 f9 e9 84 fc ff ff e8 8a 12 99 f9 <0f> 0b e9 46 eb ff ff e8 7e 12 99 f9 48 8b 9c 24 c8 00 00 00 48 85
RSP: 0018:ffffc90000007b48 EFLAGS: 00010246
RAX: 0000000000000000 RBX: 0000000000000001 RCX: 0000000000000100
RDX: ffff8880217e5880 RSI: ffffffff87e2f486 RDI: ffff888025cb9a80
RBP: ffff888025cb9800 R08: 0000000000000005 R09: 0000000000000000
R10: 0000000000000001 R11: 0000000000000001 R12: ffff888025cb9930
R13: ffffffff8bc0f200 R14: 0000000000000000 R15: ffff888025cb9830
FS: 00007f143317e800(0000) GS:ffff8880b9a00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000020000200 CR3: 0000000072fb3000 CR4: 0000000000350ef0
Call Trace:
tcp_write_timer_handler net/ipv4/tcp_timer.c:620 [inline]
tcp_write_timer_handler+0x4de/0x9f0 net/ipv4/tcp_timer.c:594
tcp_write_timer+0xa2/0x2b0 net/ipv4/tcp_timer.c:637
call_timer_fn+0x1a0/0x6b0 kernel/time/timer.c:1474
expire_timers kernel/time/timer.c:1519 [inline]
__run_timers.part.0+0x674/0xa80 kernel/time/timer.c:1790
__run_timers kernel/time/timer.c:1768 [inline]
run_timer_softirq+0xb3/0x1d0 kernel/time/timer.c:1803
__do_softirq+0x1d3/0x9c6 kernel/softirq.c:571
invoke_softirq kernel/softirq.c:445 [inline]
__irq_exit_rcu+0x123/0x180 kernel/softirq.c:650
irq_exit_rcu+0x5/0x20 kernel/softirq.c:662
sysvec_apic_timer_interrupt+0x93/0xc0 arch/x86/kernel/apic/apic.c:1106
asm_sysvec_apic_timer_interrupt+0x16/0x20 arch/x86/include/asm/idtentry.h:649
RIP: 0010:lock_acquire+0x1ef/0x570 kernel/locking/lockdep.c:5634
Code: fc a2 7e 83 f8 01 0f 85 e8 02 00 00 9c 58 f6 c4 02 0f 85 fb 02 00 00 48 83 7c 24 08 00 74 01 fb 48 b8 00 00 00 00 00 fc ff df <48> 01 c3 48 c7 03 00 00 00 00 48 c7 43 08 00 00 00 00 48 8b 84 24
RSP: 0018:ffffc90003b1f7f8 EFLAGS: 00000206
RAX: dffffc0000000000 RBX: 1ffff92000763f01 RCX: ffffffff815f273e
RDX: 1ffff110042fcc5e RSI: 0000000000000000 RDI: 0000000000000000
RBP: 0000000000000001 R08: 0000000000000000 R09: ffffffff908db977
R10: fffffbfff211b72e R11: 0000000000000000 R12: 0000000000000001
R13: 0000000000000000 R14: ffff88801f3d4e28 R15: 0000000000000000
__might_fault mm/memory.c:5577 [inline]
__might_fault+0x104/0x170 mm/memory.c:5570
_copy_from_iter+0x298/0x11c0 lib/iov_iter.c:627
copy_from_iter include/linux/uio.h:184 [inline]
copy_from_iter_full include/linux/uio.h:191 [inline]
skb_do_copy_data_nocache include/net/sock.h:2214 [inline]
skb_copy_to_page_nocache include/net/sock.h:2240 [inline]
tcp_sendmsg_locked+0x138e/0x2f80 net/ipv4/tcp.c:1376
tcp_sendmsg+0x2b/0x40 net/ipv4/tcp.c:1483
inet_sendmsg+0x99/0xe0 net/ipv4/af_inet.c:819
sock_sendmsg_nosec net/socket.c:714 [inline]
sock_sendmsg+0xcf/0x120 net/socket.c:734
sock_write_iter+0x291/0x3d0 net/socket.c:1108
call_write_iter include/linux/fs.h:2192 [inline]
new_sync_write fs/read_write.c:491 [inline]
vfs_write+0x9e9/0xdd0 fs/read_write.c:578
ksys_write+0x1e8/0x250 fs/read_write.c:631
do_syscall_x64 arch/x86/entry/common.c:50 [inline]
do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80
entry_SYSCALL_64_after_hwframe+0x63/0xcd
RIP: 0033:0x7f14332c49a3
================================
WARNING: inconsistent lock state
5.19.0-syzkaller-13930-g7ebfc85e2cd7 #0 Not tainted
--------------------------------
inconsistent {SOFTIRQ-ON-W} -> {IN-SOFTIRQ-W} usage.
sshd/3598 [HC0[0]:SC1[1]:HE1:SE0] takes:
ffffffff8c0bee78 (vmap_area_lock){+.?.}-{2:2}, at: spin_lock include/linux/spinlock.h:349 [inline]
ffffffff8c0bee78 (vmap_area_lock){+.?.}-{2:2}, at: find_vmap_area+0x1c/0x130 mm/vmalloc.c:1836
{SOFTIRQ-ON-W} state was registered at:
lock_acquire kernel/locking/lockdep.c:5666 [inline]
lock_acquire+0x1ab/0x570 kernel/locking/lockdep.c:5631
__raw_spin_lock include/linux/spinlock_api_smp.h:133 [inline]
_raw_spin_lock+0x2a/0x40 kernel/locking/spinlock.c:154
spin_lock include/linux/spinlock.h:349 [inline]
alloc_vmap_area+0xa0b/0x1d50 mm/vmalloc.c:1617
__get_vm_area_node+0x142/0x3f0 mm/vmalloc.c:2484
get_vm_area_caller+0x43/0x50 mm/vmalloc.c:2537
__ioremap_caller.constprop.0+0x292/0x600 arch/x86/mm/ioremap.c:280
acpi_os_ioremap include/acpi/acpi_io.h:13 [inline]
acpi_map drivers/acpi/osl.c:296 [inline]
acpi_os_map_iomem+0x463/0x550 drivers/acpi/osl.c:355
acpi_tb_acquire_table+0xd8/0x209 drivers/acpi/acpica/tbdata.c:142
acpi_tb_validate_table drivers/acpi/acpica/tbdata.c:317 [inline]
acpi_tb_validate_table+0x50/0x8c drivers/acpi/acpica/tbdata.c:308
acpi_tb_verify_temp_table+0x84/0x674 drivers/acpi/acpica/tbdata.c:504
acpi_reallocate_root_table+0x374/0x3e0 drivers/acpi/acpica/tbxface.c:180
acpi_early_init+0x13a/0x438 drivers/acpi/bus.c:1214
start_kernel+0x3cf/0x48f init/main.c:1099
secondary_startup_64_no_verify+0xce/0xdb
irq event stamp: 1664346
hardirqs last enabled at (1664346): [] __up_console_sem+0xae/0xc0 kernel/printk/printk.c:264
hardirqs last disabled at (1664345): [] __up_console_sem+0x93/0xc0 kernel/printk/printk.c:262
softirqs last enabled at (1663234): [] lock_sock include/net/sock.h:1687 [inline]
softirqs last enabled at (1663234): [] tcp_sendmsg+0x1d/0x40 net/ipv4/tcp.c:1482
softirqs last disabled at (1663247): [] invoke_softirq kernel/softirq.c:445 [inline]
softirqs last disabled at (1663247): [] __irq_exit_rcu+0x123/0x180 kernel/softirq.c:650
other info that might help us debug this:
Possible unsafe locking scenario:
CPU0
----
lock(vmap_area_lock);
lock(vmap_area_lock);
*** DEADLOCK ***
4 locks held by sshd/3598:
#0: ffff888025cb8d30 (sk_lock-AF_INET){+.+.}-{0:0}, at: lock_sock include/net/sock.h:1687 [inline]
#0: ffff888025cb8d30 (sk_lock-AF_INET){+.+.}-{0:0}, at: tcp_sendmsg+0x1d/0x40 net/ipv4/tcp.c:1482
#1: ffff88801f3d4e28 (&mm->mmap_lock#2){++++}-{3:3}, at: __might_fault+0xa1/0x170 mm/memory.c:5576
#2: ffffc90000007d70 ((&icsk->icsk_retransmit_timer)){+.-.}-{0:0}, at: lockdep_copy_map include/linux/lockdep.h:31 [inline]
#2: ffffc90000007d70 ((&icsk->icsk_retransmit_timer)){+.-.}-{0:0}, at: call_timer_fn+0xd5/0x6b0 kernel/time/timer.c:1464
#3: ffff888025cb98b0 (slock-AF_INET){+.-.}-{2:2}, at: spin_lock include/linux/spinlock.h:349 [inline]
#3: ffff888025cb98b0 (slock-AF_INET){+.-.}-{2:2}, at: tcp_write_timer+0x26/0x2b0 net/ipv4/tcp_timer.c:635
stack backtrace:
CPU: 0 PID: 3598 Comm: sshd Not tainted 5.19.0-syzkaller-13930-g7ebfc85e2cd7 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/22/2022
Call Trace:
__dump_stack lib/dump_stack.c:88 [inline]
dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:106
print_usage_bug kernel/locking/lockdep.c:3961 [inline]
valid_state kernel/locking/lockdep.c:3973 [inline]
mark_lock_irq kernel/locking/lockdep.c:4176 [inline]
mark_lock.part.0.cold+0x18/0xd8 kernel/locking/lockdep.c:4632
mark_lock kernel/locking/lockdep.c:4596 [inline]
mark_usage kernel/locking/lockdep.c:4527 [inline]
__lock_acquire+0x11d9/0x56d0 kernel/locking/lockdep.c:5007
lock_acquire kernel/locking/lockdep.c:5666 [inline]
lock_acquire+0x1ab/0x570 kernel/locking/lockdep.c:5631
__raw_spin_lock include/linux/spinlock_api_smp.h:133 [inline]
_raw_spin_lock+0x2a/0x40 kernel/locking/spinlock.c:154
spin_lock include/linux/spinlock.h:349 [inline]
find_vmap_area+0x1c/0x130 mm/vmalloc.c:1836
check_heap_object mm/usercopy.c:176 [inline]
__check_object_size mm/usercopy.c:250 [inline]
__check_object_size+0x1f8/0x700 mm/usercopy.c:212
check_object_size include/linux/thread_info.h:199 [inline]
__copy_from_user_inatomic include/linux/uaccess.h:62 [inline]
copy_from_user_nmi arch/x86/lib/usercopy.c:47 [inline]
copy_from_user_nmi+0xcb/0x130 arch/x86/lib/usercopy.c:31
copy_code arch/x86/kernel/dumpstack.c:91 [inline]
show_opcodes+0x59/0xb0 arch/x86/kernel/dumpstack.c:121
show_iret_regs+0xd/0x33 arch/x86/kernel/dumpstack.c:149
__show_regs+0x1e/0x60 arch/x86/kernel/process_64.c:74
show_trace_log_lvl+0x25b/0x2ba arch/x86/kernel/dumpstack.c:292
__warn+0xe2/0x190 kernel/panic.c:621
report_bug+0x1bc/0x210 lib/bug.c:198
handle_bug+0x3c/0x60 arch/x86/kernel/traps.c:316
exc_invalid_op+0x14/0x40 arch/x86/kernel/traps.c:336
asm_exc_invalid_op+0x16/0x20 arch/x86/include/asm/idtentry.h:568
RIP: 0010:tcp_retransmit_timer+0x19b6/0x33d0 net/ipv4/tcp_timer.c:470
Code: 03 0f b6 04 02 40 38 f0 0f 8f 9b fc ff ff 84 c0 0f 84 93 fc ff ff 48 8b 7c 24 18 e8 c4 69 e5 f9 e9 84 fc ff ff e8 8a 12 99 f9 <0f> 0b e9 46 eb ff ff e8 7e 12 99 f9 48 8b 9c 24 c8 00 00 00 48 85
RSP: 0018:ffffc90000007b48 EFLAGS: 00010246
RAX: 0000000000000000 RBX: 0000000000000001 RCX: 0000000000000100
RDX: ffff8880217e5880 RSI: ffffffff87e2f486 RDI: ffff888025cb9a80
RBP: ffff888025cb9800 R08: 0000000000000005 R09: 0000000000000000
R10: 0000000000000001 R11: 0000000000000001 R12: ffff888025cb9930
R13: ffffffff8bc0f200 R14: 0000000000000000 R15: ffff888025cb9830
tcp_write_timer_handler net/ipv4/tcp_timer.c:620 [inline]
tcp_write_timer_handler+0x4de/0x9f0 net/ipv4/tcp_timer.c:594
tcp_write_timer+0xa2/0x2b0 net/ipv4/tcp_timer.c:637
call_timer_fn+0x1a0/0x6b0 kernel/time/timer.c:1474
expire_timers kernel/time/timer.c:1519 [inline]
__run_timers.part.0+0x674/0xa80 kernel/time/timer.c:1790
__run_timers kernel/time/timer.c:1768 [inline]
run_timer_softirq+0xb3/0x1d0 kernel/time/timer.c:1803
__do_softirq+0x1d3/0x9c6 kernel/softirq.c:571
invoke_softirq kernel/softirq.c:445 [inline]
__irq_exit_rcu+0x123/0x180 kernel/softirq.c:650
irq_exit_rcu+0x5/0x20 kernel/softirq.c:662
sysvec_apic_timer_interrupt+0x93/0xc0 arch/x86/kernel/apic/apic.c:1106
asm_sysvec_apic_timer_interrupt+0x16/0x20 arch/x86/include/asm/idtentry.h:649
RIP: 0010:lock_acquire+0x1ef/0x570 kernel/locking/lockdep.c:5634
Code: fc a2 7e 83 f8 01 0f 85 e8 02 00 00 9c 58 f6 c4 02 0f 85 fb 02 00 00 48 83 7c 24 08 00 74 01 fb 48 b8 00 00 00 00 00 fc ff df <48> 01 c3 48 c7 03 00 00 00 00 48 c7 43 08 00 00 00 00 48 8b 84 24
RSP: 0018:ffffc90003b1f7f8 EFLAGS: 00000206
RAX: dffffc0000000000 RBX: 1ffff92000763f01 RCX: ffffffff815f273e
RDX: 1ffff110042fcc5e RSI: 0000000000000000 RDI: 0000000000000000
RBP: 0000000000000001 R08: 0000000000000000 R09: ffffffff908db977
R10: fffffbfff211b72e R11: 0000000000000000 R12: 0000000000000001
R13: 0000000000000000 R14: ffff88801f3d4e28 R15: 0000000000000000
__might_fault mm/memory.c:5577 [inline]
__might_fault+0x104/0x170 mm/memory.c:5570
_copy_from_iter+0x298/0x11c0 lib/iov_iter.c:627
copy_from_iter include/linux/uio.h:184 [inline]
copy_from_iter_full include/linux/uio.h:191 [inline]
skb_do_copy_data_nocache include/net/sock.h:2214 [inline]
skb_copy_to_page_nocache include/net/sock.h:2240 [inline]
tcp_sendmsg_locked+0x138e/0x2f80 net/ipv4/tcp.c:1376
tcp_sendmsg+0x2b/0x40 net/ipv4/tcp.c:1483
inet_sendmsg+0x99/0xe0 net/ipv4/af_inet.c:819
sock_sendmsg_nosec net/socket.c:714 [inline]
sock_sendmsg+0xcf/0x120 net/socket.c:734
sock_write_iter+0x291/0x3d0 net/socket.c:1108
call_write_iter include/linux/fs.h:2192 [inline]
new_sync_write fs/read_write.c:491 [inline]
vfs_write+0x9e9/0xdd0 fs/read_write.c:578
ksys_write+0x1e8/0x250 fs/read_write.c:631
do_syscall_x64 arch/x86/entry/common.c:50 [inline]
do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80
entry_SYSCALL_64_after_hwframe+0x63/0xcd
RIP: 0033:0x7f14332c49a3
Code: 8b 15 d9 f4 0c 00 f7 d8 64 89 02 48 c7 c0 ff ff ff ff eb b7 0f 1f 00 64 8b 04 25 18 00 00 00 85 c0 75 14 b8 01 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 55 c3 0f 1f 40 00 48 83 ec 28 48 89 54 24 18
RSP: 002b:00007ffc89e88888 EFLAGS: 00000246 ORIG_RAX: 0000000000000001
RAX: ffffffffffffffda RBX: 000000000000010c RCX: 00007f14332c49a3
RDX: 000000000000010c RSI: 000055de44961670 RDI: 0000000000000004
RBP: 000055de4494ede0 R08: 0000000000000000 R09: 00007ffc89fe1080
R10: 00007ffc89fe10f0 R11: 0000000000000246 R12: 0000000000000004
R13: 0000000000000001 R14: 00007ffc89e888f8 R15: 00007ffc89e88978
Code: 8b 15 d9 f4 0c 00 f7 d8 64 89 02 48 c7 c0 ff ff ff ff eb b7 0f 1f 00 64 8b 04 25 18 00 00 00 85 c0 75 14 b8 01 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 55 c3 0f 1f 40 00 48 83 ec 28 48 89 54 24 18
RSP: 002b:00007ffc89e88888 EFLAGS: 00000246 ORIG_RAX: 0000000000000001
RAX: ffffffffffffffda RBX: 000000000000010c RCX: 00007f14332c49a3
RDX: 000000000000010c RSI: 000055de44961670 RDI: 0000000000000004
RBP: 000055de4494ede0 R08: 0000000000000000 R09: 00007ffc89fe1080
R10: 00007ffc89fe10f0 R11: 0000000000000246 R12: 0000000000000004
R13: 0000000000000001 R14: 00007ffc89e888f8 R15: 00007ffc89e88978
----------------
Code disassembly (best guess):
0: fc cld
1: a2 7e 83 f8 01 0f 85 movabs %al,0x2e8850f01f8837e
8: e8 02
a: 00 00 add %al,(%rax)
c: 9c pushfq
d: 58 pop %rax
e: f6 c4 02 test $0x2,%ah
11: 0f 85 fb 02 00 00 jne 0x312
17: 48 83 7c 24 08 00 cmpq $0x0,0x8(%rsp)
1d: 74 01 je 0x20
1f: fb sti
20: 48 b8 00 00 00 00 00 movabs $0xdffffc0000000000,%rax
27: fc ff df
* 2a: 48 01 c3 add %rax,%rbx <-- trapping instruction
2d: 48 c7 03 00 00 00 00 movq $0x0,(%rbx)
34: 48 c7 43 08 00 00 00 movq $0x0,0x8(%rbx)
3b: 00
3c: 48 rex.W
3d: 8b .byte 0x8b
3e: 84 .byte 0x84
3f: 24 .byte 0x24