Hi,

I have an amd64 system that I am using as a router/firewall for my home 
network running OpenBSD 6.6-stable with the latest syspatches. I have 
been running it without problems in an IPv4-only configuration. 
Recently, I decided I wanted to experiment with running a dual stack 
IPv4 and IPv6 network. I think I have successfully added IPv6 to my 
configuration which seemed to be functioning correctly to the best of 
my knowledge, but I have started to encounter kernel panics that crash 
to the ddb debugger after about 12 hours of uptime. I believe the 
panics might be specifically occurring when the DHCPv6 lease expires or 
renews on my external interface and the IPv6 routing table is updated. 
The panics go away when I reverted back to my IPv4-only configuration 
so I believe the panics are specific to IPv6. I have been 
troubleshooting and researching and for the past week or so and I 
thought I would check to see if some more experienced OpenBSD users 
might have some advice on how to proceed with troubleshooting.

At the end of this email, I have included the relevant section from 
/var/run/dmesg.boot related to one instance of the panic. It includes 
the boot messages, panic message, trace, and the output of ps I ran in 
ddb after the panic.

I did find a similar bug report in the mail archive for openbsd-bugs 
that looks like it was unfortunately not resolved:

https://marc.info/?l=openbsd-bugs&m=152587044611044&w=2

Some more info about my configuration that I think may be relevant:

My ISP uses DHCPv6 prefix delegation to distribute IPv6 addresses so I 
used dhcpcd from ports installed using pkg_add. I used rad for router 
advertisements on my internal interfaces and I am using SLAAC to 
auto-configure IPv6 addresses.

My system has 6 Intel NICs, em[0-5], and I also have 4 VLANs vlan[0-3] 
on em5 that I am using for my wireless AP. em0 is the external 
interface connected to my cable modem. em[1-5] are my internal 
interfaces. em[1-3] are each connected to separate computers, em4 is 
unconnected, and em5 and vlan[0-3] are connected to my wireless AP.

The only other observation I had that might be related to the panic is 
regarding the "ndp info overwritten" and "cannot forward src" lines in 
my dmesg. The "ndp info overwritten" lines correspond to interfaces 
that were connected to devices/hosts that powered on at the time of the 
panic while I think that the "cannot forward src" messages correspond 
to em2 and em3 which were connected to computers that were powered off 
at the time of the panic, but were previously powered on to test if 
they were receiving IPv6 addresses. I am wondering if the computers 
being powered off at the time of the DHCPv6 lease update is triggering 
the panic and I think I might test this by only enabling IPv6 on em5 
and vlan[0-3] which are connected to my wireless AP is always on.

I would be happy to provide any other relevant info that I may have 
omitted. Thanks for reading.


Ben

######

OpenBSD 6.6 (GENERIC.MP) #3: Thu Nov 21 03:20:01 MST 2019

