protection_fault: witness_checkorder (3)

0 views
Skip to first unread message

syzbot

unread,
Mar 4, 2024, 9:38:30 AMMar 4
to syzkaller-o...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: e36fb1b3c0bc fix leak of CanonicalizePermittedCNAMEs on er..
git tree: openbsd
console output: https://syzkaller.appspot.com/x/log.txt?x=113db56a180000
kernel config: https://syzkaller.appspot.com/x/.config?x=7058272de1526588
dashboard link: https://syzkaller.appspot.com/bug?extid=ee38e3c4c94025416b86

Unfortunately, I don't have any reproducer for this issue yet.

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/ffe648e5d310/disk-e36fb1b3.raw.xz
bsd.gdb: https://storage.googleapis.com/syzbot-assets/2e155573d8ef/bsd-e36fb1b3.gdb.xz
kernel image: https://storage.googleapis.com/syzbot-assets/73ca9236d7cf/kernel-e36fb1b3.xz

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: syzbot+ee38e3...@syzkaller.appspotmail.com

kernel: protection fault trap, code=0
Stopped at witness_checkorder+0x1ec: movl 0x8(%r14),%ebx
ddb{0}>
ddb{0}> set $lines = 0
ddb{0}> set $maxwidth = 0
ddb{0}> show panic
the kernel did not panic
ddb{0}> trace
witness_checkorder(ffff800000e4b4b0,9,0) at witness_checkorder+0x1ec sys/kern/subr_witness.c:794
rw_enter(ffff800000e4b4a0,1) at rw_enter+0xd5 sys/kern/kern_rwlock.c:249
rwsleep(ffff800000e4b640,ffff800000e4b4a0,118,ffffffff8292b56b,0) at rwsleep+0xd6 sys/kern/kern_synch.c:303
sosend(ffff800000e4b498,0,ffff80002a17e7b8,0,0,0) at sosend+0x76b sys/kern/uipc_socket.c:624
fifo_write(ffff80002a17e700) at fifo_write+0x80 sys/miscfs/fifofs/fifo_vnops.c:281
VOP_WRITE(fffffd80668d8798,ffff80002a17e7b8,3,fffffd807f7d7618) at VOP_WRITE+0xc3 sys/kern/vfs_vops.c:245
ktrwriteraw(ffff80002a1872c0,fffffd80668d8798,fffffd807f7d7618,ffff80002a17e888,ffff80002a17e860) at ktrwriteraw+0x16c sys/kern/kern_ktrace.c:682
ktrgenio(ffff80002a1872c0,7,0,ffff800000e1d940,ce8) at ktrgenio+0x272 ktrwrite2 sys/kern/kern_ktrace.c:644 [inline]
ktrgenio(ffff80002a1872c0,7,0,ffff800000e1d940,ce8) at ktrgenio+0x272 sys/kern/kern_ktrace.c:258
dofilereadv(ffff80002a1872c0,7,ffff80002a17e9f8,0,ffff80002a17eab0) at dofilereadv+0x2e7 sys/kern/sys_generic.c:263
sys_read(ffff80002a1872c0,ffff80002a17eb60,ffff80002a17eab0) at sys_read+0x87 sys/kern/sys_generic.c:167
syscall(ffff80002a17eb60) at syscall+0x5ae mi_syscall sys/sys/syscall_mi.h:183 [inline]
syscall(ffff80002a17eb60) at syscall+0x5ae sys/arch/amd64/amd64/trap.c:577
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0x71c5c64d5a30, count: -12
ddb{0}> show registers
rdi 0
rsi 0x20000 acpi_pdirpa+0xbe71
rbp 0xffff80002a17e480
rbx 0xe
rdx 0
rcx 0xffff80002a1872c0
rax 0xffffffff82cbaff0 cpu_info_full_primary+0x1ff0
r8 0x90
r9 0
r10 0x8760c8f29d8094d0
r11 0x2d4578ca6875555d
r12 0
r13 0xffff800000e4b4b0
r14 0x260980bb20000
r15 0xffff80002a1872c0
rip 0xffffffff82723b1c witness_checkorder+0x1ec
cs 0x8
rflags 0x10246 __ALIGN_SIZE+0xf246
rsp 0xffff80002a17e3d0
ss 0x10
witness_checkorder+0x1ec: movl 0x8(%r14),%ebx
ddb{0}> show proc
PROC (sshd) tid=431853 pid=85137 tcnt=1 stat=onproc
flags process=12<EXEC,SUGID> proc=1<INKTR>
runpri=24, usrpri=50, slppri=24, nice=20
wchan=0x0, wmesg=, ps_single=0x0
forw=0xffffffffffffffff, list=0xffff80002a188aa8,0xffff80002a187578
process=0xffff8000ffff4d60 user=0xffff80002a179000, vmspace=0xfffffd806d562390
estcpu=0, cpticks=0, pctcpu=0.32, user=0, sys=0, intr=0
ddb{0}> ps
PID TID PPID UID S FLAGS WAIT COMMAND
83620 517126 15158 0 2 0x83 syz-executor.5
53956 378229 15158 0 2 0x83 syz-executor.2
14557 92017 15158 0 2 0x83 syz-executor.1
57917 221284 0 0 3 0x14280 nfsidl nfsio
40230 507143 0 0 3 0x14280 nfsidl nfsio
75534 79440 0 0 3 0x14280 nfsidl nfsio
62954 373483 0 0 3 0x14280 nfsidl nfsio
95212 493997 0 0 3 0x14280 nfsidl nfsio
28543 223225 15158 0 2 0x83 syz-executor.6
73987 381880 15158 0 2 0x83 syz-executor.4
80627 171500 0 0 3 0x14200 bored sosplice
33076 289198 15158 0 3 0x82 nanoslp syz-executor.7
292 289035 15158 0 2 0x83 syz-executor.3
58203 329089 15158 0 3 0x82 piperd syz-executor.0
15158 137049 42240 0 3 0x2000082 wait syz-fuzzer
15158 212161 42240 0 3 0x6000082 nanoslp syz-fuzzer
15158 43388 42240 0 3 0x6000082 wait syz-fuzzer
15158 382461 42240 0 3 0x6000082 wait syz-fuzzer
15158 350206 42240 0 3 0x6000082 wait syz-fuzzer
15158 10938 42240 0 3 0x6000082 wait syz-fuzzer
15158 225150 42240 0 2 0x6000083 syz-fuzzer
15158 135304 42240 0 3 0x6000082 thrsleep syz-fuzzer
15158 134440 42240 0 3 0x6000082 thrsleep syz-fuzzer
15158 506605 42240 0 2 0x6000083 syz-fuzzer
15158 450542 42240 0 3 0x6000082 thrsleep syz-fuzzer
15158 41215 42240 0 3 0x6000082 wait syz-fuzzer
15158 239154 42240 0 2 0x6000083 syz-fuzzer
15158 42659 42240 0 2 0x6000083 syz-fuzzer
15158 246754 42240 0 3 0x6000082 wait syz-fuzzer
15158 469603 42240 0 3 0x6000082 wait syz-fuzzer
42240 301295 85137 0 3 0x10008a sigsusp ksh
*85137 431853 72504 0 7 0x13 sshd
47073 251773 1 0 3 0x100083 ttyin getty
72504 504869 1 0 3 0x88 kqread sshd
5275 5742 28187 74 3 0x1100092 bpf pflogd
28187 315890 1 0 3 0x80 netio pflogd
93389 523203 37683 73 2 0x1100091 syslogd
37683 62832 1 0 3 0x100082 netio syslogd
58299 468728 1 0 3 0x100080 kqread resolvd
92216 53075 33970 77 3 0x100092 kqread dhcpleased
39651 327406 33970 77 3 0x100092 kqread dhcpleased
33970 230494 1 0 3 0x80 kqread dhcpleased
66474 276521 0 0 3 0x14200 bored smr
54388 11726 0 0 2 0x14200 zerothread
82181 376236 0 0 3 0x14200 aiodoned aiodoned
33228 30734 0 0 3 0x14200 syncer update
31154 131294 0 0 3 0x14200 cleaner cleaner
55222 42910 0 0 7 0x14200 reaper
45475 260327 0 0 3 0x14200 pgdaemon pagedaemon
25401 120574 0 0 3 0x14200 bored viomb
46419 294069 0 0 3 0x40014200 acpi0 acpi0
80951 322845 0 0 3 0x40014200 idle1
20473 241233 0 0 3 0x14200 bored softnet3
45630 401353 0 0 3 0x14200 bored softnet2
96554 228096 0 0 3 0x14200 bored softnet1
33884 409154 0 0 3 0x14200 bored softnet0
24905 435176 0 0 3 0x14200 bored systqmp
80842 200788 0 0 3 0x14200 bored systq
69920 387378 0 0 3 0x14200 tmoslp softclockmp
50403 442716 0 0 3 0x40014200 tmoslp softclock
38110 443286 0 0 3 0x40014200 idle0
1 262586 0 0 3 0x82 wait init
0 0 -1 0 3 0x10200 scheduler swapper
ddb{0}> show all locks
Process 85137 (sshd) thread 0xffff80002a1872c0 (431853)
exclusive kernel_lock &kernel_lock r = 0 (0xffffffff82ec16a8)
#0 witness_lock+0x447
#1 __mp_acquire_count+0x48 sys/kern/kern_lock.c:227
#2 mi_switch+0x46f sys/kern/sched_bsd.c:470
#3 sleep_finish+0x19b sys/kern/kern_synch.c:414
#4 rwsleep+0xab sys/kern/kern_synch.c:300
#5 sosend+0x76b sys/kern/uipc_socket.c:624
#6 fifo_write+0x80 sys/miscfs/fifofs/fifo_vnops.c:281
#7 VOP_WRITE+0xc3 sys/kern/vfs_vops.c:245
#8 ktrwriteraw+0x16c sys/kern/kern_ktrace.c:682
#9 ktrgenio+0x272 ktrwrite2 sys/kern/kern_ktrace.c:644 [inline]
#9 ktrgenio+0x272 sys/kern/kern_ktrace.c:258
#10 dofilereadv+0x2e7 sys/kern/sys_generic.c:263
#11 sys_read+0x87 sys/kern/sys_generic.c:167
#12 syscall+0x5ae mi_syscall sys/sys/syscall_mi.h:183 [inline]
#12 syscall+0x5ae sys/arch/amd64/amd64/trap.c:577
#13 Xsyscall+0x128
ddb{0}> show malloc
Type InUse MemUse HighUse Limit Requests Type Lim
devbuf 10192 6474K 6943K 166960K 19865 0
pcb 15 15K 17K 166960K 256 0
rtable 178 13K 15K 166960K 777 0
pf 33 9K 10K 166960K 145 0
ifaddr 36 13K 16K 166960K 118 0
ifgroup 58 2K 2K 166960K 213 0
sysctl 2 0K 0K 166960K 2 0
counters 64 36K 36K 166960K 150 0
ioctlops 0 0K 4K 166960K 1594 0
iov 0 0K 48K 166960K 438 0
mount 1 1K 1K 166960K 1 0
log 0 0K 0K 166960K 4 0
vnodes 1348 84K 85K 166960K 3482 0
UFS quota 1 32K 32K 166960K 1 0
UFS mount 5 36K 36K 166960K 5 0
shm 2 1K 5K 166960K 45 0
VM map 2 1K 1K 166960K 2 0
sem 12 0K 1K 166960K 379 0
dirhash 12 2K 2K 166960K 24 0
ACPI 1697 195K 286K 166960K 12548 0
file desc 10 33K 89K 166960K 4049 0
sigio 0 0K 0K 166960K 156 0
proc 70 91K 128K 166960K 972 0
subproc 104 6K 6K 166960K 214 0
NFS srvsock 1 0K 0K 166960K 1 0
NFS daemon 1 16K 16K 166960K 1 0
ip_moptions 0 0K 0K 166960K 332 0
in_multi 66 4K 7K 166960K 218 0
ether_multi 1 0K 0K 166960K 4 0
ISOFS mount 1 32K 32K 166960K 1 0
MSDOSFS mount 1 16K 16K 166960K 1 0
ttys 73 334K 334K 166960K 73 0
exec 0 0K 1K 166960K 979 0
tdb 3 0K 0K 166960K 3 0
VM swap 8 62K 64K 166960K 10 0
UVM amap 353 315K 321K 166960K 42151 0
UVM aobj 131 4K 4K 166960K 139 0
memdesc 1 4K 4K 166960K 1 0
crypto data 1 1K 1K 166960K 1 0
ip6_options 0 0K 0K 166960K 152 0
NDP 12 0K 2K 166960K 87 0
temp 99 6781K 6900K 166960K 36610 0
kqueue 12 18K 28K 166960K 315 0
SYN cache 2 16K 16K 166960K 2 0
ddb{0}> show all pools
Name Size Requests Fail Releases Pgreq Pgrel Npage Hiwat Minpg Maxpg Idle
plcache 128 24 0 0 1 0 1 1 0 8 0
rtpcb 120 164 0 161 1 0 1 1 0 8 0
rtentry 112 231 0 152 4 0 4 4 0 8 0
unpcb 144 2792 0 2777 36 34 2 10 0 8 1
syncache 336 28 0 28 6 6 0 1 0 8 0
tcpqe 32 527 0 527 7 7 0 1 0 8 0
tcpcb 808 864 0 853 24 20 4 13 0 8 0
arp 120 44 0 30 1 0 1 1 0 8 0
inpcb 392 2550 0 2535 51 47 4 13 0 8 0
nd6 136 48 0 33 1 0 1 1 0 8 0
pkpcb 40 3 0 3 1 1 0 1 0 8 0
kcovpl 48 16 0 8 1 0 1 1 0 8 0
ppxss 1168 16 0 16 3 3 0 1 0 8 0
pffrag 232 10 0 9 1 0 1 1 0 482 0
pffrnode 88 10 0 9 1 0 1 1 0 8 0
pffrent 40 133 0 132 1 0 1 1 0 8 0
pfosfp 40 1428 0 1005 5 0 5 5 0 8 0
pfosfpen 112 1428 0 714 21 0 21 21 0 8 0
pfstitem 24 127 0 110 1 0 1 1 0 8 0
pfstkey 128 127 0 110 2 0 2 2 0 8 0
pfstate 376 127 0 110 5 3 2 4 0 8 0
pfrule 1344 21 0 16 2 1 1 2 0 8 0
art_heap8 4096 1 0 0 1 0 1 1 0 8 0
art_heap4 256 862 0 515 32 6 26 30 0 8 0
art_table 32 863 0 515 4 0 4 4 0 8 0
art_node 16 220 0 148 1 0 1 1 0 8 0
semupl 112 2 0 2 1 1 0 1 0 8 0
semapl 112 377 0 367 1 0 1 1 0 8 0
shmpl 112 136 0 8 4 0 4 4 0 8 0
dirhash 1024 25 0 8 3 0 3 3 0 8 0
dino2pl 256 6655 0 5192 92 0 92 92 0 8 0
ffsino 272 6655 0 5192 98 0 98 98 0 8 0
nchpl 144 12259 0 10617 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 41228 0 41228 7 6 1 2 0 8 1
percpumem 16 89 0 43 1 0 1 1 0 8 0
vcpupl 2048 19 0 0 3 0 3 3 0 8 0
vmpool 696 22 0 3 2 0 2 2 0 8 0
kstatmem 264 110 0 86 2 0 2 2 0 8 0
scxspl 216 36411 0 36411 21 19 2 8 1 8 2
plimitpl 152 363 0 347 1 0 1 1 0 8 0
sigapl 424 4380 0 4332 9 2 7 8 0 8 0
futexpl 64 30016 0 30016 1 0 1 1 0 8 1
knotepl 120 610 0 0 19 0 19 19 0 8 0
kqueuepl 216 685 0 677 11 10 1 5 0 8 0
pipepl 320 611 0 583 16 13 3 8 0 8 0
fdescpl 496 4341 0 4318 6 2 4 5 0 8 0
filepl 152 22018 0 21779 54 42 12 20 0 8 2
lockfpl 104 813 0 811 2 1 1 2 0 8 0
lockfspl 48 296 0 294 1 0 1 1 0 8 0
sessionpl 144 32 0 15 1 0 1 1 0 8 0
pgrppl 48 77 0 60 1 0 1 1 0 8 0
ucredpl 104 3421 0 3408 1 0 1 1 0 8 0
zombiepl 144 4333 0 4332 2 1 1 1 0 8 0
processpl 1136 4380 0 4332 7 1 6 6 0 8 0
procpl 680 11443 0 11380 11 3 8 9 0 8 0
srpgc 96 14 0 14 6 6 0 1 0 8 0
sosppl 168 37 0 37 8 8 0 1 0 8 0
sockpl 584 5509 0 5477 67 62 5 21 0 8 0
mcl64k 65536 15 0 0 2 0 2 2 0 8 0
mcl16k 16384 18 0 0 3 0 3 3 0 8 1
mcl12k 12288 17 0 0 2 0 2 2 0 8 0
mcl9k 9216 6 0 0 1 0 1 1 0 8 0
mcl8k 8192 19 0 0 3 0 3 3 0 8 0
mcl4k 4096 17 0 0 3 0 3 3 0 8 0
mcl2k2 2112 6 0 0 1 0 1 1 0 8 0
mcl2k 2048 348 0 0 44 0 44 44 0 8 0
mtagpl 96 196 0 0 4 0 4 4 0 8 0
mbufpl 256 1087 0 0 61 0 61 61 0 8 0
bufpl 280 10437 0 4116 452 0 452 452 0 8 0
anonpl 24 513966 0 500148 111 18 93 94 0 186 0
amapchunkpl 152 133063 0 132315 50 11 39 43 0 158 0
amappl16 200 10906 0 10450 35 10 25 26 0 8 0
amappl15 192 27 0 27 1 1 0 1 0 8 0
amappl14 184 199 0 185 2 1 1 2 0 8 0
amappl13 176 8 0 8 2 2 0 1 0 8 0
amappl12 168 5142 0 5117 3 1 2 3 0 8 0
amappl11 160 60 0 46 1 0 1 1 0 8 0
amappl10 152 40 0 28 1 0 1 1 0 8 0
amappl9 144 224 0 223 1 0 1 1 0 8 0
amappl8 136 355 0 280 3 0 3 3 0 8 0
amappl7 128 212 0 186 2 0 2 2 0 8 0
amappl6 120 423 0 413 1 0 1 1 0 8 0
amappl5 112 193 0 182 1 0 1 1 0 8 0
amappl4 104 599 0 565 3 2 1 2 0 8 0
amappl3 96 26255 0 26193 3 0 3 3 0 8 0
amappl2 88 4932 0 4860 3 1 2 3 0 8 0
amappl1 80 24269 0 23733 24 11 13 23 0 8 0
amappl 88 41418 0 41209 7 0 7 7 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 138 0 8 3 0 3 3 0 8 0
uaddrrnd 24 4364 0 4322 1 0 1 1 0 8 0
uaddrbest 32 2 0 0 1 0 1 1 0 8 0
uaddr 24 4364 0 4322 1 0 1 1 0 8 0
vmmpekpl 168 34932 0 34854 4 0 4 4 0 8 0
vmmpepl 168 275163 0 273022 190 77 113 138 0 357 0
vmsppl 448 4363 0 4321 8 2 6 6 0 8 0
rwobjpl 56 76872 0 69281 112 3 109 110 0 8 0
pdppl 4096 8735 0 8661 298 216 82 89 0 8 8
pvpl 32 45648 0 0 369 0 369 369 0 265 0
pmappl 248 4363 0 4321 5 1 4 4 0 8 0
extentpl 40 56 0 38 1 0 1 1 0 8 0
phpool 112 772 0 326 14 0 14 14 0 8 0
ddb{0}> machine ddbcpu 0
Invalid cpu 0
ddb{0}> trace
witness_checkorder(ffff800000e4b4b0,9,0) at witness_checkorder+0x1ec sys/kern/subr_witness.c:794
rw_enter(ffff800000e4b4a0,1) at rw_enter+0xd5 sys/kern/kern_rwlock.c:249
rwsleep(ffff800000e4b640,ffff800000e4b4a0,118,ffffffff8292b56b,0) at rwsleep+0xd6 sys/kern/kern_synch.c:303
sosend(ffff800000e4b498,0,ffff80002a17e7b8,0,0,0) at sosend+0x76b sys/kern/uipc_socket.c:624
fifo_write(ffff80002a17e700) at fifo_write+0x80 sys/miscfs/fifofs/fifo_vnops.c:281
VOP_WRITE(fffffd80668d8798,ffff80002a17e7b8,3,fffffd807f7d7618) at VOP_WRITE+0xc3 sys/kern/vfs_vops.c:245
ktrwriteraw(ffff80002a1872c0,fffffd80668d8798,fffffd807f7d7618,ffff80002a17e888,ffff80002a17e860) at ktrwriteraw+0x16c sys/kern/kern_ktrace.c:682
ktrgenio(ffff80002a1872c0,7,0,ffff800000e1d940,ce8) at ktrgenio+0x272 ktrwrite2 sys/kern/kern_ktrace.c:644 [inline]
ktrgenio(ffff80002a1872c0,7,0,ffff800000e1d940,ce8) at ktrgenio+0x272 sys/kern/kern_ktrace.c:258
dofilereadv(ffff80002a1872c0,7,ffff80002a17e9f8,0,ffff80002a17eab0) at dofilereadv+0x2e7 sys/kern/sys_generic.c:263
sys_read(ffff80002a1872c0,ffff80002a17eb60,ffff80002a17eab0) at sys_read+0x87 sys/kern/sys_generic.c:167
syscall(ffff80002a17eb60) at syscall+0x5ae mi_syscall sys/sys/syscall_mi.h:183 [inline]
syscall(ffff80002a17eb60) at syscall+0x5ae sys/arch/amd64/amd64/trap.c:577
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0x71c5c64d5a30, count: -12
ddb{0}> machine ddbcpu 1
Stopped at x86_ipi_db+0x1e: addq $0x8,%rsp
ddb{1}> trace
x86_ipi_db(ffff800029cebff0) 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
__sanitizer_cov_trace_pc() at __sanitizer_cov_trace_pc
uvm_unmap_detach(ffff80002a1528e0,1) at uvm_unmap_detach+0x113 sys/uvm/uvm_map.c:1382
uvm_map_teardown(fffffd807f0031c0) at uvm_map_teardown+0x2f5 sys/uvm/uvm_map.c:2585
uvmspace_free(fffffd807f0031c0) at uvmspace_free+0xa6 sys/uvm/uvm_map.c:3497
reaper(ffff80002a145ff8) at reaper+0x19a sys/kern/kern_exit.c:463
end trace frame: 0x0, count: -8


---
This report is generated by a bot. It may contain errors.
See https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at syzk...@googlegroups.com.

syzbot will keep track of this issue. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.

If the report is already addressed, let syzbot know by replying with:
#syz fix: exact-commit-title

If you want to overwrite report's subsystems, reply with:
#syz set subsystems: new-subsystem
(See the list of subsystem names on the web dashboard)

If the report is a duplicate of another one, reply with:
#syz dup: exact-subject-of-another-report

If you want to undo deduplication, reply with:
#syz undup
Reply all
Reply to author
Forward
0 new messages