On Sunday 16 Oct 2011 15:52:51 CJoeB wrote: > On 10/16/11 06:43, Mick wrote: > > On Sunday 16 Oct 2011 00:05:01 CJoeB wrote: > >> Hi everyone, > >> > >> > >> However, now I have a networking issue. > >> > >> In past, when I booted to the install CD and my ethernet connection was > >> not active, I typed net-setup eth0 and was able to set it up. This > >> time, when I booted to the install CD and typed net-setup eth0, the > >> network card was not recognized. > > > > This means that your kernel is not configured with the corresponding > > modules for your network card, or that there is some other configuration > > problem with e.g. firmware loading (if such a thing is necessary for > > your card). > > I use genkernel. Granted, rather than just running genkernel all, I run > genkernel --menuconfig all because I remove stuff that I know I won't > need. However, in the network section, everything related to broadcom > and tg3 is built as a module. I even tried building tg3 directly into > the kernel and it didn't help. I had to do the 'modprobe -r broadcom' > and 'modprobe -r tg3' and then, 'modprobe broadcom' and 'modprobe tg3' > prior to running net-setup even when booted to the install CD.
From what your dmesg shows tg3 fails to load. So there should not be a need to remove it. > >> I googled and found a post where > >> someone said that they had to 'modprobe -r broadcom' and 'modprobe -r > >> tg3' and then 'modprobe broadcom' and 'modprobe tg3' and then, run > >> net-setup. I did this and then ifconfig returned my eth0 connection. > >> > >> Of course, later you have to do the cp -L /etc/resolv.conf > >> /mnt/gentoo/etc/ .... which I did and dhcpcd has been added to my > >> default runlevel. > >> > >> However, when I boot, eth0 does not start. > > > > What does dmesg show? > > On line states: > tg3 0000:03:00.0: Problem fetching invariants of chip, aborting It fails to load. Something is blocking it from accessing the NIC chipset. > > What does cat /var/log/syslog | grep -i tg3 show > > Don't have a syslog file .... however, > > 'cat /var/log/rc.log | grep -i tg3' shows: > *Loading modul tg3 ... > > The line is repeated a total of 7 times. It should only be there once, unless you tried to load it 7 times? > >> I can start it manually by > >> doing 'modprobe -r broadcom' and 'modprobe -r tg3' and then 'modprobe > >> broadcom' and 'modprobe tg3' > > > > So the question is why when you remove and install the module manually > > your NIC driver loads, but at boot time it does not ... > > Good question and I have no idea! :-) I looked into it and the answer seems to be a bug in the kernel (there are patches out which fix this) that does not make sure that broadcom is loaded before tg3. > > ifconfig and ifconfig -a (before and after you modprobe the driver) > > Before loading: > > ifconfig just lists: > lo Link encap:Local Loopback > inet addr:127.0.0.1 Mask:255.0.0.0 > UP LOOPBACK RUNNING MTU:16436 Metric:1 > RX packets:11 errors:0 dropped:0 overruns:0 frame:0 > TX packets:11 errors:0 dropped:0 overruns:0 carrier:0 > collisions:0 txqueuelen:0 > RX bytes:198 (198.0 B) TX bytes:198 (198.0 B) > > ifconfig -a lists: > lo Link encap:Local Loopback > inet addr:127.0.0.1 Mask:255.0.0.0 > UP LOOPBACK RUNNING MTU:16436 Metric:1 > RX packets:18 errors:0 dropped:0 overruns:0 frame:0 > TX packets:18 errors:0 dropped:0 overruns:0 carrier:0 > collisions:0 txqueuelen:0 > RX bytes:324 (324.0 B) TX bytes:324 (324.0 B) The module is not loaded and the kernel has not seen the NIC. > After doing ''modprobe -r broadcom' and 'modprobe -r tg3' and then, > 'modprobe broadcom' and 'modprobe tg3' > > ifconfig lists: > > eth0 Link encap:Ethernet HWaddr 78:2b:cb:ad:9e:47 > inet addr:192.168.2.15 Bcast:192:168.2.255 Mask:255.255.255.0 > UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 > RX packets:1727 errors:0 dropped:0 overruns:0 frame:0 > TX packets:908 errors:0 dropped:0 overruns:0 carrier:0 > collisions:0 txqueuelen:1000 > RX bytes:1826702 (1.7 MiB) TX bytes:67525 (65.9 KiB) > > > lo Link encap:Local Loopback > inet addr:127.0.0.1 Mask:255.0.0.0 > UP LOOPBACK RUNNING MTU:16436 Metric:1 > RX packets:46 errors:0 dropped:0 overruns:0 frame:0 > TX packets:46 errors:0 dropped:0 overruns:0 carrier:0 > collisions:0 txqueuelen:0 > RX bytes:828 (828.0 B) TX bytes:828 (828.0 B) > > ifconfig -a lists > > eth0 Link encap:Ethernet HWaddr 78:2b:cb:ad:9e:47 > inet addr:192.168.2.15 Bcast:192:168.2.255 Mask:255.255.255.0 > UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 > RX packets:2024 errors:0 dropped:0 overruns:0 frame:0 > TX packets:958 errors:0 dropped:0 overruns:0 carrier:0 > collisions:0 txqueuelen:1000 > RX bytes:1846649 (1.7 MiB) TX bytes:70725 (69.0 KiB) > > > lo Link encap:Local Loopback > inet addr:127.0.0.1 Mask:255.0.0.0 > UP LOOPBACK RUNNING MTU:16436 Metric:1 > RX packets:50 errors:0 dropped:0 overruns:0 frame:0 > TX packets:50 errors:0 dropped:0 overruns:0 carrier:0 > collisions:0 txqueuelen:0 > RX bytes:1062 (1.0 KiB) TX bytes:1062 (1.0 KiB) > > > It may also help to know what is your card (lshw and lspci -v). > > Okay, I had to install pciutils before I could get the output so, > obviously, this was done after the drivers loaded. > > lspci -v shows: > > 03:00.0 Ethernet controller: Broadcom Corporation Netlink BCM57788 > Gigabit Ethernet PCIe (rev 01) > Subsystem: Dell Device 04aa > Flags: bus master, fast devsel, latency 0, IRQ 47 > Memory at fe500000 (64-bit, non-prefetchable) [size=64K] > Capabilities: [48] Power Management version 3 > Capabilities: [60] Vendor Specific Information: Len=6c <?> > Capabilities: [50] MSI: Enable+ Count=1/1 Maskable- 64bit+ > Capabilities: [cc] Express Endpoint, MSI 00 > Capabilities: [100] Advanced Error Reporting > Capabilities: [13c] Virtual Channel > Capabilities: [160] Device Serial Number > 78-2b-cb-ff-fe-ad-9e-47 > Capabilities: [16c] Power Budgeting <?> > Kernel driver in use: tg3 > Kernel modules: tg3 As I said above the kernel ought to manage the order in which the modules and dependencies are loaded. This is a bug. There are patches out to address this in future kernels. Until then you can try to: 1. Configure your /etc/conf.d/modules as suggested here: http://www.gentoo.org/doc/en/openrc-migration.xml and have broadcom before tg3. 2. Configure broadcom in the kernel and tg3 as module (in case it makes a difference, or swap and see if that helps). 3. Have a custom init script (re)loading them in the right order as Florian has already suggested. HTH. -- Regards, Mick
signature.asc
Description: This is a digitally signed message part.