syzbot


assert "rt->rt_ifa->ifa_ifp != NULL" failed: panic: kernel diagnostic assertion "!_kernel_lock_held()" failed in kern_fo

Status: closed as dup on 2019/10/08 12:44
Reported-by: syzbot+90021eadbb40e6619e30@syzkaller.appspotmail.com
First crash: 1671d, last: 1671d
Duplicate of
Title Repro Cause bisect Fix bisect Count Last Reported
assert "rt->rt_ifa->ifa_ifp != NULL" failed in route.c 830 1641d 1681d

Sample crash report:
panic: kernel diagnostic assertion "rt->rt_ifa->ifa_ifp != NULL" failed: panic: kernel diagnostic assertion "!_kernel_lock_held()" failed: file "/syzkaller/managers/multicore/kernel/sys/kern/kern_fork.c", line 690
Stopped at      db_enter+0x18:  addq    $0x8,%rsp
    TID    PID    UID     PRFLAGS     PFLAGS  CPU  COMMAND
 410848  44732      0           0  0x4000000    0  syz-executor.0
* 26409  44732      0           0  0x4000000    1  syz-executor.0
db_enter() at db_enter+0x18 sys/arch/amd64/amd64/db_interface.c:398
panic() at panic+0x15c sys/kern/subr_prf.c:207
__assert(ffffffff82206b81,ffffffff821f2dbb,2b2,ffffffff821d687e) at __assert+0x2b sys/kern/subr_prf.c:154
proc_trampoline_mp() at proc_trampoline_mp+0x123
end trace frame: 0x0, count: 11
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{1}> 
ddb{1}> set $lines = 0
ddb{1}> set $maxwidth = 0
ddb{1}> show panic
kernel diagnostic assertion "rt->rt_ifa->ifa_ifp != NULL" failed: file "/syzkaller/managers/multicore/kernel/sys/net/route.c", line 848
ddb{1}> 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
__assert(ffffffff82206b81,ffffffff821f2dbb,2b2,ffffffff821d687e) at __assert+0x2b sys/kern/subr_prf.c:154
proc_trampoline_mp() at proc_trampoline_mp+0x123
end trace frame: 0x0, count: -4
ddb{1}> show registers
rdi                                0
rsi                              0x1
rbp               0xffff800021c03ab0
rbx               0xffff800021c03b60
rdx               0xffff800020ab0c70
rcx                                0
rax                                0
r8                0xffffffff81928d4f    kprintf+0x16f
r9                               0x1
r10                             0x25
r11               0x177b7d5c46618d4c
r12                     0x3000000008
r13               0xffff800021c03ac0
r14                            0x104
r15                              0x1
rip               0xffffffff81f47b98    db_enter+0x18
cs                               0x8
rflags                         0x246
rsp               0xffff800021c03aa0
ss                              0x10
db_enter+0x18:  addq    $0x8,%rsp
ddb{1}> show proc
PROC (syz-executor.0) pid=26409 stat=onproc
    flags process=0 proc=4000000<THREAD>
    pri=86, usrpri=86, nice=20
    forw=0xffffffffffffffff, list=0xffff800020ab1160,0xffffffff8264b068
    process=0xffff800020add180 user=0xffff800021bfe000, vmspace=0xfffffd807f00a8a0
    estcpu=36, cpticks=1, pctcpu=0.0
    user=0, sys=1, intr=0
ddb{1}> ps
   PID     TID   PPID    UID  S       FLAGS  WAIT          COMMAND
 44732  431901   1564      0  2           0                syz-executor.0
 44732  410848   1564      0  7   0x4000000                syz-executor.0
 44732  265392   1564      0  2   0x4000000                syz-executor.0
