pool: free list modified: art_heap4 (2)

0 views
Skip to first unread message

syzbot

unread,
May 24, 2020, 1:41:15 AM5/24/20
to syzkaller-o...@googlegroups.com
Hello,

syzbot found the following crash on:

HEAD commit: 0e6fb2a1 Add a little bit of const-ness.
git tree: openbsd
console output: https://syzkaller.appspot.com/x/log.txt?x=157bd4ba100000
kernel config: https://syzkaller.appspot.com/x/.config?x=fe55924c11e64b0a
dashboard link: https://syzkaller.appspot.com/bug?extid=3c87ca9873bfd0492f5c

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+3c87ca...@syzkaller.appspotmail.com

panic: pool_do_get: art_heap4 free list modified: page 0xfffffd8005d55000; item addr 0xfffffd8005d55000; offset 0x0=0x0 != 0x90f7b9993e47d25b
Stopped at db_enter+0x18: addq $0x8,%rsp
TID PID UID PRFLAGS PFLAGS CPU COMMAND
*119555 87562 0 0 0x4000000 0 syz-executor.0
db_enter() at db_enter+0x18 sys/arch/amd64/amd64/db_interface.c:398
panic(ffffffff822521a9) at panic+0x15c sys/kern/subr_prf.c:207
pool_do_get(ffffffff8257f250,a,ffff80001d81f8c8) at pool_do_get+0x42a sys/kern/subr_pool.c:738
pool_get(ffffffff8257f250,a) at pool_get+0xb5 sys/kern/subr_pool.c:581
art_table_get(ffff800000063a40,fffffd8057dfc128,10) at art_table_get+0x12e sys/net/art.c:722
art_insert(ffff800000063a40,fffffd80687d2b60,ffff800000064264,20) at art_insert+0x155 sys/net/art.c:387
rtable_insert(0,ffff800000064260,0,ffff8000006b5258,1,fffffd8057df58c8) at rtable_insert+0x2b4 sys/net/rtable.c:554
rtrequest(1,ffff80001d81fbe8,1,ffff80001d81fcb0,0) at rtrequest+0x8be sys/net/route.c:941
rt_ifa_add(ffff8000006b5200,440004,ffff8000006b5268,0) at rt_ifa_add+0x25c sys/net/route.c:1131
in_ifinit(ffff800000a01800,ffff8000006b5200,ffff80001d81ff90,0) at in_ifinit+0x3cc
in_ioctl_set_ifaddr(8020690c,ffff80001d81ff80,ffff800000a01800,1) at in_ioctl_set_ifaddr+0x264 sys/netinet/in.c:399
in_ioctl(8020690c,ffff80001d81ff80,ffff800000a01800,1) at in_ioctl+0x2d8 sys/netinet/in.c:243
ifioctl(fffffd8057ecab00,8020690c,ffff80001d81ff80,ffff80001d75d770) at ifioctl+0xe60 sys/net/if.c:2289
sys_ioctl(ffff80001d75d770,ffff80001d820098,ffff80001d8200e0) at sys_ioctl+0x4a1
end trace frame: 0xffff80001d820150, count: 0
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>
ddb> set $lines = 0
ddb> set $maxwidth = 0
ddb> show panic
pool_do_get: art_heap4 free list modified: page 0xfffffd8005d55000; item addr 0xfffffd8005d55000; offset 0x0=0x0 != 0x90f7b9993e47d25b
ddb> trace
db_enter() at db_enter+0x18 sys/arch/amd64/amd64/db_interface.c:398
panic(ffffffff822521a9) at panic+0x15c sys/kern/subr_prf.c:207
pool_do_get(ffffffff8257f250,a,ffff80001d81f8c8) at pool_do_get+0x42a sys/kern/subr_pool.c:738
pool_get(ffffffff8257f250,a) at pool_get+0xb5 sys/kern/subr_pool.c:581
art_table_get(ffff800000063a40,fffffd8057dfc128,10) at art_table_get+0x12e sys/net/art.c:722
art_insert(ffff800000063a40,fffffd80687d2b60,ffff800000064264,20) at art_insert+0x155 sys/net/art.c:387
rtable_insert(0,ffff800000064260,0,ffff8000006b5258,1,fffffd8057df58c8) at rtable_insert+0x2b4 sys/net/rtable.c:554
rtrequest(1,ffff80001d81fbe8,1,ffff80001d81fcb0,0) at rtrequest+0x8be sys/net/route.c:941
rt_ifa_add(ffff8000006b5200,440004,ffff8000006b5268,0) at rt_ifa_add+0x25c sys/net/route.c:1131
in_ifinit(ffff800000a01800,ffff8000006b5200,ffff80001d81ff90,0) at in_ifinit+0x3cc
in_ioctl_set_ifaddr(8020690c,ffff80001d81ff80,ffff800000a01800,1) at in_ioctl_set_ifaddr+0x264 sys/netinet/in.c:399
in_ioctl(8020690c,ffff80001d81ff80,ffff800000a01800,1) at in_ioctl+0x2d8 sys/netinet/in.c:243
ifioctl(fffffd8057ecab00,8020690c,ffff80001d81ff80,ffff80001d75d770) at ifioctl+0xe60 sys/net/if.c:2289
sys_ioctl(ffff80001d75d770,ffff80001d820098,ffff80001d8200e0) at sys_ioctl+0x4a1
syscall(ffff80001d820160) at syscall+0x507 sys/arch/amd64/amd64/trap.c:570
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0xef6b61758c0, count: -16
ddb> show registers
rdi 0
rsi 0x1
rbp 0xffff80001d81f730
rbx 0xffff80001d81f7e0
rdx 0x2
rcx 0
rax 0x1
r8 0xffffffff8214f22f kprintf+0x15f
r9 0x1
r10 0x2
r11 0x8fc1fe57a2d55c45
r12 0x3000000008
r13 0xffff80001d81f740
r14 0x100
r15 0x1
rip 0xffffffff8110bea8 db_enter+0x18
cs 0x8
rflags 0x246
rsp 0xffff80001d81f720
ss 0x10
db_enter+0x18: addq $0x8,%rsp
ddb> show proc
PROC (syz-executor.0) pid=119555 stat=onproc
flags process=0 proc=4000000<THREAD>
pri=32, usrpri=67, nice=20
forw=0xffffffffffffffff, list=0xffff80001d75eaf0,0xffffffff8257f930
process=0xffff8000ffff95a8 user=0xffff80001d81b000, vmspace=0xfffffd8057dea118
estcpu=34, cpticks=1, pctcpu=0.0
user=0, sys=1, intr=0
ddb> ps
PID TID PPID UID S FLAGS WAIT COMMAND
87562 365249 45363 0 2 0 syz-executor.0
*87562 119555 45363 0 7 0x4000000 syz-executor.0
16123 230522 95688 0 3 0x80 nanosleep syz-executor.1
16123 86137 95688 0 3 0x4000080 netcon syz-executor.1
16123 207431 95688 0 3 0x4000080 fsleep syz-executor.1
43053 512215 0 0 3 0x14200 bored sosplice
45363 71362 77312 0 3 0x82 nanosleep syz-executor.0
95688 348361 77312 0 3 0x82 nanosleep syz-executor.1
77312 305802 83933 0 3 0x82 thrsleep syz-fuzzer
77312 212350 83933 0 3 0x4000082 thrsleep syz-fuzzer
77312 43814 83933 0 3 0x4000082 thrsleep syz-fuzzer
77312 101342 83933 0 3 0x4000082 thrsleep syz-fuzzer
77312 200009 83933 0 3 0x4000082 thrsleep syz-fuzzer
77312 349308 83933 0 3 0x4000082 kqread syz-fuzzer
77312 316807 83933 0 3 0x4000082 thrsleep syz-fuzzer
77312 508253 83933 0 3 0x4000082 thrsleep syz-fuzzer
83933 267738 79941 0 3 0x10008a pause ksh
79941 374437 5946 0 3 0x92 select sshd
19087 317676 1 0 3 0x100083 ttyin getty
5946 53679 1 0 3 0x80 select sshd
90181 172868 7655 73 3 0x100090 kqread syslogd
7655 156816 1 0 3 0x100082 netio syslogd
9367 143195 1 77 2 0x100090 dhclient
25339 55233 1 0 3 0x80 poll dhclient
71675 504672 0 0 3 0x14200 bored smr
95778 93202 0 0 2 0x14200 zerothread
14431 324363 0 0 3 0x14200 aiodoned aiodoned
52614 102806 0 0 3 0x14200 syncer update
50405 120879 0 0 3 0x14200 cleaner cleaner
60806 460643 0 0 3 0x14200 reaper reaper
6456 68873 0 0 3 0x14200 pgdaemon pagedaemon
75492 462159 0 0 3 0x14200 bored crynlk
70211 144220 0 0 3 0x14200 bored crypto
92326 136748 0 0 3 0x40014200 acpi0 acpi0
74897 199950 0 0 3 0x14200 bored softnet
7390 342101 0 0 2 0x14200 systqmp
14184 477638 0 0 3 0x14200 bored systq
61213 226148 0 0 3 0x40014200 bored softclock
87741 384905 0 0 3 0x40014200 idle0
1 291755 0 0 3 0x82 wait init
0 0 -1 0 3 0x10200 scheduler swapper
ddb> show all locks
No such command
ddb> show malloc
Type InUse MemUse HighUse Limit Requests Type Lim
devbuf 9482 6335K 6595K 78643K 10802 0
pcb 13 8K 8K 78643K 59 0
rtable 103 3K 4K 78643K 275 0
ifaddr 61 13K 13K 78643K 98 0
counters 21 16K 16K 78643K 27 0
ioctlops 0 0K 2K 78643K 37 0
iov 0 0K 12K 78643K 22 0
mount 1 1K 1K 78643K 1 0
vnodes 1217 77K 77K 78643K 1318 0
UFS quota 1 32K 32K 78643K 1 0
UFS mount 5 36K 36K 78643K 5 0
shm 3 5K 5K 78643K 7 0
VM map 2 0K 0K 78643K 2 0
sem 12 0K 0K 78643K 24 0
dirhash 12 2K 2K 78643K 12 0
ACPI 1809 195K 288K 78643K 12938 0
file desc 6 17K 25K 78643K 199 0
sigio 0 0K 0K 78643K 3 0
proc 49 38K 54K 78643K 368 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 21 0
in_multi 49 2K 2K 78643K 77 0
ether_multi 1 0K 0K 78643K 9 0
mrt 0 0K 0K 78643K 4 0
ISOFS mount 1 32K 32K 78643K 1 0
MSDOSFS mount 1 16K 16K 78643K 1 0
ttys 49 228K 228K 78643K 49 0
exec 0 0K 1K 78643K 199 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 130 104K 104K 78643K 1416 0
UVM aobj 9 2K 3K 78643K 15 0
memdesc 1 4K 4K 78643K 1 0
crypto data 1 1K 1K 78643K 1 0
ip6_options 0 0K 0K 78643K 32 0
NDP 9 0K 0K 78643K 20 0
temp 91 3031K 3095K 78643K 2205 0
kqueue 3 4K 12K 78643K 21 0
SYN cache 2 16K 16K 78643K 2 0
ddb> show all pools
Name Size Requests Fail Releases Pgreq Pgrel Npage Hiwat Minpg Maxpg Idle
arp 64 6 0 1 1 0 1 1 0 8 0
rtpcb 80 37 0 35 1 0 1 1 0 8 0
rtentry 112 53 0 13 2 0 2 2 0 8 0
unpcb 120 136 0 127 1 0 1 1 0 8 0
syncache 264 4 0 4 1 1 0 1 0 8 0
sackhl 24 1 0 1 1 0 1 1 0 8 1
tcpqe 32 727 0 727 1 1 0 1 0 8 0
tcpcb 544 211 0 204 1 0 1 1 0 8 0
ipq 40 2 0 2 1 0 1 1 0 8 1
ipqe 40 4 0 4 1 0 1 1 0 8 1
inpcb 280 381 0 369 3 1 2 2 0 8 0
rttmr 72 2 0 2 1 0 1 1 0 8 1
nd6 48 7 0 3 1 0 1 1 0 8 0
pkpcb 40 2 0 2 1 1 0 1 0 8 0
ppxss 1128 2 0 2 1 0 1 1 0 8 1
art_heap8 4096 1 0 0 1 0 1 1 0 8 0
art_heap4 256 215 0 40 13 0 13 13 0 8 0
art_heap4: pool(0xffffffff8257f250:art_heap4): free list modified: page 0xfffffd8005d55000; item ordinal 0; addr 0xfffffd8005d55000 (p 0xfffffd8068a07000); offset 0x0=0x0
pool(art_heap4): free list modified: page 0xfffffd8005d55000; item ordinal 0; addr 0xfffffd8005d55000 (p 0xfffffd8068a07000); offset 0x0=0x0
art_heap4: pool(0xffffffff8257f250:art_heap4): page inconsistency: page 0xfffffd8005d55000; item ordinal 1; addr 0x2e4fab1fe8530871
art_table 32 217 0 40 2 0 2 2 0 8 0
art_node 16 52 0 12 1 0 1 1 0 8 0
sysvmsgpl 40 20 0 15 2 1 1 1 0 8 0
semapl 112 22 0 12 1 0 1 1 0 8 0
shmpl 112 13 0 6 1 0 1 1 0 8 0
dirhash 1024 17 0 0 3 0 3 3 0 8 0
dino2pl 256 1686 0 287 88 0 88 88 0 8 0
ffsino 240 1686 0 287 83 0 83 83 0 8 0
nchpl 144 2135 0 532 60 0 60 60 0 8 0
uvmvnodes 72 1776 0 0 33 0 33 33 0 8 0
vnodes 208 1776 0 0 94 0 94 94 0 8 0
namei 1024 5414 0 5414 2 1 1 1 0 8 1
vcpupl 1984 10 0 0 2 0 2 2 0 8 0
vmpool 528 10 0 0 1 0 1 1 0 8 0
scxspl 192 6761 0 6761 1 0 1 1 0 8 1
plimitpl 152 29 0 22 1 0 1 1 0 8 0
sigapl 424 386 0 356 4 0 4 4 0 8 0
futexpl 56 4017 0 4016 2 1 1 1 0 8 0
knotepl 112 88 0 69 1 0 1 1 0 8 0
kqueuepl 144 126 0 122 1 0 1 1 0 8 0
pipelkpl 16 92 0 82 1 0 1 1 0 8 0
pipepl 120 184 0 165 1 0 1 1 0 8 0
fdescpl 432 371 0 356 2 0 2 2 0 8 0
filepl 120 2296 0 2193 4 0 4 4 0 8 0
lockfpl 104 34 0 33 1 0 1 1 0 8 0
lockfspl 48 15 0 14 1 0 1 1 0 8 0
sessionpl 112 17 0 7 1 0 1 1 0 8 0
pgrppl 48 36 0 26 1 0 1 1 0 8 0
ucredpl 96 208 0 201 1 0 1 1 0 8 0
zombiepl 144 356 0 356 1 0 1 1 0 8 1
processpl 920 386 0 356 4 0 4 4 0 8 0
procpl 624 681 0 641 5 1 4 4 0 8 0
sosppl 128 5 0 5 2 1 1 1 0 8 1
sockpl 400 559 0 536 3 0 3 3 0 8 0
mcl64k 65536 11 0 11 3 2 1 1 0 8 1
mcl16k 16384 2 0 2 2 1 1 1 0 8 1
mcl12k 12288 5 0 5 3 3 0 1 0 8 0
mcl9k 9216 3 0 3 2 1 1 1 0 8 1
mcl8k 8192 3 0 3 3 2 1 1 0 8 1
mcl4k 4096 23 0 23 3 2 1 1 0 8 1
mcl2k 2048 64575 0 64511 25 16 9 20 0 8 0
mtagpl 80 19 0 2 2 1 1 1 0 8 0
mbufpl 256 104111 0 103928 18 6 12 13 0 8 0
bufpl 280 3532 0 133 243 0 243 243 0 8 0
anonpl 16 61509 0 47172 76 1 75 75 0 107 17
amapchunkpl 152 1957 0 1811 12 2 10 10 0 158 4
amappl16 192 2118 0 1355 54 8 46 50 0 8 7
amappl15 184 95 0 91 1 0 1 1 0 8 0
amappl14 176 26 0 20 1 0 1 1 0 8 0
amappl13 168 25 0 24 1 0 1 1 0 8 0
amappl12 160 115 0 107 2 1 1 1 0 8 0
amappl11 152 116 0 105 1 0 1 1 0 8 0
amappl10 144 17 0 11 1 0 1 1 0 8 0
amappl9 136 369 0 368 1 0 1 1 0 8 0
amappl8 128 316 0 278 2 0 2 2 0 8 0
amappl7 120 107 0 95 1 0 1 1 0 8 0
amappl6 112 95 0 91 1 0 1 1 0 8 0
amappl5 104 313 0 301 1 0 1 1 0 8 0
amappl4 96 427 0 397 1 0 1 1 0 8 0
amappl3 88 105 0 100 1 0 1 1 0 8 0
amappl2 80 2229 0 2154 2 0 2 2 0 8 0
amappl1 72 16311 0 15882 24 15 9 17 0 8 0
amappl 80 924 0 874 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 14 0 6 1 0 1 1 0 8 0
uaddrrnd 24 381 0 356 1 0 1 1 0 8 0
uaddrbest 32 2 0 0 1 0 1 1 0 8 0
uaddr 24 381 0 356 1 0 1 1 0 8 0
vmmpekpl 168 6645 0 6617 2 0 2 2 0 8 0
vmmpepl 168 53984 0 51996 115 20 95 98 0 357 8
vmsppl 272 380 0 356 2 0 2 2 0 8 0
pdppl 4096 768 0 722 7 1 6 6 0 8 0
pvpl 32 196512 0 179489 187 2 185 185 0 265 47
pmappl 200 380 0 356 2 0 2 2 0 8 0
extentpl 40 53 0 36 1 0 1 1 0 8 0
phpool 112 264 0 34 7 0 7 7 0 8 0
ddb> machine ddbcpu 0
No such command
ddb> trace
db_enter() at db_enter+0x18 sys/arch/amd64/amd64/db_interface.c:398
panic(ffffffff822521a9) at panic+0x15c sys/kern/subr_prf.c:207
pool_do_get(ffffffff8257f250,a,ffff80001d81f8c8) at pool_do_get+0x42a sys/kern/subr_pool.c:738
pool_get(ffffffff8257f250,a) at pool_get+0xb5 sys/kern/subr_pool.c:581
art_table_get(ffff800000063a40,fffffd8057dfc128,10) at art_table_get+0x12e sys/net/art.c:722
art_insert(ffff800000063a40,fffffd80687d2b60,ffff800000064264,20) at art_insert+0x155 sys/net/art.c:387
rtable_insert(0,ffff800000064260,0,ffff8000006b5258,1,fffffd8057df58c8) at rtable_insert+0x2b4 sys/net/rtable.c:554
rtrequest(1,ffff80001d81fbe8,1,ffff80001d81fcb0,0) at rtrequest+0x8be sys/net/route.c:941
rt_ifa_add(ffff8000006b5200,440004,ffff8000006b5268,0) at rt_ifa_add+0x25c sys/net/route.c:1131
in_ifinit(ffff800000a01800,ffff8000006b5200,ffff80001d81ff90,0) at in_ifinit+0x3cc
in_ioctl_set_ifaddr(8020690c,ffff80001d81ff80,ffff800000a01800,1) at in_ioctl_set_ifaddr+0x264 sys/netinet/in.c:399
in_ioctl(8020690c,ffff80001d81ff80,ffff800000a01800,1) at in_ioctl+0x2d8 sys/netinet/in.c:243
ifioctl(fffffd8057ecab00,8020690c,ffff80001d81ff80,ffff80001d75d770) at ifioctl+0xe60 sys/net/if.c:2289
sys_ioctl(ffff80001d75d770,ffff80001d820098,ffff80001d8200e0) at sys_ioctl+0x4a1
syscall(ffff80001d820160) at syscall+0x507 sys/arch/amd64/amd64/trap.c:570
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0xef6b61758c0, count: -16
ddb> machine ddbcpu 1
No such command
ddb> trace
db_enter() at db_enter+0x18 sys/arch/amd64/amd64/db_interface.c:398
panic(ffffffff822521a9) at panic+0x15c sys/kern/subr_prf.c:207
pool_do_get(ffffffff8257f250,a,ffff80001d81f8c8) at pool_do_get+0x42a sys/kern/subr_pool.c:738
pool_get(ffffffff8257f250,a) at pool_get+0xb5 sys/kern/subr_pool.c:581
art_table_get(ffff800000063a40,fffffd8057dfc128,10) at art_table_get+0x12e sys/net/art.c:722
art_insert(ffff800000063a40,fffffd80687d2b60,ffff800000064264,20) at art_insert+0x155 sys/net/art.c:387
rtable_insert(0,ffff800000064260,0,ffff8000006b5258,1,fffffd8057df58c8) at rtable_insert+0x2b4 sys/net/rtable.c:554
rtrequest(1,ffff80001d81fbe8,1,ffff80001d81fcb0,0) at rtrequest+0x8be sys/net/route.c:941
rt_ifa_add(ffff8000006b5200,440004,ffff8000006b5268,0) at rt_ifa_add+0x25c sys/net/route.c:1131
in_ifinit(ffff800000a01800,ffff8000006b5200,ffff80001d81ff90,0) at in_ifinit+0x3cc
in_ioctl_set_ifaddr(8020690c,ffff80001d81ff80,ffff800000a01800,1) at in_ioctl_set_ifaddr+0x264 sys/netinet/in.c:399
in_ioctl(8020690c,ffff80001d81ff80,ffff800000a01800,1) at in_ioctl+0x2d8 sys/netinet/in.c:243
ifioctl(fffffd8057ecab00,8020690c,ffff80001d81ff80,ffff80001d75d770) at ifioctl+0xe60 sys/net/if.c:2289
sys_ioctl(ffff80001d75d770,ffff80001d820098,ffff80001d8200e0) at sys_ioctl+0x4a1
syscall(ffff80001d820160) at syscall+0x507 sys/arch/amd64/amd64/trap.c:570
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0xef6b61758c0, count: -16


---
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.
Reply all
Reply to author
Forward
0 new messages