Ethernet Card Not Recognized After Fedora Install

Place to discuss Fedora and/or Red Hat

Ethernet Card Not Recognized After Fedora Install

Postby clem_c_rock » Fri Aug 06, 2004 4:52 pm

Hello,

I just installed Fedora from scratch on a brand new hp server and now I can't set up an ethernet connection. Although the card is listed, when I try to activate it, I get this error:

3c501 device eth0:1 does not seam to be present, delaying initialization.

From what I'm seeing on other forums, it looks like a kernel update is in store. So I grabbed linux 2.6.7 and ran the

make menuconfig

and then: 2make && make modules_install

After all this I get the same error!!!!!!!!!!!

What is the deal?

I must say, in Windows and Mac, you can just download a freakin' driver and be done w/ it.

Any ideers from here?

Thanks,
Clem C
clem_c_rock
user
user
 
Posts: 13
Joined: Fri Aug 06, 2004 4:49 pm

Postby Void Main » Fri Aug 06, 2004 4:56 pm

It would be impossible to say without knowing exactly what your hardware is (server model and NIC model). I run Red Hat 8.0, 9, Advanced Server 2.1, Advanced Server 3.0, WBL, and Fedora Core 1 on many HP rack servers with no problem. Never had to compile a kernel to recognize any of the hardware either. I have never run FC2 on one though. Is it a gigabit card?

I must say, in Windows and Mac, you can just download a freakin' driver and be done w/ it.


Well install Windows or MacOS on it then.
User avatar
Void Main
Site Admin
Site Admin
 
Posts: 5705
Joined: Wed Jan 08, 2003 5:24 am
Location: Tuxville, USA

Postby clem_c_rock » Fri Aug 06, 2004 5:12 pm

No I will not give in. Fedora it will be. The server is an hp proliant DL140 and the ethernet card is a 3com 3c501 and it is a gigabit card.


Thanks for your help.
clem_c_rock
user
user
 
Posts: 13
Joined: Fri Aug 06, 2004 4:49 pm

Postby Void Main » Fri Aug 06, 2004 5:14 pm

A 3c501? I haven't used one of those since the early 90s so I find that very hard to believe, and they are only 10 mbps. In fact I would be very surprised if it's even a 3com. I also have never run a DL140. All we have are DL360 and DL380s as far as the HP servers go but the 140 should be just as easy as those. What does "lspci" say it is. That's what it would really be:

$ /sbin/lspci -v
User avatar
Void Main
Site Admin
Site Admin
 
Posts: 5705
Joined: Wed Jan 08, 2003 5:24 am
Location: Tuxville, USA

Postby clem_c_rock » Fri Aug 06, 2004 5:21 pm

Whoa - we may have been gyped. We specified a gigabit card w/ this server. It sounds as if card update would solve everything.

Thanks again,

Clem C
clem_c_rock
user
user
 
Posts: 13
Joined: Fri Aug 06, 2004 4:49 pm

Postby Void Main » Fri Aug 06, 2004 5:25 pm

I doubt it. I don't think you could even get a 3c501 card to fit in it. I think it was an 8 bit ISA card. I'm sure you probably have the Broadcomm based Gigabit card. Broadcomm is very proprietary so there just may be problems with Fedora 2 on it. I certainly can research it for you though if you can tell me what chipset is really in it. Do the lspci command I mentioned and it will tell you what the chipset is:

$ /sbin/lspci

