uvm_fault: pool_gc_pages (2)

0 views
Skip to first unread message

syzbot

unread,
Feb 15, 2024, 2:45:28 AMFeb 15
to syzkaller-o...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: 04fce66c3f2b Remove spurious GET_CURPROC in copyout() mist..
git tree: openbsd
console output: https://syzkaller.appspot.com/x/log.txt?x=101dd592180000
kernel config: https://syzkaller.appspot.com/x/.config?x=7058272de1526588
dashboard link: https://syzkaller.appspot.com/bug?extid=7202a0d96d31ccd6b9ba

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

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/69dcd1b873a6/disk-04fce66c.raw.xz
bsd.gdb: https://storage.googleapis.com/syzbot-assets/30ffe977eff7/bsd-04fce66c.gdb.xz
kernel image: https://storage.googleapis.com/syzbot-assets/bba2af948171/kernel-04fce66c.xz

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

uvm_fault(0xffffffff82e30d40, 0x0, 0, 2) -> e
kernel: page fault trap, code=2
Stopped at pool_gc_pages+0x1e1: movq %rax,0(%rcx)
TID PID UID PRFLAGS PFLAGS CPU COMMAND
*315992 73216 0 0x14000 0x200 0 systqmp
pool_gc_pages(0) at pool_gc_pages+0x1e1 pool_p_remove sys/kern/subr_pool.c:1049 [inline]
pool_gc_pages(0) at pool_gc_pages+0x1e1 sys/kern/subr_pool.c:1576
taskq_thread(ffffffff82c4a830) at taskq_thread+0xe5 sys/kern/kern_task.c:450
end trace frame: 0x0, count: 13
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: uvm_fault(0xffffffff82e30d40, 0x0, 0, 2) -> e
ddb{0}> trace
pool_gc_pages(0) at pool_gc_pages+0x1e1 pool_p_remove sys/kern/subr_pool.c:1049 [inline]
pool_gc_pages(0) at pool_gc_pages+0x1e1 sys/kern/subr_pool.c:1576
taskq_thread(ffffffff82c4a830) at taskq_thread+0xe5 sys/kern/kern_task.c:450
end trace frame: 0x0, count: -2
ddb{0}> show registers
rdi 0
rsi 0xf90
rbp 0xffff80002a12a740
rbx 0xf90
rdx 0
rcx 0
rax 0
r8 0
r9 0
r10 0x94ea1b25d63c3704
r11 0xe71b7b476bf2e9f
r12 0x1dcd65000
r13 0xfffffd80789a8f90
r14 0
r15 0xffffffff82e1c930 tcpqe_pool
rip 0xffffffff825f5da1 pool_gc_pages+0x1e1
cs 0x8
rflags 0x10246 __ALIGN_SIZE+0xf246
rsp 0xffff80002a12a700
ss 0
pool_gc_pages+0x1e1: movq %rax,0(%rcx)
ddb{0}> show proc
PROC (systqmp) tid=315992 pid=73216 tcnt=1 stat=onproc
flags process=14000<NOZOMBIE,SYSTEM> proc=200<SYSTEM>
runpri=32, usrpri=50, slppri=32, nice=20
wchan=0x0, wmesg=, ps_single=0x0
forw=0xffffffffffffffff, list=0xffff80002a10bd48,0xffff80002a10b808
process=0xffff8000ffffdaa0 user=0xffff80002a125000, vmspace=0xffffffff82e30d40
estcpu=0, cpticks=1, pctcpu=0.0, user=0, sys=1, intr=0
ddb{0}> ps
PID TID PPID UID S FLAGS WAIT COMMAND
87302 441990 71172 0 2 0 syz-executor.3
87302 276828 71172 0 2 0x4000000 syz-executor.3
4855 486752 82923 0 2 0 syz-executor.1
4855 197602 82923 0 3 0x4000080 fsleep syz-executor.1
4855 428027 82923 0 3 0x4000080 fsleep syz-executor.1
96636 241171 40879 0 3 0x80 nanoslp syz-executor.5
96636 147429 40879 0 3 0x4000080 netio syz-executor.5
96636 115172 40879 0 3 0x4000080 fsleep syz-executor.5
5595 218273 87275 0 2 0x480 syz-executor.0
5595 200592 87275 0 3 0x4000080 ttyopn syz-executor.0
5595 371385 87275 0 3 0x4000080 fsleep syz-executor.0
5595 141763 87275 0 3 0x4000080 ttyopn syz-executor.0
10612 260676 1 0 3 0x100083 ttyin getty
87275 211005 61140 0 3 0x82 nanoslp syz-executor.0
25460 429708 0 0 3 0x14200 acct acct
68353 519831 61140 0 3 0x82 nanoslp syz-executor.4
26974 246462 0 0 3 0x14280 nfsidl nfsio
13616 474257 0 0 3 0x14280 nfsidl nfsio
56842 394305 0 0 3 0x14280 nfsidl nfsio
81368 166477 0 0 3 0x14280 nfsidl nfsio
60982 483519 0 0 3 0x14280 nfsidl nfsio
6811 43383 0 0 3 0x14280 nfsidl nfsio
62894 136663 0 0 3 0x14280 nfsidl nfsio
84350 82176 0 0 3 0x14280 nfsidl nfsio
49078 295401 0 0 3 0x14280 nfsidl nfsio
74985 44706 0 0 3 0x14280 nfsidl nfsio
18289 203936 0 0 3 0x14280 nfsidl nfsio
89121 160232 0 0 3 0x14280 nfsidl nfsio
63685 120161 0 0 3 0x14280 nfsidl nfsio
44379 91965 0 0 3 0x14280 nfsidl nfsio
21524 65384 0 0 3 0x14280 nfsidl nfsio
86228 335970 0 0 3 0x14280 nfsidl nfsio
70912 401039 0 0 3 0x14280 nfsidl nfsio
88913 239289 0 0 3 0x14280 nfsidl nfsio
78796 97008 0 0 3 0x14280 nfsidl nfsio
73828 505527 0 0 3 0x14280 nfsidl nfsio
26899 53266 0 0 3 0x14200 bored sosplice
82923 420932 61140 0 2 0x482 syz-executor.1
91487 387198 61140 0 3 0x82 piperd syz-executor.7
40879 414103 61140 0 2 0x482 syz-executor.5
71172 135864 61140 0 3 0x82 nanoslp syz-executor.3
84482 1924 61140 0 3 0x82 piperd syz-executor.2
61140 503754 12615 0 3 0x2000082 thrsleep syz-fuzzer
61140 150525 12615 0 2 0x6000482 syz-fuzzer
61140 145294 12615 0 3 0x6000082 thrsleep syz-fuzzer
61140 490597 12615 0 3 0x6000082 thrsleep syz-fuzzer
61140 352869 12615 0 3 0x6000082 wait syz-fuzzer
61140 357346 12615 0 2 0x6000002 syz-fuzzer
61140 440669 12615 0 3 0x6000082 wait syz-fuzzer
61140 276455 12615 0 3 0x6000082 wait syz-fuzzer
61140 520681 12615 0 3 0x6000082 wait syz-fuzzer
61140 47394 12615 0 3 0x6000082 thrsleep syz-fuzzer
61140 516637 12615 0 3 0x6000082 thrsleep syz-fuzzer
61140 374657 12615 0 3 0x6000082 wait syz-fuzzer
61140 149571 12615 0 3 0x6000082 thrsleep syz-fuzzer
61140 400634 12615 0 3 0x6000082 wait syz-fuzzer
61140 503896 12615 0 3 0x6000082 wait syz-fuzzer
61140 249180 12615 0 2 0x6000002 syz-fuzzer
12615 488997 42128 0 3 0x10008a sigsusp ksh
42128 175475 10675 0 3 0x9a kqread sshd
10675 93241 1 0 3 0x88 kqread sshd
65660 291936 39385 74 3 0x1100092 bpf pflogd
39385 363432 1 0 3 0x80 netio pflogd
57354 452306 78551 73 3 0x1100090 kqread syslogd
78551 32485 1 0 3 0x100082 netio syslogd
71508 114218 1 0 3 0x100080 kqread resolvd
68112 248756 1499 77 3 0x100092 kqread dhcpleased
75517 355414 1499 77 3 0x100092 kqread dhcpleased
1499 210886 1 0 3 0x80 kqread dhcpleased
93322 339899 0 0 3 0x14200 bored smr
9041 257792 0 0 2 0x14200 zerothread
24527 382765 0 0 3 0x14200 aiodoned aiodoned
50122 220657 0 0 3 0x14200 syncer update
32042 44248 0 0 3 0x14200 cleaner cleaner
7348 152474 0 0 3 0x14200 reaper reaper
78958 150464 0 0 3 0x14200 pgdaemon pagedaemon
29575 87597 0 0 3 0x14200 bored viomb
91099 233072 0 0 3 0x40014200 acpi0 acpi0
22633 512687 0 0 7 0x40014200 idle1
31408 429058 0 0 3 0x14200 bored softnet3
67654 363859 0 0 3 0x14200 bored softnet2
63229 152744 0 0 3 0x14200 bored softnet1
40072 102923 0 0 3 0x14200 bored softnet0
*73216 315992 0 0 7 0x14200 systqmp
11154 253492 0 0 3 0x14200 bored systq
95047 45750 0 0 3 0x14200 tmoslp softclockmp
98473 482668 0 0 3 0x40014200 tmoslp softclock
53382 322241 0 0 3 0x40014200 idle0
1 96868 0 0 3 0x80082 wait init
0 0 -1 0 3 0x10200 scheduler swapper
ddb{0}> show all locks
CPU 0:
exclusive mutex tcpqe r = 0 (0xffffffff82e1c940)
#0 witness_lock+0x447
#1 mtx_enter_try+0x104
#2 pool_gc_pages+0xa7 pl_enter_try sys/kern/subr_pool.c:109 [inline]
#2 pool_gc_pages+0xa7 sys/kern/subr_pool.c:1568
#3 taskq_thread+0xe5 sys/kern/kern_task.c:450
#4 proc_trampoline+0x10
Process 73216 (systqmp) thread 0xffff80002a10baa0 (315992)
shared rwlock pools r = 0 (0xffffffff82d242c0)
#0 witness_lock+0x447
#1 pool_gc_pages+0x25 sys/kern/subr_pool.c:1560
#2 taskq_thread+0xe5 sys/kern/kern_task.c:450
#3 proc_trampoline+0x10
shared rwlock systqmp r = 0 (0xffffffff82c4a8a0)
#0 witness_lock+0x447
#1 taskq_thread+0xca sys/kern/kern_task.c:446
#2 proc_trampoline+0x10
exclusive mutex tcpqe r = 0 (0xffffffff82e1c940)
#0 witness_lock+0x447
#1 mtx_enter_try+0x104
#2 pool_gc_pages+0xa7 pl_enter_try sys/kern/subr_pool.c:109 [inline]
#2 pool_gc_pages+0xa7 sys/kern/subr_pool.c:1568
#3 taskq_thread+0xe5 sys/kern/kern_task.c:450
#4 proc_trampoline+0x10
ddb{0}> show malloc
Type InUse MemUse HighUse Limit Requests Type Lim
devbuf 10190 6477K 7060K 166960K 17457 0
pcb 15 16K 18K 166960K 283 0
rtable 194 14K 16K 166960K 808 0
pf 31 9K 10K 166960K 124 0
ifaddr 35 13K 16K 166960K 94 0
ifgroup 54 2K 2K 166960K 192 0
sysctl 3 0K 0K 166960K 3 0
counters 62 36K 36K 166960K 126 0
ioctlops 0 0K 4K 166960K 1681 0
iov 0 0K 34K 166960K 238 0
mount 1 1K 1K 166960K 1 0
log 0 0K 0K 166960K 4 0
vnodes 1502 94K 94K 166960K 3804 0
UFS quota 1 32K 32K 166960K 1 0
UFS mount 5 36K 36K 166960K 5 0
shm 2 1K 5K 166960K 58 0
VM map 2 1K 1K 166960K 2 0
sem 12 0K 0K 166960K 583 0
dirhash 12 2K 2K 166960K 39 0
ACPI 1697 195K 286K 166960K 12548 0
file desc 13 45K 81K 166960K 4039 0
sigio 0 0K 0K 166960K 111 0
proc 70 91K 115K 166960K 779 0
subproc 91 5K 6K 166960K 191 0
NFS srvsock 1 0K 0K 166960K 1 0
NFS daemon 1 16K 16K 166960K 1 0
ip_moptions 0 0K 0K 166960K 231 0
in_multi 66 4K 7K 166960K 178 0
ether_multi 1 0K 0K 166960K 7 0
mrt 1 0K 0K 166960K 4 0
ISOFS mount 1 32K 32K 166960K 1 0
MSDOSFS mount 1 16K 16K 166960K 1 0
ttys 67 307K 307K 166960K 67 0
exec 0 0K 1K 166960K 771 0
pfkey data 0 0K 0K 166960K 3 0
tdb 3 0K 0K 166960K 3 0
VM swap 8 62K 64K 166960K 10 0
UVM amap 386 277K 286K 166960K 40227 0
UVM aobj 117 6K 6K 166960K 126 0
memdesc 1 4K 4K 166960K 1 0
crypto data 1 1K 1K 166960K 1 0
ip6_options 0 0K 0K 166960K 208 0
NDP 11 0K 1K 166960K 67 0
temp 70 6707K 6822K 166960K 37830 0
kqueue 12 18K 27K 166960K 320 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 214 0 211 4 3 1 3 0 8 0
rtentry 112 208 0 121 4 0 4 4 0 8 0
unpcb 144 3761 0 3744 40 36 4 7 0 8 3
syncache 320 54 0 54 9 8 1 1 0 8 1
tcpqe 32 126 0 126 11 11 0 1 0 8 0
tcpqe: pool(0xffffffff82e1c930:tcpqe): page inconsistency: page 0x0; at page head addr 0xfffffd80789a8f90 (p 0xfffffd80789a8000)
tcpcb 808 1344 0 1311 46 40 6 11 0 8 2
arp 120 47 0 28 1 0 1 1 0 8 0
inpcb 376 3151 0 3106 52 41 11 13 0 8 6
nd6 136 42 0 24 1 0 1 1 0 8 0
pkpcb 40 76 0 76 4 3 1 1 0 8 1
kcovpl 48 12 0 5 1 0 1 1 0 8 0
ppxss 1168 4 0 4 2 1 1 1 0 8 1
pffrag 232 7 0 6 2 1 1 1 0 482 0
pffrnode 88 7 0 6 2 1 1 1 0 8 0
pffrent 40 25 0 24 2 1 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 131 0 109 1 0 1 1 0 8 0
pfstkey 128 131 0 109 3 1 2 2 0 8 0
pfstate 376 131 0 109 5 1 4 4 0 8 1
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 760 0 382 33 0 33 33 0 8 5
art_table 32 761 0 382 5 0 5 5 0 8 0
art_node 16 207 0 127 1 0 1 1 0 8 0
sysvmsgpl 40 5 0 3 1 0 1 1 0 8 0
semapl 112 577 0 567 1 0 1 1 0 8 0
shmpl 112 123 0 9 4 0 4 4 0 8 0
dirhash 1024 35 0 18 3 0 3 3 0 8 0
dino2pl 256 6941 0 5491 92 0 92 92 0 8 0
ffsino 272 6941 0 5491 98 0 98 98 0 8 0
nchpl 144 12494 0 10845 64 0 64 64 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 40064 0 40064 4 3 1 2 0 8 1
percpumem 16 77 0 32 1 0 1 1 0 8 0
vcpupl 2048 31 0 1 4 0 4 4 0 8 0
vmpool 696 43 0 13 3 0 3 3 0 8 0
kstatmem 264 86 0 64 2 0 2 2 0 8 0
scxspl 216 40479 0 40479 14 13 1 8 1 8 1
plimitpl 152 458 0 443 1 0 1 1 0 8 0
sigapl 424 4381 0 4314 9 1 8 8 0 8 0
futexpl 64 36382 0 36378 2 1 1 1 0 8 0
knotepl 120 353 0 0 11 3 8 11 0 8 0
kqueuepl 216 691 0 683 13 12 1 5 0 8 0
pipepl 320 676 0 651 19 16 3 11 0 8 0
fdescpl 496 4341 0 4315 5 1 4 5 0 8 0
filepl 152 24978 0 24749 59 43 16 19 0 8 4
lockfpl 104 1344 0 1342 4 2 2 2 0 8 1
lockfspl 48 447 0 445 1 0 1 1 0 8 0
sessionpl 144 29 0 13 1 0 1 1 0 8 0
pgrppl 48 128 0 111 1 0 1 1 0 8 0
ucredpl 104 3657 0 3645 1 0 1 1 0 8 0
zombiepl 144 4315 0 4314 1 0 1 1 0 8 0
processpl 1136 4381 0 4314 6 0 6 6 0 8 0
procpl 680 10508 0 10418 12 3 9 9 0 8 0
srpgc 96 10 0 10 3 2 1 1 0 8 1
sosppl 168 50 0 45 5 4 1 1 0 8 0
sockpl 584 7214 0 7157 76 67 9 19 0 8 3
mcl64k 65536 11 0 0 2 0 2 2 0 8 0
mcl16k 16384 5 0 0 1 0 1 1 0 8 0
mcl12k 12288 9 0 0 1 0 1 1 0 8 0
mcl9k 9216 10 0 0 1 0 1 1 0 8 0
mcl8k 8192 22 0 0 3 0 3 3 0 8 0
mcl4k 4096 15 0 0 2 0 2 2 0 8 0
mcl2k2 2112 4 0 0 1 0 1 1 0 8 0
mcl2k 2048 320 0 0 40 2 38 40 0 8 1
mtagpl 96 402 0 0 10 0 10 10 0 8 0
mbufpl 256 682 0 0 36 1 35 36 0 8 0
bufpl 280 9715 0 3396 452 0 452 452 0 8 0
anonpl 24 542872 0 531249 153 61 92 116 0 186 0
amapchunkpl 152 128319 0 127490 53 13 40 51 0 158 0
amappl16 200 12633 0 12205 60 33 27 35 0 8 3
amappl15 192 10 0 10 1 1 0 1 0 8 0
amappl14 184 173 0 160 2 1 1 2 0 8 0
amappl13 176 25 0 25 4 3 1 1 0 8 1
amappl12 168 5111 0 5081 3 1 2 2 0 8 0
amappl11 160 61 0 47 1 0 1 1 0 8 0
amappl10 152 28 0 20 1 0 1 1 0 8 0
amappl9 144 305 0 305 7 7 0 1 0 8 0
amappl8 136 330 0 247 3 0 3 3 0 8 0
amappl7 128 197 0 171 2 0 2 2 0 8 0
amappl6 120 360 0 346 1 0 1 1 0 8 0
amappl5 112 220 0 209 1 0 1 1 0 8 0
amappl4 104 555 0 527 2 1 1 2 0 8 0
amappl3 96 25074 0 24988 6 2 4 4 0 8 1
amappl2 88 4922 0 4844 3 1 2 3 0 8 0
amappl1 80 24145 0 23593 25 13 12 23 0 8 0
amappl 88 39561 0 39325 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 125 0 9 3 0 3 3 0 8 0
uaddrrnd 24 4385 0 4329 1 0 1 1 0 8 0
uaddrbest 32 2 0 0 1 0 1 1 0 8 0
uaddr 24 4385 0 4329 1 0 1 1 0 8 0
vmmpekpl 168 33311 0 33244 4 0 4 4 0 8 0
vmmpepl 168 273284 0 270990 211 92 119 133 0 357 8
vmsppl 448 4384 0 4329 8 1 7 7 0 8 0
rwobjpl 56 75574 0 67991 112 2 110 110 0 8 1
pdppl 4096 8777 0 8688 265 168 97 97 0 8 8
pvpl 32 42485 0 0 343 0 343 343 0 265 0
pmappl 248 4384 0 4329 4 0 4 4 0 8 0
extentpl 40 56 0 38 1 0 1 1 0 8 0
phpool 112 731 0 288 13 0 13 13 0 8 0
ddb{0}> machine ddbcpu 0
Invalid cpu 0
ddb{0}> trace
pool_gc_pages(0) at pool_gc_pages+0x1e1 pool_p_remove sys/kern/subr_pool.c:1049 [inline]
pool_gc_pages(0) at pool_gc_pages+0x1e1 sys/kern/subr_pool.c:1576
taskq_thread(ffffffff82c4a830) at taskq_thread+0xe5 sys/kern/kern_task.c:450
end trace frame: 0x0, count: -2
ddb{0}> machine ddbcpu 1
Stopped at x86_ipi_db+0x1e: addq $0x8,%rsp
x86_ipi_db(ffff800029cfbff0) 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
acpicpu_idle() at acpicpu_idle+0x312 sys/dev/acpi/acpicpu.c:1206
sched_idle(ffff800029cfbff0) at sched_idle+0x41e sys/kern/kern_sched.c:183
end trace frame: 0x0, count: 10
ddb{1}> trace
x86_ipi_db(ffff800029cfbff0) 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
acpicpu_idle() at acpicpu_idle+0x312 sys/dev/acpi/acpicpu.c:1206
sched_idle(ffff800029cfbff0) at sched_idle+0x41e sys/kern/kern_sched.c:183
end trace frame: 0x0, count: -5


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