r...@syspatch-66-amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/GENER
IC.MP
real mem = 4192743424 (3998MB)
avail mem = 4052963328 (3865MB)
mpath0 at root
scsibus0 at mpath0: 256 targets
mainbus0 at root
bios0 at mainbus0: SMBIOS rev. 3.0 @ 0x8d317000 (85 entries)
bios0: vendor American Megatrends Inc. version "5.12" date 07/08/2019
bios0: Protectli FW6
acpi0 at bios0: ACPI 6.1
acpi0: sleep states S0 S5
acpi0: tables DSDT FACP APIC FPDT MCFG SSDT FIDT SSDT HPET SSDT SSDT 
UEFI SSDT LPIT WSMT SSDT SSDT SSDT SSDT DBGP DBG2 BGRT DMAR ASF!
acpi0: wakeup devices PS2K(S0) PS2M(S0) RP09(S0) PXSX(S0) RP10(S0) 
PXSX(S0) RP11(S0) PXSX(S0) RP12(S0) PXSX(S0) RP13(S0) PXSX(S0) RP01(S0) 
PXSX(S0) RP02(S0) PXSX(S0) [...]
acpitimer0 at acpi0: 3579545 Hz, 24 bits
acpimadt0 at acpi0 addr 0xfee00000: PC-AT compat
cpu0 at mainbus0: apid 0 (boot processor)
cpu0: Intel(R) Celeron(R) CPU 3865U @ 1.80GHz, 1696.58 MHz, 06-8e-09
cpu0: 
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,
CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,PCLMUL,DTES64,MWAIT,
DS-CPL,VMX,EST,TM2,SSSE3,SDBG,CX16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,M
OVBE,POPCNT,DEADLINE,AES,XSAVE,RDRAND,NXE,PAGE1GB,RDTSCP,LONG,LAHF,ABM,3
DNOWP,PERF,ITSC,FSGSBASE,TSC_ADJUST,SGX,SMEP,ERMS,INVPCID,MPX,RDSEED,SMA
P,CLFLUSHOPT,PT,MD_CLEAR,TSXFA,IBRS,IBPB,STIBP,L1DF,SSBD,SENSOR,ARAT,XSA
VEOPT,XSAVEC,XGETBV1,XSAVES,MELTDOWN
cpu0: 256KB 64b/line 8-way L2 cache
cpu0: smt 0, core 0, package 0
mtrr: Pentium Pro MTRR support, 10 var ranges, 88 fixed ranges
cpu0: apic clock running at 24MHz
cpu0: mwait min=64, max=64, C-substates=0.2.1.2.4.1.1.1, IBE
cpu1 at mainbus0: apid 2 (application processor)
cpu1: Intel(R) Celeron(R) CPU 3865U @ 1.80GHz, 1696.06 MHz, 06-8e-09
cpu1: 
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,
CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE,SSE3,PCLMUL,DTES64,MWAIT,
DS-CPL,VMX,EST,TM2,SSSE3,SDBG,CX16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,M
OVBE,POPCNT,DEADLINE,AES,XSAVE,RDRAND,NXE,PAGE1GB,RDTSCP,LONG,LAHF,ABM,3
DNOWP,PERF,ITSC,FSGSBASE,TSC_ADJUST,SGX,SMEP,ERMS,INVPCID,MPX,RDSEED,SMA
P,CLFLUSHOPT,PT,MD_CLEAR,TSXFA,IBRS,IBPB,STIBP,L1DF,SSBD,SENSOR,ARAT,XSA
VEOPT,XSAVEC,XGETBV1,XSAVES,MELTDOWN
cpu1: 256KB 64b/line 8-way L2 cache
cpu1: smt 0, core 1, package 0
ioapic0 at mainbus0: apid 2 pa 0xfec00000, version 20, 120 pins
acpimcfg0 at acpi0
acpimcfg0: addr 0xe0000000, bus 0-255
acpihpet0 at acpi0: 23999999 Hz
acpiprt0 at acpi0: bus 0 (PCI0)
acpiprt1 at acpi0: bus -1 (PEG0)
acpiprt2 at acpi0: bus -1 (PEG1)
acpiprt3 at acpi0: bus -1 (PEG2)
acpiprt4 at acpi0: bus -1 (RP09)
acpiprt5 at acpi0: bus -1 (RP10)
acpiprt6 at acpi0: bus -1 (RP11)
acpiprt7 at acpi0: bus -1 (RP12)
acpiprt8 at acpi0: bus -1 (RP13)
acpiprt9 at acpi0: bus 1 (RP01)
acpiprt10 at acpi0: bus 2 (RP02)
acpiprt11 at acpi0: bus 3 (RP03)
acpiprt12 at acpi0: bus 4 (RP04)
acpiprt13 at acpi0: bus 5 (RP05)
acpiprt14 at acpi0: bus 6 (RP06)
acpiprt15 at acpi0: bus -1 (RP07)
acpiprt16 at acpi0: bus -1 (RP08)
acpiprt17 at acpi0: bus -1 (RP17)
acpiprt18 at acpi0: bus -1 (RP18)
acpiprt19 at acpi0: bus -1 (RP19)
acpiprt20 at acpi0: bus -1 (RP20)
acpiprt21 at acpi0: bus -1 (RP21)
acpiprt22 at acpi0: bus -1 (RP22)
acpiprt23 at acpi0: bus -1 (RP23)
acpiprt24 at acpi0: bus -1 (RP24)
acpiprt25 at acpi0: bus -1 (RP14)
acpiprt26 at acpi0: bus -1 (RP15)
acpiprt27 at acpi0: bus -1 (RP16)
acpiec0 at acpi0: not present
acpicpu0 at acpi0: C3(200@1034 mwait.1@0x60), C2(200@151 mwait.1@0x33), 
C1(1000@1 mwait.1), PSS
acpicpu1 at acpi0: C3(200@1034 mwait.1@0x60), C2(200@151 mwait.1@0x33), 
C1(1000@1 mwait.1), PSS
acpipwrres0 at acpi0: WRST
acpipwrres1 at acpi0: WRST
acpipwrres2 at acpi0: WRST
acpipwrres3 at acpi0: WRST
acpipwrres4 at acpi0: WRST
acpipwrres5 at acpi0: WRST
acpipwrres6 at acpi0: WRST
acpipwrres7 at acpi0: WRST
acpipwrres8 at acpi0: WRST
acpipwrres9 at acpi0: WRST
acpipwrres10 at acpi0: WRST
acpipwrres11 at acpi0: WRST
acpipwrres12 at acpi0: WRST
acpipwrres13 at acpi0: WRST
acpipwrres14 at acpi0: WRST
acpipwrres15 at acpi0: WRST
acpipwrres16 at acpi0: WRST
acpipwrres17 at acpi0: WRST
acpipwrres18 at acpi0: WRST
acpipwrres19 at acpi0: WRST
acpipwrres20 at acpi0: FN00, resource for FAN0
acpipwrres21 at acpi0: FN01, resource for FAN1
acpipwrres22 at acpi0: FN02, resource for FAN2
acpipwrres23 at acpi0: FN03, resource for FAN3
acpipwrres24 at acpi0: FN04, resource for FAN4
acpitz0 at acpi0: critical temperature is 119 degC
acpitz1 at acpi0: critical temperature is 119 degC
acpipci0 at acpi0 PCI0: 0x00000000 0x00000011 0x00000001
acpicmos0 at acpi0
acpibtn0 at acpi0: SLPB
"INT33A1" at acpi0 not configured
acpibtn1 at acpi0: PWRB
"PNP0C0B" at acpi0 not configured
"PNP0C0B" at acpi0 not configured
"PNP0C0B" at acpi0 not configured
"PNP0C0B" at acpi0 not configured
"PNP0C0B" at acpi0 not configured
acpivideo0 at acpi0: GFX0
acpivout0 at acpivideo0: DD1F
cpu0: using VERW MDS workaround (except on vmm entry)
cpu0: Enhanced SpeedStep 1696 MHz: speeds: 1801, 1800, 1700, 1600, 
1500, 1400, 1300, 1200, 1100, 1000, 900, 800, 700, 600, 500, 400 MHz
pci0 at mainbus0 bus 0
pchb0 at pci0 dev 0 function 0 "Intel Core 7G Host" rev 0x02
inteldrm0 at pci0 dev 2 function 0 "Intel HD Graphics 610" rev 0x02
drm0 at inteldrm0
inteldrm0: msi
xhci0 at pci0 dev 20 function 0 "Intel 100 Series xHCI" rev 0x21: msi, 
xHCI 1.0
usb0 at xhci0: USB revision 3.0
uhub0 at usb0 configuration 1 interface 0 "Intel xHCI root hub" rev 
3.00/1.00 addr 1
"Intel 100 Series MEI" rev 0x21 at pci0 dev 22 function 0 not configured
ahci0 at pci0 dev 23 function 0 "Intel 100 Series AHCI" rev 0x21: msi, 
AHCI 1.3.1
ahci0: port 0: 6.0Gb/s
ahci0: PHY offline on port 1
scsibus1 at ahci0: 32 targets
sd0 at scsibus1 targ 0 lun 0: <ATA, TS64GMSA230S, R081> 
naa.57c3548176158942
sd0: 61057MB, 512 bytes/sector, 125045424 sectors, thin
ppb0 at pci0 dev 28 function 0 "Intel 100 Series PCIE" rev 0xf1: msi
pci1 at ppb0 bus 1
em0 at pci1 dev 0 function 0 "Intel 82583V" rev 0x00: msi, address 
00:e0:67:18:19:42
ppb1 at pci0 dev 28 function 1 "Intel 100 Series PCIE" rev 0xf1: msi
pci2 at ppb1 bus 2
em1 at pci2 dev 0 function 0 "Intel 82583V" rev 0x00: msi, address 
00:e0:67:18:19:43
ppb2 at pci0 dev 28 function 2 "Intel 100 Series PCIE" rev 0xf1: msi
pci3 at ppb2 bus 3
em2 at pci3 dev 0 function 0 "Intel 82583V" rev 0x00: msi, address 
00:e0:67:18:19:44
ppb3 at pci0 dev 28 function 3 "Intel 100 Series PCIE" rev 0xf1: msi
pci4 at ppb3 bus 4
em3 at pci4 dev 0 function 0 "Intel 82583V" rev 0x00: msi, address 
00:e0:67:18:19:45
ppb4 at pci0 dev 28 function 4 "Intel 100 Series PCIE" rev 0xf1: msi
pci5 at ppb4 bus 5
em4 at pci5 dev 0 function 0 "Intel 82583V" rev 0x00: msi, address 
00:e0:67:18:19:46
ppb5 at pci0 dev 28 function 5 "Intel 100 Series PCIE" rev 0xf1: msi
pci6 at ppb5 bus 6
em5 at pci6 dev 0 function 0 "Intel 82583V" rev 0x00: msi, address 
00:e0:67:18:19:47
pcib0 at pci0 dev 31 function 0 "Intel 200 Series LPC" rev 0x21
"Intel 100 Series PMC" rev 0x21 at pci0 dev 31 function 2 not configured
ichiic0 at pci0 dev 31 function 4 "Intel 100 Series SMBus" rev 0x21: 
apic 2 int 16
iic0 at ichiic0
isa0 at pcib0
isadma0 at isa0
com0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo
com0: console
pckbc0 at isa0 port 0x60/5 irq 1 irq 12
pckbd0 at pckbc0 (kbd slot)
wskbd0 at pckbd0 mux 1
pcppi0 at isa0 port 0x61
spkr0 at pcppi0
it0 at isa0 port 0x2e/2: IT8772F rev 1, EC port 0xa40
vmm0 at mainbus0: VMX/EPT
efifb at mainbus0 not configured
vscsi0 at root
scsibus2 at vscsi0: 256 targets
softraid0 at root
scsibus3 at softraid0: 256 targets
root on sd0a (fc4381a8357fd1b0.a) swap on sd0b dump on sd0b
WARNING: / was not properly unmounted
inteldrm0: 1024x768, 32bpp
wsdisplay0 at inteldrm0 mux 1
pckbd_enable: command error
wsdisplay0: screen 0-5 added (std, vt100 emulation)
ndp info overwritten for fe80:c::2e0:67ff:fe18:1947 by 
00:e0:67:18:19:45 on vlan3
ndp info overwritten for fe80:6::2e0:67ff:fe18:1947 by 
00:e0:67:18:19:45 on em5
ndp info overwritten for fe80:b::2e0:67ff:fe18:1947 by 
00:e0:67:18:19:45 on vlan2
ndp info overwritten for fe80:a::2e0:67ff:fe18:1947 by 
00:e0:67:18:19:45 on vlan1
ndp info overwritten for fe80:9::2e0:67ff:fe18:1947 by 
00:e0:67:18:19:45 on vlan0
ndp info overwritten for fe80:2::2e0:67ff:fe18:1943 by 
00:e0:67:18:19:45 on em1
cannot forward src fe80:a::5660:9ff:fedd:cca8, dst 
2001:4860:4860::6464, nxt 17, rcvif 10, outif 1
cannot forward src fe80:a::5660:9ff:fedd:cca8, dst 
2001:4860:4860::6464, nxt 17, rcvif 10, outif 1

