assert "gkif != NULL" failed in pf_if.c

Status: upstream: reported on 2026/09/25 14:05
Reported-by: syzbot+79b758d5b6d394080661@syzkaller.appspotmail.com
First crash: 20d, last: 20d

Sample crash report:
panic: kernel diagnostic assertion "gkif != NULL" failed: file "/syzkaller/managers/main/kernel/sys/net/pf_if.c", line 943
Stopped at      db_enter+0x25:  addq    $0x8,%rsp
    TID    PID    UID     PRFLAGS     PFLAGS  CPU  COMMAND
db_enter() at db_enter+0x25 sys/arch/amd64/amd64/db_interface.c:438
panic(ffffffff834915ef) at panic+0x1cf sys/kern/subr_prf.c:198
__assert(ffffffff834d0712,ffffffff834b7006,3af,ffffffff8342ede4) at __assert+0x29 sys/kern/subr_prf.c:-1
pfi_xcommit() at pfi_xcommit+0x29d
pfi_group_delmember(ffff8000002a1880) at pfi_group_delmember+0x63 sys/net/pf_if.c:402
if_delgroup(ffff8000015e4000,ffff8000002a1880) at if_delgroup+0x186 sys/net/if.c:3150
if_detach(ffff8000015e4000) at if_detach+0x36b sys/net/if.c:1317
pppacclose(100637d,2,2000,ffff80002a797248) at pppacclose+0x118 sys/net/if_pppx.c:1329
spec_close(ffff80002a84d530) at spec_close+0x417 sys/kern/spec_vnops.c:-1
VOP_CLOSE(fffff3006ccd0bd8,2,fffff30007ffd1a0,ffff80002a797248) at VOP_CLOSE+0x129 sys/kern/vfs_vops.c:156
vn_closefile(fffff3006d469ae0,ffff80002a797248) at vn_closefile+0x11d vn_close sys/kern/vfs_vnops.c:298 [inline]
vn_closefile(fffff3006d469ae0,ffff80002a797248) at vn_closefile+0x11d sys/kern/vfs_vnops.c:621
fdrop(fffff3006d469ae0,ffff80002a797248) at fdrop+0x121 sys/kern/kern_descrip.c:1281
closef(fffff3006d469ae0,ffff80002a797248) at closef+0x190 sys/kern/kern_descrip.c:1265
fdfree(ffff80002a797248) at fdfree+0x115 sys/kern/kern_descrip.c:1196
end trace frame: 0xffff80002a84d790, 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
*cpu0: kernel diagnostic assertion "gkif != NULL" failed: file "/syzkaller/managers/main/kernel/sys/net/pf_if.c", line 943
ddb> show kasan
No such command
ddb> trace
db_enter() at db_enter+0x25 sys/arch/amd64/amd64/db_interface.c:438
panic(ffffffff834915ef) at panic+0x1cf sys/kern/subr_prf.c:198
__assert(ffffffff834d0712,ffffffff834b7006,3af,ffffffff8342ede4) at __assert+0x29 sys/kern/subr_prf.c:-1
pfi_xcommit() at pfi_xcommit+0x29d
pfi_group_delmember(ffff8000002a1880) at pfi_group_delmember+0x63 sys/net/pf_if.c:402
if_delgroup(ffff8000015e4000,ffff8000002a1880) at if_delgroup+0x186 sys/net/if.c:3150
if_detach(ffff8000015e4000) at if_detach+0x36b sys/net/if.c:1317
pppacclose(100637d,2,2000,ffff80002a797248) at pppacclose+0x118 sys/net/if_pppx.c:1329
spec_close(ffff80002a84d530) at spec_close+0x417 sys/kern/spec_vnops.c:-1
VOP_CLOSE(fffff3006ccd0bd8,2,fffff30007ffd1a0,ffff80002a797248) at VOP_CLOSE+0x129 sys/kern/vfs_vops.c:156
vn_closefile(fffff3006d469ae0,ffff80002a797248) at vn_closefile+0x11d vn_close sys/kern/vfs_vnops.c:298 [inline]
vn_closefile(fffff3006d469ae0,ffff80002a797248) at vn_closefile+0x11d sys/kern/vfs_vnops.c:621
fdrop(fffff3006d469ae0,ffff80002a797248) at fdrop+0x121 sys/kern/kern_descrip.c:1281
closef(fffff3006d469ae0,ffff80002a797248) at closef+0x190 sys/kern/kern_descrip.c:1265
fdfree(ffff80002a797248) at fdfree+0x115 sys/kern/kern_descrip.c:1196
exit1(ffff80002a797248,0,0,1) at exit1+0x595 sys/kern/kern_exit.c:215
sys_exit(ffff80002a797248,ffff80002a84d890,ffff80002a84d7e0) at sys_exit+0x1a sys/kern/kern_exit.c:-1
syscall(ffff80002a84d890) at syscall+0x962 mi_syscall sys/sys/syscall_mi.h:-1 [inline]
syscall(ffff80002a84d890) at syscall+0x962 sys/arch/amd64/amd64/trap.c:791
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0x76334d359360, count: -18
ddb> show registers
rdi                                0
rsi                              0x1
rbp               0xffff80002a84d290
rbx               0xffff8000002a18b0
rdx                                0
rcx                                0
rax               0xffff80002a797248
r8                 0x101010101010101
r9                0x8080808080808080
r10               0x657aee124a2511b3
r11               0x45230daed095f02c
r12                                0
r13               0xffff8000016083e0
r14                                0
r15                              0x1
rip               0xffffffff82ffcad5    db_enter+0x25
cs                               0x8
rflags                         0x246
rsp               0xffff80002a84d280
ss                              0x10
db_enter+0x25:  addq    $0x8,%rsp
ddb> show proc
PROC (syz-executor) tid=150771 pid=88229 tcnt=0 stat=onproc
    flags process=1008<EXITING,SINGLEEXIT> proc=2000<WEXIT>
    runpri=32, usrpri=77, slppri=32, nice=20
    wchan=0x0, wmesg=, ps_single=0xffff80002a797248 scnt=-1 ecnt=1
    forw=0xffffffffffffffff, list=0xffff80002a761a00,0xffff80002a796fc0
    process=0xffff8000380ded68 user=0xffff80002a848000, vmspace=0xfffff3006d145b98
    estcpu=27, cpticks=2, pctcpu=0.0, user=0, sys=1, intr=0
