panic: kernel diagnostic assertion "ifp != NULL" failed: file "/syzkaller/managers/setuid/kernel/sys/netinet/if_ether.c", line 759
Stopped at db_enter+0x1c: addq $0x8,%rsp
TID PID UID PRFLAGS PFLAGS CPU COMMAND
262974 95968 32767 0x10 0 0 syz-executor.5
* 90995 63963 0 0x14000 0x200 1 softclockmp
db_enter() at db_enter+0x1c sys/arch/amd64/amd64/db_interface.c:437
panic(ffffffff827aa984) at panic+0x17b sys/kern/subr_prf.c:198
__assert(ffffffff8282adcd,ffffffff828779fd,2f7,ffffffff8277625c) at __assert+0x29 sys/kern/subr_prf.c:157
arptfree(fffffd806bc3d638) at arptfree+0x132 sys/netinet/if_ether.c:759
arptimer(ffffffff82cffae0) at arptimer+0x88 sys/netinet/if_ether.c:135
timeout_run(ffffffff82cffae0) at timeout_run+0xd0 sys/kern/kern_timeout.c:665
softclock_thread_mp(ffff800021158aa0) at softclock_thread_mp+0xc4 sys/kern/kern_timeout.c:833
end trace frame: 0x0, count: 8
https://www.openbsd.org/ddb.html describes the minimum info required in bug
reports. Insufficient info makes it difficult to find and fix bugs.
ddb{1}>
ddb{1}> set $lines = 0
ddb{1}> set $maxwidth = 0
ddb{1}> show panic
*cpu1: kernel diagnostic assertion "ifp != NULL" failed: file "/syzkaller/managers/setuid/kernel/sys/netinet/if_ether.c", line 759
ddb{1}> trace
db_enter() at db_enter+0x1c sys/arch/amd64/amd64/db_interface.c:437
panic(ffffffff827aa984) at panic+0x17b sys/kern/subr_prf.c:198
__assert(ffffffff8282adcd,ffffffff828779fd,2f7,ffffffff8277625c) at __assert+0x29 sys/kern/subr_prf.c:157
arptfree(fffffd806bc3d638) at arptfree+0x132 sys/netinet/if_ether.c:759
arptimer(ffffffff82cffae0) at arptimer+0x88 sys/netinet/if_ether.c:135
timeout_run(ffffffff82cffae0) at timeout_run+0xd0 sys/kern/kern_timeout.c:665
softclock_thread_mp(ffff800021158aa0) at softclock_thread_mp+0xc4 sys/kern/kern_timeout.c:833
end trace frame: 0x0, count: -7
ddb{1}> show registers
rdi 0
rsi 0x1
rbp 0xffff80002116b250
rbx 0xffff800020d49ba7
rdx 0
rcx 0xffff800021158aa0
rax 0xffff800020d48ff0
r8 0x101010101010101
r9 0x8080808080808080
r10 0x3f86fd760df426b9
r11 0xeebdee26691ce044
r12 0xffff800020d499a8
r13 0
r14 0
r15 0x1
rip 0xffffffff81d6c2ec db_enter+0x1c
cs 0x8
rflags 0x246
rsp 0xffff80002116b240
ss 0x10
db_enter+0x1c: addq $0x8,%rsp
ddb{1}> show proc
PROC (softclockmp) tid=90995 pid=63963 tcnt=1 stat=onproc
flags process=14000<NOZOMBIE,SYSTEM> proc=200<SYSTEM>
runpri=0, usrpri=50, slppri=0, nice=20
wchan=0x0, wmesg=, ps_single=0x0
forw=0xffffffffffffffff, list=0xffff800021159298,0xffff800021158808
process=0xffff8000ffffe5b0 user=0xffff800021166000, vmspace=0xffffffff82caf890
estcpu=0, cpticks=1, pctcpu=0.0, user=0, sys=1, intr=0
ddb{1}> ps
PID TID PPID UID S FLAGS WAIT COMMAND
89402 252009 95968 32767 3 0x90 nanoslp syz-executor.5
89402 191665 95968 32767 3 0x4000090 ttyout syz-executor.5
89402 450413 95968 32767 3 0x4000090 fsleep syz-executor.5
92063 267260 53921 32767 3 0x90 nanoslp syz-executor.7
92063 364190 53921 32767 3 0x4000090 kqread syz-executor.7
92063 129164 53921 32767 3 0x4000090 kqread syz-executor.7
92063 308386 53921 32767 3 0x4000090 fsleep syz-executor.7
24698 517391 51376 32767 3 0x90 piperd syz-executor.2
51376 442995 57488 0 3 0x82 wait syz-executor.2
95968 262974 32856 32767 7 0x10 syz-executor.5
32856 297826 57488 0 3 0x82 wait syz-executor.5
41977 404792 9544 32767 3 0x90 piperd syz-executor.1
9544 36202 57488 0 3 0x82 wait syz-executor.1
79939 128615 57908 32767 3 0x90 piperd syz-executor.3
57908 188089 57488 0 3 0x82 wait syz-executor.3
13724 10630 57488 0 3 0x82 wait syz-executor.0
20883 283114 95496 32767 3 0x90 piperd syz-executor.6
95496 439173 57488 0 3 0x82 wait syz-executor.6
47152 341954 50452 32767 3 0x90 piperd syz-executor.4
50452 400402 57488 0 3 0x82 wait syz-executor.4
53921 418865 53256 32767 3 0x90 nanoslp syz-executor.7
53256 97658 57488 0 3 0x82 wait syz-executor.7
82592 284009 0 0 3 0x14200 bored sosplice
57488 458165 87474 0 3 0x2000082 wait syz-fuzzer
57488 289583 87474 0 3 0x6000082 thrsleep syz-fuzzer
57488 447087 87474 0 3 0x6000082 thrsleep syz-fuzzer
57488 168075 87474 0 3 0x6000082 thrsleep syz-fuzzer
57488 804 87474 0 3 0x6000082 thrsleep syz-fuzzer
57488 402100 87474 0 3 0x6000082 thrsleep syz-fuzzer
57488 85587 87474 0 3 0x6000082 wait syz-fuzzer
57488 388119 87474 0 3 0x6000082 wait syz-fuzzer
57488 77024 87474 0 3 0x6000082 kqread syz-fuzzer
57488 439568 87474 0 3 0x6000082 thrsleep syz-fuzzer
57488 164405 87474 0 3 0x6000082 thrsleep syz-fuzzer
57488 83369 87474 0 3 0x6000082 wait syz-fuzzer
57488 347637 87474 0 3 0x6000082 wait syz-fuzzer
57488 333496 87474 0 3 0x6000082 wait syz-fuzzer
57488 120428 87474 0 3 0x6000082 wait syz-fuzzer
57488 416599 87474 0 3 0x6000082 wait syz-fuzzer
87474 70116 76012 0 3 0x10008a sigsusp ksh
76012 132991 44509 0 3 0x9a kqread sshd
54438 425398 1 0 3 0x100083 ttyin getty
44509 135832 1 0 3 0x88 kqread sshd
12776 330085 68840 73 3 0x1100090 kqread syslogd
68840 58544 1 0 3 0x100082 netio syslogd
33110 441826 1 0 3 0x100080 kqread resolvd
18243 20603 40429 77 3 0x100092 kqread dhcpleased
46591 458424 40429 77 3 0x100092 kqread dhcpleased
40429 435337 1 0 3 0x80 kqread dhcpleased
39898 378755 0 0 3 0x14200 bored smr
24421 295200 0 0 3 0x14200 pgzero zerothread
71038 472465 0 0 3 0x14200 aiodoned aiodoned
52668 498433 0 0 3 0x14200 syncer update
18905 414295 0 0 3 0x14200 cleaner cleaner
27899 56821 0 0 3 0x14200 reaper reaper
22112 264666 0 0 3 0x14200 pgdaemon pagedaemon
58443 78368 0 0 3 0x14200 bored viomb
18644 198358 0 0 3 0x40014200 acpi0 acpi0
75500 292806 0 0 3 0x40014200 idle1
50041 440352 0 0 3 0x14200 bored softnet3
26545 343098 0 0 3 0x14200 bored softnet2
71413 178940 0 0 3 0x14200 bored softnet1
49344 384352 0 0 3 0x14200 bored softnet0
71218 137876 0 0 3 0x14200 bored systqmp
88541 344383 0 0 3 0x14200 bored systq
*63963 90995 0 0 7 0x14200 softclockmp
47320 354569 0 0 3 0x40014200 netlock softclock
12234 231226 0 0 3 0x40014200 idle0
1 417449 0 0 3 0x82 wait init
0 0 -1 0 3 0x10200 scheduler swapper
ddb{1}> show all locks
Process 63963 (softclockmp) thread 0xffff800021158aa0 (90995)
exclusive rwlock netlock r = 0 (0xffffffff82c58320)
#0 witness_lock+0x447
#1 arptimer+0x26 sys/netinet/if_ether.c:132
#2 timeout_run+0xd0 sys/kern/kern_timeout.c:665
#3 softclock_thread_mp+0xc4 sys/kern/kern_timeout.c:833
#4 proc_trampoline+0x10
shared rwlock timeout r = 0 (0xffffffff82bc77f8)
#0 witness_lock+0x447
#1 timeout_run+0xbb sys/kern/kern_timeout.c:661
#2 softclock_thread_mp+0xc4 sys/kern/kern_timeout.c:833
#3 proc_trampoline+0x10
Process 47320 (softclock) thread 0xffff800021159298 (354569)
shared rwlock timeout r = 0 (0xffffffff82bc77f8)
#0 witness_lock+0x447
#1 timeout_run+0xbb sys/kern/kern_timeout.c:661
#2 softclock_thread+0x114 sys/kern/kern_timeout.c:809
#3 proc_trampoline+0x10
ddb{1}> show malloc
Type InUse MemUse HighUse Limit Requests Type Lim
devbuf 10232 6415K 6421K 78643K 11618 0
pcb 13 16K 20K 78643K 19 0
rtable 244 6K 7K 78643K 5520 0
pf 29 8K 8K 78643K 233 0
ifaddr 44 16K 16K 78643K 460 0
ifgroup 50 2K 2K 78643K 458 0
sysctl 4 1K 5K 78643K 75 0
counters 60 35K 35K 78643K 264 0
ioctlops 0 0K 2K 78643K 441 0
iov 0 0K 37K 78643K 4217 0
mount 1 1K 1K 78643K 1 0
log 0 0K 0K 78643K 4 0
vnodes 1280 80K 80K 78643K 9066 0
UFS quota 1 32K 32K 78643K 1 0
UFS mount 5 36K 36K 78643K 5 0
shm 2 1K 9K 78643K 467 0
VM map 2 1K 1K 78643K 2 0
sem 12 1K 1K 78643K 2439 0
dirhash 12 2K 2K 78643K 12 0
ACPI 1697 195K 286K 78643K 12548 0
file desc 20 73K 121K 78643K 37013 0
sigio 0 0K 0K 78643K 1139 0
proc 56 78K 115K 78643K 5120 0
subproc 104 6K 6K 78643K 1430 0
NFS srvsock 1 0K 0K 78643K 1 0
NFS daemon 1 16K 16K 78643K 1 0
ip_moptions 0 0K 0K 78643K 1932 0
in_multi 99 7K 7K 78643K 1474 0
ether_multi 1 0K 0K 78643K 66 0
mrt 1 0K 0K 78643K 1 0
ISOFS mount 1 32K 32K 78643K 1 0
MSDOSFS mount 1 16K 16K 78643K 1 0
ttys 313 1394K 1394K 78643K 313 0
exec 0 0K 1K 78643K 6448 0
tdb 3 0K 0K 78643K 3 0
pagedep 1 8K 8K 78643K 1 0
inodedep 1 32K 32K 78643K 1 0
newblk 1 0K 0K 78643K 1 0
VM swap 8 62K 64K 78643K 10 0
UVM amap 439 93K 110K 78643K 362560 0
UVM aobj 131 7K 7K 78643K 143 0
memdesc 1 4K 4K 78643K 1 0
crypto data 1 1K 1K 78643K 1 0
ip6_options 0 0K 0K 78643K 939 0
NDP 11 0K 2K 78643K 333 0
temp 74 5924K 6053K 78643K 95801 0
kqueue 12 18K 29K 78643K 2991 0
SYN cache 2 16K 16K 78643K 2 0
ddb{1}> show all pools
Name Size Requests Fail Releases Pgreq Pgrel Npage Hiwat Minpg Maxpg Idle
plcache 128 22 0 0 1 0 1 1 0 8 0
rtpcb 120 31184 0 31181 196 194 2 6 0 8 1
rtentry 112 1295 0 1180 4 0 4 4 0 8 0
unpcb 144 18904 0 18889 219 213 6 10 0 8 5
syncache 312 512 0 512 72 72 0 1 0 8 0
sackhl 24 1 0 1 1 1 0 1 0 8 0
tcpqe 32 533 0 533 61 61 0 1 0 8 0
tcpcb 808 13460 0 13419 317 309 8 21 0 8 0
arp 120 229 0 210 1 0 1 1 0 8 0
ipq 40 55 0 54 19 18 1 1 0 8 0
ipqe 40 263 0 262 19 18 1 1 0 8 0
inpcb 368 26432 0 26388 375 367 8 20 0 8 1
nd6 136 385 0 357 5 3 2 2 0 8 0
kcovpl 48 110 0 102 1 0 1 1 0 8 0
art_heap8 4096 1 0 0 1 0 1 1 0 8 0
art_heap4 256 5190 0 4706 40 9 31 33 0 8 0
art_table 32 5191 0 4706 5 1 4 5 0 8 0
art_node 16 1294 0 1189 1 0 1 1 0 8 0
sysvmsgpl 40 1 0 1 1 1 0 1 0 8 0
semupl 112 6 0 6 1 1 0 1 0 8 0
semapl 112 2433 0 2423 1 0 1 1 0 8 0
shmpl 112 140 0 12 5 1 4 4 0 8 0
dirhash 1024 17 0 0 3 0 3 3 0 8 0
dino2pl 256 48232 0 46763 93 0 93 93 0 8 0
ffsino 272 48232 0 46763 99 0 99 99 0 8 0
nchpl 144 95207 0 93565 63 0 63 63 0 8 0
uvmvnodes 80 5926 0 0 121 0 121 121 0 8 0
vnodes 216 5926 0 0 330 0 330 330 0 8 0
namei 1024 317508 0 317508 10 9 1 2 0 8 1
percpumem 16 145 0 102 1 0 1 1 0 8 0
kstatmem 264 226 0 204 2 0 2 2 0 8 0
scxspl 216 303610 0 303610 116 115 1 8 1 8 1
plimitpl 152 6696 0 6673 63 62 1 2 0 8 0
sigapl 424 37097 0 37047 7 0 7 7 0 8 0
futexpl 64 312383 0 312381 13 12 1 1 0 8 0
knotepl 120 2045 0 0 20 3 17 17 0 8 0
kqueuepl 216 8187 0 8177 153 151 2 8 0 8 1
pipepl 320 10224 0 10196 274 271 3 14 0 8 0
fdescpl 496 37078 0 37047 7 2 5 6 0 8 0
filepl 152 246892 0 246647 452 437 15 24 0 8 5
lockfpl 104 9609 0 9607 3 2 1 2 0 8 0
lockfspl 48 2055 0 2053 1 0 1 1 0 8 0
sessionpl 144 125 0 109 1 0 1 1 0 8 0
pgrppl 48 451 0 435 1 0 1 1 0 8 0
ucredpl 104 36735 0 36717 1 0 1 1 0 8 0
zombiepl 144 37048 0 37047 1 0 1 1 0 8 0
processpl 1072 37097 0 37047 5 1 4 5 0 8 0
procpl 680 102744 0 102674 13 5 8 9 0 8 0
sosppl 168 599 0 599 36 36 0 1 0 8 0
sockpl 488 78289 0 78227 1239 1221 18 43 0 8 8
mcl64k 65536 49 0 0 4 1 3 3 0 8 0
mcl16k 16384 34 0 0 5 2 3 3 0 8 0
mcl12k 12288 33 0 0 2 0 2 2 0 8 0
mcl9k 9216 19 0 0 2 0 2 2 0 8 0
mcl8k 8192 65 0 0 5 2 3 3 0 8 0
mcl4k 4096 176 0 0 12 8 4 10 0 8 0
mcl2k2 2112 27 0 0 2 1 1 2 0 8 0
mcl2k 2048 607 0 0 34 19 15 34 0 8 0
mtagpl 96 25 0 0 1 0 1 1 0 8 0
mbufpl 256 5807 0 0 273 1 272 272 0 8 0
bufpl 288 66688 0 60367 452 0 452 452 0 8 0
anonpl 24 3889994 0 3878704 278 181 97 123 0 186 0
amapchunkpl 152 1186401 0 1185594 378 328 50 54 0 158 13
amappl16 200 83516 0 83194 567 548 19 43 0 8 0
amappl15 192 15 0 15 2 2 0 1 0 8 0
amappl14 184 537 0 520 2 1 1 2 0 8 0
amappl13 176 65 0 64 7 6 1 1 0 8 0
amappl12 168 39219 0 39182 2 0 2 2 0 8 0
amappl11 160 73 0 62 1 0 1 1 0 8 0
amappl10 152 177 0 163 1 0 1 1 0 8 0
amappl9 144 421 0 420 1 0 1 1 0 8 0
amappl8 136 1702 0 1501 9 1 8 8 0 8 0
amappl7 128 555 0 529 2 0 2 2 0 8 0
amappl6 120 2154 0 2136 1 0 1 1 0 8 0
amappl5 112 834 0 826 1 0 1 1 0 8 0
amappl4 104 2005 0 1971 2 1 1 2 0 8 0
amappl3 96 222212 0 222129 68 65 3 4 0 8 0
amappl2 88 39856 0 39770 10 7 3 3 0 8 0
amappl1 80 143857 0 143334 22 9 13 22 0 8 0
amappl 88 360015 0 359771 9 2 7 8 0 92 0
dma4096 4096 1 0 1 1 1 0 1 0 8 0
dma1024 1024 1 0 0 1 0 1 1 0 8 0
dma256 256 6 0 6 1 1 0 1 0 8 0
dma128 128 253 0 253 1 1 0 1 0 8 0
dma64 64 6 0 6 1 1 0 1 0 8 0
dma32 32 7 0 7 1 1 0 1 0 8 0
dma16 16 18 0 17 1 0 1 1 0 8 0
aobjpl 72 142 0 12 3 0 3 3 0 8 0
uaddrrnd 24 37078 0 37047 1 0 1 1 0 8 0
uaddrbest 32 2 0 0 1 0 1 1 0 8 0
uaddr 24 37078 0 37047 1 0 1 1 0 8 0
vmmpekpl 168 288495 0 288435 4 0 4 4 0 8 0
vmmpepl 168 2184539 0 2182151 539 410 129 151 0 357 0
vmsppl 464 37077 0 37047 7 2 5 6 0 8 0
rwobjpl 56 534049 0 526517 121 10 111 115 0 8 0
pdppl 4096 74164 0 74094 1397 1315 82 94 0 8 12
pvpl 32 10929078 0 10911648 803 623 180 360 0 265 0
pmappl 248 37077 0 37047 4 1 3 3 0 8 0
extentpl 40 56 0 38 1 0 1 1 0 8 0
phpool 112 3208 0 2121 32 0 32 32 0 8 0
ddb{1}> machine ddbcpu 0
Stopped at x86_ipi_db+0x1e: addq $0x8,%rsp
x86_ipi_db(ffffffff82bbbff0) at x86_ipi_db+0x1e sys/arch/amd64/amd64/db_interface.c:393
x86_ipi_handler() at x86_ipi_handler+0xb7 sys/arch/amd64/amd64/ipi.c:106
Xresume_lapic_ipi() at Xresume_lapic_ipi+0x27
__mp_lock(ffffffff82d07d10) at __mp_lock+0x122 __mp_lock_spin sys/kern/kern_lock.c:116 [inline]
__mp_lock(ffffffff82d07d10) at __mp_lock+0x122 sys/kern/kern_lock.c:147
softintr_dispatch(0) at softintr_dispatch+0x52 sys/arch/amd64/amd64/softintr.c:88
Xsoftclock() at Xsoftclock+0x27
__mp_lock(ffffffff82d07d10) at __mp_lock+0x122 __mp_lock_spin sys/kern/kern_lock.c:116 [inline]
__mp_lock(ffffffff82d07d10) at __mp_lock+0x122 sys/kern/kern_lock.c:147
syscall(ffff800027b6d460) at syscall+0x5cd mi_syscall sys/sys/syscall_mi.h:110 [inline]
syscall(ffff800027b6d460) at syscall+0x5cd sys/arch/amd64/amd64/trap.c:623
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0x762ca6d925e0, count: 6
ddb{0}> trace
x86_ipi_db(ffffffff82bbbff0) at x86_ipi_db+0x1e sys/arch/amd64/amd64/db_interface.c:393
x86_ipi_handler() at x86_ipi_handler+0xb7 sys/arch/amd64/amd64/ipi.c:106
Xresume_lapic_ipi() at Xresume_lapic_ipi+0x27
__mp_lock(ffffffff82d07d10) at __mp_lock+0x122 __mp_lock_spin sys/kern/kern_lock.c:116 [inline]
__mp_lock(ffffffff82d07d10) at __mp_lock+0x122 sys/kern/kern_lock.c:147
softintr_dispatch(0) at softintr_dispatch+0x52 sys/arch/amd64/amd64/softintr.c:88
Xsoftclock() at Xsoftclock+0x27
__mp_lock(ffffffff82d07d10) at __mp_lock+0x122 __mp_lock_spin sys/kern/kern_lock.c:116 [inline]
__mp_lock(ffffffff82d07d10) at __mp_lock+0x122 sys/kern/kern_lock.c:147
syscall(ffff800027b6d460) at syscall+0x5cd mi_syscall sys/sys/syscall_mi.h:110 [inline]
syscall(ffff800027b6d460) at syscall+0x5cd sys/arch/amd64/amd64/trap.c:623
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0x762ca6d925e0, count: -9
ddb{0}> machine ddbcpu 1
Stopped at db_enter+0x1c: addq $0x8,%rsp
db_enter() at db_enter+0x1c sys/arch/amd64/amd64/db_interface.c:437
panic(ffffffff827aa984) at panic+0x17b sys/kern/subr_prf.c:198
__assert(ffffffff8282adcd,ffffffff828779fd,2f7,ffffffff8277625c) at __assert+0x29 sys/kern/subr_prf.c:157
arptfree(fffffd806bc3d638) at arptfree+0x132 sys/netinet/if_ether.c:759
arptimer(ffffffff82cffae0) at arptimer+0x88 sys/netinet/if_ether.c:135
timeout_run(ffffffff82cffae0) at timeout_run+0xd0 sys/kern/kern_timeout.c:665
softclock_thread_mp(ffff800021158aa0) at softclock_thread_mp+0xc4 sys/kern/kern_timeout.c:833
end trace frame: 0x0, count: 8
ddb{1}> trace
db_enter() at db_enter+0x1c sys/arch/amd64/amd64/db_interface.c:437
panic(ffffffff827aa984) at panic+0x17b sys/kern/subr_prf.c:198
__assert(ffffffff8282adcd,ffffffff828779fd,2f7,ffffffff8277625c) at __assert+0x29 sys/kern/subr_prf.c:157
arptfree(fffffd806bc3d638) at arptfree+0x132 sys/netinet/if_ether.c:759
arptimer(ffffffff82cffae0) at arptimer+0x88 sys/netinet/if_ether.c:135
timeout_run(ffffffff82cffae0) at timeout_run+0xd0 sys/kern/kern_timeout.c:665
softclock_thread_mp(ffff800021158aa0) at softclock_thread_mp+0xc4 sys/kern/kern_timeout.c:833
end trace frame: 0x0, count: -7