panic: kernel diagnostic assertion "!ISSET(rt->rt_flags, RTF_LOCAL)" 
failed: file "/usr/src/sys/netinet6/nd6.c", line 727
Stopped at    db_enter+0x10:    popq    %rbp
    TID    PID    UID     PRFLAGS     PFLAGS  CPU  COMMAND
* 12172  56020      0     0x14000 0x40000200    0K softclock
db_enter() at db_enter+0x10
panic() at panic+0x128
__assert(ffffffff81ca1bdf,ffffffff81cac63d,2d7,ffffffff81c877a4) at 
__assert+0x2b
nd6_free(fffffd815eadb710) at nd6_free+0x12f
nd6_llinfo_timer(fffffd815eadb710) at nd6_llinfo_timer+0x19e
nd6_timer(ffffffff81ff7d50) at nd6_timer+0x64
softclock_thread(ffff8000ffffe000) at softclock_thread+0xfb
end trace frame: 0x0, count: 8
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}> ps
   PID     TID   PPID    UID  S       FLAGS  WAIT          COMMAND
 71101  370210  81160     94  3    0x100092  kqread        rad
 36663  233150  81160     94  3    0x100092  kqread        rad
 81160   34274      1      0  3    0x100080  kqread        rad
  8607  115278      1      0  3    0x100083  ttyin         getty
 92088  384510      1      0  3    0x100083  ttyin         getty
 99883  499812      1      0  3    0x100083  ttyin         getty
 26478  124491      1      0  3    0x100083  ttyin         getty
 69363  154114      1      0  3    0x100083  ttyin         getty
 86060  293146      1      0  3    0x100083  ttyin         getty
 37066    4797      1      0  3    0x100098  poll          cron
 54502  514469      1      0  3        0x80  kqread        apmd
 77136  522236      1      0  3        0x80  kqread        dhcpcd
 65621  515668      1    629  3        0x90  poll          avahi-daemon
  6344  170264      1    572  3        0x90  poll          dbus-daemon
 72501  157373  76033     95  3    0x100092  kqread        smtpd
 46629  436753  76033    103  3    0x100092  kqread        smtpd
 56768   98112  76033     95  3    0x100092  kqread        smtpd
  8204  106837  76033     95  3    0x100092  kqread        smtpd
 62327  125479  76033     95  3    0x100092  kqread        smtpd
 34358  470816  76033     95  3    0x100092  kqread        smtpd
 76033    7544      1      0  3    0x100080  kqread        smtpd
 61841  392491      1     77  3    0x100090  poll          dhcpd
  8345  285284      1      0  3        0x80  select        sshd
 66534   22989      1      0  3    0x100080  poll          ntpd
  6894  217071  30254     83  3    0x100092  poll          ntpd
 30254  338166      1     83  3    0x100092  poll          ntpd
 82791  382379      1     53  3        0x90  kqread        unbound
 57461    8270  54858     74  3    0x100092  bpf           pflogd
 54858  522464      1      0  3        0x80  netio         pflogd
 26929  242333  57577     73  3    0x100090  kqread        syslogd
 57577  493915      1      0  3    0x100082  netio         syslogd
 60733  317951      1     77  3    0x100090  poll          dhclient
  3305  473407      1      0  3        0x80  poll          dhclient
 51834  334199  35318    115  3    0x100092  kqread        slaacd
 47429  282699  35318    115  3    0x100092  kqread        slaacd
 35318  517851      1      0  3    0x100080  kqread        slaacd
 99085  420269      0      0  3     0x14280  schto         i915/signal:6
 33798  484525      0      0  3     0x14280  schto         i915/signal:2
 25861  170194      0      0  3     0x14280  schto         i915/signal:1
 76675  337056      0      0  3     0x14280  schto         i915/signal:0
 94463  253283      0      0  3     0x14200  bored         
