Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Bug#638921: firmware-netxen: HP NC375i network card fails to autonegotiate with a 100full cisco switch

233 views
Skip to first unread message

Michael Mastrogiacomo

unread,
Aug 22, 2011, 7:10:01 PM8/22/11
to
Package: firmware-netxen
Version: 0.28
Severity: critical
Justification: breaks the whole system

The HP NC375i network card on an HP ML370 G6 server with Debian squeeze OS installed as problems.
The server is connected to a switch that does only 100/full and it fails to
autonegotiate correctly during reboot. A network connection can be used if the switch side gets locked to 100 half however which seems to be what the HP card assumes if negotiaton fails. The HP card seems to assume a speed of 1000 which is incorrect. It should learn a speed of 100 advertised by the switch which it fails to do.
Certain ethtool and miitool functions do not seem to work such as ethtool -s (you can't set any parameters at all). ethtool -t also fails.
A perhaps related issue is that during install nx3fwct.bin is requested by the installer but are not available in the non-free zip file. I tried 2 different installs, both which failed; one involved skippin that file during the install by just hitting next at the installer prompt; the other way involved extracting the file from an rpm provided for redhat installs...I got that RPM from the HP website, hp-nx-nic-tools_4.0_520-6_all.rpm


-- System Information:
Debian Release: 6.0.2
APT prefers stable-updates
APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.32-5-amd64 (SMP w/24 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

firmware-netxen depends on no packages.

firmware-netxen recommends no packages.

Versions of packages firmware-netxen suggests:
ii initramfs-tools 0.98.8 tools for generating an initramfs
ii linux-image-2.6.32-5-amd64 [l 2.6.32-35 Linux 2.6.32 for 64-bit PCs

-- no debconf information

--
To UNSUBSCRIBE, email to debian-bugs-...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org

Ben Hutchings

unread,
Aug 22, 2011, 8:40:02 PM8/22/11
to
On Mon, Aug 22, 2011 at 06:53:44PM -0400, Michael Mastrogiacomo wrote:
> Package: firmware-netxen
> Version: 0.28
> Severity: critical
> Justification: breaks the whole system
>
> The HP NC375i network card on an HP ML370 G6 server with Debian
> squeeze OS installed as problems.
> The server is connected to a switch that does only 100/full and it
> fails to autonegotiate correctly during reboot. A network
> connection can be used if the switch side gets locked to 100 half
> however which seems to be what the HP card assumes if negotiaton
> fails.

Right, if autonegotiation fails then it is possible for 'parallel
detection' to establish a 100HD link. The question is why autoneg
failed.

[...]


> A perhaps related issue is that during install nx3fwct.bin is
> requested by the installer but are not available in the non-free zip
> file.

The file phanfw.bin should also work, and I understand that this
is the preferred firmware file.

> I tried 2 different installs, both which failed; one involved
> skippin that file during the install by just hitting next at the
> installer prompt; the other way involved extracting the file from an
> rpm provided for redhat installs...I got that RPM from the HP
> website, hp-nx-nic-tools_4.0_520-6_all.rpm

When you say that the installation failed, do you mean that you
were unable to complete the installation, or that the installation
was broken because it could not set up the network connection?

If the installation failed, you should report a bug against
'installation-reports'.

If the installation is broken, does the installed system actually have
the package firmware-netxen installed?

Ben.

--
Ben Hutchings
We get into the habit of living before acquiring the habit of thinking.
- Albert Camus

signature.asc

Ben Hutchings

unread,
Aug 23, 2011, 9:10:01 AM8/23/11
to
On Tue, 2011-08-23 at 08:59 -0400, Michael Mastrogiacomo wrote:
> Hello Ben, thanks for the reply.
>
>
> >Right, if autonegotiation fails then it is possible for 'parallel
> >detection' to establish a 100HD link. The question is why autoneg
> >failed.
>
> I concur. I suspect the driver.
>
> I should mention that this sounds like a similar issue:
>
> http://h30499.www3.hp.com/t5/Networking/Problem-with-NC375i-and-NC375T-on-Re
> dHat-Linux5/td-p/4712102
>
>
> I assume nx_nic drivers are in nx3fwct.bin and phanfw.bin contains the
> netxen_nic drivers.

The netxen_nic driver is in the kernel package
(linux-image-2.6.32-5-amd64). I assume nx_nic is an earlier version of
the driver; no driver of that name has been included in Linux.

> I guess the installer overrides nx3fwct.bin if it
> finds phanfw.bin

The driver decides which firmware file to load. The current version of
netxen_nic prefers phanfw.bin but can also use one of the nx3fw*.bin
files (dependent on the hardware model). If none are found then it
falls back to using the firmware loaded from flash (which is presumably
buggy).

> because lsmod has only shown netxen_nic drivers loaded
> in both of my install attempts.
>
> I suppose I could try deleting phanfw.bin from my removable media to leave
> only nx3fwct.bin there and see what happens with the different drivers.


>
>
> >When you say that the installation failed, do you mean that you
> >were unable to complete the installation, or that the installation
> >was broken because it could not set up the network connection?
>

> Sorry for that ambiguity. The installer ran fine to completion. I meant
> "failed" in the sense that end result was that the NIC card still failed to
> autonegotiate after rebooting after installation.
[...]

So, does the system have firmware-netxen installed? If not, can you try
installing it and rebooting?

What does the command 'dmesg | grep netxen' show?

Ben.

signature.asc

Michael Mastrogiacomo

unread,
Aug 23, 2011, 9:10:02 AM8/23/11
to
Hello Ben, thanks for the reply.


>Right, if autonegotiation fails then it is possible for 'parallel
>detection' to establish a 100HD link. The question is why autoneg
>failed.

I concur. I suspect the driver.

I should mention that this sounds like a similar issue:

http://h30499.www3.hp.com/t5/Networking/Problem-with-NC375i-and-NC375T-on-Re
dHat-Linux5/td-p/4712102


I assume nx_nic drivers are in nx3fwct.bin and phanfw.bin contains the

netxen_nic drivers. I guess the installer overrides nx3fwct.bin if it
finds phanfw.bin because lsmod has only shown netxen_nic drivers loaded


in both of my install attempts.

I suppose I could try deleting phanfw.bin from my removable media to leave
only nx3fwct.bin there and see what happens with the different drivers.


>When you say that the installation failed, do you mean that you
>were unable to complete the installation, or that the installation
>was broken because it could not set up the network connection?

Sorry for that ambiguity. The installer ran fine to completion. I meant
"failed" in the sense that end result was that the NIC card still failed to
autonegotiate after rebooting after installation.


Thanks

======================================

On Mon, Aug 22, 2011 at 06:53:44PM -0400, Michael Mastrogiacomo wrote:

> Package: firmware-netxen
> Version: 0.28
> Severity: critical
> Justification: breaks the whole system
>
> The HP NC375i network card on an HP ML370 G6 server with Debian
> squeeze OS installed as problems.
> The server is connected to a switch that does only 100/full and it
> fails to autonegotiate correctly during reboot. A network
> connection can be used if the switch side gets locked to 100 half
> however which seems to be what the HP card assumes if negotiaton
> fails.

Right, if autonegotiation fails then it is possible for 'parallel


detection' to establish a 100HD link. The question is why autoneg
failed.

[...]


> A perhaps related issue is that during install nx3fwct.bin is
> requested by the installer but are not available in the non-free zip
> file.

The file phanfw.bin should also work, and I understand that this
is the preferred firmware file.

> I tried 2 different installs, both which failed; one involved
> skippin that file during the install by just hitting next at the
> installer prompt; the other way involved extracting the file from an
> rpm provided for redhat installs...I got that RPM from the HP
> website, hp-nx-nic-tools_4.0_520-6_all.rpm

When you say that the installation failed, do you mean that you


were unable to complete the installation, or that the installation
was broken because it could not set up the network connection?

If the installation failed, you should report a bug against
'installation-reports'.

If the installation is broken, does the installed system actually have
the package firmware-netxen installed?

Ben.


-----Original Message-----
From: Ben Hutchings [mailto:b...@decadent.org.uk]
Sent: Monday, August 22, 2011 8:36 PM
To: Michael Mastrogiacomo; 638...@bugs.debian.org
Subject: Re: Bug#638921: firmware-netxen: HP NC375i network card fails to
autonegotiate with a 100full cisco switch

On Mon, Aug 22, 2011 at 06:53:44PM -0400, Michael Mastrogiacomo wrote:

> Package: firmware-netxen
> Version: 0.28
> Severity: critical
> Justification: breaks the whole system
>
> The HP NC375i network card on an HP ML370 G6 server with Debian
> squeeze OS installed as problems.
> The server is connected to a switch that does only 100/full and it
> fails to autonegotiate correctly during reboot. A network
> connection can be used if the switch side gets locked to 100 half
> however which seems to be what the HP card assumes if negotiaton
> fails.

Right, if autonegotiation fails then it is possible for 'parallel


detection' to establish a 100HD link. The question is why autoneg
failed.

[...]


> A perhaps related issue is that during install nx3fwct.bin is
> requested by the installer but are not available in the non-free zip
> file.

The file phanfw.bin should also work, and I understand that this
is the preferred firmware file.

> I tried 2 different installs, both which failed; one involved
> skippin that file during the install by just hitting next at the
> installer prompt; the other way involved extracting the file from an
> rpm provided for redhat installs...I got that RPM from the HP
> website, hp-nx-nic-tools_4.0_520-6_all.rpm

When you say that the installation failed, do you mean that you


were unable to complete the installation, or that the installation
was broken because it could not set up the network connection?

If the installation failed, you should report a bug against
'installation-reports'.

If the installation is broken, does the installed system actually have
the package firmware-netxen installed?

Ben.

--
Ben Hutchings
We get into the habit of living before acquiring the habit of thinking.
- Albert Camus

Michael Mastrogiacomo

unread,
Aug 23, 2011, 10:20:02 AM8/23/11
to

>So, does the system have firmware-netxen installed? If not, can you try
>installing it and rebooting?

Yes:

# dpkg -l | grep -i netxen
ii firmware-netxen 0.28 Binary
firmware for QLogic Intelligent Ethernet (3000 and 3100 Series)

>What does the command 'dmesg | grep netxen' show?

Here's the output...looks like the firmware already installed on the card is
newer than what the OS driver is trying to put there if I'm interpreting it
right:

[ 3.023934] NetXen Network Driver version 4.0.50
[ 3.024026] netxen_nic 0000:06:00.0: PCI INT A -> GSI 24 (level, low) ->
IRQ 24
[ 3.024035] netxen_nic 0000:06:00.0: setting latency timer to 64
[ 3.024159] netxen_nic 0000:06:00.0: 2MB memory map
[ 3.024253] netxen_nic 0000:06:00.0: firmware: requesting phanfw.bin
[ 3.040514] netxen_nic 0000:06:00.0: phanfw.bin: firmware is older than
flash
[ 3.051231] netxen_nic 0000:06:00.0: firmware: requesting nx3fwct.bin
[ 3.055436] netxen_nic 0000:06:00.0: nx3fwct.bin: firmware is older than
flash
[ 3.267122] netxen_nic 0000:06:00.0: using 64-bit dma mask
[ 3.267451] NetXen NX3031 Gigabit Ethernet Board S/N KD98MP1738 Chip rev
0x42
[ 3.267456] netxen_nic 0000:06:00.0: firmware v4.0.555 [legacy]
[ 3.267520] netxen_nic 0000:06:00.0: irq 103 for MSI/MSI-X
[ 3.267532] netxen_nic 0000:06:00.0: irq 104 for MSI/MSI-X
[ 3.267544] netxen_nic 0000:06:00.0: irq 105 for MSI/MSI-X
[ 3.267556] netxen_nic 0000:06:00.0: irq 106 for MSI/MSI-X
[ 3.267571] netxen_nic 0000:06:00.0: using msi-x interrupts
[ 3.268277] netxen_nic 0000:06:00.0: eth0: GbE port initialized
[ 3.268299] netxen_nic 0000:06:00.1: PCI INT A -> GSI 24 (level, low) ->
IRQ 24
[ 3.268306] netxen_nic 0000:06:00.1: setting latency timer to 64
[ 3.268385] netxen_nic 0000:06:00.1: 2MB memory map
[ 3.268475] netxen_nic 0000:06:00.1: using 64-bit dma mask
[ 3.268803] netxen_nic 0000:06:00.1: firmware v4.0.555 [legacy]
[ 3.268844] netxen_nic 0000:06:00.1: irq 107 for MSI/MSI-X
[ 3.268856] netxen_nic 0000:06:00.1: irq 108 for MSI/MSI-X
[ 3.268868] netxen_nic 0000:06:00.1: irq 109 for MSI/MSI-X
[ 3.268880] netxen_nic 0000:06:00.1: irq 110 for MSI/MSI-X
[ 3.268895] netxen_nic 0000:06:00.1: using msi-x interrupts
[ 3.269589] netxen_nic 0000:06:00.1: eth1: GbE port initialized
[ 3.269606] netxen_nic 0000:06:00.2: PCI INT A -> GSI 24 (level, low) ->
IRQ 24
[ 3.269612] netxen_nic 0000:06:00.2: setting latency timer to 64
[ 3.269690] netxen_nic 0000:06:00.2: 2MB memory map
[ 3.269780] netxen_nic 0000:06:00.2: using 64-bit dma mask
[ 3.270108] netxen_nic 0000:06:00.2: firmware v4.0.555 [legacy]
[ 3.270147] netxen_nic 0000:06:00.2: irq 111 for MSI/MSI-X
[ 3.270159] netxen_nic 0000:06:00.2: irq 112 for MSI/MSI-X
[ 3.270170] netxen_nic 0000:06:00.2: irq 113 for MSI/MSI-X
[ 3.270182] netxen_nic 0000:06:00.2: irq 114 for MSI/MSI-X
[ 3.270197] netxen_nic 0000:06:00.2: using msi-x interrupts
[ 3.270936] netxen_nic 0000:06:00.2: eth2: GbE port initialized
[ 3.270954] netxen_nic 0000:06:00.3: PCI INT A -> GSI 24 (level, low) ->
IRQ 24
[ 3.270960] netxen_nic 0000:06:00.3: setting latency timer to 64
[ 3.271039] netxen_nic 0000:06:00.3: 2MB memory map
[ 3.271138] netxen_nic 0000:06:00.3: using 64-bit dma mask
[ 3.271466] netxen_nic 0000:06:00.3: firmware v4.0.555 [legacy]
[ 3.271506] netxen_nic 0000:06:00.3: irq 115 for MSI/MSI-X
[ 3.271518] netxen_nic 0000:06:00.3: irq 116 for MSI/MSI-X
[ 3.271530] netxen_nic 0000:06:00.3: irq 117 for MSI/MSI-X
[ 3.271542] netxen_nic 0000:06:00.3: irq 118 for MSI/MSI-X
[ 3.271556] netxen_nic 0000:06:00.3: using msi-x interrupts
[ 3.272346] netxen_nic 0000:06:00.3: eth3: GbE port initialized
[ 7.270065] netxen_nic: eth2 NIC Link is up
[ 283.125441] netxen_nic: eth2 NIC Link is down
[ 296.787316] netxen_nic: eth2 NIC Link is up

root@odin:~# ethtool -i eth3
driver: netxen_nic
version: 4.0.50
firmware-version: 4.0.555
bus-info: 0000:06:00.3


Note, the above is one of the few ethtool commands/options that actually
work.

I'd consider attempting to manually flash the card with:

ethtool --flash eth3 /lib/firmware/phanfw.bin

but I don't think the flash function works. But let me know if you'd like
me to give that a try.


-----Original Message-----
From: Ben Hutchings [mailto:b...@decadent.org.uk]
Sent: Tuesday, August 23, 2011 9:07 AM
To: Michael Mastrogiacomo
Cc: 638...@bugs.debian.org
Subject: RE: Bug#638921: firmware-netxen: HP NC375i network card fails to
autonegotiate with a 100full cisco switch

On Tue, 2011-08-23 at 08:59 -0400, Michael Mastrogiacomo wrote:

> Hello Ben, thanks for the reply.
>
>
> >Right, if autonegotiation fails then it is possible for 'parallel
> >detection' to establish a 100HD link. The question is why autoneg
> >failed.
>
> I concur. I suspect the driver.
>
> I should mention that this sounds like a similar issue:
>
>
http://h30499.www3.hp.com/t5/Networking/Problem-with-NC375i-and-NC375T-on-Re
> dHat-Linux5/td-p/4712102
>
>
> I assume nx_nic drivers are in nx3fwct.bin and phanfw.bin contains the
> netxen_nic drivers.

The netxen_nic driver is in the kernel package


(linux-image-2.6.32-5-amd64). I assume nx_nic is an earlier version of
the driver; no driver of that name has been included in Linux.

> I guess the installer overrides nx3fwct.bin if it
> finds phanfw.bin

The driver decides which firmware file to load. The current version of


netxen_nic prefers phanfw.bin but can also use one of the nx3fw*.bin
files (dependent on the hardware model). If none are found then it
falls back to using the firmware loaded from flash (which is presumably
buggy).

> because lsmod has only shown netxen_nic drivers loaded


> in both of my install attempts.
>
> I suppose I could try deleting phanfw.bin from my removable media to leave
> only nx3fwct.bin there and see what happens with the different drivers.
>
>
> >When you say that the installation failed, do you mean that you
> >were unable to complete the installation, or that the installation
> >was broken because it could not set up the network connection?
>
> Sorry for that ambiguity. The installer ran fine to completion. I meant
> "failed" in the sense that end result was that the NIC card still failed
to
> autonegotiate after rebooting after installation.

[...]

So, does the system have firmware-netxen installed? If not, can you try
installing it and rebooting?

What does the command 'dmesg | grep netxen' show?

Ben.

--

Ben Hutchings

unread,
Aug 23, 2011, 11:00:02 PM8/23/11
to
On Tue, 2011-08-23 at 10:12 -0400, Michael Mastrogiacomo wrote:
[...]

> root@odin:~# ethtool -i eth3
> driver: netxen_nic
> version: 4.0.50
> firmware-version: 4.0.555
> bus-info: 0000:06:00.3
>
>
> Note, the above is one of the few ethtool commands/options that actually
> work.
>
> I'd consider attempting to manually flash the card with:
>
> ethtool --flash eth3 /lib/firmware/phanfw.bin
>
> but I don't think the flash function works. But let me know if you'd like
> me to give that a try.
[...]

The --flash command was only recently defined and this driver doesn't
support it. I don't think it should be necessary to upgrade the
firmware in flash, anyway.

There is a version 4.0.556 available on the HP web site, but the
description is 'This firmware resolves a hang seen on some P3 adapters.'
So I don't think it would fix this problem.

I suspect that this is actually a driver bug that may be resolved in a
newer version. Can you try installing Linux 2.6.39 or 3.0 from the
'testing' or 'squeeze-backports' suite?

Ben.

signature.asc

Ana Guerrero

unread,
Feb 17, 2012, 10:40:02 AM2/17/12
to
On Wed, Aug 24, 2011 at 03:46:14AM +0100, Ben Hutchings wrote:
...
> I suspect that this is actually a driver bug that may be resolved in a
> newer version. Can you try installing Linux 2.6.39 or 3.0 from the
> 'testing' or 'squeeze-backports' suite?

Yes, it is a driver bug. We hit in this same problem because the
switches are not configured to allow auto-negociated GbE.
Eg with ethtool:

# ethtool -s eth0 autoneg off
Cannot set new settings: Input/output error not setting autoneg
#

The patch at
http://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=commitdiff;h=bfd823bd74333615783d8108889814c6d82f2ab0

fixes this problem. I am attaching it already updated to work on top of 2.6.32-41.
The patch has been tested successfully with a HP NC3751 card like the reporter.
Ben, any chance to have this added to the next update of the kernel in
Squeeze?

Cheers,
Ana

Ana Guerrero

unread,
Feb 17, 2012, 11:10:02 AM2/17/12
to
On Fri, Feb 17, 2012 at 04:36:29PM +0100, Ana Guerrero wrote:
> fixes this problem. I am attaching it already updated to work on top of 2.6.32-41.


Now for real.
netxen_support_for_GbE_port_settings.diff

Jonathan Nieder

unread,
Mar 12, 2012, 12:50:02 AM3/12/12
to
tags 638921 + upstream
forwarded 638921 http://thread.gmane.org/gmane.linux.network/189573/focus=223620
quit

Hi,
Nice, thanks. Passed upstream, so hopefully this fix will be part of
the standard 2.6.32.y kernel soon.
0 new messages