panic: ifa_update_broadaddr does not support dynamicW lAeRnNgIthNG

2 views
Skip to first unread message

syzbot

unread,
Sep 13, 2019, 8:29:09 PM9/13/19
to syzkaller-o...@googlegroups.com
Hello,

syzbot found the following crash on:

HEAD commit: 33d1bf81 Plug mem leaks on error paths, based in part on g..
git tree: openbsd
console output: https://syzkaller.appspot.com/x/log.txt?x=17903fa5600000
kernel config: https://syzkaller.appspot.com/x/.config?x=26ca0a9c07f16a3a
dashboard link: https://syzkaller.appspot.com/bug?extid=bc8ed4d6c1eeffa1915f

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

login: panic: ifa_update_broadaddr does not support dynamicW lAeRnNgIthNG
:
SStPoL pNpOeTd aLOtWERED ON SYSCALL 3 4 EX I T 0 9d
b
_enter+0x18: addq $0x8,%rsp
TID PID UID PRFLAGS PFLAGS CPU COMMAND
*457939 48186 0 0 0x4000000 0 syz-executor.1
475099 43690 74 0x100012 0 1 pflogd
db_enter() at db_enter+0x18 sys/arch/amd64/amd64/db_interface.c:398
panic() at panic+0x15c sys/kern/subr_prf.c:207
ifa_update_broadaddr(ffff800000ad3800,ffff800000acdb00,ffff800022ba5050) at
ifa_update_broadaddr+0x61 sys/net/if.c:2970
in_ioctl(80206913,ffff800022ba5040,ffff800000ad3800,1) at in_ioctl+0x463
sys/netinet/in.c:299
ifioctl(fffffd8065f82198,80206913,ffff800022ba5040,ffff800020acea08) at
ifioctl+0xb64 sys/net/if.c:2202
sys_ioctl(ffff800020acea08,ffff800022ba5158,ffff800022ba51a0) at
sys_ioctl+0x5b9
syscall(ffff800022ba5220) at syscall+0x4a4 mi_syscall
sys/sys/syscall_mi.h:92 [inline]
syscall(ffff800022ba5220) at syscall+0x4a4 sys/arch/amd64/amd64/trap.c:555
Xsyscall(6,0,ffffffffffffff36,0,3,981653d2010) at Xsyscall+0x128
end of kernel
end trace frame: 0x983ca7b5190, count: 7
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
ifa_update_broadaddr does not support dynamic length
ddb{0}> trace
db_enter() at db_enter+0x18 sys/arch/amd64/amd64/db_interface.c:398
panic() at panic+0x15c sys/kern/subr_prf.c:207
ifa_update_broadaddr(ffff800000ad3800,ffff800000acdb00,ffff800022ba5050) at
ifa_update_broadaddr+0x61 sys/net/if.c:2970
in_ioctl(80206913,ffff800022ba5040,ffff800000ad3800,1) at in_ioctl+0x463
sys/netinet/in.c:299
ifioctl(fffffd8065f82198,80206913,ffff800022ba5040,ffff800020acea08) at
ifioctl+0xb64 sys/net/if.c:2202
sys_ioctl(ffff800020acea08,ffff800022ba5158,ffff800022ba51a0) at
sys_ioctl+0x5b9
syscall(ffff800022ba5220) at syscall+0x4a4 mi_syscall
sys/sys/syscall_mi.h:92 [inline]
syscall(ffff800022ba5220) at syscall+0x4a4 sys/arch/amd64/amd64/trap.c:555
Xsyscall(6,0,ffffffffffffff36,0,3,981653d2010) at Xsyscall+0x128
end of kernel
end trace frame: 0x983ca7b5190, count: -8
ddb{0}> show registers
rdi 0xffffffff81d5a187 db_enter+0x17
rsi 0x1932 __ALIGN_SIZE+0x932
rbp 0xffff800022ba4de0
rbx 0xffff800022ba4e90
rdx 0x1933 __ALIGN_SIZE+0x933
rcx 0xffff800021ba0000
rax 0xffff800021ba0000
r8 0xffffffff819b63bf kprintf+0x16f
r9 0x1
r10 0x25
r11 0x5fe3ddf670b6b1ca
r12 0x3000000008
r13 0xffff800022ba4df0
r14 0x100
r15 0x1
rip 0xffffffff81d5a188 db_enter+0x18
cs 0x8
rflags 0x246
rsp 0xffff800022ba4dd0
ss 0x10
db_enter+0x18: addq $0x8,%rsp
ddb{0}> show proc
PROC (syz-executor.1) pid=457939 stat=onproc
flags process=0 proc=4000000<THREAD>
pri=86, usrpri=86, nice=20
forw=0xffffffffffffffff, list=0xffff800020acec80,0xffffffff8265d560
process=0xffff800020adce00 user=0xffff800022ba0000,
vmspace=0xfffffd807f00bcf0
estcpu=36, cpticks=1, pctcpu=0.0
user=0, sys=1, intr=0
ddb{0}> ps
PID TID PPID UID S FLAGS WAIT COMMAND
48186 394134 71772 0 2 0 syz-executor.1
*48186 457939 71772 0 7 0x4000000 syz-executor.1
71772 131067 28920 0 3 0x82 nanosleep syz-executor.1
46579 106 1 0 3 0x100083 ttyin getty
49220 111928 28920 0 3 0x82 nanosleep syz-executor.0
85361 137014 0 0 3 0x14200 bored sosplice
28920 240689 36124 0 3 0x82 thrsleep syz-fuzzer
28920 42312 36124 0 3 0x4000082 nanosleep syz-fuzzer
28920 267384 36124 0 3 0x4000082 thrsleep syz-fuzzer
28920 506738 36124 0 3 0x4000082 kqread syz-fuzzer
28920 17223 36124 0 3 0x4000082 thrsleep syz-fuzzer
28920 47326 36124 0 3 0x4000082 thrsleep syz-fuzzer
28920 447777 36124 0 3 0x4000082 thrsleep syz-fuzzer
28920 144573 36124 0 3 0x4000082 thrsleep syz-fuzzer
28920 162846 36124 0 3 0x4000082 thrsleep syz-fuzzer
28920 465908 36124 0 3 0x4000082 thrsleep syz-fuzzer
36124 244339 83490 0 3 0x10008a pause ksh
83490 522441 33418 0 3 0x92 select sshd
33418 91154 1 0 3 0x80 select sshd
43690 475099 34530 74 7 0x100012 pflogd
34530 280456 1 0 3 0x80 netio pflogd
42802 167689 42071 73 3 0x100090 kqread syslogd
42071 452602 1 0 3 0x100082 netio syslogd
47462 238603 1 77 3 0x100090 poll dhclient
681 451571 1 0 3 0x80 poll dhclient
4971 493464 0 0 3 0x14200 pgzero zerothread
58717 264556 0 0 3 0x14200 aiodoned aiodoned
19575 59119 0 0 3 0x14200 syncer update
48739 459787 0 0 3 0x14200 cleaner cleaner
66395 317953 0 0 3 0x14200 reaper reaper
2014 3903 0 0 3 0x14200 pgdaemon pagedaemon
14768 386123 0 0 3 0x14200 bored crynlk
53151 54763 0 0 3 0x14200 bored crypto
86912 118175 0 0 3 0x40014200 acpi0 acpi0
43773 308404 0 0 3 0x40014200 idle1
31277 216136 0 0 3 0x14200 bored softnet
80874 154513 0 0 3 0x14200 bored systqmp
75936 23339 0 0 3 0x14200 bored systq
26123 465607 0 0 2 0x40014200 softclock
80462 104512 0 0 3 0x40014200 idle0
85396 157316 0 0 3 0x14200 bored smr
1 116333 0 0 3 0x82 wait init
0 0 -1 0 3 0x10200 scheduler swapper
ddb{0}> show all locks
Process 48186 (syz-executor.1) thread 0xffff800020acea08 (457939)
exclusive rwlock netlock r = 0 (0xffffffff82489128)
#0 witness_lock+0x52e sys/kern/subr_witness.c:1163
#1 in_ioctl+0x142
#2 ifioctl+0xb64 sys/net/if.c:2202
#3 sys_ioctl+0x5b9
#4 syscall+0x4a4 mi_syscall sys/sys/syscall_mi.h:92 [inline]
#4 syscall+0x4a4 sys/arch/amd64/amd64/trap.c:555
#5 Xsyscall+0x128
exclusive kernel_lock &kernel_lock r = 0 (0xffffffff82672ed0)
#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 Kern Lim
devbuf 9569 6573K 7932K 78643K 15576 0 0
pcb 13 10K 12K 78643K 213 0 0
rtable 123 5K 5K 78643K 760 0 0
ifaddr 74 15K 16K 78643K 265 0 0
counters 39 33K 33K 78643K 39 0 0
ioctlops 0 0K 4K 78643K 1511 0 0
iov 0 0K 18K 78643K 191 0 0
mount 1 1K 1K 78643K 1 0 0
vnodes 1229 77K 77K 78643K 3127 0 0
UFS quota 1 32K 32K 78643K 1 0 0
UFS mount 5 36K 36K 78643K 5 0 0
shm 2 1K 5K 78643K 25 0 0
VM map 2 1K 1K 78643K 4 0 0
sem 12 0K 1K 78643K 231 0 0
dirhash 12 2K 2K 78643K 12 0 0
ACPI 1808 196K 290K 78643K 12765 0 0
file desc 5 13K 25K 78643K 1627 0 0
sigio 0 0K 0K 78643K 16 0 0
proc 62 63K 95K 78643K 845 0 0
subproc 32 2K 2K 78643K 119 0 0
NFS srvsock 1 0K 0K 78643K 1 0 0
NFS daemon 1 16K 16K 78643K 1 0 0
ip_moptions 0 0K 0K 78643K 168 0 0
in_multi 33 2K 2K 78643K 108 0 0
ether_multi 1 0K 0K 78643K 3 0 0
mrt 0 0K 0K 78643K 2 0 0
ISOFS mount 1 32K 32K 78643K 1 0 0
MSDOSFS mount 1 16K 16K 78643K 1 0 0
ttys 96 424K 424K 78643K 96 0 0
exec 0 0K 1K 78643K 402 0 0
pagedep 1 8K 8K 78643K 1 0 0
inodedep 1 32K 32K 78643K 1 0 0
newblk 1 0K 0K 78643K 1 0 0
VM swap 7 26K 26K 78643K 7 0 0
UVM amap 117 22K 31K 78643K 6482 0 0
UVM aobj 75 3K 3K 78643K 79 0 0
memdesc 1 4K 4K 78643K 1 0 0
crypto data 1 1K 1K 78643K 1 0 0
ip6_options 0 0K 0K 78643K 213 0 0
NDP 16 0K 0K 78643K 75 0 0
temp 199 3552K 3629K 78643K 15423 0 0
kqueue 0 0K 0K 78643K 9 0 0
SYN cache 2 16K 16K 78643K 2 0 0
ddb{0}> show all pools
Name Size Requests Fail Releases Pgreq Pgrel Npage Hiwat Minpg Maxpg
Idle
arp 64 26 0 18 1 0 1 1 0
8 0
plcache 128 20 0 0 1 0 1 1 0
8 0
rtpcb 80 101 0 99 1 0 1 1 0
8 0
rtentry 112 110 0 62 2 0 2 2 0
8 0
unpcb 120 760 0 749 2 1 1 2 0
8 0
syncache 264 4 0 4 1 1 0 1 0
8 0
tcpqe 32 6390 0 6390 2 2 0 2 0
8 0
tcpcb 544 367 0 363 1 0 1 1 0
8 0
inpcb 280 1897 0 1888 15 13 2 13 0
8 1
nd6 48 12 0 8 1 0 1 1 0
8 0
pkpcb 40 7 0 7 4 4 0 1 0
8 0
ppxss 1128 35 0 35 4 3 1 1 0
8 1
pffrag 232 2 0 2 1 1 0 1 0
482 0
pffrnode 88 2 0 2 1 1 0 1 0
8 0
pffrent 40 6 0 6 1 1 0 1 0
8 0
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 57 0 33 1 0 1 1 0
8 0
pfstkey 112 57 0 33 1 0 1 1 0
8 0
pfstate 328 57 0 33 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 455 0 227 19 4 15 15 0
8 0
art_table 32 456 0 227 2 0 2 2 0
8 0
art_node 16 108 0 64 1 0 1 1 0
8 0
sysvmsgpl 40 13 0 9 2 1 1 1 0
8 0
semapl 112 229 0 219 1 0 1 1 0
8 0
shmpl 112 77 0 4 3 0 3 3 0
8 0
dirhash 1024 17 0 0 3 0 3 3 0
8 0
dino1pl 128 4182 0 2778 46 0 46 46 0
8 0
ffsino 272 4182 0 2778 95 0 95 95 0
8 0
nchpl 144 7210 0 5586 61 0 61 61 0
8 0
uvmvnodes 72 5456 0 0 100 0 100 100 0
8 0
vnodes 208 5456 0 0 288 0 288 288 0
8 0
namei 1024 27252 0 27252 2 1 1 1 0
8 1
percpumem 16 30 0 0 1 0 1 1 0
8 0
vmpool 552 2 0 2 1 1 0 1 0
8 0
scsiplug 64 2 0 2 1 1 0 1 0
8 0
scxspl 192 18691 0 18691 19 18 1 7 0
8 1
plimitpl 152 169 0 161 1 0 1 1 0
8 0
sigapl 432 1814 0 1799 3 1 2 3 0
8 0
futexpl 56 30544 0 30544 1 0 1 1 0
8 1
knotepl 112 408 0 389 2 1 1 2 0
8 0
kqueuepl 104 359 0 357 1 0 1 1 0
8 0
pipepl 112 1114 0 1095 5 3 2 2 0
8 1
fdescpl 488 1815 0 1799 3 0 3 3 0
8 0
filepl 152 17921 0 17820 18 11 7 13 0
8 3
lockfpl 104 494 0 493 1 0 1 1 0
8 0
lockfspl 48 191 0 190 1 0 1 1 0
8 0
sessionpl 112 25 0 14 1 0 1 1 0
8 0
pgrppl 48 41 0 30 1 0 1 1 0
8 0
ucredpl 96 5830 0 5821 1 0 1 1 0
8 0
zombiepl 144 1799 0 1798 2 1 1 1 0
8 0
processpl 896 1831 0 1798 4 0 4 4 0
8 0
procpl 632 5456 0 5413 6 1 5 5 0
8 0
srpgc 64 10 0 10 3 3 0 1 0
8 0
sosppl 128 25 0 25 4 3 1 1 0
8 1
sockpl 384 2797 0 2776 25 20 5 21 0
8 2
mcl64k 65536 8 0 0 1 0 1 1 0
8 0
mcl16k 16384 2 0 0 1 0 1 1 0
8 0
mcl12k 12288 10 0 0 1 0 1 1 0
8 0
mcl9k 9216 14 0 0 1 0 1 1 0
8 0
mcl8k 8192 9 0 0 2 0 2 2 0
8 0
mcl4k 4096 9 0 0 2 0 2 2 0
8 0
mcl2k2 2112 5 0 0 1 0 1 1 0
8 0
mcl2k 2048 213 0 0 24 0 24 24 0
8 0
mtagpl 80 51 0 0 1 0 1 1 0
8 0
mbufpl 256 311 0 0 14 0 14 14 0
8 0
bufpl 256 10679 0 3631 441 0 441 441 0
8 0
anonpl 16 170331 0 158563 85 21 64 72 0
124 2
amapchunkpl 152 11063 0 10927 26 15 11 11 0
158 3
amappl16 192 7862 0 7058 53 12 41 52 0
8 0
amappl15 184 337 0 336 1 0 1 1 0
8 0
amappl14 176 639 0 634 1 0 1 1 0
8 0
amappl13 168 1 0 0 1 0 1 1 0
8 0
amappl12 160 10 0 9 2 1 1 1 0
8 0
amappl11 152 66 0 51 1 0 1 1 0
8 0
amappl10 144 270 0 266 1 0 1 1 0
8 0
amappl9 136 1204 0 1198 1 0 1 1 0
8 0
amappl8 128 769 0 738 4 2 2 2 0
8 0
amappl7 120 321 0 315 1 0 1 1 0
8 0
amappl6 112 86 0 74 1 0 1 1 0
8 0
amappl5 104 175 0 161 1 0 1 1 0
8 0
amappl4 96 1672 0 1639 2 1 1 2 0
8 0
amappl3 88 1025 0 1017 1 0 1 1 0
8 0
amappl2 80 13518 0 13444 3 1 2 3 0
8 0
amappl1 72 49033 0 48594 26 16 10 20 0
8 0
amappl 80 5791 0 5747 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
dma64 64 259 0 259 1 1 0 1 0
8 0
dma32 32 7 0 7 1 1 0 1 0
8 0
dma16 16 17 0 17 1 1 0 1 0
8 0
aobjpl 64 78 0 4 2 0 2 2 0
8 0
uaddrrnd 24 1817 0 1799 1 0 1 1 0
8 0
uaddrbest 32 2 0 0 1 0 1 1 0
8 0
uaddr 24 1817 0 1799 1 0 1 1 0
8 0
vmmpekpl 168 17468 0 17435 2 0 2 2 0
8 0
vmmpepl 168 226908 0 224955 188 72 116 116 0 357
25
vmsppl 368 1814 0 1799 2 0 2 2 0
8 0
pdppl 4096 3641 0 3602 7 1 6 6 0
8 0
pvpl 32 504106 0 489159 222 57 165 174 0 265
16
pmappl 232 1816 0 1801 3 2 1 2 0
8 0
extentpl 40 41 0 26 1 0 1 1 0
8 0
phpool 112 619 0 9 18 0 18 18 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.

Anton Lindqvist

unread,
Sep 14, 2019, 2:58:55 AM9/14/19
to syzbot, syzkaller-o...@googlegroups.com
#syz dup: panic: ifa_update_broadaddr does not support dynamic length
Reply all
Reply to author
Forward
0 new messages