From: | "Sepherosa Ziehau" <sepherosa@xxxxxxxxx> |
Date: | Sun, 17 Sep 2006 21:37:47 -0400 |
The problem may be caused by that second skc's skc_probe() reinitializes a global "sk_serializer"
Best Regards, sephe
Matthew Dillon wrote: > > I'm not sure why the mbuf is shared at that point, > but the assertion is definitely in the wrong part of the code path. > > I am going to move the assertion. Could you try that patch and > tell me if it works for compiled-in bridging?
No, it does not seem to help. I am telling more: I have 2 cards, sk0 (public IP) and sk1 (IP-less) - bridged. I use pf, all the filtering is done on sk1. When only sk0 is plugged in, the crash comes after a few minutes. When only sk1 is plugged in, the crash comes right after logging in. Attaching the dmesg from the last crash.
Copyright (c) 2003, 2004, 2005, 2006 The DragonFly Project. Copyright (c) 1992-2003 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. DragonFly 1.6.1-RELEASE #5: Sun Sep 17 00:26:38 CEST 2006 szg@xxxxxxxxxxxxxxxxxxxxxxxxx:/usr/obj/usr/src/sys/SMP TSC clock: 446442108 Hz, i8254 clock: 1193240 Hz CPU: Pentium II/Pentium II Xeon/Celeron (446.42-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0x652 Stepping = 2 Features=0x183fbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR> real memory = 536870912 (524288K bytes) avail memory = 509067264 (497136K bytes) Programming 32 pins in IOAPIC #0 DragonFly/MP: Multiprocessor motherboard cpu0 (BSP): apic id: 1, version: 0x00040011, at 0xfee00000 cpu1 (AP): apic id: 0, version: 0x00040011, at 0xfee00000 io0 (APIC): apic id: 2, version: 0x001f0011, at 0xfec00000 Preloaded elf kernel "/kernel" at 0xc073b000. Pentium Pro MTRR support enabled md0: Malloc disk pcibios: BIOS version 2.10 Using $PIR table, 15 entries at 0xc00fded0 npx0: <math processor> on motherboard npx0: INT 16 interface compare 0 legacypci0 on motherboard pcib0: <Intel 82443GX host to PCI bridge> on legacypci0 pci0: <PCI bus> on pcib0 agp0: <Intel 82443GX host to PCI bridge> mem 0xfa800000-0xfaffffff at device 0.0 on pci0 pcib1: <Intel 82443GX (440 GX) PCI-PCI (AGP) bridge> at device 1.0 on pci0 pci1: <PCI bus> on pcib1 pci0: <unknown card> (vendor=0x110a, dev=0x0015) at 2.0 pcib2: <DEC 21152 PCI-PCI bridge> at device 3.0 on pci0 pci2: <PCI bus> on pcib2 pci2: <Cirrus Logic GD5446 SVGA controller> at 0.0 sym0: <895> port 0x2000-0x20ff mem 0xfa209000-0xfa209fff,0xfa20a000-0xfa20a0ff irq 17 at device 1.0 on pci2 sym0: Symbios NVRAM, ID 7, Fast-40, LVD, parity checking sym0: open drain IRQ line driver, using on-chip SRAM sym0: using LOAD/STORE-based firmware. skc0: <Marvell Gigabit Ethernet> port 0x2400-0x24ff mem 0xfa200000-0xfa203fff irq 18 at device 8.0 on pci2 skc0: bad VPD resource id: expected 82 got 55 skc0: (null) sk0: <Marvell Semiconductor, Inc. Yukon> on skc0 miibus0: <MII bus> on sk0 e1000phy0: <Marvell Semiconductor 88E1000* gigabit PHY> on miibus0 e1000phy0: 1000baseTX-FDX, 100baseTX-FDX, 100baseTX, 10baseTX-FDX, 10baseTX, auto sk0: MAC address: 00:30:4f:37:9a:91 skc1: <Marvell Gigabit Ethernet> port 0x2800-0x28ff mem 0xfa204000-0xfa207fff irq 19 at device 10.0 on pci2 skc1: bad VPD resource id: expected 82 got 55 skc1: (null) sk1: <Marvell Semiconductor, Inc. Yukon> on skc1 miibus1: <MII bus> on sk1 e1000phy1: <Marvell Semiconductor 88E1000* gigabit PHY> on miibus1 e1000phy1: 1000baseTX-FDX, 100baseTX-FDX, 100baseTX, 10baseTX-FDX, 10baseTX, auto sk1: MAC address: 00:30:4f:36:17:dc pci0: <unknown card> (vendor=0x110a, dev=0x001d) at 4.0 irq 2 isab0: <Intel 82371AB PCI to ISA bridge> at device 7.0 on pci0 isa0: <ISA bus> on isab0 atapci0: <Intel PIIX4 ATA33 controller> port 0x1800-0x180f at device 7.1 on pci0 ata0: at 0x1f0 irq 14 on atapci0 ata1: at 0x170 irq 15 on atapci0 uhci0: <Intel 82371AB/EB (PIIX4) USB controller> port 0x1400-0x141f irq 16 at device 7.2 on pci0 usb0: <Intel 82371AB/EB (PIIX4) USB controller> on uhci0 usb0: USB revision 1.0 uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub0: 2 ports with 2 removable, self powered pci0: <Intel 82371AB Power management controller> at 7.3 orm0: <Option ROMs> at iomem 0xc0000-0xc7fff,0xc8000-0xc87ff on isa0 fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0 atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0 atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0 kbd0 at atkbd0 vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 sc0: <System console> at flags 0x100 on isa0 sc0: VGA <16 virtual consoles, flags=0x300> sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0 sio0: type 16550A sio1 at port 0x2f8-0x2ff irq 3 on isa0 sio1: type 16550A ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0 ppc0: Generic chipset (EPP/NIBBLE) in COMPATIBLE mode ppbus0: <Parallel port bus> on ppc0 plip0: <PLIP network interface> on ppbus0 lpt0: <Printer> on ppbus0 lpt0: Interrupt-driven port ppi0: <Parallel I/O> on ppbus0 APIC_IO: Testing 8254 interrupt delivery APIC_IO: routing 8254 via IOAPIC #0 intpin 2 SMP: AP CPU #1 Launched! ad0: 8223MB <ST38410A> [16708/16/63] at ata0-master PIO4 Waiting 5 seconds for SCSI devices to settle (noperiph:sym0:0:-1:-1): SCSI BUS reset delivered. Mounting root from ufs:/dev/ad0s1a WARNING: was not properly dismounted bridge0: MAC address: 5e:ad:1c:75:ea:cc pflog0: promiscuous mode enabled
-- Live Free or Die
Attachment:
sk.diff
Description: Binary data