System Administration
cancel
Showing results for 
Search instead for 
Did you mean: 

Strange setting helps - need to know why?

 
SOLVED
Go to solution
Highlighted
Regular Advisor

Strange setting helps - need to know why?

We have a packet loss issue on (bnx2 driver) eth2. We have tried firmware upgrade, kernel upgrade (RHEL 5.5) etc and still packet loss occurs. Now we tried something totally strange we did ifconfig eth2 mtu 2000 up followed by ifconfig eth2 mtu 1500 up and after that our packet loss stopped (i know it clears counters) , now we do this on one more machine and the packet loss stopped there too. I wonder why?? all it will change is some /proc stuff (and would not affect any files) and we would lose it on reboot. But it confuses me. Anyone have any idea?

Thanks

Mike.
4 REPLIES 4
Highlighted
Honored Contributor
Solution

Re: Strange setting helps - need to know why?

Looks like bnx2 driver in RHEL 5 has had quite a few bugs, and still has a few open issues:

https://bugzilla.redhat.com/buglist.cgi?query_format=specific&order=relevance+desc&bug_status=__all__&product=Red+Hat+Enterprise+Linux+5&content=bnx2

For example, this bug seems to have caused packet loss:
https://bugzilla.redhat.com/show_bug.cgi?id=640026

It was fixed in kernel version 2.6.18-238.el5, released in mid-January.

MK
MK
Highlighted
Regular Advisor

Re: Strange setting helps - need to know why?

Could not agree more! Here is what i am trying to do. Trying to use a generic tg3 driver, tell me if it ll work.

1. edit the modprobe.conf and replace bnx2 with tg3
2. ifdown eth2
3. lsmod |grep tg3 (to confirm if tg3 is loaded.
4. ifup eth2
5. ethtool -i eth2 (to verify if driver is loaded.

Thanks

Mike.
Highlighted
Honored Contributor

Re: Strange setting helps - need to know why?

Is eth2 the only NIC on your system that uses the bnx2 driver?

After running "ifdown eth2", the bnx2 driver module remains loaded. To unload it, you should use "modprobe -r bnx2" or "rmmod bnx2". If other NICs on your system use the bnx2 driver, the module won't unload unless all of them have been shut down.

Likewise, since eth2 was already claimed by the bnx2 driver, if you have other NICs that use the tg3 driver, you may have to shutdown all those NICs and then unload & reload the tg3 driver to make it notice that eth2 is now available for it too.

The alias entries in the modprobe.conf file only decide which driver module the OS attempts to load for each NIC; when a driver module is loaded, it will look for unclaimed hardware that is recognized by the driver code. With PCI/PCI-X/PCIe hardware, this recognition is usually done using the PCI hardware identifiers, but the driver module may implement extra checks.

MK
MK
Highlighted
Regular Advisor

Re: Strange setting helps - need to know why?

You are correct. There is one more which uses the bnx2. Good Information. Thanks again.

Thanks

Mike