I downloaded this CD image: http://distfiles.gentoo.org/releases/amd64/autobuilds/current-iso/install-amd64-minimal-20110421.iso Mainboard I am using is Intel DG43RK which has Broadcom PCIe Gigabit Ethernet chip BCM57788. # lspci -v 06:00.0 Ethernet controller: Broadcom Corporation NetLink BCM57788 Gigabit Ethernet PCIe (rev 01) Subsystem: Intel Corporation Device 0029 Flags: bus master, fast devsel, latency 0, IRQ 47 Memory at e0500000 (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 00-22-4d-ff-fe-47-fb-f9 Capabilities: [16c] Power Budgeting <?> Kernel driver in use: tg3 Kernel modules: tg3 I figured out what the problem is -- tg3 gets loaded but broadcom phy driver module does not. If I do the following: # rmmod tg3 # modprobe broadcom # modprobe tg3 Then it works. Reproducible: Always
Let me add that I also tried booting the image in VirtualBox 4.0.8. I set bridged network adapter with Intel Pro/1000 (desktop) and the same thing happens -- Gentoo install CD does not see the network (i.e. no eth0). This time I could not resolve the problem by manually loading modules. I had to select PCnet-FAST III. I am greatly disappointed -- if you cannot even get networking to work right out of the box, and network install is your main install mode, how do you expect people to use your distribution? Bear in mind that I have used Gentoo before, and I know my way around Linux so someone less tech-savvy would see this issue as a showstopper.
(In reply to comment #0) > I downloaded this CD image: > http://distfiles.gentoo.org/releases/amd64/autobuilds/current-iso/install-amd64-minimal-20110421.iso ... > I figured out what the problem is -- tg3 gets loaded but broadcom phy driver > module does not. If I do the following: This is a kernel driver issue (tg3 depending on broadcom) > # rmmod tg3 > # modprobe broadcom > # modprobe tg3 > > Then it works. (In reply to comment #1) > Let me add that I also tried booting the image in VirtualBox 4.0.8. > > I set bridged network adapter with Intel Pro/1000 (desktop) and the same thing > happens -- Gentoo install CD does not see the network (i.e. no eth0). How doesn't "it work"? What is failing? Does ifconfig -a show the device? > This time I could not resolve the problem by manually loading modules. I had to > select PCnet-FAST III. That uses a different network driver. > I am greatly disappointed -- if you cannot even get networking to work right > out of the box, and network install is your main install mode, how do you > expect people to use your distribution? What is your argument? That we haven't enabled the kernel drivers for those cards? The only one you say doesn't work, but don't explain how, is intel pro/1000. I can assure you that e1000 is in the kernel specs[1] for the CD. > Bear in mind that I have used Gentoo before, and I know my way around Linux so > someone less tech-savvy would see this issue as a showstopper. One thing users need to be able to do to install Gentoo is to configure their kernel. The issue with the broadcom driver is not a Gentoo issue, but a Linux kernel issue. Even though I understand it makes it a lot harder to install Gentoo on such a box, even if the CD were to load broadcom and tg3 in the correct order, the user would likely face that same issue when compiling a kernel to boot that system. [1] - http://sources.gentoo.org/cgi-bin/viewvc.cgi/releng/trunk/releases/weekly/kconfig/amd64/installcd-2.6.34.config?revision=767&view=markup
Hello, Thanks for a reply. > This is a kernel driver issue (tg3 depending on broadcom) Most likely, but for me and for anyone else trying to install using minimal install CD it is also an install CD issue. > How doesn't "it work"? What is failing? Does ifconfig -a show the device? As I said, there is no eth0 (meaning ifconfig -a shows only loopback). > That uses a different network driver. I am aware of that (it uses pcnet32) -- I am just saying what I had to chose to get networking operational with minimal install CD and VirtualBox. > What is your argument? That we haven't enabled the kernel drivers for those > cards? The only one you say doesn't work, but don't explain how, is intel > pro/1000. I can assure you that e1000 is in the kernel specs[1] for the CD. My argument is that TWO cards do not work: 1. Physical Broadcom BCM57788 (Intel DG43RK mainboard) /module phy/broadcom.ko exists but it is not loaded before tg3/ 2. Virtual Intel PRO/1000 MT Desktop 82540EM (VirtualBox 4.0.8) /tried e1000 and e1000e, in both cases ifconfig -a does not show eth0/ > One thing users need to be able to do to install Gentoo is to > configure their kernel. First, this is the kernel provided on minimal install CD we are talking about. Therefore, it should have "just worked". > even if the CD were to load broadcom and tg3 in the correct order, > the user would likely face that same issue when compiling a kernel > to boot that system. I have to disagree -- if the issue was resolved with install CD kernel, then it would also have a fix in gentoo-sources so compiling your own kernel would produce operational networking as well. Regarding the e1000 driver, I cannot blame Gentoo install CD without testing some other distro with the same Intel PRO/1000 MT emulation provided by VirtualBox -- I am just pointing out that it also doesn't work for some reason. > [1] - http://sources.gentoo.org/cgi-bin/viewvc.cgi/releng/trunk/releases/weekly/kconfig/amd64/installcd-2.6.34.config?revision=767&view=markup I am not sure what am I supposed to learn from that link except that broadcom.ko is compiled as a module -- current gentoo-sources is 2.6.38-gentoo-r6. When we are at that, default kernel config is full of debugging and experimental options enabled. I am at my third attempt of building a kernel that will actually boot instead of hanging half-way through. If my memory serves me well, it was almost impossible to produce broken kernel in Gentoo few years ago. Regards, Igor
From your last comment I gather your argument is about the kernel, so I'm adding the kernel team to CC. My previous comment was made with the RelEng hat on. I've been working on the specs for the livecd kernels trying to ensure we enable support for common hardware. Many kernel options have been enabled at the explicit request of Gentoo users. The releng and kernel teams don't cooperate about the specs for the livecd, something I'd be interested in changing. At least, getting a review by the kernel team of the specs. If I read your last comment correctly, your argument is about the default options set on the kernel packages. I'll let the kernel team comment on that.
Actually, I have commented on two different issues here (which I admit is a bad practice and I apologize for that): 1. install CD network driver problems (for both physical and virtual hardware) 2. default kernel options in gentoo-sources Issue #2 is something I can cope with (I managed to get a working kernel). However, issue #1 should not have existed in a network-based install. Regards, Igor
gentoo-sources does not provide a modified default config.
@kernel: any comments about the tg3 and broadcom dependency? Are there any tg3 devices for which enabling the broadcom phy driver will break them?
This appears to be a known issue where broadcom needs to be loaded before tg3
(In reply to comment #8) > This appears to be a known issue where broadcom needs to be loaded before tg3 I wonder... if it appears to be a known issue why don't you at least set it to CONFIRMED? As I said, I found my way around although figuring out the name of missing module was a bit of a hurdle because I wasn't aware that there should be two modules to begin with, but many people might get discouraged because without networking you cannot even open the online handbook to see what to try next.
@kernel, is there anything we can do on Gentoo to address the tg3 / broadcom issue or should this be addressed by Linux kernel developers? If the latter, do you have any links / suggestions?
*ping*
(In reply to comment #10) > @kernel, > > is there anything we can do on Gentoo to address the tg3 / broadcom issue or > should this be addressed by Linux kernel developers? If the latter, do you > have any links / suggestions? ping ?
Robin, iirc you looked at this at one point. Do you have any info you can share with us?
(In reply to comment #13) > Robin, > > iirc you looked at this at one point. Do you have any info you can share > with us? Igor's original post was correct. The tg3 module should probe & possibly load the phy module. Worse case for now, declare a module dependency, so that broadcom is always loaded before tg3, regardless of it being needed.
I've done a few tests today with 3 different Dell boxes with tg3 cards: 330N, 360N and 380N. On all 3 the autoloading is working, so I'm going to close this bug as works for me. I've checked on a Dell 380N (BCM57780 card using tg3+broadcom drivers), on a 360N (BCM5784M card with tg3+libphy drivers) and on a 330N (BCM5787 card using tg3+libphy drivers). If anyone is able to duplicate this issue, feel free to reopen the bug. If you can, please follow Robin's request for more info: 01:42 <@robbat2> jmbsvicetto, drivers/net/phy/phy_device.c 01:42 <@robbat2> in phy_device_create 01:42 <@robbat2> print out the args to request_module 01:42 <@robbat2> that's where the problem is I think 01:43 <@robbat2> it should be some string like mdio:0000000101000011101111000011????