Date: Sat, 21 Aug 2021 22:58:10 -0700 From: Cy Schubert <Cy.Schubert@cschubert.com> To: "Alexander V. Chernikov" <melifaro@FreeBSD.org> Cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: Re: git: c541bd368f86 - main - lltable: Add support for "child" LLEs holding encap for IPv4oIPv6 entries. Message-ID: <202108220558.17M5wAuq003114@slippy.cwsent.com> In-Reply-To: <202108211735.17LHZ0WI081502@gitrepo.freebsd.org> References: <202108211735.17LHZ0WI081502@gitrepo.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
In message <202108211735.17LHZ0WI081502@gitrepo.freebsd.org>, "Alexander V. Che rnikov" writes: > The branch main has been updated by melifaro: > > URL: https://cgit.FreeBSD.org/src/commit/?id=c541bd368f863bbf5c08dd5c1ecce016 > 6ad47389 > > commit c541bd368f863bbf5c08dd5c1ecce0166ad47389 > Author: Alexander V. Chernikov <melifaro@FreeBSD.org> > AuthorDate: 2021-08-21 14:13:32 +0000 > Commit: Alexander V. Chernikov <melifaro@FreeBSD.org> > CommitDate: 2021-08-21 17:34:35 +0000 > > lltable: Add support for "child" LLEs holding encap for IPv4oIPv6 entries > . > > Currently we use pre-calculated headers inside LLE entries as prepend dat > a > for `if_output` functions. Using these headers allows saving some > CPU cycles/memory accesses on the fast path. > > However, this approach makes adding L2 header for IPv4 traffic with IPv6 > nexthops more complex, as it is not possible to store multiple > pre-calculated headers inside lle. Additionally, the solution space is > limited by the fact that PCB caching saves LLEs in addition to the nexth > op. > > Thus, add support for creating special "child" LLEs for the purpose of ho > lding > custom family encaps and store mbufs pending resolution. To simplify han > dling > of those LLEs, store them in a linked-list inside a "parent" (e.g. norma > l) LLE. > Such LLEs are not visible when iterating LLE table. Their lifecycle is b > ound > to the "parent" LLE - it is not possible to delete "child" when parent i > s alive. > Furthermore, "child" LLEs are static (RTF_STATIC), avoding complex state > machine used by the standard LLEs. > > nd6_lookup() and nd6_resolve() now accepts an additional argument, family > , > allowing to return such child LLEs. This change uses `LLE_SF()` macro wh > ich > packs family and flags in a single int field. This is done to simplify m > erging > back to stable/. Once this code lands, most of the cases will be convert > ed to > use a dedicated `family` parameter. > > Differential Revision: https://reviews.freebsd.org/D31379 > MFC after: 2 weeks > --- > sys/net/if_ethersubr.c | 4 +- > sys/net/if_fwsubr.c | 4 +- > sys/net/if_infiniband.c | 3 +- > sys/net/if_llatbl.c | 70 +++++++++++- > sys/net/if_llatbl.h | 12 +- > sys/netinet/toecore.c | 2 +- > sys/netinet6/icmp6.c | 2 +- > sys/netinet6/in6.c | 5 + > sys/netinet6/nd6.c | 176 +++++++++++++++++++++++---- > -- > sys/netinet6/nd6.h | 1 + > sys/netinet6/nd6_nbr.c | 6 +- > sys/ofed/drivers/infiniband/core/ib_addr.c | 5 +- > 12 files changed, 241 insertions(+), 49 deletions(-) This commit causes two of my machines a bit of gas. Fatal trap 12: page fault while in kernel mode cpuid = 0; apic id = 00 fault virtual address = 0x128 fault code = supervisor read data, page not present instruction pointer = 0x20:0xffffffff806cb53d stack pointer = 0x28:0xfffffe008da1a210 frame pointer = 0x28:0xfffffe008da1a210 code segment = base 0x0, limit 0xfffff, type 0x1b = DPL 0, pres 1, long 1, def32 0, gran 1 processor eflags = interrupt enabled, resume, IOPL = 0 current process = 0 (bge0 taskq) trap number = 12 panic: page fault cpuid = 0 time = 1629610416 KDB: stack backtrace: db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe008da19eb0 vpanic() at vpanic+0x187/frame 0xfffffe008da19f10 panic() at panic+0x43/frame 0xfffffe008da19f70 trap_fatal() at trap_fatal+0x387/frame 0xfffffe008da19fd0 trap_pfault() at trap_pfault+0x4f/frame 0xfffffe008da1a030 trap() at trap+0x26a/frame 0xfffffe008da1a140 calltrap() at calltrap+0x8/frame 0xfffffe008da1a140 --- trap 0xc, rip = 0xffffffff806cb53d, rsp = 0xfffffe008da1a210, rbp = 0xfffffe008da1a210 --- __rw_rlock_int() at __rw_rlock_int+0xd/frame 0xfffffe008da1a210 in6_lltable_lookup() at in6_lltable_lookup+0xa7/frame 0xfffffe008da1a240 nd6_lookup() at nd6_lookup+0x4e/frame 0xfffffe008da1a270 pfxlist_onlink_check() at pfxlist_onlink_check+0xfb/frame 0xfffffe008da1a310 nd6_ra_input() at nd6_ra_input+0x147f/frame 0xfffffe008da1a5d0 icmp6_input() at icmp6_input+0x685/frame 0xfffffe008da1a7b0 ip6_input() at ip6_input+0xa9a/frame 0xfffffe008da1a890 netisr_dispatch_src() at netisr_dispatch_src+0xca/frame 0xfffffe008da1a8e0 ether_demux() at ether_demux+0x138/frame 0xfffffe008da1a910 ether_nh_input() at ether_nh_input+0x34e/frame 0xfffffe008da1a970 netisr_dispatch_src() at netisr_dispatch_src+0xca/frame 0xfffffe008da1a9c0 ether_input() at ether_input+0x69/frame 0xfffffe008da1aa20 if_input() at if_input+0xa/frame 0xfffffe008da1aa30 bge_rxeof() at bge_rxeof+0x4dc/frame 0xfffffe008da1aab0 bge_intr_task() at bge_intr_task+0x1a7/frame 0xfffffe008da1ab00 taskqueue_run_locked() at taskqueue_run_locked+0x191/frame 0xfffffe008da1ab80 taskqueue_thread_loop() at taskqueue_thread_loop+0xc3/frame 0xfffffe008da1abb0 fork_exit() at fork_exit+0x8a/frame 0xfffffe008da1abf0 fork_trampoline() at fork_trampoline+0xe/frame 0xfffffe008da1abf0 --- trap 0, rip = 0, rsp = 0, rbp = 0 --- Uptime: 1m18s Dumping 511 out of 7972 MB:..4%..13%..22%..32%..41%..51%..63%..72%..82%..91% ---<<BOOT>>--- Copyright (c) 1992-2021 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD is a registered trademark of The FreeBSD Foundation. FreeBSD 14.0-CURRENT #85 komquats-n248853-efa24221b032: Sat Aug 21 20:41:37 PDT 2021 root@cwsys:/export/obj/opt/src/git-src/amd64.amd64/sys/BREAK amd64 FreeBSD clang version 12.0.1 (git@github.com:llvm/llvm-project.git llvmorg-12.0.1-0-gfed41342a82f) VT(vga): text 80x25 module_register: cannot register tmpfs from kernel; already loaded from tmpfs.ko Module tmpfs failed to register: 17 CPU: Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz (2294.83-MHz K8-class CPU) Origin="GenuineIntel" Id=0x206a7 Family=0x6 Model=0x2a Stepping=7 Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,M CA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE> Features2=0x1dbae3bf<SSE3,PCLMULQDQ,DTES64,MON,DS_CPL,VMX,EST,TM2,SSSE3,CX 16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,POPCNT,TSCDLT,XSAVE,OSXSAVE,AVX> AMD Features=0x28100800<SYSCALL,NX,RDTSCP,LM> AMD Features2=0x1<LAHF> XSAVE Features=0x1<XSAVEOPT> VT-x: PAT,HLT,MTF,PAUSE,EPT,UG,VPID TSC: P-state invariant, performance statistics real memory = 8589934592 (8192 MB) avail memory = 8082354176 (7707 MB) Event timer "LAPIC" quality 600 ACPI APIC Table: <ACRSYS ACRPRDCT> FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs FreeBSD/SMP: 1 package(s) x 2 core(s) x 2 hardware threads random: unblocking device. ioapic0 <Version 2.0> irqs 0-23 Launching APs: 1 3 2 Timecounter "TSC-low" frequency 1147416650 Hz quality 1000 random: entropy device external interface kbd1 at kbdmux0 vtvga0: <VT VGA driver> aesni0: No AES or SHA support. acpi0: <ACRSYS ACRPRDCT> acpi0: Power Button (fixed) cpu0: <ACPI CPU> on acpi0 hpet0: <High Precision Event Timer> iomem 0xfed00000-0xfed003ff on acpi0 Timecounter "HPET" frequency 14318180 Hz quality 950 Event timer "HPET" frequency 14318180 Hz quality 550 Event timer "HPET1" frequency 14318180 Hz quality 440 Event timer "HPET2" frequency 14318180 Hz quality 440 Event timer "HPET3" frequency 14318180 Hz quality 440 Event timer "HPET4" frequency 14318180 Hz quality 440 atrtc0: <AT realtime clock> port 0x70-0x77 irq 8 on acpi0 atrtc0: Warning: Couldn't map I/O. atrtc0: registered as a time-of-day clock, resolution 1.000000s Event timer "RTC" frequency 32768 Hz quality 0 attimer0: <AT timer> port 0x40-0x43,0x50-0x53 irq 0 on acpi0 Timecounter "i8254" frequency 1193182 Hz quality 0 Event timer "i8254" frequency 1193182 Hz quality 100 Timecounter "ACPI-fast" frequency 3579545 Hz quality 900 acpi_timer0: <24-bit timer at 3.579545MHz> port 0x408-0x40b on acpi0 acpi_ec0: <Embedded Controller: GPE 0x17> port 0x62,0x66 on acpi0 pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0 pci0: <ACPI PCI bus> on pcib0 vgapci0: <VGA-compatible display> port 0x2000-0x203f mem 0xf0000000-0xf03fffff,0xe0000000-0xefffffff irq 16 at device 2.0 on pci0 vgapci0: Boot video device pci0: <simple comms> at device 22.0 (no driver attached) ehci0: <Intel Cougar Point USB 2.0 controller> mem 0xf060a000-0xf060a3ff irq 16 at device 26.0 on pci0 usbus0: EHCI version 1.0 usbus0 on ehci0 usbus0: 480Mbps High Speed USB v2.0 hdac0: <Intel Cougar Point HDA Controller> mem 0xf0600000-0xf0603fff irq 22 at device 27.0 on pci0 pcib1: <ACPI PCI-PCI bridge> irq 16 at device 28.0 on pci0 pci1: <ACPI PCI bus> on pcib1 pcib2: <ACPI PCI-PCI bridge> irq 17 at device 28.1 on pci0 pci2: <ACPI PCI bus> on pcib2 iwn0: <Intel Centrino Advanced-N 6205> mem 0xf0500000-0xf0501fff irq 17 at device 0.0 on pci2 pcib3: <ACPI PCI-PCI bridge> irq 19 at device 28.3 on pci0 pci3: <ACPI PCI bus> on pcib3 bge0: <Broadcom BCM57765 B0, ASIC rev. 0x57785100> mem 0xf0400000-0xf040ffff,0xf0410000-0xf041ffff irq 19 at device 0.0 on pci3 bge0: CHIP ID 0x57785100; ASIC REV 0x57785; CHIP REV 0x577851; PCI-E miibus0: <MII bus> on bge0 brgphy0: <BCM57765 1000BASE-T media interface> PHY 1 on miibus0 brgphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 1000baseT-master, 1000baseT-FDX, 1000baseT-FDX-master, auto, auto-flow <6>bge0: Using defaults for TSO: 65518/35/2048 <6>bge0: Ethernet address: 20:6a:8a:72:03:17 sdhci_pci0: <Broadcom BCM577xx SDXC/MMC Card Reader> mem 0xf0420000-0xf042ffff irq 16 at device 0.1 on pci3 sdhci_pci0: 1 slot(s) allocated ehci1: <Intel Cougar Point USB 2.0 controller> mem 0xf0609000-0xf06093ff irq 23 at device 29.0 on pci0 usbus1: EHCI version 1.0 usbus1 on ehci1 usbus1: 480Mbps High Speed USB v2.0 isab0: <PCI-ISA bridge> at device 31.0 on pci0 isa0: <ISA bus> on isab0 ahci0: <Intel Cougar Point AHCI SATA controller> port 0x2088-0x208f,0x2094-0x2097,0x2080-0x2087,0x2090-0x2093,0x2060-0x207f mem 0xf0608000-0xf06087ff irq 19 at device 31.2 on pci0 ahci0: AHCI v1.30 with 6 6Gbps ports, Port Multiplier not supported ahcich0: <AHCI channel> at channel 0 on ahci0 ahcich1: <AHCI channel> at channel 1 on ahci0 ahcich5: <AHCI channel> at channel 5 on ahci0 ahciem0: <AHCI enclosure management bridge> on ahci0 ichsmb0: <Intel Cougar Point SMBus controller> port 0xefa0-0xefbf mem 0xf0604000-0xf06040ff irq 18 at device 31.3 on pci0 acpi_lid0: <Control Method Lid Switch> on acpi0 acpi_button0: <Sleep Button> on acpi0 acpi_tz0: <Thermal Zone> on acpi0 acpi_tz1: <Thermal Zone> on acpi0 atkbdc0: <Keyboard controller (i8042)> port 0x60,0x64 irq 1 on acpi0 atkbd0: <AT Keyboard> irq 1 on atkbdc0 kbd0 at atkbd0 atkbd0: [GIANT-LOCKED] psm0: <PS/2 Mouse> irq 12 on atkbdc0 psm0: [GIANT-LOCKED] WARNING: Device "psm" is Giant locked and may be deleted before FreeBSD 14.0. psm0: model Synaptics Touchpad, device ID 0 acpi_acad0: <AC Adapter> on acpi0 battery0: <ACPI Control Method Battery> on acpi0 vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff pnpid PNP0900 on isa0 ata0: <ATA channel> at port 0x1f0-0x1f7,0x3f6 irq 14 on isa0 ata1: <ATA channel> at port 0x170-0x177,0x376 irq 15 on isa0 acpi_perf0: <ACPI CPU Frequency Control> on cpu0 acpi_throttle0: <ACPI CPU Throttling> on cpu0 coretemp0: <CPU On-Die Thermal Sensors> on cpu0 acpi_throttle1: failed to attach P_CNT device_attach: acpi_throttle1 attach returned 6 acpi_throttle2: failed to attach P_CNT device_attach: acpi_throttle2 attach returned 6 acpi_throttle3: failed to attach P_CNT device_attach: acpi_throttle3 attach returned 6 module_register_init: MOD_LOAD (tmpfs, 0xffffffff807a2760, 0xffffffff80c88540) error 17 Timecounters tick every 10.000 msec ZFS filesystem version: 5 ZFS storage pool version: features support (5000) IP Filter: v5.1.2 initialized. Default = pass all, Logging = enabled hdacc0: <Realtek ALC269 HDA CODEC> at cad 0 on hdac0 hdaa0: <Realtek ALC269 Audio Function Group> at nid 1 on hdacc0 pcm0: <Realtek ALC269 (Analog 2.0+HP/2.0)> at nid 20,33 and 27 on hdaa0 pcm1: <Realtek ALC269 (Left Analog Mic)> at nid 24 on hdaa0 hdacc1: <Intel Cougar Point HDA CODEC> at cad 3 on hdac0 hdaa1: <Intel Cougar Point Audio Function Group> at nid 1 on hdacc1 pcm2: <Intel Cougar Point (HDMI/DP 8ch)> at nid 5 on hdaa1 smbus0: <System Management Bus> on ichsmb0 smb0: <SMBus generic I/O> on smbus0 sysctl_unregister_oid: failed(22) to unregister sysctl(tmpfs) ugen1.1: <Intel EHCI root HUB> at usbus1 ugen0.1: <Intel EHCI root HUB> at usbus0 uhub0 on usbus1 Trying to mount root from ufs:/dev/ufs/Sroot [rw]... Root mount waiting for: usbus0 usbus1 CAM uhub1 on usbus0 uhub1: <Intel EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus0 uhub0: <Intel EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus1 ses0 at ahciem0 bus 0 scbus3 target 0 lun 0 ses0: <AHCI SGPIO Enclosure 2.00 0001> SEMB S-E-S 2.00 device ses0: SEMB SES Device ada0 at ahcich0 bus 0 scbus0 target 0 lun 0 ada0: <HGST HTS721010A9E630 JB0OA3U0> ATA8-ACS SATA 3.x device ada0: Serial Number JR1000D33969RE ada0: 600.000MB/s transfers (SATA 3.x, UDMA6, PIO 8192bytes) ada0: Command Queueing enabled ada0: 953869MB (1953525168 512 byte sectors) ses0: pass0,ada0 in 'Slot 00', SATA Slot: scbus0 target 0 ses0: pass1,cd0 in 'Slot 01', SATA Slot: scbus1 target 0 cd0 at ahcich1 bus 0 scbus1 target 0 lun 0 cd0: <PIONEER DVD-RW DVRTD11RS 1.01> Removable CD-ROM SCSI device cd0: Serial Number SBB5103801 cd0: 150.000MB/s transfers (SATA 1.x, UDMA5, ATAPI 12bytes, PIO 8192bytes) cd0: Attempt to query device size failed: NOT READY, Medium not present - tray closed uhub1: 2 ports with 2 removable, self powered uhub0: 2 ports with 2 removable, self powered Root mount waiting for: usbus0 usbus1 ugen0.2: <vendor 0x8087 product 0x0024> at usbus0 uhub2 on uhub1 uhub2: <vendor 0x8087 product 0x0024, class 9/0, rev 2.00/0.00, addr 2> on usbus0 ugen1.2: <vendor 0x8087 product 0x0024> at usbus1 uhub3 on uhub0 uhub3: <vendor 0x8087 product 0x0024, class 9/0, rev 2.00/0.00, addr 2> on usbus1 Root mount waiting for: usbus0 usbus1 uhub3: 6 ports with 6 removable, self powered uhub2: 6 ports with 6 removable, self powered ugen1.3: <ALCOR Generic USB Hub> at usbus1 uhub4 on uhub3 uhub4: <ALCOR Generic USB Hub, class 9/0, rev 1.10/3.12, addr 3> on usbus1 ugen0.3: <vendor 0x05e3 USB2.0 Hub> at usbus0 uhub5 on uhub2 uhub5: <vendor 0x05e3 USB2.0 Hub, class 9/0, rev 2.00/6.03, addr 3> on usbus0 Root mount waiting for: usbus0 usbus1 uhub4: 4 ports with 4 removable, self powered uhub5: 4 ports with 4 removable, self powered ugen1.4: <Logitech USB Receiver> at usbus1 ukbd0 on uhub4 ukbd0: <Logitech USB Receiver, class 0/0, rev 2.00/12.07, addr 4> on usbus1 kbd2 at ukbd0 ums0 on uhub4 ums0: <Logitech USB Receiver, class 0/0, rev 2.00/12.07, addr 4> on usbus1 ums0: 16 buttons and [XYZT] coordinates ID=2 ugen0.4: <vendor 0x05e3 USB2.0 Hub> at usbus0 uhub6 on uhub5 uhub6: <vendor 0x05e3 USB2.0 Hub, class 9/0, rev 2.00/6.03, addr 4> on usbus0 Root mount waiting for: usbus0 usbus1 ugen1.5: <Device 2Port KVMSwitcher> at usbus1 ukbd1 on uhub4 ukbd1: <Device 2Port KVMSwitcher, class 0/0, rev 1.10/0.01, addr 5> on usbus1 kbd3 at ukbd1 uhub6: 4 ports with 4 removable, self powered ugen0.5: <NOONTEC DX HDEN10> at usbus0 umass0 on uhub6 umass0: <NOONTEC DX HDEN10, class 0/0, rev 2.00/0.01, addr 5> on usbus0 umass0: SCSI over Bulk-Only; quirks = 0x4100 umass0:6:0: Attached to scbus6 Root mount waiting for: usbus0 CAM da0 at umass-sim0 bus 0 scbus6 target 0 lun 0 da0: <SAMSUNG SP0802N 0000> Fixed Direct Access SCSI device da0: 40.000MB/s transfers da0: 76351MB (156368016 512 byte sectors) da0: quirks=0x2<NO_6_BYTE> ugen0.6: <vendor 0x05e3 USB TO IDE> at usbus0 umass1 on uhub6 umass1: <vendor 0x05e3 USB TO IDE, class 0/0, rev 2.00/0.33, addr 6> on usbus0 umass1: SCSI over Bulk-Only; quirks = 0x408c umass1:7:1: Attached to scbus7 da1 at umass-sim1 bus 1 scbus7 target 0 lun 0 da1: <ST980082 1A 0811> Fixed Direct Access SCSI device da1: 40.000MB/s transfers da1: 76319MB (156301488 512 byte sectors) da1: quirks=0x2<NO_6_BYTE> ugen0.7: <vendor 0x058f Flash Disk> at usbus0 umass2 on uhub5 umass2: <vendor 0x058f Flash Disk, class 0/0, rev 2.00/1.02, addr 7> on usbus0 umass2: SCSI over Bulk-Only; quirks = 0x4101 umass2:8:2: Attached to scbus8 da2 at umass-sim2 bus 2 scbus8 target 0 lun 0 da2: < Flash Disk 8.07> Removable Direct Access SCSI-2 device da2: Serial Number 029B4D84 da2: 40.000MB/s transfers da2: 246MB (504320 512 byte sectors) da2: quirks=0x2<NO_6_BYTE> Root mount waiting for: usbus0 ugen0.8: <AABBX0E6S 1.3M HD WebCam> at usbus0 mountroot: waiting for device /dev/ufs/Sroot... WARNING: / was not properly dismounted WARNING: /: mount pending error: blocks 24 files 0 <118>Setting hostuuid: 34f5ed40-8938-11da-b265-efe316da850d. <118>Setting hostid: 0x7f5a03b9. <118>Starting file system checks: <118>** SU+J Recovering /dev/ufs/Sroot <118>** Reading 16777216 byte journal from inode 4. <118>** Building recovery table. <118>** Resolving unreferenced inode list. <118>** Processing journal entries. <118>** 7 journal records in 1536 bytes for 14.58% utilization <118>** Freed 1 inodes (0 dirs) 0 blocks, and 3 frags. <118> <118>***** FILE SYSTEM MARKED CLEAN ***** <118>** SU+J Recovering /dev/ufs/Svar <118>** Reading 16777216 byte journal from inode 4. <118>** Building recovery table. <118>** Resolving unreferenced inode list. <118>** Processing journal entries. <118>** SU+J Recovering /dev/ufs/Susr <118>** Reading 25165824 byte journal from inode 4. <118>** 40 journal records in 4096 bytes for 31.25% utilization <118>** Freed 0 inodes (0 dirs) 0 blocks, and 0 frags. <118> <118>***** FILE SYSTEM MARKED CLEAN ***** <118>** Building recovery table. <118>** Resolving unreferenced inode list. <118>** Processing journal entries. <118> <118>***** FILE SYSTEM MARKED CLEAN ***** <118>/dev/ada0s3a: 7535 files, 131352 used, 376431 free (1135 frags, 46912 blocks, 0.2% fragmentation) <118>/dev/ada0s3e: 24573 files, 319053 used, 442234 free (1082 frags, 55144 blocks, 0.1% fragmentation) <118>/dev/ada0s3d: 22537 files, 105401 used, 402382 free (270 frags, 50264 blocks, 0.1% fragmentation) <118>/dev/ada0s3f: 18331 files, 109447 used, 398336 free (576 frags, 49720 blocks, 0.1% fragmentation) <118>/dev/ada0s3h: 22924 files, 188609 used, 572677 free (685 frags, 71499 blocks, 0.1% fragmentation) <118>/dev/ada0s3g: 5348 files, 49444 used, 458339 free (275 frags, 57258 blocks, 0.1% fragmentation) <118>** SU+J Recovering /dev/zvol/tank/VMs/current/amd64/disk3p1 <118>** Reading 33554432 byte journal from inode 4. <118>** Building recovery table. <118>** Resolving unreferenced inode list. <118>** Processing journal entries. <118>** SU+J Recovering /dev/zvol/tank/VMs/current/amd64/disk0s1a <118>** Reading 16777216 byte journal from inode 827. <118> <118>***** FILE SYSTEM MARKED CLEAN ***** <118>** Building recovery table. <118>** Resolving unreferenced inode list. <118>** Processing journal entries. <118> <118>***** FILE SYSTEM MARKED CLEAN ***** <118>** SU+J Recovering /dev/zvol/tank/VMs/current/amd64/disk0s1d <118>** Reading 16777216 byte journal from inode 117. <118>** Building recovery table. <118>** Resolving unreferenced inode list. <118>** Processing journal entries. <118> <118>***** FILE SYSTEM MARKED CLEAN ***** <118>** SU+J Recovering /dev/zvol/tank/VMs/current/amd64/disk0s1e <118>** Reading 33554432 byte journal from inode 16. <118>** Building recovery table. <118>** Resolving unreferenced inode list. <118>** Processing journal entries. <118> <118>***** FILE SYSTEM MARKED CLEAN ***** <118>/dev/msdosfs/SHARED: 435 files, 6.2 GiB free (203709 clusters) <118>FIXED <118>/dev/msdosfs/SHARED: MARKING FILE SYSTEM CLEAN <118>/dev/zvol/tank/VMs/current/i386/disk0s1a: 114555 files, 255948 used, 251835 free (403 frags, 31429 blocks, 0.1% fragmentation) <118>/dev/zvol/tank/VMs/current/i386/disk0s1d: 22759 files, 126960 used, 380823 free (143 frags, 47585 blocks, 0.0% fragmentation) <118>/dev/zvol/tank/VMs/current/i386/disk0s1e: 28564 files, 549004 used, 973507 free (1603 frags, 121488 blocks, 0.1% fragmentation) <118>Mounting local filesystems:. <118>Mounting ZFS filesystems: (193/193) <118>Local package initialization:error: ed0: No such device exists (BIOCSETIF failed: Device not configured) <118>Unable to read the configuration file: No such file or directory at /usr/local/lib/perl5/site_perl/Jail.pm line 50. <118>Compilation failed in require at /usr/local/sbin/jailadmin line 13. <118>BEGIN failed--compilation aborted at /usr/local/sbin/jailadmin line 13. <118> Jails. <118>Autoloading module: acpi_wmi acpi_wmi0: <ACPI-WMI mapping> on acpi0 acpi_wmi0: Embedded MOF found ACPI: \_SB.AMWA.WQEE: 1 arguments were passed to a non-method ACPI object (Buffer) (20210730/nsarguments-361) acpi_wmi1: <ACPI-WMI mapping> on acpi0 acpi_wmi1: Embedded MOF found ACPI: \_SB.AMW0.WQDD: 1 arguments were passed to a non-method ACPI object (Buffer) (20210730/nsarguments-361) <118>Updating CPU Microcode... CPU: Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz (2294.83-MHz K8-class CPU) Origin="GenuineIntel" Id=0x206a7 Family=0x6 Model=0x2a Stepping=7 Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,M CA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE> Features2=0x1dbae3bf<SSE3,PCLMULQDQ,DTES64,MON,DS_CPL,VMX,EST,TM2,SSSE3,CX 16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,POPCNT,TSCDLT,XSAVE,OSXSAVE,AVX> AMD Features=0x28100800<SYSCALL,NX,RDTSCP,LM> AMD Features2=0x1<LAHF> Structured Extended Features3=0x9c000400<MD_CLEAR,IBPB,STIBP,L1DFL,SSBD> XSAVE Features=0x1<XSAVEOPT> VT-x: PAT,HLT,MTF,PAUSE,EPT,UG,VPID TSC: P-state invariant, performance statistics <118>Done. <118>ELF ldconfig path: /lib /usr/lib /usr/lib/compat /usr/local/lib /usr/local/lib/compat/pkg /usr/local/krb5/lib /usr/local/kde4/lib /usr/local/dt/lib /usr/local/lib/compat/pkg /usr/local/lib/dovecot /usr/local/lib/e2fsprogs /usr/local/lib/expect5.45.4 /usr/local/lib/freeradius-3.0.23 /usr/local/lib/gcc10 /usr/local/lib/gcc11 /usr/local/lib/gcc12 /usr/local/lib/gcc8 /usr/local/lib/gcc9 /usr/local/lib/graphviz /usr/local/lib/httrack /usr/local/lib/itcl3.4 /usr/local/lib/mysql /usr/local/lib/mysql/plugin /usr/local/lib/opencollada /usr/local/lib/perl5/5.30/mach/CORE /usr/local/lib/perl5/5.32/mach/CORE /usr/local/lib/perl5/5.34/mach/CORE /usr/local/lib/pidgin /usr/local/lib/pth /usr/local/lib/qt5 /usr/local/lib/samba4 /usr/local/lib/xrdp /usr/local/libexec/openldap /usr/local/llvm-devel/lib /usr/local/llvm10/lib /usr/local/llvm11/lib /usr/local/llvm12/lib /usr/local/llvm70/lib /usr/local/llvm80/lib /usr/local/llvm90/lib /usr/local/share/chromium <118>32-bit compatibility ldconfig path: /usr/lib32 /alt/i386/root/usr/local/lib <118>Setting hostname: slippy. <118>Setting up harvesting: [UMA],[FS_ATIME],SWI,INTERRUPT,NET_NG,[NET_ETHER ],NET_TUN,MOUSE,KEYBOARD,ATTACH,CACHED <118>Feeding entropy: . <118>Starting ippool. <118>70018:add pool node(252.0.0.1/255.255.255.255: node entry already present in pool <118>70018:add pool node(252.0.0.1/255.255.255.255: node entry already present in pool <118>70018:add pool node(252.0.0.1/255.255.255.255: node entry already present in pool <118>70018:add pool node(252.0.0.1/255.255.255.255: node entry already present in pool <118>70018:add pool node(252.0.0.1/255.255.255.255: node entry already present in pool <118>70018:add pool node(252.0.0.1/255.255.255.255: node entry already present in pool <118>70018:add pool node(252.0.0.1/255.255.255.255: node entry already present in pool <118>70018:add pool node(252.0.0.1/255.255.255.255: node entry already present in pool <118>70018:add pool node(252.0.0.1/255.255.255.255: node entry already present in pool <118>70018:add pool node(252.0.0.1/255.255.255.255: node entry already present in pool <118>70018:add pool node(252.0.0.1/255.255.255.255: node entry already present in pool <118>70018:add pool node(252.0.0.1/255.255.255.255: node entry already present in pool <118>70018:add pool node(252.0.0.1/255.255.255.255: node entry already present in pool <118>70018:add pool node(252.0.0.1/255.255.255.255: node entry already present in pool <118>Additional TCP/IP options: rfc1323 extensions=NO. <118>Enabling ipfilter. <118>Installing NAT rules. <118>0 entries flushed from NAT table <118>0 entries flushed from NAT list <118>Starting ipmon. <6>wlan0: Ethernet address: 20:6a:8a:72:03:17 <118>Created wlan(4) interfaces: wlan0. <6>bridge0: Ethernet address: 58:9c:fc:10:ff:c8 <118>Created clone interfaces: lagg0 bridge0. <6>lo0: link state changed to UP <6>bge0: link state changed to DOWN iwn0: iwn_read_firmware: ucode rev=0x12a80601 <118>Starting wpa_supplicant. <6>lagg0: link state changed to DOWN <6>lagg0: IPv6 addresses on wlan0 have been removed before adding it as a member to prevent IPv6 address scope violation. iwn0: iwn_read_firmware: ucode rev=0x12a80601 <6>wlan0: link state changed to UP <6>lagg0: link state changed to UP <6>bge0: link state changed to UP Fatal trap 12: page fault while in kernel mode cpuid = 0; apic id = 00 fault virtual address = 0x128 fault code = supervisor read data, page not present instruction pointer = 0x20:0xffffffff806cb53d stack pointer = 0x28:0xfffffe00831a3210 frame pointer = 0x28:0xfffffe00831a3210 code segment = base 0x0, limit 0xfffff, type 0x1b = DPL 0, pres 1, long 1, def32 0, gran 1 processor eflags = interrupt enabled, resume, IOPL = 0 current process = 0 (bge0 taskq) trap number = 12 panic: page fault cpuid = 0 time = 1629610531 KDB: stack backtrace: db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe00831a2eb0 vpanic() at vpanic+0x187/frame 0xfffffe00831a2f10 panic() at panic+0x43/frame 0xfffffe00831a2f70 trap_fatal() at trap_fatal+0x387/frame 0xfffffe00831a2fd0 trap_pfault() at trap_pfault+0x4f/frame 0xfffffe00831a3030 trap() at trap+0x26a/frame 0xfffffe00831a3140 calltrap() at calltrap+0x8/frame 0xfffffe00831a3140 --- trap 0xc, rip = 0xffffffff806cb53d, rsp = 0xfffffe00831a3210, rbp = 0xfffffe00831a3210 --- __rw_rlock_int() at __rw_rlock_int+0xd/frame 0xfffffe00831a3210 in6_lltable_lookup() at in6_lltable_lookup+0xa7/frame 0xfffffe00831a3240 nd6_lookup() at nd6_lookup+0x4e/frame 0xfffffe00831a3270 pfxlist_onlink_check() at pfxlist_onlink_check+0xfb/frame 0xfffffe00831a3310 nd6_ra_input() at nd6_ra_input+0x147f/frame 0xfffffe00831a35d0 icmp6_input() at icmp6_input+0x685/frame 0xfffffe00831a37b0 ip6_input() at ip6_input+0xa9a/frame 0xfffffe00831a3890 netisr_dispatch_src() at netisr_dispatch_src+0xca/frame 0xfffffe00831a38e0 ether_demux() at ether_demux+0x138/frame 0xfffffe00831a3910 ether_nh_input() at ether_nh_input+0x34e/frame 0xfffffe00831a3970 netisr_dispatch_src() at netisr_dispatch_src+0xca/frame 0xfffffe00831a39c0 ether_input() at ether_input+0x69/frame 0xfffffe00831a3a20 if_input() at if_input+0xa/frame 0xfffffe00831a3a30 bge_rxeof() at bge_rxeof+0x4dc/frame 0xfffffe00831a3ab0 bge_intr_task() at bge_intr_task+0x1a7/frame 0xfffffe00831a3b00 taskqueue_run_locked() at taskqueue_run_locked+0x191/frame 0xfffffe00831a3b80 taskqueue_thread_loop() at taskqueue_thread_loop+0xc3/frame 0xfffffe00831a3bb0 fork_exit() at fork_exit+0x8a/frame 0xfffffe00831a3bf0 fork_trampoline() at fork_trampoline+0xe/frame 0xfffffe00831a3bf0 --- trap 0, rip = 0, rsp = 0, rbp = 0 --- Uptime: 1m28s Dumping 512 out of 7972 MB:..4%..13%..22%..32%..41%..54%..63%..72%..82%..91% __curthread () at /opt/src/git-src/sys/amd64/include/pcpu_aux.h:55 55 __asm("movq %%gs:%P1,%0" : "=r" (td) : "n" (offsetof(struct pcpu, (kgdb) bt #0 __curthread () at /opt/src/git-src/sys/amd64/include/pcpu_aux.h:55 #1 doadump (textdump=textdump@entry=1) at /opt/src/git-src/sys/kern/kern_sh utdown.c:399 #2 0xffffffff806cf9ab in kern_reboot (howto=260) at /opt/src/git-src/sys/kern/kern_shutdown.c:486 #3 0xffffffff806cfe26 in vpanic (fmt=0xffffffff80a94e2f "%s", ap=<optimized out>) at /opt/src/git-src/sys/kern/kern_shutdown.c:919 #4 0xffffffff806cfc23 in panic (fmt=<unavailable>) at /opt/src/git-src/sys/kern/kern_shutdown.c:843 #5 0xffffffff80a342c7 in trap_fatal (frame=0xfffffe00831a3150, eva=296) at /opt/src/git-src/sys/amd64/amd64/trap.c:946 #6 0xffffffff80a3431f in trap_pfault (frame=frame@entry=0xfffffe00831a3150, usermode=false, signo=<optimized out>, signo@entry=0x0, ucode=<optimized out>, ucode@entry=0x0) at /opt/src/git-src/sys/amd64/amd64/trap.c:765 #7 0xffffffff80a3399a in trap (frame=0xfffffe00831a3150) at /opt/src/git-src/sys/amd64/amd64/trap.c:443 #8 <signal handler called> #9 __rw_rlock_int (rw=0x110) at /opt/src/git-src/sys/kern/kern_rwlock.c:679 #10 0xffffffff8087cd07 in in6_lltable_lookup (llt=<optimized out>, flags=<optimized out>, l3addr=<optimized out>) at /opt/src/git-src/sys/netin et6/in6.c:2349 #11 0xffffffff80897dae in lla_lookup (llt=0x110, flags=2374593664, flags@entry=0, l3addr=0xfffffe00831a3250) at /opt/src/git-src/sys/net/if_lla tbl.h:261 #12 nd6_lookup (addr6=<optimized out>, flags=-1920373632, flags@entry=0, ifp=<optimized out>) at /opt/src/git-src/sys/netinet6/nd6.c:1204 #13 0xffffffff8089ff7b in find_pfxlist_reachable_router (pr=0xfffff8002b64f100) at /opt/src/git-src/sys/netinet6/nd6_rtr.c:1817 #14 pfxlist_onlink_check () at /opt/src/git-src/sys/netinet6/nd6_rtr.c:1861 #15 0xffffffff8089fc5f in nd6_ra_input (m=<optimized out>, m@entry=0xfffff8003a3e1d00, off=<optimized out>, icmp6len=<optimized out>, icmp6len@entry=48) at /opt/src/git-src/sys/netinet6/nd6_rtr.c:597 #16 0xffffffff80874aa5 in icmp6_input (mp=0xfffffe00831a37f8, offp=0xfffffe00831a37f0, proto=<optimized out>) at /opt/src/git-src/sys/netinet6/icmp6.c:780 #17 0xffffffff8088beca in ip6_input (m=0xfffff8003a3e1d00) at /opt/src/git-src/sys/netinet6/ip6_input.c:929 #18 0xffffffff80806d6a in netisr_dispatch_src (proto=6, source=<optimized out>, source@entry=0, m=0x0) at /opt/src/git-src/sys/net/netisr.c:1143 #19 0xffffffff8080704f in netisr_dispatch (proto=272, m=0x10) at /opt/src/git-src/sys/net/netisr.c:1234 #20 0xffffffff807f3d58 in ether_demux (ifp=ifp@entry=0xfffff8003a30e800, m=0xfffffe008d896c80) at /opt/src/git-src/sys/net/if_ethersubr.c:925 #21 0xffffffff807f50fe in ether_input_internal (ifp=0xfffff8003a30e800, m=0xfffffe008d896c80) at /opt/src/git-src/sys/net/if_ethersubr.c:711 #22 ether_nh_input (m=<optimized out>) at /opt/src/git-src/sys/net/if_ethers ubr.c:741 #23 0xffffffff80806d6a in netisr_dispatch_src (proto=proto@entry=5, source=<optimized out>, source@entry=0, m=0x0, m@entry=0xfffff8003a3e1d00) at /opt/src/git-src/sys/net/netisr.c:1143 #24 0xffffffff8080704f in netisr_dispatch (proto=272, proto@entry=5, m=0x10, m@entry=0xfffff8003a3e1d00) at /opt/src/git-src/sys/net/netisr.c:123 4 #25 0xffffffff807f41a9 in ether_input (ifp=<optimized out>, m=0xfffff8003a3e1d00) at /opt/src/git-src/sys/net/if_ethersubr.c:832 #26 0xffffffff807f042a in if_input (ifp=0x110, ifp@entry=0xfffff8000516b800, sendmp=0xfffffe008d896c80, sendmp@entry=0xfffff8003a3e1d00) at /opt/src/git-src/sys/net/if.c:4444 #27 0xffffffff818eaabc in bge_rxeof (sc=<optimized out>, sc@entry=0xfffffe00107d0000, rx_prod=rx_prod@entry=2, holdlck=holdlck@entry=0) at /opt/src/git-src/sys/dev/bge/if_bge.c:4436 #28 0xffffffff818e7d57 in bge_intr_task (arg=0xfffffe00107d0000, pending=<optimized out>) at /opt/src/git-src/sys/dev/bge/if_bge.c:4666 #29 0xffffffff80731d81 in taskqueue_run_locked (queue=queue@entry=0xfffff800 03890600) at /opt/src/git-src/sys/kern/subr_taskqueue.c:476 #30 0xffffffff80733073 in taskqueue_thread_loop (arg=<optimized out>, arg@entry=0xfffffe00107d7568) at /opt/src/git-src/sys/kern/subr_taskqueue.c: 793 #31 0xffffffff8068b80a in fork_exit (callout=0xffffffff80732fb0 <taskqueue_thread_loop>, arg=0xfffffe00107d7568, frame=0xfffffe00831a3c00) at /opt/src/git-src/sys/kern/kern_fork.c:1087 #32 <signal handler called> (kgdb) frame 9 #9 __rw_rlock_int (rw=0x110) at /opt/src/git-src/sys/kern/kern_rwlock.c:679 679 v = RW_READ_VALUE(rw); (kgdb) l 674 KASSERT(rw_wowner(rw) != td, 675 ("rw_rlock: wlock already held for %s @ %s:%d", 676 rw->lock_object.lo_name, file, line)); 677 WITNESS_CHECKORDER(&rw->lock_object, LOP_NEWORDER, file, line, NULL); 678 679 v = RW_READ_VALUE(rw); 680 if (__predict_false(LOCKSTAT_PROFILE_ENABLED(rw__acquire) || 681 !__rw_rlock_try(rw, td, &v, true LOCK_FILE_LINE_ARG))) 682 __rw_rlock_hard(rw, td, v LOCK_FILE_LINE_ARG); 683 else (kgdb) p rw $1 = (struct rwlock *) 0x110 (kgdb) frame 10 #10 0xffffffff8087cd07 in in6_lltable_lookup (llt=<optimized out>, flags=<optimized out>, l3addr=<optimized out>) at /opt/src/git-src/sys/netin et6/in6.c:2349 2349 LLE_RLOCK(lle); (kgdb) l 2344 return (lle); 2345 2346 if (flags & LLE_EXCLUSIVE) 2347 LLE_WLOCK(lle); 2348 else 2349 LLE_RLOCK(lle); 2350 2351 /* 2352 * If the afdata lock is not held, the LLE may have been unlinked while 2353 * we were blocked on the LLE lock. Check for this case. (kgdb) p lle $2 = (struct llentry *) 0x0 (kgdb) -- Cheers, Cy Schubert <Cy.Schubert@cschubert.com> FreeBSD UNIX: <cy@FreeBSD.org> Web: https://FreeBSD.org NTP: <cy@nwtime.org> Web: https://nwtime.org The need of the many outweighs the greed of the few.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202108220558.17M5wAuq003114>