Hi, all, I just discovered a minor problem when updating some rather dated systems from FreeBSD 6.x to 7.x or 8.x. The servers are Fujitsu Technology Solutions (former Fujitsu-Siemens) RX100 S4. The current generation of the same system is RX100 S6, so this is two generations old. Some of them still run fine in our datacenter, though. While the S5 and S6 series features two gigabit ports and an additional network interface for out of band management (called iRMC, similar to HP's iLO), the S4 has only two gigabit ports and the iRMC interface is piggybacked to one of them. In our standard setup we disable the first interface in the BIOS. If you do this, the physical port is available as a dedicated management interface to the iRMC and only the second IF is probed by FreeBSD 6.x as bge0. Now I try to PXE boot an identically configured system via the remote serial console with FreeBSD 7. Everything runs fine, until the kernel probes the network interfaces. The last thing I see are messages about successful probing of both bge0 and bge1 and then my remote management connection and my console are gone. I have to reset the BMC by literally pulling the power to get the iRMC back. Is it possible to use some device.hints entry to prohibit the probing of bge1? I think that would be the easiest solution to the problem? Other suggestions are of course welcome. I can provide more config details and dmesg output if needed. Thanks, Patrick -- punkt.de GmbH * Kaiserallee 13a * 76133 Karlsruhe Tel. 0721 9109 0 * Fax 0721 9109 100 info@punkt.de http://www.punkt.de Gf: J?rgen Egeling AG Mannheim 108285
On Mon, Mar 7, 2011 at 12:26 PM, Patrick M. Hausen <hausen@punkt.de> wrote:> Hi, all, > > I just discovered a minor problem when updating some rather dated > systems from FreeBSD 6.x to 7.x or 8.x. > > The servers are Fujitsu Technology Solutions (former Fujitsu-Siemens) > RX100 S4. The current generation of the same system is RX100 S6, so this > is two generations old. Some of them still run fine in our datacenter, though. > > While the S5 and S6 series features two gigabit ports and an additional > network interface for out of band management (called iRMC, similar to HP's iLO), > the S4 has only two gigabit ports and the iRMC interface is piggybacked to > one of them. > > In our standard setup we disable the first interface in the BIOS. If you do this, > the physical port is available as a dedicated management interface to the iRMC > and only the second IF is probed by FreeBSD 6.x as bge0. > > Now I try to PXE boot an identically configured system via the remote serial > console with FreeBSD 7. Everything runs fine, until the kernel probes the > network interfaces. The last thing I see are messages about successful > probing of both bge0 and bge1 and then my remote management connection > and my console are gone. > > I have to reset the BMC by literally pulling the power to get the iRMC back. > > Is it possible to use some device.hints entry to prohibit the probing of bge1? > I think that would be the easiest solution to the problem? Other suggestions > are of course welcome. I can provide more config details and dmesg output > if needed. > > Thanks, > PatrickMaybe this loader tunable will help: hw.bge.allow_asf Allow the ASF feature for cooperating with IPMI. Can cause sys? tem lockup problems on a small number of systems. Disabled by default. Cheers Tom
Hello, Am 07.03.2011 um 13:37 schrieb Tom Evans:> Maybe this loader tunable will help: > hw.bge.allow_asf > Allow the ASF feature for cooperating with IPMI. Can cause sys? > tem lockup problems on a small number of systems. Disabled by > default.No - same result: bge0: <Broadcom NetXtreme Gigabit Ethernet Controller, ASIC rev. 0x009003> mem 0xfd210000-0xfd21ffff,0xfd200000-0xfd20ffff irq 16 at device 4.0 on pci8 miibus0: <MII bus> on bge0 brgphy0: <BCM5714 10/100/1000baseTX PHY> PHY 1 on miibus0 brgphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 1000baseT-FDX, auto bge0: Ethernet address: 00:0a:e4:82:c1:0f bge0: [ITHREAD] bge1: <Broadcom NetXtreme Gigabit Ethernet Controller, ASIC rev. 0x009003> irq 1 Here the iRMC console is disconnected. Thanks anyway, Patrick -- punkt.de GmbH * Kaiserallee 13a * 76133 Karlsruhe Tel. 0721 9109 0 * Fax 0721 9109 100 info@punkt.de http://www.punkt.de Gf: J?rgen Egeling AG Mannheim 108285
On Mon, Mar 07, 2011 at 01:26:01PM +0100, Patrick M. Hausen wrote:> Hi, all, > > I just discovered a minor problem when updating some rather dated > systems from FreeBSD 6.x to 7.x or 8.x. > > The servers are Fujitsu Technology Solutions (former Fujitsu-Siemens) > RX100 S4. The current generation of the same system is RX100 S6, so this > is two generations old. Some of them still run fine in our datacenter, though. > > While the S5 and S6 series features two gigabit ports and an additional > network interface for out of band management (called iRMC, similar to HP's iLO), > the S4 has only two gigabit ports and the iRMC interface is piggybacked to > one of them. > > In our standard setup we disable the first interface in the BIOS. If you do this, > the physical port is available as a dedicated management interface to the iRMC > and only the second IF is probed by FreeBSD 6.x as bge0. > > Now I try to PXE boot an identically configured system via the remote serial > console with FreeBSD 7. Everything runs fine, until the kernel probes the > network interfaces. The last thing I see are messages about successful > probing of both bge0 and bge1 and then my remote management connection > and my console are gone. > > I have to reset the BMC by literally pulling the power to get the iRMC back. > > Is it possible to use some device.hints entry to prohibit the probing of bge1? > I think that would be the easiest solution to the problem? Other suggestions > are of course welcome. I can provide more config details and dmesg output > if needed. >Unfortunately, there's currently no generic way to disable probing/ attaching of specific PCI devices. You'd need to hack the driver like in the following example to achieve that: Index: /usr/src/sys/dev/bge/if_bge.c ==================================================================--- /usr/src/sys/dev/bge/if_bge.c (revision 213448) +++ /usr/src/sys/dev/bge/if_bge.c (working copy) @@ -2472,6 +2472,9 @@ bge_attach(device_t dev) u_char eaddr[ETHER_ADDR_LEN]; int error, msicount, reg, rid, trys; + if (device_get_unit(dev) == 1) + return (ENXIO); + sc = device_get_softc(dev); sc->bge_dev = dev; Marius