pool: cpu free list modified: mcl2k

2 views
Skip to first unread message

syzbot

unread,
Dec 12, 2019, 8:59:09 AM12/12/19
to syzkaller-o...@googlegroups.com
Hello,

syzbot found the following crash on:

HEAD commit: bf9d8b16 Refactor kernel route message handling.
git tree: openbsd
console output: https://syzkaller.appspot.com/x/log.txt?x=1742a1a6e00000
kernel config: https://syzkaller.appspot.com/x/.config?x=26ca0a9c07f16a3a
dashboard link: https://syzkaller.appspot.com/bug?extid=63ea670880bdb5ff47ec

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

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

panic: pool_cache_item_magic_check: mcl2k cpu free list modified: item addr
0xfffffd807b1eb000+16 0x0!=0x96080d92d7d3772
Stopped at db_enter+0x18: addq $0x8,%rsp
TID PID UID PRFLAGS PFLAGS CPU COMMAND
*149322 27685 0 0 0x4000000 0K syz-executor.0
51477 97037 0 0x14000 0x200 1 reaper
db_enter() at db_enter+0x18 sys/arch/amd64/amd64/db_interface.c:398
panic(ffffffff821c4d4c) at panic+0x15c sys/kern/subr_prf.c:207
pool_cache_get(ffffffff82624910) at pool_cache_get+0x323
pool_cache_item_magic_check sys/kern/subr_pool.c:1789 [inline]
pool_cache_get(ffffffff82624910) at pool_cache_get+0x323
sys/kern/subr_pool.c:1892
pool_get(ffffffff82624910,2) at pool_get+0x91 sys/kern/subr_pool.c:572
m_clget(fffffd806d6d6500,2,800) at m_clget+0x2d0 sys/kern/uipc_mbuf.c:407
tcp_output(ffff8000009f6ee0) at tcp_output+0x16bd
sys/netinet/tcp_output.c:706
tcp_usrreq(fffffd806ca85018,4,0,fffffd806f29bd00,0,ffff800020adf3e0) at
tcp_usrreq+0xa45
sys_connect(ffff800020adf3e0,ffff800023bb1d08,ffff800023bb1d50) at
sys_connect+0x3df sys/kern/uipc_syscalls.c:388
syscall(ffff800023bb1dd0) at syscall+0x4a4 mi_syscall
sys/sys/syscall_mi.h:92 [inline]
syscall(ffff800023bb1dd0) at syscall+0x4a4 sys/arch/amd64/amd64/trap.c:555
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0x3191b24df70, count: 5
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
pool_cache_item_magic_check: mcl2k cpu free list modified: item addr
0xfffffd807b1eb000+16 0x0!=0x96080d92d7d3772
ddb{0}> trace
db_enter() at db_enter+0x18 sys/arch/amd64/amd64/db_interface.c:398
panic(ffffffff821c4d4c) at panic+0x15c sys/kern/subr_prf.c:207
pool_cache_get(ffffffff82624910) at pool_cache_get+0x323
pool_cache_item_magic_check sys/kern/subr_pool.c:1789 [inline]
pool_cache_get(ffffffff82624910) at pool_cache_get+0x323
sys/kern/subr_pool.c:1892
pool_get(ffffffff82624910,2) at pool_get+0x91 sys/kern/subr_pool.c:572
m_clget(fffffd806d6d6500,2,800) at m_clget+0x2d0 sys/kern/uipc_mbuf.c:407
tcp_output(ffff8000009f6ee0) at tcp_output+0x16bd
sys/netinet/tcp_output.c:706
tcp_usrreq(fffffd806ca85018,4,0,fffffd806f29bd00,0,ffff800020adf3e0) at
tcp_usrreq+0xa45
sys_connect(ffff800020adf3e0,ffff800023bb1d08,ffff800023bb1d50) at
sys_connect+0x3df sys/kern/uipc_syscalls.c:388
syscall(ffff800023bb1dd0) at syscall+0x4a4 mi_syscall
sys/sys/syscall_mi.h:92 [inline]
syscall(ffff800023bb1dd0) at syscall+0x4a4 sys/arch/amd64/amd64/trap.c:555
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0x3191b24df70, count: -10
ddb{0}> show registers
rdi 0xffffffff819de877 db_enter+0x17
rsi 0x3ba9 __ALIGN_SIZE+0x2ba9
rbp 0xffff800023bb17e0
rbx 0xffff800023bb1890
rdx 0x3baa __ALIGN_SIZE+0x2baa
rcx 0xffff800020b76000
rax 0xffff800020b76000
r8 0xffffffff81112b4f kprintf+0x16f
r9 0x1
r10 0x25
r11 0xdb0a6cca2166939
r12 0x3000000008
r13 0xffff800023bb17f0
r14 0x100
r15 0x1
rip 0xffffffff819de878 db_enter+0x18
cs 0x8
rflags 0x246
rsp 0xffff800023bb17d0
ss 0x10
db_enter+0x18: addq $0x8,%rsp
ddb{0}> show proc
PROC (syz-executor.0) pid=149322 stat=onproc
flags process=0 proc=4000000<THREAD>
pri=60, usrpri=60, nice=20
forw=0xffffffffffffffff, list=0xffff800020ade510,0xffffffff82648cc0
process=0xffff800020a9b540 user=0xffff800023bac000,
vmspace=0xfffffd806e7a4e68
estcpu=22, cpticks=1, pctcpu=0.0
user=0, sys=1, intr=0
ddb{0}> ps
PID TID PPID UID S FLAGS WAIT COMMAND
27685 34194 35449 0 2 0 syz-executor.0
*27685 149322 35449 0 7 0x4000000 syz-executor.0
50292 214608 31066 0 3 0x82 nanosleep syz-executor.1
35449 489819 31066 0 3 0x82 nanosleep syz-executor.0
31066 496558 3989 0 3 0x82 thrsleep syz-fuzzer
31066 386234 3989 0 3 0x4000082 thrsleep syz-fuzzer
31066 212915 3989 0 3 0x4000082 thrsleep syz-fuzzer
31066 29187 3989 0 3 0x4000082 thrsleep syz-fuzzer
31066 74551 3989 0 3 0x4000082 thrsleep syz-fuzzer
31066 146289 3989 0 3 0x4000082 kqread syz-fuzzer
31066 361169 3989 0 3 0x4000082 thrsleep syz-fuzzer
31066 114873 3989 0 3 0x4000082 thrsleep syz-fuzzer
31066 41421 3989 0 3 0x4000082 thrsleep syz-fuzzer
31066 87273 3989 0 3 0x4000082 thrsleep syz-fuzzer
3989 523563 4382 0 3 0x10008a pause ksh
4382 158344 47627 0 3 0x92 select sshd
85957 380917 1 0 3 0x100083 ttyin getty
47627 73244 1 0 3 0x80 select sshd
27498 460872 77535 74 3 0x100092 bpf pflogd
77535 203262 1 0 3 0x80 netio pflogd
56120 501243 16157 73 3 0x100090 kqread syslogd
16157 235820 1 0 3 0x100082 netio syslogd
89062 96734 1 77 3 0x100090 poll dhclient
58639 426 1 0 3 0x80 poll dhclient
70500 288641 0 0 2 0x14200 zerothread
46601 174897 0 0 3 0x14200 aiodoned aiodoned
63605 151570 0 0 3 0x14200 syncer update
70070 266529 0 0 3 0x14200 cleaner cleaner
97037 51477 0 0 7 0x14200 reaper
56510 42867 0 0 3 0x14200 pgdaemon pagedaemon
27731 113889 0 0 3 0x14200 bored crynlk
21517 150201 0 0 3 0x14200 bored crypto
18791 259990 0 0 3 0x40014200 acpi0 acpi0
4746 5360 0 0 3 0x40014200 idle1
40622 236188 0 0 3 0x14200 bored softnet
90652 63711 0 0 3 0x14200 bored systqmp
97137 516232 0 0 3 0x14200 bored systq
26103 395571 0 0 3 0x40014200 bored softclock
35028 238943 0 0 3 0x40014200 idle0
7149 390832 0 0 3 0x14200 bored smr
1 6223 0 0 3 0x82 wait init
0 0 -1 0 3 0x10200 scheduler swapper
ddb{0}> show all locks
CPU 1:
exclusive mutex &uvm.fpageqlock r = 0 (0xffffffff826064f8)
#0 witness_lock+0x52e sys/kern/subr_witness.c:1163
#1 mtx_enter_try+0x102
#2 mtx_enter+0x4b sys/kern/kern_lock.c:266
#3 uvm_pmr_freepages+0x126 sys/uvm/uvm_pmemrange.c:1135
#4 pmap_do_remove+0x68b sys/arch/amd64/amd64/pmap.c:1799
#5 uvm_map_teardown+0x195 uvm_map_addr_RBT_LEFT sys/uvm/uvm_map.h:206
[inline]
#5 uvm_map_teardown+0x195 sys/uvm/uvm_map.c:2725
#6 uvmspace_free+0x86 sys/uvm/uvm_map.c:3600
#7 uvm_exit+0x29 sys/uvm/uvm_glue.c:297
#8 reaper+0x189 sys/kern/kern_exit.c:442
#9 proc_trampoline+0x1c
Process 27685 (syz-executor.0) thread 0xffff800020adf3e0 (149322)
exclusive rwlock netlock r = 0 (0xffffffff82485568)
#0 witness_lock+0x52e sys/kern/subr_witness.c:1163
#1 solock+0x5a sys/kern/uipc_socket2.c:282
#2 sys_connect+0x6b sys/kern/uipc_syscalls.c:362
#3 syscall+0x4a4 mi_syscall sys/sys/syscall_mi.h:92 [inline]
#3 syscall+0x4a4 sys/arch/amd64/amd64/trap.c:555
#4 Xsyscall+0x128
exclusive kernel_lock &kernel_lock r = 0 (0xffffffff826071a0)
#0 witness_lock+0x52e sys/kern/subr_witness.c:1163
#1 syscall+0x400 mi_syscall sys/sys/syscall_mi.h:83 [inline]
#1 syscall+0x400 sys/arch/amd64/amd64/trap.c:555
#2 Xsyscall+0x128
ddb{0}> show malloc
Type InUse MemUse HighUse Limit Requests Type Lim
devbuf 9494 6414K 6664K 78643K 10760 0
pcb 13 8K 8K 78643K 41 0
rtable 108 4K 4K 78643K 219 0
ifaddr 59 12K 12K 78643K 73 0
counters 39 33K 33K 78643K 39 0
ioctlops 0 0K 4K 78643K 1471 0
iov 0 0K 16K 78643K 20 0
mount 1 1K 1K 78643K 1 0
vnodes 1214 76K 77K 78643K 1281 0
UFS quota 1 32K 32K 78643K 1 0
UFS mount 5 36K 36K 78643K 5 0
shm 2 1K 5K 78643K 3 0
VM map 2 1K 1K 78643K 2 0
sem 12 0K 0K 78643K 24 0
dirhash 12 2K 2K 78643K 12 0
ACPI 1809 196K 290K 78643K 12766 0
file desc 5 13K 25K 78643K 113 0
proc 60 63K 95K 78643K 439 0
subproc 32 2K 2K 78643K 34 0
NFS srvsock 1 0K 0K 78643K 1 0
NFS daemon 1 16K 16K 78643K 1 0
ip_moptions 0 0K 0K 78643K 1 0
in_multi 40 2K 2K 78643K 40 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 36 159K 159K 78643K 36 0
exec 0 0K 1K 78643K 212 0
pagedep 1 8K 8K 78643K 1 0
inodedep 1 32K 32K 78643K 1 0
newblk 1 0K 0K 78643K 1 0
VM swap 7 26K 26K 78643K 7 0
UVM amap 123 22K 31K 78643K 1330 0
UVM aobj 6 2K 2K 78643K 6 0
memdesc 1 4K 4K 78643K 1 0
crypto data 1 1K 1K 78643K 1 0
ip6_options 1 0K 0K 78643K 23 0
NDP 9 0K 0K 78643K 14 0
temp 101 3013K 3078K 78643K 3723 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
arp 64 6 0 0 1 0 1 1 0
8 0
plcache 128 20 0 0 1 0 1 1 0
8 0
rtpcb 80 32 0 30 1 0 1 1 0
8 0
rtentry 112 45 0 1 2 0 2 2 0
8 0
unpcb 120 61 0 51 1 0 1 1 0
8 0
syncache 264 4 0 4 1 1 0 1 0
8 0
tcpqe 32 79 0 79 1 1 0 1 0
8 0
tcpcb 544 47 0 41 1 0 1 1 0
8 0
inpcb 280 185 0 175 2 0 2 2 0
8 1
nd6 48 4 0 0 1 0 1 1 0
8 0
ppxss 1128 1 0 1 1 0 1 1 0
8 1
pffrag 232 4 0 4 1 0 1 1 0
482 1
pffrnode 88 4 0 4 1 0 1 1 0
8 1
pffrent 40 180 0 180 1 0 1 1 0
8 1
pfosfp 40 846 0 423 5 0 5 5 0
8 0
pfosfpen 112 1428 0 714 21 0 21 21 0
8 0
pfstitem 24 20 0 0 1 0 1 1 0
8 0
pfstkey 112 20 0 0 1 0 1 1 0
8 0
pfstate 328 20 0 0 2 0 2 2 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 213 0 0 14 0 14 14 0
8 0
art_table 32 214 0 0 2 0 2 2 0
8 0
art_node 16 44 0 4 1 0 1 1 0
8 0
sysvmsgpl 40 2 0 0 1 0 1 1 0
8 0
semupl 112 1 0 1 1 0 1 1 0
8 1
semapl 112 22 0 12 1 0 1 1 0
8 0
shmpl 112 4 0 0 1 0 1 1 0
8 0
dirhash 1024 17 0 0 3 0 3 3 0
8 0
dino1pl 128 1554 0 149 46 0 46 46 0
8 0
ffsino 272 1554 0 149 95 0 95 95 0
8 0
nchpl 144 1951 0 341 61 0 61 61 0
8 0
uvmvnodes 72 1642 0 0 30 0 30 30 0
8 0
vnodes 208 1642 0 0 87 0 87 87 0
8 0
namei 1024 5210 0 5210 1 0 1 1 0
8 1
percpumem 16 30 0 0 1 0 1 1 0
8 0
scxspl 192 5259 0 5259 8 1 7 7 0
8 7
plimitpl 152 27 0 19 1 0 1 1 0
8 0
sigapl 432 312 0 297 3 0 3 3 0
8 1
futexpl 56 2020 0 2020 1 0 1 1 0
8 1
knotepl 112 119 0 100 3 0 3 3 0
8 2
kqueuepl 104 160 0 158 1 0 1 1 0
8 0
pipepl 160 176 0 157 1 0 1 1 0
8 0
fdescpl 488 313 0 297 3 0 3 3 0
8 0
filepl 152 2077 0 1974 5 0 5 5 0
8 1
lockfpl 104 36 0 35 1 0 1 1 0
8 0
lockfspl 48 15 0 14 1 0 1 1 0
8 0
sessionpl 112 18 0 7 1 0 1 1 0
8 0
pgrppl 48 18 0 7 1 0 1 1 0
8 0
ucredpl 96 137 0 127 1 0 1 1 0
8 0
zombiepl 144 297 0 296 1 0 1 1 0
8 0
processpl 904 328 0 296 4 0 4 4 0
8 0
procpl 632 547 0 505 5 0 5 5 0
8 0
sockpl 384 280 0 258 5 1 4 4 0
8 1
mcl64k 65536 4 0 0 1 0 1 1 0
8 0
mcl16k 16384 1 0 0 1 0 1 1 0
8 0
mcl8k 8192 4 0 0 1 0 1 1 0
8 0
mcl4k 4096 3 0 0 1 0 1 1 0
8 0
mcl2k2 2112 1 0 0 1 0 1 1 0
8 0
mcl2k 2048 176 0 0 21 0 21 21 0
8 0
mtagpl 80 7 0 0 1 0 1 1 0
8 0
mbufpl 256 233 0 0 15 0 15 15 0
8 0
bufpl 280 6368 0 1340 360 0 360 360 0
8 0
anonpl 16 48304 0 29148 81 1 80 80 0
125 3
amapchunkpl 152 1539 0 1378 11 1 10 10 0
158 3
amappl16 192 1407 0 361 53 0 53 53 0
8 0
amappl15 184 143 0 135 1 0 1 1 0
8 0
amappl14 176 28 0 25 1 0 1 1 0
8 0
amappl13 168 1 0 1 1 1 0 1 0
8 0
amappl12 160 14 0 10 1 0 1 1 0
8 0
amappl11 152 90 0 73 1 0 1 1 0
8 0
amappl10 144 9 0 6 1 0 1 1 0
8 0
amappl9 136 603 0 599 1 0 1 1 0
8 0
amappl8 128 131 0 103 2 0 2 2 0
8 0
amappl7 120 102 0 91 1 0 1 1 0
8 0
amappl6 112 94 0 84 1 0 1 1 0
8 0
amappl5 104 129 0 116 1 0 1 1 0
8 0
amappl4 96 566 0 534 1 0 1 1 0
8 0
amappl3 88 113 0 106 1 0 1 1 0
8 0
amappl2 80 1654 0 1568 3 1 2 3 0
8 0
amappl1 72 17017 0 16541 25 14 11 20 0
8 1
amappl 80 799 0 749 2 0 2 2 0
84 0
dma4096 4096 1 0 1 1 1 0 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 64 5 0 0 1 0 1 1 0
8 0
uaddrrnd 24 313 0 297 1 0 1 1 0
8 0
uaddrbest 32 2 0 0 1 0 1 1 0
8 0
uaddr 24 313 0 297 1 0 1 1 0
8 0
vmmpekpl 168 6297 0 6265 2 0 2 2 0
8 0
vmmpepl 168 46368 0 44047 134 4 130 130 0 357
27
vmsppl 368 312 0 296 2 0 2 2 0
8 0
pdppl 4096 633 0 592 6 0 6 6 0
8 0
pvpl 32 159270 0 137031 190 0 190 190 0
265 9
pmappl 232 312 0 296 2 0 2 2 0
8 1
extentpl 40 46 0 29 1 0 1 1 0
8 0
phpool 112 171 0 3 5 0 5 5 0
8 0


---
This bug 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 bug report. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.

syzbot

unread,
Mar 11, 2020, 9:59:07 AM3/11/20
to syzkaller-o...@googlegroups.com
Auto-closing this bug as obsolete.
Crashes did not happen for a while, no reproducer and no activity.
Reply all
Reply to author
Forward
0 new messages