HP supports Enterprise Linux on it and provides drivers for ES 2.1 (that's too old for my liking). I don't think any special drivers are needed with ES and AS 3.0. If you don't want to pay for Red Hat Enterprise or Advanced Server you can actually get it for free but under a different name:

http://www.whiteboxlinux.org/

This would include the kernel that Red Hat ships in their Enterprise distro and all of the driver RPMs that you would find at HP should work with it (don't call them for support though).
User avatar
Void Main
Site Admin
Site Admin
 
Posts: 5705
Joined: Wed Jan 08, 2003 5:24 am
Location: Tuxville, USA

Postby clem_c_rock » Sun Aug 08, 2004 9:18 am

after the /sbin/lspci -v, the info concerning the 2 ethernet cards is as follows:

Host bridge: ServerWorks GCLE-2 Host Bridge with Gigabiit Ethernet (rev 12)
Subsystem: ServerWorks: Unknown device 0230
Flagfs: bu;s master, medium devsel, latency 0
clem_c_rock
user
user
 
Posts: 13
Joined: Fri Aug 06, 2004 4:49 pm

Postby Void Main » Sun Aug 08, 2004 9:39 am

I wont have access to our servers until tomorrow but I am fairly certain those are the Broadcomm based Gb adapters. I also believe they use the tg3 kernel module (driver). If you boot the machine with the kernel that comes with Fedora you should have tg3 drivers installed. It may not have recognized that the tg3 module goes with that device since it shows up as an "unknown device" in your "lspci" output (device just needs to be added to the PCI device list). I think you should be able to manually load the kernel module and get it to work though. At first we can try this manually and see how things go.

Log on as root and then first check to see what interfaces are detected with the drivers that are loaded:

# ifconfig

I suspect the above will only show the loopback device is up (lo). Now see if the tg3 module is loaded:

# lsmod | grep tg3

Is the module loaded? If not try this:

# modprobe tg3

and then if there are no errors do this again:

# lsmod | grep tg3

is the module loaded now? If so do you see more interfaces?

# ifconfig

If you now see the ethernet interfaces in the "ifconfig" output you should be able to configure them up with an IP address and set your routes and have networking up (you should be able to do this from the graphical network configuration interface at this point if you want).

Now if the above did get your network working it will still probably not come up automatically when you reboot but your configuration should be saved. If what I say turns out to be true then there are a couple of things you can do to force the module to be loaded on boot. I think the best choice would be to add a line something like this to your /etc/modules.conf file:

Code: Select all
alias eth0 tg3


Replace "eth0" with whatever interface name showed up in your "ifconfig" command. Tomorrow I should be able to give you more information as I will have access to our servers that have the same cards (at least I am pretty sure they would be the same cards).

If your interfaces do come up but don't seem to be performing like they should you can use the "ethtool" command to check the speed and duplex settings. You may have a mismatch with the switch port you are plugged in to. To get the current card settings:

# ethtool eth0

You can also change the settings using that command. See the man page:
http://voidmain.is-a-geek.net/man?param ... l&mode=man

If your autodetection (duplex/speed) is not working and you need to force the card settings I can help you with that too. You can add ethtool options to your interface configuration.
User avatar
Void Main
Site Admin
Site Admin
 
Posts: 5705
Joined: Wed Jan 08, 2003 5:24 am
Location: Tuxville, USA

Postby clem_c_rock » Sun Aug 08, 2004 9:56 am

Man - first of all I would like to give a big thanks for all your help.

When I first ran the lsmod | grep tg3, I got nothing.

Then I ran the modprobe tg3 and got no errors

When I ran lsmod | grep tg3 again, I got:

tg3 69235 0

then, when I ran the ifconfig, I got the exact same thing as the first time I ran it which was the basic lo info

This alias thing is interesting
Thanks again!
clem_c_rock
user
user
 
Posts: 13
Joined: Fri Aug 06, 2004 4:49 pm

Postby Void Main » Sun Aug 08, 2004 10:02 am

After loading the tg3 module do you get any messages from the "dmesg" command?

# dmesg | grep tg3

or

# dmesg | eth

Can you bring the interface up manually after loading the tg3 module?

# ifconfig eth0 up

or if it's like some of our HP machines with these cards

# ifconfig eth2 up

Of course check to see if they are up by running the comand with no params:

# ifconfig

If this doesn't bring them up then I would have to do some more research. Also it would be very helpful if I could get more information from your "lspci -v" command. I really need to know the exact chipset number of the network chips. Like I said, I believe they should be Broadcom and the chip number would probably would be in this type of format: BCMxxxx. If you do not see this type of chipset model in your "lspci" or "lspci -v" output then we are probably barking up the wrong tree and I'll have to do some more research.

Now, as I said, I have never run Fedora Core 2 on these servers and Core 2 is radically different than anything before it because it is running the newer Linux kernel v2.6.x where Fedora Core 1, Red Hat 9, Red Hat AS3 all are running the v2.4.x kernel. I don't know how set you are on running Core 2 and if it would be a big deal to try something else. Otherwise, if I get time I could try and install Core 2 on one of our test machines and see if I have the same problem and also see if I can come up with a resolution.

The reason I think it might have something to do with the 2.6.x kernel is because I just ran across a message from someone running Debian who seems to be having the same problem. It works with 2.4.x but not with 2.6.x:

http://lists.debian.org/debian-kernel/2 ... 00220.html

Here are a list of entries in Red Hat's bugzilla relating to the tg3 driver.

Also, now that I think about it I may only be running Advanced Server 2.1 and/or 3.0 using these interfaces. We usually also add more interfaces over the ones that are built in. I do know that HP has the network card drivers for Enterprise Linux and Advanced Server. I can verify this tomorrow. If this is the case you may only have a couple of options, use a kernel and distro that HP supports for that server so you can add the proprietary network card drivers, or add more network cards that are not as proprietary and have open source drivers (which would be included right in the existing kernel). If you search HP's web site you should find information about Linux drivers and what distributions they are for.

Since some hardware vendors aren't very Linux friendly it requires a little more research before purchasing about how well the hardware is going to work. It is a little more work but I find it well worth the effort.

This looks like it could be very helpful (but probably not for Fedora Core 2):

http://h18007.www1.hp.com/support/files ... 21113.html

I would think this should also work with White Box Linux (which is the generic Red Hat Advaced Server 3):

http://www.whiteboxlinux.org/

It certainly would be easier on all of us if vendors didn't include proprietary garbage. Someday things will change, I am sure of it.
User avatar
Void Main
Site Admin
Site Admin
 
Posts: 5705
Joined: Wed Jan 08, 2003 5:24 am
Location: Tuxville, USA

Postby clem_c_rock » Sun Aug 08, 2004 1:05 pm

Well,

I called hp's linux support and, like you said, the broadcom is quite old and they suggested trying to find a driver for it first and then, if that didn't work, go out and buy a new card.

I went here: http://www.broadcom.com/drivers/downloaddrivers.php

and downloaded a new driver, installed it and it still doesn't work.

When I do a dmesg | grep eth, I get this:

divert: not allocating divert_blk for non-ethernet device sit0.

When I do a /sbin/lspci -v, I don't see anything w/ a BCMxxxx

There's always an answer to every question, but sometimes it takes soooo long to find it.

Thanks for your help
clem_c_rock
user
user
 
Posts: 13
Joined: Fri Aug 06, 2004 4:49 pm

Postby Void Main » Sun Aug 08, 2004 1:13 pm

Well, the fastest thing you could do is get get a supported card and stick in it. If you really wanted to get those built in cards to work I think you'll have to stick an older distro with 2.4.x kernel, one that HP supported (Red Hat Enterprise Linux or SUSE 9.0). It's pretty much HP and Broadcom's fault for this not working. Broadcom doesn't want to publish the specs for their hardware so Linux developers can write an open source driver and it's HPs fault for using the garbage. It just makes our life difficult.

As far as Broadcom not being listed in "lspci" I believe that it would if you were running a 2.4 kernel (you could boot a KNOPPIX disk or something and do an lspci to check). Another possibility would be to just install the kernel for RHEL. Might be worth a shot. On the other hand you could be piddling for a long time. I would grab a supported card out of the pile and be done with it (but I understand that everyone might not have a pile of network cards laying around).
User avatar
Void Main
Site Admin
Site Admin
 
Posts: 5705
Joined: Wed Jan 08, 2003 5:24 am
Location: Tuxville, USA

Postby Void Main » Mon Aug 09, 2004 8:15 am

Ok, here's what I have on Red Hat Advanced Server 3 when I do an lspci on a DL360:

Code: Select all
$ /sbin/lspci
00:00.0 Host bridge: ServerWorks CNB20-HE Host Bridge (rev 33)
00:00.1 Host bridge: ServerWorks CNB20-HE Host Bridge
00:00.2 Host bridge: ServerWorks CNB20-HE Host Bridge
00:03.0 VGA compatible controller: ATI Technologies Inc Rage XL (rev 27)
00:04.0 RAID bus controller: Compaq Computer Corporation Smart Array 5i/532 (rev 01)
00:05.0 System peripheral: Compaq Computer Corporation: Unknown device b203 (rev 01)
00:05.2 System peripheral: Compaq Computer Corporation: Unknown device b204 (rev 01)
00:0f.0 ISA bridge: ServerWorks CSB5 South Bridge (rev 93)
00:0f.1 IDE interface: ServerWorks CSB5 IDE Controller (rev 93)
00:0f.2 USB Controller: ServerWorks OSB4/CSB5 OHCI USB Controller (rev 05)
00:0f.3 Host bridge: ServerWorks GCLE Host Bridge
00:11.0 Host bridge: ServerWorks: Unknown device 0101 (rev 05)
00:11.2 Host bridge: ServerWorks: Unknown device 0101 (rev 05)
01:02.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5703 Gigabit Ethernet (rev 02)
04:02.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5703 Gigabit Ethernet (rev 02)


Notice the last two items are the Broadcom builtin cards.

Also notice that the "tg3" module is the proper one as you can see it has two devices that it is controlling:
Code: Select all
$ /sbin/lsmod | grep tg3
tg3                    57800   2


Here's where the system recognized it:

Code: Select all
$ dmesg | grep eth
divert: allocating divert_blk for eth0
eth0: Tigon3 [partno(N/A) rev 1002 PHY(5703)] (PCIX:100MHz:64-bit) 10/100/1000BaseT Ethernet 00:0f:20:xx:xx:xx
divert: allocating divert_blk for eth1
eth1: Tigon3 [partno(N/A) rev 1002 PHY(5703)] (PCIX:100MHz:64-bit) 10/100/1000BaseT Ethernet 00:0f:20:xx:xx:xx


Here's what is in my /etc/modules.conf (automatically added by Red Hat):

Code: Select all
alias eth0 tg3
alias eth1 tg3


So what this tells me is that Red Hat Advanced Server 3, Red Hat Enterprise Linux 3 and White Box Linux 3 will install and work with these cards right out of the box. because I have both Red Hat AS3 and White Box linux dual booting on this particular machine and I didn't add any 3rd party drivers. Everything just worked. So again, I would be willing to bet that if you install White Box linux you will have a working server with a good solid Enterprise class distribution. Do you have to run Fedora 2 or can you run something else like WBL?
User avatar
Void Main
Site Admin
Site Admin
 
Posts: 5705
Joined: Wed Jan 08, 2003 5:24 am
Location: Tuxville, USA

Postby clem_c_rock » Mon Aug 09, 2004 12:20 pm

I have to first say thanks for going to all this trouble to help me out - you've gone way beyond the call of duty.

I am prepared to try a couple of new things before I go and buy a new nick card.

I found this page: http://mirrors.kernel.org/redhat/redhat ... e/3/en/os/

and I am running a 2.4 GHz Xeaon Processor on my machine. Which version, from this list, would you recomend? I was about to grab the "kernel-2.4.21-4.EL.src.rpm" from under the s390/ directory.

Also, is White box fully supported? The support is the main reason I'm opting for Fedora.

Thanks again,
I've already learned a lot,

Clem C
clem_c_rock
user
user
 
Posts: 13
Joined: Fri Aug 06, 2004 4:49 pm

Postby Void Main » Mon Aug 09, 2004 12:49 pm

clem_c_rock wrote:I am prepared to try a couple of new things before I go and buy a new nick card.

I found this page: http://mirrors.kernel.org/redhat/redhat ... e/3/en/os/

and I am running a 2.4 GHz Xeaon Processor on my machine. Which version, from this list, would you recomend? I was about to grab the "kernel-2.4.21-4.EL.src.rpm" from under the s390/ directory.


No, s390 is an IBM mainframe. :) You would use the one from the i386. You could run this kernel, and it should recognize those cards with no problem, however, I am sure there will be a few bootup quirks because Fedora 2 is designed for the 2.6.x kernel as I mentioned. This wouldn't be a problem for someone who is very experienced with Linux though.

Also, is White box fully supported?


Depends on what you mean by fully supported. If you mean fully supported by Red Hat then 100% "no".

The support is the main reason I'm opting for Fedora.


Again, what do you mean by supported. Again Fedora is 0% supported by Red Hat. If you want support from Red Hat then you'll need to purchase Red Hat Enterprise Linux from them.

If you mean supported by someone like Oracle then you are limited to Red Hat Enterprise Linux or a higher end SUSE distro. On a side note, I just ran across another DL360 that I am running a stock copy of Red Hat 9. It also has the Broadcom chips and works just fine. That's not surprising though as Enterprise Linux 3.0 is based off of Red Hat 9. What you might just do is download a copy of the Red Hat 9 kernel. This is the exact one I am running:

http://ayo.freshrpms.net/redhat/9/i386/ ... 9.i686.rpm

Download this and then do this:

# rpm -i kernel-2.4.20-31.9.i686.rpm

Reboot and you should see it on your boot menu. It will NOT be the default so you will have to select it manually to boot it. If it works you could make it the default by modifying your /boot/grub/grub.conf file.
User avatar
Void Main
Site Admin
Site Admin
 
Posts: 5705
Joined: Wed Jan 08, 2003 5:24 am
Location: Tuxville, USA

Next

Return to Fedora/Red Hat

Who is online

Users browsing this forum: No registered users and 1 guest

cron