Date: Mon, 21 Apr 2008 07:28:46 GMT From: Stephen Halpin <seh-k3t3z4@mail.quadrizen.com> To: freebsd-gnats-submit@FreeBSD.org Subject: kern/122954: IPv6 EUI64 incorrectly chosen for lagg devices Message-ID: <200804210728.m3L7SkBO092706@www.freebsd.org> Resent-Message-ID: <200804210730.m3L7U3AU078669@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 122954 >Category: kern >Synopsis: IPv6 EUI64 incorrectly chosen for lagg devices >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Mon Apr 21 07:30:03 UTC 2008 >Closed-Date: >Last-Modified: >Originator: Stephen Halpin >Release: FreeBSD 6.3 >Organization: >Environment: FreeBSD 6.3-RELEASE FreeBSD 6.3-RELEASE #0: Wed Jan 16 01:43:02 UTC 2008 root@palmer.cse.buffalo.edu:/usr/obj/usr/src/sys/SMP amd64 >Description: I have multiple systems with multiple Ethernet interfaces. I am configuring lagg devices with a subset of those interfaces, and the lagg devices does not derive its EUI64 node address from the Ethernet address of the lagg device. If VLANs are configured on the lagg device, they inherit the wrong EUI64 value. In the example below, bge0/bge1 are used to form the lagg0 interface, and the EUI64 value is based on the interface em0. The problem appears to be in the way the kernel is handing the automatic generation of the link local address. As an aside, I always see the line "kldload: Unsupported file type" when creating the lagg device, but everything appears to work. >How-To-Repeat: Three sections follow. The rc.conf, ifconfig -a output and dmesg -a output: A minimal /etc/rc.conf configuration for a system with em0, bge0, and bge1 Gigabit Ethernet interfaces: cloned_interfaces="lagg0" ifconfig_bge0="up" ifconfig_bge1="up" ifconfig_lagg0="inet 192.168.160.56 netmask 255.255.255.192 laggproto lacp laggport bge0 laggport bge1" ipv6_enable="YES" Here is the ifconfig -a output after booting a raw 6.3 installation: em0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 options=1b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING> inet6 fe80::21b:21ff:fe0c:bed9%em0 prefixlen 64 scopeid 0x1 ether 00:1b:21:0c:be:d9 media: Ethernet autoselect status: no carrier bge0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 options=1b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING> inet6 fe80::214:22ff:fe7c:a6bd%bge0 prefixlen 64 scopeid 0x2 ether 00:14:22:7c:a6:bd media: Ethernet autoselect (100baseTX <full-duplex>) status: active lagg: laggdev lagg0 bge1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 options=1b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING> inet6 fe80::214:22ff:fe7c:a6be%bge1 prefixlen 64 scopeid 0x3 ether 00:14:22:7c:a6:bd media: Ethernet autoselect (100baseTX <full-duplex>) status: active lagg: laggdev lagg0 lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384 inet6 ::1 prefixlen 128 inet6 fe80::1%lo0 prefixlen 64 scopeid 0x4 inet 127.0.0.1 netmask 0xff000000 lagg0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 options=1b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING> inet6 fe80::21b:21ff:fe0c:bed9%lagg0 prefixlen 64 scopeid 0x5 inet 192.168.160.56 netmask 0xffffffc0 broadcast 192.168.160.63 ether 00:14:22:7c:a6:bd media: Ethernet autoselect status: active laggproto lacp laggport: bge1 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING> laggport: bge0 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING> Output of dmesg -a: Copyright (c) 1992-2008 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 6.3-RELEASE #0: Wed Jan 16 01:43:02 UTC 2008 root@palmer.cse.buffalo.edu:/usr/obj/usr/src/sys/SMP ACPI APIC Table: <DELL PE850 > Timecounter "i8254" frequency 1193182 Hz quality 0 CPU: Intel(R) Pentium(R) 4 CPU 3.00GHz (3003.13-MHz K8-class CPU) Origin = "GenuineIntel" Id = 0xf43 Stepping = 3 Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE> Features2=0x649d<SSE3,RSVD2,MON,DS_CPL,EST,CNXT-ID,CX16,xTPR> AMD Features=0x20100800<SYSCALL,NX,LM> Logical CPUs per core: 2 real memory = 1073479680 (1023 MB) avail memory = 1022824448 (975 MB) FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs cpu0 (BSP): APIC ID: 0 cpu1 (AP): APIC ID: 1 ioapic0: Changing APIC ID to 2 ioapic1: Changing APIC ID to 3 ioapic0 <Version 2.0> irqs 0-23 on motherboard ioapic1 <Version 2.0> irqs 32-55 on motherboard kbd1 at kbdmux0 ath_hal: 0.9.20.3 (AR5210, AR5211, AR5212, RF5111, RF5112, RF2413, RF5413) hptrr: HPT RocketRAID controller driver v1.1 (Jan 16 2008 01:41:13) acpi0: <DELL PE850> on motherboard acpi0: Power Button (fixed) Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000 acpi_timer0: <24-bit timer at 3.579545MHz> port 0x808-0x80b on acpi0 acpi_hpet0: <High Precision Event Timer> iomem 0xfed00000-0xfed003ff on acpi0 Timecounter "HPET" frequency 14318180 Hz quality 900 cpu0: <ACPI CPU> on acpi0 cpu1: <ACPI CPU> on acpi0 pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0 pci0: <ACPI PCI bus> on pcib0 pcib1: <ACPI PCI-PCI bridge> at device 1.0 on pci0 pci1: <ACPI PCI bus> on pcib1 pcib2: <ACPI PCI-PCI bridge> at device 28.0 on pci0 pci2: <ACPI PCI bus> on pcib2 pcib3: <ACPI PCI-PCI bridge> at device 0.0 on pci2 pci3: <ACPI PCI bus> on pcib3 em0: <Intel(R) PRO/1000 Network Connection Version - 6.7.2> port 0xecc0-0xecff mem 0xfe9e0000-0xfe9fffff,0xfe9c0000-0xfe9dffff irq 35 at device 2.0 on pci3 em0: Ethernet address: 00:1b:21:0c:be:d9 pcib4: <ACPI PCI-PCI bridge> at device 28.4 on pci0 pci4: <ACPI PCI bus> on pcib4 bge0: <Broadcom BCM5750 B1, ASIC rev. 0x4101> mem 0xfe6f0000-0xfe6fffff irq 16 at device 0.0 on pci4 miibus0: <MII bus> on bge0 brgphy0: <BCM5750 10/100/1000baseTX PHY> on miibus0 brgphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 1000baseT-FDX, auto bge0: Ethernet address: 00:14:22:7c:a6:bd pcib5: <ACPI PCI-PCI bridge> at device 28.5 on pci0 pci5: <ACPI PCI bus> on pcib5 bge1: <Broadcom BCM5750 B1, ASIC rev. 0x4101> mem 0xfe4f0000-0xfe4fffff irq 17 at device 0.0 on pci5 miibus1: <MII bus> on bge1 brgphy1: <BCM5750 10/100/1000baseTX PHY> on miibus1 brgphy1: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 1000baseT-FDX, auto bge1: Ethernet address: 00:14:22:7c:a6:be uhci0: <UHCI (generic) USB controller> port 0xace0-0xacff irq 20 at device 29.0 on pci0 uhci0: [GIANT-LOCKED] usb0: <UHCI (generic) 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 uhci1: <UHCI (generic) USB controller> port 0xacc0-0xacdf irq 21 at device 29.1 on pci0 uhci1: [GIANT-LOCKED] usb1: <UHCI (generic) USB controller> on uhci1 usb1: USB revision 1.0 uhub1: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub1: 2 ports with 2 removable, self powered uhci2: <UHCI (generic) USB controller> port 0xaca0-0xacbf irq 22 at device 29.2 on pci0 uhci2: [GIANT-LOCKED] usb2: <UHCI (generic) USB controller> on uhci2 usb2: USB revision 1.0 uhub2: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub2: 2 ports with 2 removable, self powered ehci0: <Intel 82801GB/R (ICH7) USB 2.0 controller> mem 0xfeb00400-0xfeb007ff irq 20 at device 29.7 on pci0 ehci0: [GIANT-LOCKED] usb3: EHCI version 1.0 usb3: wrong number of companions (7 != 3) usb3: companion controllers, 2 ports each: usb0 usb1 usb2 usb3: <Intel 82801GB/R (ICH7) USB 2.0 controller> on ehci0 usb3: USB revision 2.0 uhub3: Intel EHCI root hub, class 9/0, rev 2.00/1.00, addr 1 uhub3: 6 ports with 6 removable, self powered pcib6: <ACPI PCI-PCI bridge> at device 30.0 on pci0 pci6: <ACPI PCI bus> on pcib6 pci6: <display, VGA> at device 5.0 (no driver attached) isab0: <PCI-ISA bridge> at device 31.0 on pci0 isa0: <ISA bus> on isab0 atapci0: <Intel ICH7 UDMA100 controller> port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0xfc00-0xfc0f at device 31.1 on pci0 ata0: <ATA channel 0> on atapci0 ata1: <ATA channel 1> on atapci0 atapci1: <Intel ICH7 SATA300 controller> port 0xac98-0xac9f,0xac90-0xac93,0xac80-0xac87,0xac78-0xac7b,0xac60-0xac6f mem 0xfeb00000-0xfeb003ff irq 20 at device 31.2 on pci0 ata2: <ATA channel 0> on atapci1 ata3: <ATA channel 1> on atapci1 pci0: <serial bus, SMBus> at device 31.3 (no driver attached) fdc0: <floppy drive controller> port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on acpi0 fdc0: does not respond device_attach: fdc0 attach returned 6 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] psm0: model IntelliMouse Explorer, device ID 4 sio0: <16550A-compatible COM port> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0 sio0: type 16550A fdc0: <floppy drive controller> port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on acpi0 fdc0: does not respond device_attach: fdc0 attach returned 6 orm0: <ISA Option ROMs> at iomem 0xc0000-0xc7fff,0xc8000-0xc8fff,0xec000-0xeffff on isa0 ppc0: cannot reserve I/O port range sc0: <System console> at flags 0x100 on isa0 sc0: VGA <16 virtual consoles, flags=0x300> sio1: configured irq 3 not in bitmap of probed irqs 0 sio1: port may not be enabled vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 Timecounters tick every 1.000 msec hptrr: no controller detected. acd0: CDRW <TSSTcorpCD-RW/DVD-ROM TSL462C/DE01> at ata0-master UDMA33 ad4: 76293MB <Maxtor 6L080M0 BACE1G10> at ata2-master SATA150 ad6: 476940MB <Seagate ST3500641AS 3.AAD> at ata3-master SATA150 SMP: AP CPU #1 Launched! Trying to mount root from ufs:/dev/ad4s1a Loading configuration files. Entropy harvesting: interrupts ethernet point_to_point kickstart >Fix: >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200804210728.m3L7SkBO092706>