ddb> ps
   PID     TID   PPID   UID  S      PRLAGS     PFLAGS WAIT      COMMAND
 60813  235844  61916     0  3         0x2          0 clonelk   ifconfig
 96659  385206  69314     0  3         0x2          0 clonelk   ifconfig
 16979  496491  26436     0  3         0x2          0 clonelk   ifconfig
 69314  494719  50643     0  3    0x100002       0x88 sigsusp   sh
 26436   40562  62741     0  3    0x100002       0x88 sigsusp   sh
 61916    4435   1826     0  3    0x100002       0x88 sigsusp   sh
 62741  463051   4006     0  3         0x2       0x80 wait      syz-executor
 50643  264201   4006     0  3         0x2       0x80 wait      syz-executor
  1826  435779   4006     0  3         0x2       0x80 wait      syz-executor
 37888  479071   4006     0  3         0x2       0x80 piperd    syz-executor
 78068  353316   4006     0  3         0x2       0x80 piperd    syz-executor
 71198   22888   4006     0  3         0x2       0x80 nanoslp   syz-executor
  4006  380700  71303     0  3         0x2       0x80 wait      syz-executor
 71303  330295  61931     0  3    0x100002       0x88 sigsusp   ksh
 61931  361580  66483     0  3        0x10       0x88 kqread    sshd-session
 66483  173689  27645     0  3        0x12       0x80 kqread    sshd-session
 56328  479211      1     0  3    0x100003       0x80 ttyin     getty
 27645   97223      1     0  3           0       0x88 kqread    sshd
 31951  483722  72641    73  3   0x1100010       0x80 kqread    syslogd
 72641  144439      1     0  3    0x100002       0x80 sbwait    syslogd
 22606  423436      1     0  3    0x100000       0x80 kqread    resolvd
 61703  350360  64092    77  3    0x100012       0x80 kqread    dhcpleased
  7009   90009  64092    77  3    0x100012       0x80 kqread    dhcpleased
 64092  151429      1     0  3           0       0x80 kqread    dhcpleased
 15200    7448      0     0  3     0x14000      0x200 bored     smr
 77509  283096      0     0  2     0x14000      0x200           zerothread
 34656  106319      0     0  3     0x14000      0x200 aiodoned  aiodoned
  8948   30447      0     0  3     0x14000      0x200 syncer    update
 63732  322774      0     0  3     0x14000      0x200 cleaner   cleaner
 46200  435685      0     0  3     0x14000      0x200 reaper    reaper
 82828     199      0     0  3     0x14000      0x200 pgdaemon  pagedaemon
 41150  451598      0     0  3     0x14000      0x200 bored     viomb
 60343  217422      0     0  3     0x14000 0x40000200 acpi0     acpi0
 39663  365906      0     0  3     0x14000      0x200 bored     softnet0
 55514  191824      0     0  3     0x14000      0x200 smrbar    systqmp
 33890  420786      0     0  3     0x14000      0x200 bored     systq
 51156  327260      0     0  3     0x14000 0x40000200 tmoslp    softclock
 11924  310894      0     0  3     0x14000 0x40000200           idle0
     1   74119      0     0  3         0x2       0x80 wait      init
     0       0     -1     0  3     0x10000      0x200 scheduler swapper