*44732   26409   1564      0  7   0x4000000                syz-executor.0
 30630  274995   1039      0  2           0                syz-executor.1
 30630  259430   1039      0  3   0x4000080  piperd        syz-executor.1
  1564  520785  87759      0  3        0x82  nanosleep     syz-executor.0
  1039  193953  87759      0  3        0x82  nanosleep     syz-executor.1
 92527   67152      1      0  3    0x100083  ttyin         getty
  9227  105645      0      0  3     0x14200  acct          acct
 44890  342006      0      0  3     0x14200  bored         sosplice
 87759    1681   2504      0  3        0x82  thrsleep      syz-fuzzer
 87759   96939   2504      0  3   0x4000082  thrsleep      syz-fuzzer
 87759  285110   2504      0  3   0x4000082  thrsleep      syz-fuzzer
 87759  296489   2504      0  3   0x4000082  thrsleep      syz-fuzzer
 87759  519439   2504      0  3   0x4000082  thrsleep      syz-fuzzer
 87759   11146   2504      0  3   0x4000082  kqread        syz-fuzzer
 87759  337971   2504      0  3   0x4000082  thrsleep      syz-fuzzer
 87759  157831   2504      0  3   0x4000082  thrsleep      syz-fuzzer
 87759  278310   2504      0  3   0x4000082  thrsleep      syz-fuzzer
 87759  413839   2504      0  3   0x4000082  thrsleep      syz-fuzzer
  2504  121672  48935      0  3    0x10008a  pause         ksh
 48935  465079  56783      0  3        0x92  select        sshd
 56783  331203      1      0  3        0x80  select        sshd
 28420   52081   4666     74  3    0x100092  bpf           pflogd
  4666  125663      1      0  3        0x80  netio         pflogd
 75540    9099   7864     73  3    0x100090  kqread        syslogd
  7864    5242      1      0  3    0x100082  netio         syslogd
 75217  181272      1     77  3    0x100090  poll          dhclient
 50778   69867      1      0  3        0x80  poll          dhclient
 49380  339486      0      0  2     0x14200                zerothread
 17692  500181      0      0  3     0x14200  aiodoned      aiodoned
 76291  139377      0      0  3     0x14200  syncer        update
 78107  359327      0      0  3     0x14200  cleaner       cleaner
 97751  105029      0      0  3     0x14200  reaper        reaper
 91872   66403      0      0  3     0x14200  pgdaemon      pagedaemon
 52281  374681      0      0  3     0x14200  bored         crynlk
 35709  338549      0      0  3     0x14200  bored         crypto
 79497  132889      0      0  3  0x40014200  acpi0         acpi0
 24835  488495      0      0  3  0x40014200                idle1
 58488  513251      0      0  3     0x14200  bored         softnet
 51799  316299      0      0  3     0x14200  bored         systqmp
 96284  498224      0      0  3     0x14200  bored         systq
 85850  368248      0      0  3  0x40014200  bored         softclock
 65558   85711      0      0  3  0x40014200                idle0
 99810   38620      0      0  3     0x14200  bored         smr
     1  240149      0      0  3        0x82  wait          init
     0       0     -1      0  3     0x10200  scheduler     swapper
ddb{1}> show all locks
Process 44732 (syz-executor.0) thread 0xffff800020ab0ee8 (410848)
exclusive rwlock netlock r = 0 (0xffffffff824df898)
#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 = 1 (0xffffffff826426f0)
#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{1}> show malloc
           Type InUse  MemUse  HighUse   Limit  Requests Type Lim Kern Lim
         devbuf  9618   7232K    9280K  78643K     51026        0        0
            pcb    13      8K       8K  78643K       846        0        0
         rtable   138     14K      14K  78643K      4329        0        0
         ifaddr    97     25K      27K  78643K      1468        0        0
       counters    39     33K      33K  78643K        39        0        0
       ioctlops     0      0K       4K  78643K      1760        0        0
            iov     0      0K      24K  78643K       759        0        0
          mount     1      1K       1K  78643K         1        0        0
         vnodes  1224     77K      78K  78643K     11788        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        48        0        0
         VM map    48     24K      24K  78643K        62        0        0
            sem    12      0K       1K  78643K      6092        0        0
        dirhash    12      2K       2K  78643K        12        0        0
           ACPI  1808    196K     290K  78643K     12765        0        0
      file desc     6     17K      25K  78643K      6815        0        0
          sigio     0      0K       0K  78643K        54        0        0
           proc    62     63K      95K  78643K      2008        0        0
        subproc    32      2K       2K  78643K       510        0        0
    NFS srvsock     1      0K       0K  78643K         1        0        0
     NFS daemon     1     16K      16K  78643K         1        0        0
    ip_moptions     0      0K       1K  78643K       380        0        0
       in_multi    37      2K       2K  78643K       548        0        0
    ether_multi     1      0K       0K  78643K        49        0        0
            mrt     0      0K       0K  78643K        18        0        0
    ISOFS mount     1     32K      32K  78643K         1        0        0
  MSDOSFS mount     1     16K      16K  78643K         1        0        0
           ttys   102    450K     450K  78643K       102        0        0
           exec     0      0K       1K  78643K      1002        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   186    413K     413K  78643K     22623        0        0
       UVM aobj   130      6K       6K  78643K       132        0        0
        memdesc     1      4K       4K  78643K         1        0        0
    crypto data     1      1K       1K  78643K         1        0        0
    ip6_options     0      0K       1K  78643K       927        0        0
            NDP    22      0K       1K  78643K       417        0        0
           temp   244   3565K    4205K  78643K    134466        0        0
         kqueue     1      0K       0K  78643K        46        0        0
      SYN cache     2     16K      16K  78643K         2        0        0
