pool: free list modified: semapl

0 views
Skip to first unread message

syzbot

unread,
Aug 7, 2022, 6:54:31 PM8/7/22
to syzkaller-o...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: 68960257f35d Modern EFI systems tend to want larger EFI Sy..
git tree: openbsd
console output: https://syzkaller.appspot.com/x/log.txt?x=156c56e1080000
kernel config: https://syzkaller.appspot.com/x/.config?x=7058272de1526588
dashboard link: https://syzkaller.appspot.com/bug?extid=60ba811fe2e8a6b0f975

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

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

load: 1.88 cmd: load: 1.88 cmd: getty 27230 [ttyload: 1.88 cmd: panic: pool_do_get: semapl free list modified: page 0xfffffd8067ac0000; item addr 0xfffffd8067ac0690; offset 0x10=0xdeadbe00
Stopped at db_enter+0x18: addq $0x8,%rsp
TID PID UID PRFLAGS PFLAGS CPU COMMAND
337934 83612 0 0 0 0 syz-executor.1
* 62276 83612 0 0 0x4000000 1K syz-executor.1
db_enter() at db_enter+0x18 sys/arch/amd64/amd64/db_interface.c:437
panic(ffffffff82603660) at panic+0x177 sys/kern/subr_prf.c:202
pool_do_get(ffffffff82baa760,9,ffff800029620578) at pool_do_get+0x474 sys/kern/subr_pool.c:741
pool_get(ffffffff82baa760,9) at pool_get+0xe9 sys/kern/subr_pool.c:584
sys_semget(ffff8000ffff4d28,ffff800029620678,ffff8000296206c0) at sys_semget+0x259 sys/kern/sysv_sem.c:428
syscall(ffff800029620740) at syscall+0x435 mi_syscall sys/sys/syscall_mi.h:101 [inline]
syscall(ffff800029620740) at syscall+0x435 sys/arch/amd64/amd64/trap.c:585
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0xd08e1dff050, 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: pool_do_get: semapl free list modified: page 0xfffffd8067ac0000; item addr 0xfffffd8067ac0690; offset 0x10=0xdeadbe00
ddb{1}> trace
db_enter() at db_enter+0x18 sys/arch/amd64/amd64/db_interface.c:437
panic(ffffffff82603660) at panic+0x177 sys/kern/subr_prf.c:202
pool_do_get(ffffffff82baa760,9,ffff800029620578) at pool_do_get+0x474 sys/kern/subr_pool.c:741
pool_get(ffffffff82baa760,9) at pool_get+0xe9 sys/kern/subr_pool.c:584
sys_semget(ffff8000ffff4d28,ffff800029620678,ffff8000296206c0) at sys_semget+0x259 sys/kern/sysv_sem.c:428
syscall(ffff800029620740) at syscall+0x435 mi_syscall sys/sys/syscall_mi.h:101 [inline]
syscall(ffff800029620740) at syscall+0x435 sys/arch/amd64/amd64/trap.c:585
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0xd08e1dff050, count: -7
ddb{1}> show registers
rdi 0
rsi 0x1
rbp 0xffff8000296203c0
rbx 0xffff800020dd9b97
rdx 0
rcx 0
rax 0xffff8000ffff4d28
r8 0x101010101010101
r9 0x8080808080808080
r10 0xd89b57959d7db507
r11 0x3d166341f91092b2
r12 0xffff800020dd9998
r13 0
r14 0
r15 0x1
rip 0xffffffff813ddc48 db_enter+0x18
cs 0x8
rflags 0x246
rsp 0xffff8000296203b0
ss 0x10
db_enter+0x18: addq $0x8,%rsp
ddb{1}> show proc
PROC (syz-executor.1) pid=62276 stat=onproc
flags process=0 proc=4000000<THREAD>
pri=32, usrpri=77, nice=20
forw=0xffffffffffffffff, list=0xffff8000ffff5ce8,0xffff8000ffff47f8
process=0xffff8000ffff3a48 user=0xffff80002961b000, vmspace=0xfffffd80660dc468
estcpu=36, cpticks=1, pctcpu=0.0
user=0, sys=1, intr=0
ddb{1}> ps
PID TID PPID UID S FLAGS WAIT COMMAND
80958 231484 41860 0 2 0 syz-executor.4
42048 521600 93837 0 2 0 syz-executor.6
83612 337934 64803 0 7 0 syz-executor.1
*83612 62276 64803 0 7 0x4000000 syz-executor.1
83612 182905 64803 0 3 0x4000080 fsleep syz-executor.1
83612 392615 64803 0 2 0x4000000 syz-executor.1
51784 40937 31066 0 2 0 syz-executor.2
51784 425970 31066 0 3 0x4000080 netcon2 syz-executor.2
88363 335104 97842 0 2 0 syz-executor.7
88363 424728 97842 0 2 0x4000000 syz-executor.7
88363 246718 97842 0 3 0x4000080 fsleep syz-executor.7
66491 73883 65792 0 2 0 syz-executor.0
66491 436658 65792 0 3 0x4000080 semwait syz-executor.0
98625 454581 0 0 3 0x14200 bored sosplice
97842 133040 91207 0 3 0x82 nanoslp syz-executor.7
74990 138530 91207 0 2 0x2 syz-executor.5
93837 149357 91207 0 3 0x82 nanoslp syz-executor.6
41860 524221 91207 0 3 0x82 nanoslp syz-executor.4
90242 96558 91207 0 2 0x2 syz-executor.3
31066 300539 91207 0 3 0x82 nanoslp syz-executor.2
64803 478511 91207 0 3 0x82 nanoslp syz-executor.1
65792 336183 91207 0 3 0x82 nanoslp syz-executor.0
91207 24006 55797 0 3 0x82 wait syz-fuzzer
91207 472805 55797 0 3 0x4000082 nanoslp syz-fuzzer
91207 213258 55797 0 3 0x4000082 thrsleep syz-fuzzer
91207 361838 55797 0 3 0x4000082 wait syz-fuzzer
91207 63316 55797 0 3 0x4000082 thrsleep syz-fuzzer
91207 499737 55797 0 3 0x4000082 wait syz-fuzzer
91207 104499 55797 0 3 0x4000082 wait syz-fuzzer
91207 489065 55797 0 3 0x4000082 wait syz-fuzzer
91207 156442 55797 0 3 0x4000082 thrsleep syz-fuzzer
91207 45593 55797 0 3 0x4000082 wait syz-fuzzer
91207 168051 55797 0 3 0x4000082 nanoslp syz-fuzzer
91207 358391 55797 0 3 0x4000082 wait syz-fuzzer
91207 3998 55797 0 3 0x4000082 wait syz-fuzzer
91207 31087 55797 0 3 0x4000082 thrsleep syz-fuzzer
91207 44856 55797 0 3 0x4000082 kqread syz-fuzzer
55797 404584 5435 0 3 0x10008a sigsusp ksh
5435 126608 5645 0 3 0x9a kqread sshd
27230 105474 1 0 3 0x100083 ttyin getty
5645 484808 1 0 3 0x88 kqread sshd
27535 273301 58113 74 3 0x1100092 bpf pflogd
58113 479254 1 0 3 0x80 netio pflogd
51354 98049 40545 73 3 0x1100090 kqread syslogd
40545 481954 1 0 3 0x100082 netio syslogd
51669 250307 1 0 3 0x100080 kqread resolvd
88556 378548 33003 77 3 0x100092 kqread dhcpleased
50406 158829 33003 77 3 0x100092 kqread dhcpleased
33003 57388 1 0 3 0x80 kqread dhcpleased
1748 497189 0 0 3 0x14200 bored smr
40255 181742 0 0 2 0x14200 zerothread
75244 79150 0 0 3 0x14200 aiodoned aiodoned
91772 294230 0 0 3 0x14200 syncer update
25938 131465 0 0 3 0x14200 cleaner cleaner
49421 160896 0 0 3 0x14200 reaper reaper
67672 382548 0 0 3 0x14200 pgdaemon pagedaemon
47969 378776 0 0 3 0x14200 bored viomb
20713 425297 0 0 3 0x40014200 acpi0 acpi0
26742 480473 0 0 3 0x40014200 idle1
57366 264996 0 0 3 0x14200 bored softnet
19967 308262 0 0 3 0x14200 bored softnet
47490 211504 0 0 3 0x14200 bored softnet
29914 421962 0 0 3 0x14200 bored softnet
66552 262 0 0 3 0x14200 bored systqmp
72065 507978 0 0 3 0x14200 bored systq
11355 155840 0 0 3 0x40014200 bored softclock
38206 107016 0 0 3 0x40014200 idle0
1 65024 0 0 3 0x82 wait init
0 0 -1 0 3 0x10200 scheduler swapper
ddb{1}> show all locks
CPU 1:
exclusive mutex semapl r = 0 (0xffffffff82baa770)
#0 witness_lock+0x44d
#1 mtx_enter_try+0x100
#2 mtx_enter+0x4b sys/kern/kern_lock.c:266
#3 pool_get+0xbd sys/kern/subr_pool.c:581
#4 sys_semget+0x259 sys/kern/sysv_sem.c:428
#5 syscall+0x435 mi_syscall sys/sys/syscall_mi.h:101 [inline]
#5 syscall+0x435 sys/arch/amd64/amd64/trap.c:585
#6 Xsyscall+0x128
Process 83612 (syz-executor.1) thread 0xffff8000ffff4d28 (62276)
exclusive kernel_lock &kernel_lock r = 0 (0xffffffff82ab97c8)
#0 witness_lock+0x44d
#1 syscall+0x41d mi_syscall sys/sys/syscall_mi.h:100 [inline]
#1 syscall+0x41d sys/arch/amd64/amd64/trap.c:585
#2 Xsyscall+0x128
exclusive mutex semapl r = 0 (0xffffffff82baa770)
#0 witness_lock+0x44d
#1 mtx_enter_try+0x100
#2 mtx_enter+0x4b sys/kern/kern_lock.c:266
#3 pool_get+0xbd sys/kern/subr_pool.c:581
#4 sys_semget+0x259 sys/kern/sysv_sem.c:428
#5 syscall+0x435 mi_syscall sys/sys/syscall_mi.h:101 [inline]
#5 syscall+0x435 sys/arch/amd64/amd64/trap.c:585
#6 Xsyscall+0x128
ddb{1}> show malloc
Type InUse MemUse HighUse Limit Requests Type Lim
devbuf 10318 6545K 6676K 78643K 11767 0
pcb 13 9K 10K 78643K 66 0
rtable 234 6K 6K 78643K 353 0
ifaddr 87 17K 17K 78643K 100 0
counters 56 35K 35K 78643K 60 0
ioctlops 0 0K 4K 78643K 1490 0
iov 0 0K 16K 78643K 37 0
mount 1 1K 1K 78643K 1 0
log 0 0K 0K 78643K 4 0
vnodes 1332 83K 83K 78643K 1433 0
UFS quota 1 32K 32K 78643K 1 0
UFS mount 5 36K 36K 78643K 5 0
shm 2 1K 5K 78643K 5 0
VM map 2 1K 1K 78643K 2 0
sem 13 1K 1K 78643K 63 0
dirhash 12 2K 2K 78643K 12 0
ACPI 1697 195K 286K 78643K 12548 0
file desc 16 57K 93K 78643K 358 0
proc 69 91K 115K 78643K 517 0
subproc 104 6K 6K 78643K 104 0
NFS srvsock 1 0K 0K 78643K 1 0
NFS daemon 1 16K 16K 78643K 1 0
in_multi 99 6K 6K 78643K 99 0
ether_multi 1 0K 0K 78643K 1 0
ISOFS mount 1 32K 32K 78643K 1 0
MSDOSFS mount 1 16K 16K 78643K 1 0
ttys 43 201K 201K 78643K 43 0
exec 0 0K 2K 78643K 710 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 62K 78643K 8 0
UVM amap 243 80K 81K 78643K 3753 0
UVM aobj 8 4K 6K 78643K 11 0
memdesc 1 4K 4K 78643K 1 0
crypto data 1 1K 1K 78643K 1 0
ip6_options 0 0K 0K 78643K 38 0
NDP 12 0K 2K 78643K 30 0
temp 97 4714K 5738K 78643K 4400 0
kqueue 12 18K 22K 78643K 42 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 36 0 33 1 0 1 1 0 8 0
rtentry 112 111 0 1 4 0 4 4 0 8 0
unpcb 144 53 0 38 1 0 1 1 0 8 0
syncache 296 7 0 7 2 1 1 1 0 8 1
tcpqe 32 174 0 174 2 1 1 1 0 8 1
tcpcb 736 157 0 140 4 0 4 4 0 8 2
arp 120 18 0 0 1 0 1 1 0 8 0
inpcb 320 344 0 331 7 0 7 7 0 8 5
nd6 48 24 0 0 1 0 1 1 0 8 0
pkpcb 40 3 0 3 1 1 0 1 0 8 0
kcovpl 48 8 0 0 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 27 0 3 1 0 1 1 0 8 0
pfstkey 120 27 0 3 1 0 1 1 0 8 0
pfstate 336 27 0 3 3 0 3 3 0 8 0
pfrule 1360 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 452 0 0 29 0 29 29 0 8 0
art_table 32 453 0 0 4 0 4 4 0 8 0
art_node 16 110 0 10 1 0 1 1 0 8 0
semupl 112 1 0 1 1 0 1 1 0 8 1
semapl 112 54 0 44 1 0 1 1 0 8 0
semapl: pool(0xffffffff82baa760:semapl): page inconsistency: page 0xfffffd8067ac0000; item ordinal 0; addr 0xb982897bac5da83e
shmpl 112 8 0 3 1 0 1 1 0 8 0
dirhash 1024 17 0 0 3 0 3 3 0 8 0
dino2pl 256 1756 0 323 91 0 91 91 0 8 0
ffsino 272 1756 0 323 97 0 97 97 0 8 0
nchpl 144 2340 0 660 63 0 63 63 0 8 0
uvmvnodes 80 2008 0 0 41 0 41 41 0 8 0
vnodes 216 2008 0 0 112 0 112 112 0 8 0
namei 1024 8373 0 8373 3 2 1 2 0 8 1
percpumem 16 42 0 2 1 0 1 1 0 8 0
kstatmem 264 28 0 4 2 0 2 2 0 8 0
scsiplug 72 1 0 1 1 0 1 1 0 8 1
scxspl 216 7060 0 7060 9 5 4 8 0 8 4
plimitpl 152 68 0 53 1 0 1 1 0 8 0
sigapl 424 671 0 624 8 1 7 7 0 8 0
futexpl 64 2175 0 2173 1 0 1 1 0 8 0
knotepl 120 116 0 0 4 0 4 4 0 8 0
kqueuepl 216 109 0 101 5 0 5 5 0 8 4
pipepl 320 215 0 187 9 1 8 8 0 8 5
fdescpl 496 653 0 624 6 2 4 5 0 8 0
filepl 152 3396 0 3149 17 0 17 17 0 8 7
lockfpl 104 78 0 76 1 0 1 1 0 8 0
lockfspl 48 21 0 19 1 0 1 1 0 8 0
sessionpl 144 24 0 7 1 0 1 1 0 8 0
pgrppl 48 24 0 7 1 0 1 1 0 8 0
ucredpl 104 170 0 158 1 0 1 1 0 8 0
zombiepl 144 624 0 624 1 0 1 1 0 8 1
processpl 1064 671 0 624 4 0 4 4 0 8 0
procpl 672 1130 0 1062 9 2 7 7 0 8 0
sockpl 488 436 0 405 13 1 12 13 0 8 7
mcl64k 65536 4 0 0 1 0 1 1 0 8 0
mcl16k 16384 9 0 0 2 0 2 2 0 8 0
mcl12k 12288 3 0 0 1 0 1 1 0 8 0
mcl9k 9216 1 0 0 1 0 1 1 0 8 0
mcl8k 8192 5 0 0 1 0 1 1 0 8 0
mcl4k 4096 5 0 0 1 0 1 1 0 8 0
mcl2k2 2112 1 0 0 1 0 1 1 0 8 0
mcl2k 2048 417 0 0 52 0 52 52 0 8 0
mtagpl 96 147 0 0 4 0 4 4 0 8 0
mbufpl 256 446 0 0 28 0 28 28 0 8 0
bufpl 288 3852 0 131 266 0 266 266 0 8 0
anonpl 24 105501 0 89390 103 2 101 101 0 186 0
amapchunkpl 152 9164 0 8455 33 2 31 31 0 158 0
amappl16 200 1147 0 670 26 0 26 26 0 8 0
amappl15 192 142 0 131 1 0 1 1 0 8 0
amappl14 184 22 0 18 1 0 1 1 0 8 0
amappl13 176 141 0 136 1 0 1 1 0 8 0
amappl12 168 23 0 13 1 0 1 1 0 8 0
amappl11 160 84 0 66 1 0 1 1 0 8 0
amappl10 152 17 0 15 1 0 1 1 0 8 0
amappl9 144 627 0 617 1 0 1 1 0 8 0
amappl8 136 677 0 614 3 0 3 3 0 8 0
amappl7 128 159 0 138 1 0 1 1 0 8 0
amappl6 120 314 0 299 2 1 1 2 0 8 0
amappl5 112 276 0 261 1 0 1 1 0 8 0
amappl4 104 852 0 824 3 2 1 2 0 8 0
amappl3 96 1367 0 1315 3 1 2 2 0 8 0
amappl2 88 496 0 455 3 2 1 2 0 8 0
amappl1 80 17813 0 17177 21 5 16 20 0 8 1
amappl 88 3282 0 3116 6 1 5 5 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 10 0 3 1 0 1 1 0 8 0
uaddrrnd 24 653 0 624 1 0 1 1 0 8 0
uaddrbest 32 2 0 0 1 0 1 1 0 8 0
uaddr 24 653 0 624 1 0 1 1 0 8 0
vmmpekpl 168 10001 0 9944 3 0 3 3 0 8 0
vmmpepl 168 65645 0 63187 152 8 144 151 0 357 28
vmsppl 368 652 0 624 5 2 3 4 0 8 0
rwobjpl 56 19085 0 15574 52 1 51 51 0 8 0
pdppl 4096 1313 0 1248 113 44 69 83 0 8 4
pvpl 32 322094 0 301764 244 17 227 243 0 265 55
pmappl 248 652 0 624 3 0 3 3 0 8 0
extentpl 40 56 0 38 1 0 1 1 0 8 0
phpool 112 705 0 51 19 0 19 19 0 8 0
ddb{1}> machine ddbcpu 0
Stopped at x86_ipi_db+0x1a: addq $0x8,%rsp
x86_ipi_db(ffffffff8293eff0) at x86_ipi_db+0x1a 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+0x23
__mp_lock(ffffffff82ab95c0) at __mp_lock+0x122 __mp_lock_spin sys/kern/kern_lock.c:116 [inline]
__mp_lock(ffffffff82ab95c0) at __mp_lock+0x122 sys/kern/kern_lock.c:147
softintr_dispatch(0) at softintr_dispatch+0x4e sys/arch/amd64/amd64/softintr.c:88
Xsoftclock() at Xsoftclock+0x1f
end of kernel
end trace frame: 0x7f7ffffd1070, count: 9
ddb{0}> trace
x86_ipi_db(ffffffff8293eff0) at x86_ipi_db+0x1a 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+0x23
__mp_lock(ffffffff82ab95c0) at __mp_lock+0x122 __mp_lock_spin sys/kern/kern_lock.c:116 [inline]
__mp_lock(ffffffff82ab95c0) at __mp_lock+0x122 sys/kern/kern_lock.c:147
softintr_dispatch(0) at softintr_dispatch+0x4e sys/arch/amd64/amd64/softintr.c:88
Xsoftclock() at Xsoftclock+0x1f
end of kernel
end trace frame: 0x7f7ffffd1070, count: -6
ddb{0}> machine ddbcpu 1
Stopped at db_enter+0x18: addq $0x8,%rsp
db_enter() at db_enter+0x18 sys/arch/amd64/amd64/db_interface.c:437
panic(ffffffff82603660) at panic+0x177 sys/kern/subr_prf.c:202
pool_do_get(ffffffff82baa760,9,ffff800029620578) at pool_do_get+0x474 sys/kern/subr_pool.c:741
pool_get(ffffffff82baa760,9) at pool_get+0xe9 sys/kern/subr_pool.c:584
sys_semget(ffff8000ffff4d28,ffff800029620678,ffff8000296206c0) at sys_semget+0x259 sys/kern/sysv_sem.c:428
syscall(ffff800029620740) at syscall+0x435 mi_syscall sys/sys/syscall_mi.h:101 [inline]
syscall(ffff800029620740) at syscall+0x435 sys/arch/amd64/amd64/trap.c:585
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0xd08e1dff050, count: 8
ddb{1}> trace
db_enter() at db_enter+0x18 sys/arch/amd64/amd64/db_interface.c:437
panic(ffffffff82603660) at panic+0x177 sys/kern/subr_prf.c:202
pool_do_get(ffffffff82baa760,9,ffff800029620578) at pool_do_get+0x474 sys/kern/subr_pool.c:741
pool_get(ffffffff82baa760,9) at pool_get+0xe9 sys/kern/subr_pool.c:584
sys_semget(ffff8000ffff4d28,ffff800029620678,ffff8000296206c0) at sys_semget+0x259 sys/kern/sysv_sem.c:428
syscall(ffff800029620740) at syscall+0x435 mi_syscall sys/sys/syscall_mi.h:101 [inline]
syscall(ffff800029620740) at syscall+0x435 sys/arch/amd64/amd64/trap.c:585
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0xd08e1dff050, count: -7


---
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.

syzbot

unread,
Aug 7, 2022, 7:15:22 PM8/7/22
to syzkaller-o...@googlegroups.com
syzbot has found a reproducer for the following issue on:

HEAD commit: 68960257f35d Modern EFI systems tend to want larger EFI Sy..
git tree: openbsd
console output: https://syzkaller.appspot.com/x/log.txt?x=15138ae1080000
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=175f4ff2080000

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

panic: pool_do_get: semapl free list modified: page 0xfffffd806c3f4000; item addr 0xfffffd806c3f4e70; offset 0x10=0xdeadbe00
Stopped at db_enter+0x18: addq $0x8,%rsp
TID PID UID PRFLAGS PFLAGS CPU COMMAND
60769 38124 0 0 0 1 syz-executor.0
*360156 38124 0 0 0x4000000 0 syz-executor.0
db_enter() at db_enter+0x18 sys/arch/amd64/amd64/db_interface.c:437
panic(ffffffff82603660) at panic+0x177 sys/kern/subr_prf.c:202
pool_do_get(ffffffff82baa760,9,ffff800021334d98) at pool_do_get+0x474 sys/kern/subr_pool.c:741
pool_get(ffffffff82baa760,9) at pool_get+0xe9 sys/kern/subr_pool.c:584
sys_semget(ffff8000ffff5ce8,ffff800021334e98,ffff800021334ee0) at sys_semget+0x259 sys/kern/sysv_sem.c:428
syscall(ffff800021334f60) at syscall+0x435 mi_syscall sys/sys/syscall_mi.h:101 [inline]
syscall(ffff800021334f60) at syscall+0x435 sys/arch/amd64/amd64/trap.c:585
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0x28ad111e4a0, 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{0}>
ddb{0}> set $lines = 0
ddb{0}> set $maxwidth = 0
ddb{0}> show panic
*cpu0: pool_do_get: semapl free list modified: page 0xfffffd806c3f4000; item addr 0xfffffd806c3f4e70; offset 0x10=0xdeadbe00
ddb{0}> trace
db_enter() at db_enter+0x18 sys/arch/amd64/amd64/db_interface.c:437
panic(ffffffff82603660) at panic+0x177 sys/kern/subr_prf.c:202
pool_do_get(ffffffff82baa760,9,ffff800021334d98) at pool_do_get+0x474 sys/kern/subr_pool.c:741
pool_get(ffffffff82baa760,9) at pool_get+0xe9 sys/kern/subr_pool.c:584
sys_semget(ffff8000ffff5ce8,ffff800021334e98,ffff800021334ee0) at sys_semget+0x259 sys/kern/sysv_sem.c:428
syscall(ffff800021334f60) at syscall+0x435 mi_syscall sys/sys/syscall_mi.h:101 [inline]
syscall(ffff800021334f60) at syscall+0x435 sys/arch/amd64/amd64/trap.c:585
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0x28ad111e4a0, count: -7
ddb{0}> show registers
rdi 0
rsi 0x1
rbp 0xffff800021334be0
rbx 0xffffffff8293fb97 cpu_info_full_primary+0x2b97
rdx 0x3fd
rcx 0
rax 0x7d
r8 0x101010101010101
r9 0x8080808080808080
r10 0x9313154e0515d846
r11 0x703c185d3716c8a6
r12 0xffffffff8293f998 cpu_info_full_primary+0x2998
r13 0
r14 0
r15 0x1
rip 0xffffffff813ddc48 db_enter+0x18
cs 0x8
rflags 0x246
rsp 0xffff800021334bd0
ss 0x10
db_enter+0x18: addq $0x8,%rsp
ddb{0}> show proc
PROC (syz-executor.0) pid=360156 stat=onproc
flags process=0 proc=4000000<THREAD>
pri=51, usrpri=51, nice=20
forw=0xffffffffffffffff, list=0xffff8000ffff5268,0xffffffff82a89e48
process=0xffff8000ffff94d0 user=0xffff800021330000, vmspace=0xfffffd807effdb80
estcpu=2, cpticks=1, pctcpu=0.0
user=0, sys=1, intr=0
ddb{0}> ps
PID TID PPID UID S FLAGS WAIT COMMAND
38124 60769 56728 0 7 0 syz-executor.0
38124 52688 56728 0 3 0x4000080 fsleep syz-executor.0
38124 115793 56728 0 3 0x4000080 fsleep syz-executor.0
*38124 360156 56728 0 7 0x4000000 syz-executor.0
56728 185281 29331 0 2 0x482 syz-executor.0
29331 511711 64442 0 3 0x82 thrsleep syz-execprog
29331 82263 64442 0 2 0x4000482 syz-execprog
29331 168220 64442 0 3 0x4000082 wait syz-execprog
29331 337049 64442 0 3 0x4000082 thrsleep syz-execprog
29331 474002 64442 0 3 0x4000082 thrsleep syz-execprog
29331 457356 64442 0 3 0x4000082 kqread syz-execprog
29331 57617 64442 0 3 0x4000082 thrsleep syz-execprog
29331 505831 64442 0 3 0x4000082 thrsleep syz-execprog
64442 500785 77941 0 3 0x10008a sigsusp ksh
77941 313837 80763 0 3 0x9a kqread sshd
4420 134126 1 0 3 0x100083 ttyin getty
80763 487793 1 0 3 0x88 kqread sshd
14836 482752 42051 74 3 0x1100092 bpf pflogd
42051 232377 1 0 3 0x80 netio pflogd
75953 449363 28263 73 3 0x1100090 kqread syslogd
28263 498598 1 0 3 0x100082 netio syslogd
21329 188372 1 0 3 0x100080 kqread resolvd
62290 291731 39804 77 3 0x100092 kqread dhcpleased
93502 490010 39804 77 3 0x100092 kqread dhcpleased
39804 315732 1 0 3 0x80 kqread dhcpleased
63938 252119 0 0 3 0x14200 bored smr
3084 343655 0 0 2 0x14200 zerothread
27463 291160 0 0 3 0x14200 aiodoned aiodoned
64156 168982 0 0 3 0x14200 syncer update
64821 390795 0 0 3 0x14200 cleaner cleaner
28259 257467 0 0 3 0x14200 reaper reaper
21534 43684 0 0 3 0x14200 pgdaemon pagedaemon
61744 101659 0 0 3 0x14200 bored viomb
76738 375638 0 0 3 0x40014200 acpi0 acpi0
31066 413910 0 0 3 0x40014200 idle1
79734 193750 0 0 3 0x14200 bored softnet
67802 221673 0 0 3 0x14200 bored softnet
44810 138756 0 0 3 0x14200 bored softnet
56165 323651 0 0 3 0x14200 bored softnet
41406 51730 0 0 3 0x14200 bored systqmp
2327 177872 0 0 3 0x14200 bored systq
27186 36803 0 0 2 0x40014200 softclock
58881 499516 0 0 3 0x40014200 idle0
1 33260 0 0 3 0x82 wait init
0 0 -1 0 3 0x10200 scheduler swapper
ddb{0}> show all locks
CPU 0:
exclusive mutex semapl r = 0 (0xffffffff82baa770)
#0 witness_lock+0x44d
#1 mtx_enter_try+0x100
#2 mtx_enter+0x4b sys/kern/kern_lock.c:266
#3 pool_get+0xbd sys/kern/subr_pool.c:581
#4 sys_semget+0x259 sys/kern/sysv_sem.c:428
#5 syscall+0x435 mi_syscall sys/sys/syscall_mi.h:101 [inline]
#5 syscall+0x435 sys/arch/amd64/amd64/trap.c:585
#6 Xsyscall+0x128
Process 38124 (syz-executor.0) thread 0xffff8000ffff5ce8 (360156)
exclusive kernel_lock &kernel_lock r = 0 (0xffffffff82ab97c8)
#0 witness_lock+0x44d
#1 syscall+0x41d mi_syscall sys/sys/syscall_mi.h:100 [inline]
#1 syscall+0x41d sys/arch/amd64/amd64/trap.c:585
#2 Xsyscall+0x128
exclusive mutex semapl r = 0 (0xffffffff82baa770)
#0 witness_lock+0x44d
#1 mtx_enter_try+0x100
#2 mtx_enter+0x4b sys/kern/kern_lock.c:266
#3 pool_get+0xbd sys/kern/subr_pool.c:581
#4 sys_semget+0x259 sys/kern/sysv_sem.c:428
#5 syscall+0x435 mi_syscall sys/sys/syscall_mi.h:101 [inline]
#5 syscall+0x435 sys/arch/amd64/amd64/trap.c:585
#6 Xsyscall+0x128
ddb{0}> show malloc
Type InUse MemUse HighUse Limit Requests Type Lim
devbuf 10158 6457K 6457K 78643K 11248 0
pcb 13 8K 8K 78643K 13 0
rtable 80 2K 2K 78643K 145 0
ifaddr 38 9K 9K 78643K 41 0
counters 42 33K 33K 78643K 42 0
ioctlops 0 0K 4K 78643K 1480 0
mount 1 1K 1K 78643K 1 0
log 0 0K 0K 78643K 4 0
vnodes 1167 73K 73K 78643K 1180 0
UFS quota 1 32K 32K 78643K 1 0
UFS mount 5 36K 36K 78643K 5 0
shm 2 1K 1K 78643K 2 0
VM map 2 1K 1K 78643K 2 0
sem 2 0K 0K 78643K 9 0
dirhash 12 2K 2K 78643K 12 0
ACPI 1697 195K 286K 78643K 12548 0
file desc 4 9K 13K 78643K 24 0
proc 67 91K 103K 78643K 310 0
NFS srvsock 1 0K 0K 78643K 1 0
NFS daemon 1 16K 16K 78643K 1 0
in_multi 22 1K 1K 78643K 22 0
ether_multi 1 0K 0K 78643K 1 0
ISOFS mount 1 32K 32K 78643K 1 0
MSDOSFS mount 1 16K 16K 78643K 1 0
ttys 25 122K 122K 78643K 25 0
exec 0 0K 2K 78643K 500 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 62K 78643K 8 0
UVM amap 101 13K 13K 78643K 1819 0
UVM aobj 3 2K 2K 78643K 3 0
memdesc 1 4K 4K 78643K 1 0
crypto data 1 1K 1K 78643K 1 0
NDP 7 0K 0K 78643K 7 0
temp 28 4709K 4773K 78643K 2899 0
kqueue 12 18K 18K 78643K 25 0
SYN cache 2 16K 16K 78643K 2 0
ddb{0}> 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 23 0 20 1 0 1 1 0 8 0
rtentry 112 34 0 1 1 0 1 1 0 8 0
unpcb 144 35 0 20 1 0 1 1 0 8 0
syncache 296 5 0 5 2 1 1 1 0 8 1
tcpcb 736 8 0 5 1 0 1 1 0 8 0
arp 120 4 0 0 1 0 1 1 0 8 0
inpcb 320 36 0 30 1 0 1 1 0 8 0
nd6 48 3 0 0 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 11 0 2 1 0 1 1 0 8 0
pfstkey 120 11 0 2 1 0 1 1 0 8 0
pfstate 336 11 0 2 1 0 1 1 0 8 0
pfrule 1360 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 145 0 0 10 0 10 10 0 8 0
art_table 32 146 0 0 2 0 2 2 0 8 0
art_node 16 33 0 3 1 0 1 1 0 8 0
semapl 112 7 0 7 1 0 1 1 0 8 1
semapl: pool(0xffffffff82baa760:semapl): page inconsistency: page 0xfffffd806c3f4000; item ordinal 0; addr 0xb1ab9ce6bb5e841f
dirhash 1024 17 0 0 3 0 3 3 0 8 0
dino2pl 256 1453 0 51 88 0 88 88 0 8 0
ffsino 272 1453 0 51 94 0 94 94 0 8 0
nchpl 144 1695 0 63 61 0 61 61 0 8 0
uvmvnodes 80 1463 0 0 30 0 30 30 0 8 0
vnodes 216 1463 0 0 82 0 82 82 0 8 0
namei 1024 5175 0 5175 3 1 2 2 0 8 2
percpumem 16 33 0 0 1 0 1 1 0 8 0
kstatmem 264 10 0 0 1 0 1 1 0 8 0
scxspl 216 5371 0 5371 10 2 8 8 0 8 8
plimitpl 152 17 0 9 1 0 1 1 0 8 0
sigapl 424 363 0 329 6 1 5 5 0 8 1
futexpl 64 21 0 19 1 0 1 1 0 8 0
knotepl 120 70 0 0 3 0 3 3 0 8 0
kqueuepl 216 21 0 13 1 0 1 1 0 8 0
pipepl 320 110 0 103 2 1 1 1 0 8 0
fdescpl 496 346 0 329 4 0 4 4 0 8 1
filepl 152 1412 0 1342 4 0 4 4 0 8 1
lockfpl 104 6 0 4 1 0 1 1 0 8 0
lockfspl 48 4 0 2 1 0 1 1 0 8 0
sessionpl 144 19 0 9 1 0 1 1 0 8 0
pgrppl 48 19 0 9 1 0 1 1 0 8 0
ucredpl 104 69 0 57 1 0 1 1 0 8 0
zombiepl 144 329 0 329 2 1 1 1 0 8 1
processpl 1064 363 0 329 3 0 3 3 0 8 0
procpl 672 379 0 335 6 1 5 5 0 8 1
sockpl 488 94 0 70 5 1 4 4 0 8 0
mcl8k 8192 2 0 0 1 0 1 1 0 8 0
mcl4k 4096 4 0 0 1 0 1 1 0 8 0
mcl2k 2048 66 0 0 9 0 9 9 0 8 0
mtagpl 96 2 0 0 1 0 1 1 0 8 0
mbufpl 256 131 0 0 8 0 8 8 0 8 0
bufpl 288 3522 0 136 242 0 242 242 0 8 0
anonpl 24 45239 0 41886 44 4 40 40 0 186 18
amapchunkpl 152 3550 0 3295 17 2 15 15 0 158 5
amappl16 200 127 0 72 5 1 4 4 0 8 0
amappl15 192 90 0 83 1 0 1 1 0 8 0
amappl14 184 23 0 17 1 0 1 1 0 8 0
amappl13 176 40 0 39 2 1 1 1 0 8 0
amappl12 168 2 0 2 1 1 0 1 0 8 0
amappl11 160 81 0 63 1 0 1 1 0 8 0
amappl10 152 20 0 17 1 0 1 1 0 8 0
amappl9 144 451 0 448 1 0 1 1 0 8 0
amappl8 136 433 0 419 2 1 1 1 0 8 0
amappl7 128 98 0 85 1 0 1 1 0 8 0
amappl6 120 143 0 134 2 0 2 2 0 8 1
amappl5 112 98 0 86 1 0 1 1 0 8 0
amappl4 104 727 0 699 2 0 2 2 0 8 1
amappl3 96 513 0 480 2 0 2 2 0 8 1
amappl2 88 408 0 374 2 0 2 2 0 8 0
amappl1 80 10960 0 10474 22 2 20 20 0 8 10
amappl 88 1471 0 1403 4 1 3 3 0 92 1
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 2 0 0 1 0 1 1 0 8 0
uaddrrnd 24 346 0 329 1 0 1 1 0 8 0
uaddrbest 32 2 0 0 1 0 1 1 0 8 0
uaddr 24 346 0 329 1 0 1 1 0 8 0
vmmpekpl 168 8156 0 8133 2 0 2 2 0 8 0
vmmpepl 168 33216 0 32022 97 5 92 92 0 357 40
vmsppl 368 345 0 329 3 0 3 3 0 8 1
rwobjpl 56 11362 0 9144 42 1 41 41 0 8 6
pdppl 4096 699 0 658 85 36 49 57 0 8 8
pvpl 32 206700 0 200284 247 6 241 241 0 265 188
pmappl 248 345 0 329 2 0 2 2 0 8 0
extentpl 40 56 0 38 1 0 1 1 0 8 0
phpool 112 555 0 40 15 0 15 15 0 8 0
ddb{0}> machine ddbcpu 0
Invalid cpu 0
ddb{0}> trace
db_enter() at db_enter+0x18 sys/arch/amd64/amd64/db_interface.c:437
panic(ffffffff82603660) at panic+0x177 sys/kern/subr_prf.c:202
pool_do_get(ffffffff82baa760,9,ffff800021334d98) at pool_do_get+0x474 sys/kern/subr_pool.c:741
pool_get(ffffffff82baa760,9) at pool_get+0xe9 sys/kern/subr_pool.c:584
sys_semget(ffff8000ffff5ce8,ffff800021334e98,ffff800021334ee0) at sys_semget+0x259 sys/kern/sysv_sem.c:428
syscall(ffff800021334f60) at syscall+0x435 mi_syscall sys/sys/syscall_mi.h:101 [inline]
syscall(ffff800021334f60) at syscall+0x435 sys/arch/amd64/amd64/trap.c:585
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0x28ad111e4a0, count: -7
Reply all
Reply to author
Forward
0 new messages