ddb> show all locks
No such command
ddb> show malloc
           Type InUse  MemUse  HighUse   Limit  Requests Type Lim
         devbuf 11024  12098K   12359K 166960K     12324        0
            pcb    17     14K      16K 166960K       114        0
         rtable   183      7K      11K 166960K      1398        0
             pf    26     12K     652K 166960K       136        0
         ifaddr    32      5K       8K 166960K       183        0
        ifgroup    39      1K       2K 166960K       186        0
         sysctl     1      1K       9K 166960K         5        0
       counters    32     17K      18K 166960K        71        0
       ioctlops     0      0K       4K 166960K        85        0
            iov     0      0K      20K 166960K         4        0
          mount     1      1K       1K 166960K         1        0
            log     0      0K       0K 166960K         4        0
         vnodes  1334     84K      84K 166960K      2057        0
      UFS quota     1     32K      32K 166960K         1        0
      UFS mount     5     36K      36K 166960K         5        0
            shm     2      1K       5K 166960K         4        0
         VM map     2      1K       1K 166960K         2        0
            sem    10      0K       0K 166960K        12        0
        dirhash    24      4K       4K 166960K        24        0
           ACPI  1692    195K     286K 166960K     12470        0
      file desc    17     61K      89K 166960K       772        0
           proc    80     83K     100K 166960K      1450        0
        subproc    72      4K       4K 166960K       396        0
    NFS srvsock     1      0K       0K 166960K         1        0
     NFS daemon     1     16K      16K 166960K         1        0
    ip_moptions     0      0K       0K 166960K         4        0
       in_multi    70      4K       6K 166960K       466        0
    ether_multi     1      0K       0K 166960K         1        0
            mrt     0      0K       0K 166960K        15        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     0      0K       1K 166960K       813        0
   fusefs mount     1     32K      32K 166960K         1        0
            tdb     3      0K       0K 166960K         3        0
        VM swap     8     62K      64K 166960K        10        0
       UVM amap   188    161K     167K 166960K      7108        0
       UVM aobj     5      2K       2K 166960K         5        0
     pinsyscall    38     76K      93K 166960K      2742        0
        memdesc     1      4K       4K 166960K         1        0
    crypto data     1      1K       1K 166960K         1        0
    ip6_options     0      0K       0K 166960K         7        0
            NDP    13      0K       2K 166960K       128        0
           temp    34   9110K    9130K 166960K      7919        0
         kqueue    13     20K      22K 166960K        36        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      139    0      136     2     0     2     2     0     8    1