ddb{1}> show all pools
Name      Size Requests Fail Releases Pgreq Pgrel Npage Hiwat Minpg Maxpg Idle
arp         64       98    0       90     1     0     1     1     0     8    0
plcache    128       20    0        0     1     0     1     1     0     8    0
rtpcb       80     1015    0     1013     1     0     1     1     0     8    0
rtentry    112      513    0      462     2     0     2     2     0     8    0
unpcb      120     2344    0     2332     1     0     1     1     0     8    0
syncache   264       27    0       27    10    10     0     1     0     8    0
tcpqe       32       57    0       57     5     5     0     1     0     8    0
tcpcb      544     1548    0     1544     2     1     1     2     0     8    0
inpcb      280    13570    0    13562    12    10     2     3     0     8    1
rttmr       72        5    0        5     4     4     0     1     0     8    0
ip6q        72        2    0        2     2     2     0     1     0     8    0
ip6af       40        3    0        3     1     1     0     1     0     8    0
nd6         48       82    0       78     2     1     1     1     0     8    0
pkpcb       40       23    0       23     8     8     0     1     0     8    0
swfcl       56        4    0        0     1     0     1     1     0     8    0
ppxss      1128     268    0      268    12    11     1     1     0     8    1
pffrag     232       58    0       58    17    17     0     1     0   482    0
pffrnode    88       58    0       58    17    17     0     1     0     8    0
pffrent     40     1367    0     1367    18    18     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      399    0      328     1     0     1     1     0     8    0
pfstkey    112      399    0      328     4     1     3     3     0     8    0
pfstate    328      399    0      328    12     5     7     8     0     8    0
pfrule     1360      21    0       16     2     1     1     2     0     8    0
art_heap8  4096      18    0       17    12     9     3     3     0     8    2
art_heap4  256     2289    0     2025    51    34    17    21     0     8    0
art_table   32     2307    0     2042     3     0     3     3     0     8    0
art_node    16      512    0      466     1     0     1     1     0     8    0
sysvmsgpl   40       11    0        4     1     0     1     1     0     8    0
semupl     112        4    0        4     2     2     0     1     0     8    0
semapl     112     6085    0     6075     1     0     1     1     0     8    0
shmpl      112      130    0        2     4     0     4     4     0     8    0
dirhash    1024      17    0        0     3     0     3     3     0     8    0
dino1pl    128    12136    0    10713    47     0    47    47     0     8    0
ffsino     272    12136    0    10713    96     0    96    96     0     8    0
nchpl      144    22485    0    20858    61     0    61    61     0     8    0
uvmvnodes   72     6136    0        0   112     0   112   112     0     8    0
vnodes     208     6136    0        0   323     0   323   323     0     8    0
namei      1024   73678    0    73678     2     1     1     1     0     8    1
percpumem   16       30    0        0     1     0     1     1     0     8    0
vcpupl     1984      46    0        0     6     0     6     6     0     8    0
vmpool     552       60    0       14     4     0     4     4     0     8    0
scsiplug    64        5    0        5     4     4     0     1     0     8    0
scxspl     192    83664    0    83664    35    33     2     7     0     8    2
plimitpl   152      330    0      322     1     0     1     1     0     8    0
sigapl     432     6934    0     6918     3     1     2     3     0     8    0
futexpl     56   154418    0   154418     1     0     1     1     0     8    1
knotepl    112     1291    0     1271     8     7     1     3     0     8    0
kqueuepl   104     2314    0     2311     2     1     1     2     0     8    0
pipepl     112     2520    0     2497     6     4     2     2     0     8    0
fdescpl    488     6935    0     6918     3     0     3     3     0     8    0
filepl     152    56522    0    56412    27    21     6     7     0     8    1
lockfpl    104     1709    0     1708     1     0     1     1     0     8    0
lockfspl    48      587    0      586     1     0     1     1     0     8    0
sessionpl  112       49    0       38     1     0     1     1     0     8    0
pgrppl      48       91    0       80     1     0     1     1     0     8    0
ucredpl     96     6101    0     6091     1     0     1     1     0     8    0
zombiepl   144     6918    0     6918     2     1     1     1     0     8    1
processpl  896     6952    0     6918     4     0     4     4     0     8    0
procpl     632    20352    0    20305     8     3     5     5     0     8    1
srpgc       64       53    0       53    19    19     0     1     0     8    0
sosppl     128     1450    0     1450     3     2     1     1     0     8    1
sockpl     384    17001    0    16979    26    21     5     5     0     8    2
mcl64k     65536     34    0        0     3     0     3     3     0     8    0
mcl16k     16384     25    0        0     4     1     3     3     0     8    0
mcl12k     12288     25    0        0     2     0     2     2     0     8    0
mcl9k      9216      15    0        0     2     0     2     2     0     8    0
mcl8k      8192      25    0        0     4     1     3     3     0     8    0
mcl4k      4096      33    0        0     5     2     3     3     0     8    0
mcl2k2     2112      11    0        0     1     0     1     1     0     8    0
mcl2k      2048     184    0        0    19     4    15    19     0     8    0
mtagpl      80      280    0        0     6     2     4     6     0     8    0
mbufpl     256      713    0        0    41     0    41    41     0     8    0
bufpl      256    26626    0    19578   441     0   441   441     0     8    0
anonpl      16   737351    0   719734   220   133    87    91     0   124    7
amapchunkpl 152   42943    0    42800    56    44    12    13     0   158    3
amappl16   192    36214    0    35151   244   182    62    65     0     8    8
amappl15   184      563    0      563     3     3     0     1     0     8    0
amappl14   176     1990    0     1985     2     1     1     1     0     8    0
amappl13   168     1110    0     1109     3     2     1     1     0     8    0
amappl12   160     1723    0     1719     1     0     1     1     0     8    0
amappl11   152      443    0      428     1     0     1     1     0     8    0
amappl10   144      491    0      486     1     0     1     1     0     8    0
amappl9    136     1443    0     1432     1     0     1     1     0     8    0
amappl8    128     1022    0      984     3     1     2     2     0     8    0
amappl7    120      609    0      601     1     0     1     1     0     8    0
amappl6    112      404    0      395     1     0     1     1     0     8    0
amappl5    104     2099    0     2084     1     0     1     1     0     8    0
amappl4     96     6521    0     6485     1     0     1     1     0     8    0
amappl3     88     3344    0     3331     1     0     1     1     0     8    0
amappl2     80    52755    0    52665     4     2     2     3     0     8    0
amappl1     72   153238    0   152769    26    16    10    20     0     8    0
amappl      80    21145    0    21076     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       17    0       17     1     1     0     1     0     8    0
aobjpl      64      131    0        2     3     0     3     3     0     8    0
uaddrrnd    24     6995    0     6918     1     0     1     1     0     8    0
uaddrbest   32        2    0        0     1     0     1     1     0     8    0
uaddr       24     6995    0     6918     1     0     1     1     0     8    0
vmmpekpl   168    45322    0    45277     3     0     3     3     0     8    0
vmmpepl    168   862487    0   860002   378   236   142   144     0   357   31
vmsppl     368     6934    0     6918     2     0     2     2     0     8    0
pdppl      4096   13997    0    13910    13     1    12    12     0     8    1
pvpl        32  2034631    0  2014707   397   200   197   207     0   265   21
pmappl     232     6994    0     6932     5     1     4     4     0     8    0
extentpl    40       41    0       26     1     0     1     1     0     8    0
phpool     112      702    0       57    19     0    19    19     0     8    0

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2019/10/08 11:47 openbsd 0767cd885e7f 64612bfd .config console log report ci-openbsd-multicore
* Struck through repros no longer work on HEAD.