i915-userptr-acq
 89440  298121      0      0  3     0x14200  bored         i915_modeset
 43276  342976      0      0  3     0x14200  bored         i915-dp
 33409   16254      0      0  3     0x14200  bored         i915
 33089  228516      0      0  3     0x14200  pgzero        zerothread
 86710  349325      0      0  3     0x14200  aiodoned      aiodoned
 50212   84906      0      0  3     0x14200  syncer        update
 83345  246040      0      0  3     0x14200  cleaner       cleaner
 97789  396968      0      0  3     0x14200  reaper        reaper
 17359  153556      0      0  3     0x14200  pgdaemon      pagedaemon
  9948  234580      0      0  3     0x14200  bored         crynlk
 81030  332928      0      0  3     0x14200  bored         crypto
 51819  191268      0      0  3     0x14200  usbtsk        usbtask
 32163  214038      0      0  3     0x14200  usbatsk       usbatsk
 59871  370750      0      0  3     0x14200  bored         drmtskl
 80945  102084      0      0  3     0x14200  bored         drmlwq
 85907  159437      0      0  3     0x14200  bored         drmlwq
  3277  260402      0      0  3     0x14200  bored         drmlwq
 40689   82336      0      0  3     0x14200  bored         drmubwq
 71293  514738      0      0  3     0x14200  bored         drmubwq
 15998  134631      0      0  3     0x14200  bored         drmubwq
 71439  227948      0      0  3     0x14200  bored         drmubwq
 65395  170820      0      0  3     0x14200  bored         drmwq
 12666  420844      0      0  3     0x14200  bored         drmwq
 91628  417254      0      0  3     0x14200  bored         drmwq
 50050  283919      0      0  3     0x14200  bored         drmwq
 48545  214698      0      0  3  0x40014200  acpi0         acpi0
 89352  316255      0      0  7  0x40014200                idle1
 45452  317644      0      0  3     0x14200  bored         sensors
 42779  145809      0      0  3     0x14200  bored         softnet
 82778  378842      0      0  3     0x14200  bored         systqmp
 86243  366424      0      0  3     0x14200  bored         systq
*56020   12172      0      0  7  0x40014200                softclock
 86139   86337      0      0  3  0x40014200                idle0
 38007  388788      0      0  3     0x14200  bored         smr
     1  518657      0      0  3        0x82  wait          init
     0       0     -1      0  3     0x10200  scheduler     swapper


Reply via email to