assert "map->limit == rtmap_limit" failed in rtable.c

0 views
Skip to first unread message

syzbot

unread,
Jul 12, 2024, 2:30:32 PM (5 days ago) Jul 12
to syzkaller-o...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: e24fbf55691f Add pool to allocate individual rtkit task ar..
git tree: openbsd
console output: https://syzkaller.appspot.com/x/log.txt?x=17cf0e49980000
kernel config: https://syzkaller.appspot.com/x/.config?x=1bc15e68cd2a49e5
dashboard link: https://syzkaller.appspot.com/bug?extid=13ac5ef8ac8c36f76765

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

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/c1ad9ae2bfeb/disk-e24fbf55.raw.xz
bsd.gdb: https://storage.googleapis.com/syzbot-assets/2ce00c1b59ce/bsd-e24fbf55.gdb.xz
kernel image: https://storage.googleapis.com/syzbot-assets/405d14492caa/kernel-e24fbf55.xz

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

panic: kernel diagnostic assertion "map->limit == rtmap_limit" failed: file "/syzkaller/managers/main/kernel/sys/net/rtable.c", line 131
Stopped at db_enter+0x25: addq $0x8,%rsp
TID PID UID PRFLAGS PFLAGS CPU COMMAND
*375388 82227 0 0x8000000 0x4000000 0 syz-executor
db_enter() at db_enter+0x25 sys/arch/amd64/amd64/db_interface.c:437
panic(ffffffff830a2e37) at panic+0x1cf sys/kern/subr_prf.c:198
__assert(ffffffff8305a8b0,ffffffff8302ad2b,83,ffffffff8309b523) at __assert+0x29
rtmap_grow(2c,21) at rtmap_grow+0x1f3 sys/net/rtable.c:131
rtable_add(2b) at rtable_add+0x279
if_createrdomain(2b,ffff80000119d800) at if_createrdomain+0x40 sys/net/if.c:1947
ifioctl(fffffd806ccb07e8,8020699f,ffff8000376434b0,ffff800037676028) at ifioctl+0x19be sys/net/if.c:2296
sys_ioctl(ffff800037676028,ffff800037643690,ffff8000376435e0) at sys_ioctl+0x678
syscall(ffff800037643690) at syscall+0x97e sys/arch/amd64/amd64/trap.c:577
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0x181dd640390, 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>
ddb> set $lines = 0
ddb> set $maxwidth = 0
ddb> show panic
*cpu0: kernel diagnostic assertion "map->limit == rtmap_limit" failed: file "/syzkaller/managers/main/kernel/sys/net/rtable.c", line 131
ddb> trace
db_enter() at db_enter+0x25 sys/arch/amd64/amd64/db_interface.c:437
panic(ffffffff830a2e37) at panic+0x1cf sys/kern/subr_prf.c:198
__assert(ffffffff8305a8b0,ffffffff8302ad2b,83,ffffffff8309b523) at __assert+0x29
rtmap_grow(2c,21) at rtmap_grow+0x1f3 sys/net/rtable.c:131
rtable_add(2b) at rtable_add+0x279
if_createrdomain(2b,ffff80000119d800) at if_createrdomain+0x40 sys/net/if.c:1947
ifioctl(fffffd806ccb07e8,8020699f,ffff8000376434b0,ffff800037676028) at ifioctl+0x19be sys/net/if.c:2296
sys_ioctl(ffff800037676028,ffff800037643690,ffff8000376435e0) at sys_ioctl+0x678
syscall(ffff800037643690) at syscall+0x97e sys/arch/amd64/amd64/trap.c:577
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0x181dd640390, count: -10
ddb> show registers
rdi 0
rsi 0x1
rbp 0xffff8000376431e0
rbx 0x21
rdx 0
rcx 0
rax 0xffff800037676028
r8 0
r9 0x8080808080808080
r10 0x2e0efc20181dcd4a
r11 0xa4759c53b34ce1e
r12 0
r13 0x6
r14 0
r15 0x1
rip 0xffffffff82c9cec5 db_enter+0x25
cs 0x8
rflags 0x246
rsp 0xffff8000376431d0
ss 0x10
db_enter+0x25: addq $0x8,%rsp
ddb> show proc
PROC (syz-executor) tid=375388 pid=82227 tcnt=4 stat=onproc
flags process=8000000 proc=4000000<THREAD>
runpri=50, usrpri=86, slppri=32, nice=20
wchan=0x0, wmesg=, ps_single=0x0 scnt=0 ecnt=0
forw=0xffffffffffffffff, list=0xffff800037676cd0,0xffff800037677478
process=0xffff80003760f558 user=0xffff80003763e000, vmspace=0xfffffd80685e0578
estcpu=36, cpticks=2, pctcpu=0.0, user=0, sys=2, intr=0
ddb> ps
PID TID PPID UID S FLAGS WAIT COMMAND
82227 68135 61576 0 3 0x8000080 fsleep syz-executor
*82227 375388 61576 0 7 0xc000000 syz-executor
82227 25226 61576 0 2 0xc000000 syz-executor
82227 124042 61576 0 3 0xc000080 fsleep syz-executor
15624 11713 26763 0 3 0x8000080 fsleep syz-executor
15624 232780 26763 0 3 0xc000080 kqread syz-executor
47231 159459 6867 0 2 0x8001006 sh
10755 518396 26558 0 2 0x8001006 arp
26558 78440 53599 0 3 0x810008a sigsusp sh
17880 101004 28901 0 3 0x8000080 fsleep syz-executor
17880 501658 28901 0 2 0xc000000 syz-executor
55275 63779 86471 0 3 0x8000080 fsleep syz-executor
55275 134523 86471 0 3 0xc000080 netio syz-executor
26763 131900 57068 0 2 0x8000482 syz-executor
6867 93329 57068 0 3 0x8000082 wait syz-executor
53599 299284 57068 0 3 0x8000082 wait syz-executor
99052 415118 57068 0 2 0x8000002 syz-executor
28901 386812 57068 0 2 0x8000482 syz-executor
86471 286242 57068 0 2 0x8000482 syz-executor
90496 313378 57068 0 3 0x8000082 piperd syz-executor
61576 222782 57068 0 2 0x8000482 syz-executor
83975 64534 0 0 3 0x14280 nfsidl nfsio
27619 512043 0 0 3 0x14280 nfsidl nfsio
84798 374192 0 0 3 0x14280 nfsidl nfsio
68136 82081 0 0 3 0x14280 nfsidl nfsio
56987 274697 0 0 3 0x14280 nfsidl nfsio
12822 219655 0 0 3 0x14280 nfsidl nfsio
74911 124670 0 0 3 0x14280 nfsidl nfsio
78472 383565 0 0 3 0x14280 nfsidl nfsio
87508 26769 0 0 3 0x14280 nfsidl nfsio
57861 75453 0 0 3 0x14280 nfsidl nfsio
36180 254428 0 0 3 0x14280 nfsidl nfsio
52796 219155 0 0 3 0x14280 nfsidl nfsio
99896 309028 0 0 3 0x14280 nfsidl nfsio
16301 132346 0 0 3 0x14280 nfsidl nfsio
86099 291601 0 0 3 0x14280 nfsidl nfsio
42996 168166 0 0 3 0x14280 nfsidl nfsio
95021 52681 0 0 3 0x14280 nfsidl nfsio
10953 104829 0 0 3 0x14280 nfsidl nfsio
55836 223272 0 0 3 0x14280 nfsidl nfsio
26961 259819 0 0 3 0x14280 nfsidl nfsio
44477 110590 0 0 3 0x14200 bored sosplice
57068 164834 8575 0 2 0x8000002 syz-executor
8575 262741 30510 0 3 0x810008a sigsusp ksh
30510 464958 11545 0 3 0x18000098 kqread sshd-session
11545 17212 41641 0 3 0x18000092 kqread sshd-session
36209 138040 1 0 3 0x18100083 ttyin getty
41641 80842 1 0 3 0x18000088 kqread sshd
92683 153588 35700 73 2 0x19100010 syslogd
35700 396415 1 0 3 0x18100082 sbwait syslogd
98855 283915 1 0 3 0x18100080 kqread resolvd
68637 61426 31131 77 3 0x18100092 kqread dhcpleased
77975 76451 31131 77 3 0x18100092 kqread dhcpleased
31131 37183 1 0 3 0x18000080 kqread dhcpleased
51211 348319 0 0 3 0x14200 bored smr
87408 305575 0 0 2 0x14200 zerothread
51951 280084 0 0 3 0x14200 aiodoned aiodoned
12781 150845 0 0 3 0x14200 syncer update
58990 157026 0 0 3 0x14200 cleaner cleaner
62758 500278 0 0 3 0x14200 reaper reaper
30495 331740 0 0 3 0x14200 pgdaemon pagedaemon
49025 481550 0 0 3 0x14200 bored viomb
62869 261229 0 0 3 0x40014200 acpi0 acpi0
163 121508 0 0 3 0x14200 bored softnet3
27121 306950 0 0 3 0x14200 bored softnet2
34118 408545 0 0 3 0x14200 bored softnet1
51086 419101 0 0 3 0x14200 bored softnet0
42370 260881 0 0 3 0x14200 bored systqmp
92486 236065 0 0 3 0x14200 bored systq
16724 484707 0 0 3 0x40014200 tmoslp softclock
15192 19764 0 0 3 0x40014200 idle0
1 520889 0 0 3 0x8000082 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 10180 10219K 10780K 166960K 11965 0
pcb 20 13K 14K 166960K 115 0
rtable 204 7K 8K 166960K 1137 0
pf 30 9K 11K 166960K 90 0
ifaddr 38 10K 11K 166960K 142 0
ifgroup 50 2K 2K 166960K 159 0
sysctl 2 0K 0K 166960K 3 0
counters 30 17K 17K 166960K 56 0
ioctlops 0 0K 4K 166960K 83 0
iov 0 0K 16K 166960K 13 0
mount 1 1K 1K 166960K 1 0
log 0 0K 0K 166960K 4 0
vnodes 1439 90K 91K 166960K 2001 0
UFS quota 1 32K 32K 166960K 1 0
UFS mount 5 36K 36K 166960K 5 0
shm 2 1K 5K 166960K 12 0
VM map 2 1K 1K 166960K 2 0
sem 12 0K 0K 166960K 33 0
dirhash 12 2K 2K 166960K 15 0
ACPI 1697 195K 286K 166960K 12548 0
file desc 17 61K 97K 166960K 720 0
sigio 0 0K 0K 166960K 70 0
proc 58 59K 116K 166960K 1136 0
subproc 104 6K 6K 166960K 416 0
NFS srvsock 1 0K 0K 166960K 1 0
NFS daemon 1 16K 16K 166960K 1 0
ip_moptions 0 0K 0K 166960K 42 0
in_multi 78 5K 7K 166960K 351 0
ether_multi 1 0K 0K 166960K 3 0
mrt 2 0K 0K 166960K 3 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 2 0K 1K 166960K 666 0
tdb 3 0K 0K 166960K 3 0
VM swap 8 62K 64K 166960K 10 0
UVM amap 200 71K 91K 166960K 6776 0
UVM aobj 16 2K 2K 166960K 16 0
pinsyscall 38 76K 104K 166960K 2337 0
memdesc 1 4K 4K 166960K 1 0
crypto data 1 1K 1K 166960K 1 0
ip6_options 0 0K 0K 166960K 21 0
NDP 15 0K 2K 166960K 97 0
temp 76 6808K 6872K 166960K 13134 0
kqueue 14 22K 26K 166960K 55 0
SYN cache 2 16K 16K 166960K 2 0
ddb> show all pools
Name Size Requests Fail Releases Pgreq Pgrel Npage Hiwat Minpg Maxpg Idle
rtpcb 120 216 0 213 3 2 1 3 0 8 0
rtentry 112 363 0 272 4 0 4 4 0 8 1
unpcb 144 407 0 386 4 3 1 4 0 8 0
syncache 336 4 0 4 2 1 1 1 0 8 1
tcpcb 808 155 0 148 7 6 1 7 0 8 0
arp 88 65 0 50 1 0 1 1 0 8 0
ipq 40 1 0 1 1 1 0 1 0 8 0
ipqe 40 3 0 3 1 1 0 1 0 8 0
inpcb 352 698 0 684 13 9 4 13 0 8 2
nd6 104 93 0 75 1 0 1 1 0 8 0
pkpcb 40 4 0 4 2 1 1 1 0 8 1
kcovpl 48 32 0 24 1 0 1 1 0 8 0
pfrktable 1344 2 0 2 1 1 0 1 0 8 0
pftag 88 4 0 4 1 1 0 1 0 8 0
pfrule 1344 5 0 5 1 1 0 1 0 8 0
art_heap8 4096 1 0 0 1 0 1 1 0 8 0
art_heap4 256 1440 0 1066 30 1 29 29 0 8 5
art_table 32 1441 0 1066 4 0 4 4 0 8 0
art_node 16 362 0 279 1 0 1 1 0 8 0
sysvmsgpl 40 1 0 1 1 1 0 1 0 8 0
semupl 112 2 0 2 1 1 0 1 0 8 0
semapl 112 30 0 20 1 0 1 1 0 8 0
shmpl 112 13 0 0 1 0 1 1 0 8 0
dirhash 1024 19 0 2 3 0 3 3 0 8 0
dino2pl 256 1984 0 443 97 0 97 97 0 8 0
ffsino 240 1984 0 443 91 0 91 91 0 8 0
nchpl 144 2572 0 872 64 0 64 64 0 8 0
uvmvnodes 80 2671 0 0 55 0 55 55 0 8 0
vnodes 216 2671 0 0 149 0 149 149 0 8 0
namei 1024 10914 0 10912 3 1 2 2 0 8 1
vmpool 664 1 0 1 1 1 0 1 0 8 0
kstatmem 264 74 0 52 2 0 2 2 0 8 0
scxspl 216 15260 0 15260 8 7 1 8 1 8 1
plimitpl 152 184 0 168 1 0 1 1 0 8 0
sigapl 424 973 0 907 8 0 8 8 0 8 0
futexpl 64 5404 0 5399 1 0 1 1 0 8 0
knotepl 120 11329 0 11279 2 0 2 2 0 8 0
kqueuepl 184 154 0 143 4 1 3 3 0 8 2
pipepl 288 204 0 176 3 0 3 3 0 8 0
fdescpl 432 936 0 907 5 1 4 5 0 8 0
filepl 120 5049 0 4799 18 6 12 16 0 8 4
lockfpl 104 206 0 204 2 1 1 2 0 8 0
lockfspl 48 100 0 98 1 0 1 1 0 8 0
sessionpl 144 45 0 37 1 0 1 1 0 8 0
pgrppl 48 80 0 64 1 0 1 1 0 8 0
ucredpl 104 376 0 365 1 0 1 1 0 8 0
zombiepl 144 926 0 926 2 1 1 1 0 8 1
processpl 1088 973 0 907 5 0 5 5 0 8 0
procpl 648 1367 0 1295 8 0 8 8 0 8 1
sockpl 504 1328 0 1290 44 35 9 29 0 8 4
mcl64k 65536 4 0 2 2 1 1 1 0 8 0
mcl8k 8192 10 0 10 1 1 0 1 0 8 0
mcl4k 4096 4 0 4 1 1 0 1 0 8 0
mcl2k 2048 6022 0 5924 24 11 13 24 0 8 0
mtagpl 96 10 0 10 1 1 0 1 0 8 0
mbufpl 256 11405 0 11217 22 7 15 22 0 8 2
bufpl 280 6208 0 91 437 0 437 437 0 8 0
anonpl 24 211167 0 208058 109 58 51 83 0 187 25
amapchunkpl 152 34315 0 33921 54 21 33 42 0 158 16
amappl16 200 4721 0 4712 14 11 3 14 0 8 2
amappl15 192 10 0 10 1 1 0 1 0 8 0
amappl14 184 153 0 142 1 0 1 1 0 8 0
amappl13 176 31 0 31 1 1 0 1 0 8 0
amappl12 168 1914 0 1886 3 1 2 3 0 8 0
amappl11 160 51 0 41 1 0 1 1 0 8 0
amappl10 152 12 0 12 1 1 0 1 0 8 0
amappl9 144 168 0 168 1 1 0 1 0 8 0
amappl8 136 59 0 58 1 0 1 1 0 8 0
amappl7 128 146 0 136 1 0 1 1 0 8 0
amappl6 120 396 0 393 1 0 1 1 0 8 0
amappl5 112 214 0 206 1 0 1 1 0 8 0
amappl4 104 354 0 337 1 0 1 1 0 8 0
amappl3 96 4101 0 4012 5 1 4 4 0 8 1
amappl2 88 912 0 856 2 0 2 2 0 8 0
amappl1 80 10610 0 10083 14 2 12 14 0 8 0
amappl 88 6258 0 6114 5 0 5 5 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 15 0 0 1 0 1 1 0 8 0
uaddrrnd 24 937 0 908 1 0 1 1 0 8 0
uaddrbest 32 2 0 0 1 0 1 1 0 8 0
uaddr 24 937 0 908 1 0 1 1 0 8 0
vmmpekpl 168 9157 0 9109 3 0 3 3 0 8 0
vmmpepl 168 65783 0 64166 90 9 81 89 0 357 6
vmsppl 344 936 0 908 4 1 3 4 0 8 0
rwobjpl 24 25243 0 21735 22 0 22 22 0 8 0
pdppl 4096 1881 0 1816 129 58 71 83 0 8 6
pvpl 32 600931 0 592003 478 248 230 334 0 265 145
pmappl 216 936 0 908 3 1 2 3 0 8 0
extentpl 40 56 0 38 1 0 1 1 0 8 0
phpool 112 468 0 125 11 0 11 11 0 8 0
ddb> machine ddbcpu 0
No such command
ddb> trace
db_enter() at db_enter+0x25 sys/arch/amd64/amd64/db_interface.c:437
panic(ffffffff830a2e37) at panic+0x1cf sys/kern/subr_prf.c:198
__assert(ffffffff8305a8b0,ffffffff8302ad2b,83,ffffffff8309b523) at __assert+0x29
rtmap_grow(2c,21) at rtmap_grow+0x1f3 sys/net/rtable.c:131
rtable_add(2b) at rtable_add+0x279
if_createrdomain(2b,ffff80000119d800) at if_createrdomain+0x40 sys/net/if.c:1947
ifioctl(fffffd806ccb07e8,8020699f,ffff8000376434b0,ffff800037676028) at ifioctl+0x19be sys/net/if.c:2296
sys_ioctl(ffff800037676028,ffff800037643690,ffff8000376435e0) at sys_ioctl+0x678
syscall(ffff800037643690) at syscall+0x97e sys/arch/amd64/amd64/trap.c:577
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0x181dd640390, count: -10
ddb> machine ddbcpu 1
No such command
ddb> trace
db_enter() at db_enter+0x25 sys/arch/amd64/amd64/db_interface.c:437
panic(ffffffff830a2e37) at panic+0x1cf sys/kern/subr_prf.c:198
__assert(ffffffff8305a8b0,ffffffff8302ad2b,83,ffffffff8309b523) at __assert+0x29
rtmap_grow(2c,21) at rtmap_grow+0x1f3 sys/net/rtable.c:131
rtable_add(2b) at rtable_add+0x279
if_createrdomain(2b,ffff80000119d800) at if_createrdomain+0x40 sys/net/if.c:1947
ifioctl(fffffd806ccb07e8,8020699f,ffff8000376434b0,ffff800037676028) at ifioctl+0x19be sys/net/if.c:2296
sys_ioctl(ffff800037676028,ffff800037643690,ffff8000376435e0) at sys_ioctl+0x678
syscall(ffff800037643690) at syscall+0x97e sys/arch/amd64/amd64/trap.c:577
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0x181dd640390, count: -10


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