rtentry    136      475    0      397     4     0     4     4     0     8    0
unpcb      144      305    0      290     4     0     4     4     0     8    3
syncache   336        7    0        7     1     0     1     1     0     8    1
tcpcb      736       69    0       65     4     0     4     4     0     8    3
arp         96       84    0       72     1     0     1     1     0     8    0
inpcb      328      430    0      419    12     3     9    12     0     8    8
nd6        112      123    0      108     1     0     1     1     0     8    0
kcovpl      48       44    0       36     1     0     1     1     0     8    0
ppxss      1072       5    0        3     1     0     1     1     0     8    0
pfstscr     40        2    0        2     1     0     1     1     0     8    1
pffrag     232        3    0        1     1     0     1     1     0   482    0
pffrnode    88        3    0        1     1     0     1     1     0     8    0
pffrent     40        5    0        3     1     0     1     1     0     8    0
pfrktable  1344      15    0       15     1     0     1     1     0     8    1
pfanchor   1288       3    0        3     1     0     1     1     0     8    1
pfstkey    128        3    0        3     1     0     1     1     0     8    1
pfstate    384        2    0        2     1     0     1     1     0     8    1
pfrule     1360       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     1951    0     1599    32     1    31    32     0     8    4
art_table   40     1952    0     1599     6     0     6     6     0     8    1
art_node    32      475    0      402     1     0     1     1     0     8    0
sysvmsgpl   40        1    0        1     1     0     1     1     0     8    1
semapl      72       10    0        2     1     0     1     1     0     8    0
shmpl      120        2    0        0     1     0     1     1     0     8    0
dirhash    1024      25    0        0     4     0     4     4     0     8    0
dino2pl    256     1881    0      315    99     0    99    99     0     8    0
ffsino     256     1881    0      315    99     0    99    99     0     8    0
nchpl      144     2225    0      388    69     0    69    69     0     8    0
rtmask      32        2    0        2     1     0     1     1     0     8    1
vnodes     216     2611    0        0   146     0   146   146     0     8    0
namei      1024   13425    0    13425     2     0     2     2     0     8    2
pfiaddrpl  120        5    0        5     1     0     1     1     0     8    1
kstatmem   264       93    0       74     2     0     2     2     0     8    0
scsiplug    72        1    0        1     1     0     1     1     0     8    1
scxspl     216    12829    0    12829     8     0     8     8     1     8    8
plimitpl   152      178    0      162     1     0     1     1     0     8    0
sigapl     424      995    0      953     6     0     6     6     0     8    1
knotepl    120     5048    0     5001     9     0     9     9     0     8    7
kqueuepl   184       48    0       39     1     0     1     1     0     8    0
pipepl     304      299    0      272     8     0     8     8     0     8    5
fdescpl    448      982    0      953     5     0     5     5     0     8    1
filepl     120     4406    0     4203    11     0    11    11     0     8    3
lockfpl    104       57    0       55     1     0     1     1     0     8    0
lockfspl    48       25    0       23     1     0     1     1     0     8    0
sessionpl  144       62    0       54     1     0     1     1     0     8    0
pgrppl      48      106    0       90     1     0     1     1     0     8    0
ucredpl    104      216    0      205     1     0     1     1     0     8    0
zombiepl   144      956    0      953     1     0     1     1     0     8    0
processpl  1160     995    0      953     4     0     4     4     0     8    0
procpl     664     1333    0     1291     6     0     6     6     0     8    2
sosppl     176        2    0        2     1     0     1     1     0     8    1
sockpl     552      881    0      852    12     2    10    12     0     8    7
mcl64k     65536      4    0        3     1     0     1     1     0     8    0
mcl8k      8192       4    0        4     1     0     1     1     0     8    1
mcl4k      4096    2603    0     2547    13     0    13    13     0     8    5
mcl2k      2048     817    0      816     1     0     1     1     0     8    0
mextrefs    64      147    0      147     1     0     1     1     0     8    1
mtagpl      96        4    0        4     1     0     1     1     0     8    1
mbufpl     256     8018    0     7917    11     0    11    11     0     8    1
bufpl      272     6952    0      736   415     0   415   415     0     8    0
anonpl      24   142395    0   139441    68     0    68    68     0   187   37
amapchunkpl 152   19693    0    19359    33     0    33    33     0   158   18
amappl16   200     2435    0     2423    31     4    27    27     0     8   24
amappl15   192        5    0        5     1     0     1     1     0     8    1
amappl14   184      811    0      807     1     0     1     1     0     8    0
amappl13   176      180    0      170     1     0     1     1     0     8    0
amappl12   168     1352    0     1327     2     0     2     2     0     8    0
amappl11   160        7    0        7     1     0     1     1     0     8    1
amappl10   152       55    0       45     1     0     1     1     0     8    0
amappl9    144      304    0      304     1     0     1     1     0     8    1
amappl8    136      235    0      231     1     0     1     1     0     8    0
amappl7    128      208    0      197     1     0     1     1     0     8    0
amappl6    120      485    0      477     1     0     1     1     0     8    0
amappl5    112      106    0       98     1     0     1     1     0     8    0
amappl4    104      357    0      342     1     0     1     1     0     8    0
amappl3     96     3488    0     3421     3     0     3     3     0     8    0
amappl2     88      965    0      897     2     0     2     2     0     8    0
amappl1     80    14909    0    14361    13     0    13    13     0     8    1
amappl      88     5842    0     5720     5     0     5     5     0    92    1
uvmvnodes   80      101    0        0     3     0     3     3     0     8    0
dma4096    4096       1    0        1     1     0     1     1     0     8    1
dma1024    1024       1    0        0     1     0     1     1     0     8    0
dma256     256        6    0        6     1     0     1     1     0     8    1
dma128     128      254    0      254     1     0     1     1     0     8    1
dma64       64        6    0        6     1     0     1     1     0     8    1
dma32       32        7    0        7     1     0     1     1     0     8    1
dma16       16       18    0       17     1     0     1     1     0     8    0
aobjpl      72        4    0        0     1     0     1     1     0     8    0
uaddrrnd    24      982    0      953     1     0     1     1     0     8    0
uaddrbest   32        2    0        0     1     0     1     1     0     8    0
uaddr       24      982    0      953     1     0     1     1     0     8    0
vmmpekpl   168     9664    0     9633     3     0     3     3     0     8    0
vmmpepl    168    72471    0    70916    94     0    94    94     0   357   18
vmsppl     368      981    0      953     4     0     4     4     0     8    1
rwobjpl     40    23563    0    22635    15     0    15    15     0     8    2
pdppl      4096    1971    0     1906   125    56    69    79     0     8    4
pvpl        32   384390    0   376865   131     0   131   131     0   265   55
pmappl     216      981    0      953     2     0     2     2     0     8    0
extentpl    40       45    0       27     1     0     1     1     0     8    0
phpool     112      822    0       57    22     0    22    22     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:438
panic(ffffffff834915ef) at panic+0x1cf sys/kern/subr_prf.c:198
__assert(ffffffff834d0712,ffffffff834b7006,3af,ffffffff8342ede4) at __assert+0x29 sys/kern/subr_prf.c:-1
pfi_xcommit() at pfi_xcommit+0x29d
pfi_group_delmember(ffff8000002a1880) at pfi_group_delmember+0x63 sys/net/pf_if.c:402
if_delgroup(ffff8000015e4000,ffff8000002a1880) at if_delgroup+0x186 sys/net/if.c:3150
if_detach(ffff8000015e4000) at if_detach+0x36b sys/net/if.c:1317
pppacclose(100637d,2,2000,ffff80002a797248) at pppacclose+0x118 sys/net/if_pppx.c:1329
spec_close(ffff80002a84d530) at spec_close+0x417 sys/kern/spec_vnops.c:-1
VOP_CLOSE(fffff3006ccd0bd8,2,fffff30007ffd1a0,ffff80002a797248) at VOP_CLOSE+0x129 sys/kern/vfs_vops.c:156
vn_closefile(fffff3006d469ae0,ffff80002a797248) at vn_closefile+0x11d vn_close sys/kern/vfs_vnops.c:298 [inline]
vn_closefile(fffff3006d469ae0,ffff80002a797248) at vn_closefile+0x11d sys/kern/vfs_vnops.c:621
fdrop(fffff3006d469ae0,ffff80002a797248) at fdrop+0x121 sys/kern/kern_descrip.c:1281
closef(fffff3006d469ae0,ffff80002a797248) at closef+0x190 sys/kern/kern_descrip.c:1265
fdfree(ffff80002a797248) at fdfree+0x115 sys/kern/kern_descrip.c:1196
exit1(ffff80002a797248,0,0,1) at exit1+0x595 sys/kern/kern_exit.c:215
sys_exit(ffff80002a797248,ffff80002a84d890,ffff80002a84d7e0) at sys_exit+0x1a sys/kern/kern_exit.c:-1
syscall(ffff80002a84d890) at syscall+0x962 mi_syscall sys/sys/syscall_mi.h:-1 [inline]
syscall(ffff80002a84d890) at syscall+0x962 sys/arch/amd64/amd64/trap.c:791
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0x76334d359360, count: -18
ddb> machine ddbcpu 1
No such command
ddb> trace
db_enter() at db_enter+0x25 sys/arch/amd64/amd64/db_interface.c:438
panic(ffffffff834915ef) at panic+0x1cf sys/kern/subr_prf.c:198
__assert(ffffffff834d0712,ffffffff834b7006,3af,ffffffff8342ede4) at __assert+0x29 sys/kern/subr_prf.c:-1
pfi_xcommit() at pfi_xcommit+0x29d
pfi_group_delmember(ffff8000002a1880) at pfi_group_delmember+0x63 sys/net/pf_if.c:402
if_delgroup(ffff8000015e4000,ffff8000002a1880) at if_delgroup+0x186 sys/net/if.c:3150
if_detach(ffff8000015e4000) at if_detach+0x36b sys/net/if.c:1317
pppacclose(100637d,2,2000,ffff80002a797248) at pppacclose+0x118 sys/net/if_pppx.c:1329
spec_close(ffff80002a84d530) at spec_close+0x417 sys/kern/spec_vnops.c:-1
VOP_CLOSE(fffff3006ccd0bd8,2,fffff30007ffd1a0,ffff80002a797248) at VOP_CLOSE+0x129 sys/kern/vfs_vops.c:156
vn_closefile(fffff3006d469ae0,ffff80002a797248) at vn_closefile+0x11d vn_close sys/kern/vfs_vnops.c:298 [inline]
vn_closefile(fffff3006d469ae0,ffff80002a797248) at vn_closefile+0x11d sys/kern/vfs_vnops.c:621
fdrop(fffff3006d469ae0,ffff80002a797248) at fdrop+0x121 sys/kern/kern_descrip.c:1281
closef(fffff3006d469ae0,ffff80002a797248) at closef+0x190 sys/kern/kern_descrip.c:1265
fdfree(ffff80002a797248) at fdfree+0x115 sys/kern/kern_descrip.c:1196
exit1(ffff80002a797248,0,0,1) at exit1+0x595 sys/kern/kern_exit.c:215
sys_exit(ffff80002a797248,ffff80002a84d890,ffff80002a84d7e0) at sys_exit+0x1a sys/kern/kern_exit.c:-1
syscall(ffff80002a84d890) at syscall+0x962 mi_syscall sys/sys/syscall_mi.h:-1 [inline]
syscall(ffff80002a84d890) at syscall+0x962 sys/arch/amd64/amd64/trap.c:791
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0x76334d359360, count: -18

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2026/09/25 14:05 openbsd ce213f6ad10d 0a1606bc .config console log report [disk image] [bsd.gdb] [kernel image] ci-openbsd-main assert "gkif != NULL" failed in pf_if.c
* Struck through repros no longer work on HEAD.