Bug 9257
Summary: | 2.6.24-rc1 kills onboard r8169 (rtl8111b) NIC | ||
---|---|---|---|
Product: | Drivers | Reporter: | Rafael J. Wysocki (rjwysocki) |
Component: | Network | Assignee: | Francois Romieu (romieu) |
Status: | CLOSED CODE_FIX | ||
Severity: | normal | CC: | kedgedev, linux, rathamahata, romieu, seraph |
Priority: | P1 | ||
Hardware: | All | ||
OS: | Linux | ||
Kernel Version: | 2.6.24-rc1 | Subsystem: | |
Regression: | Yes | Bisected commit-id: | |
Bug Depends on: | |||
Bug Blocks: | 9243 | ||
Attachments: |
Bandaid for unwanted bit-sign propagation in mdio_write
Fix r8169 for ASUS P5B motherboards |
Description
Rafael J. Wysocki
2007-10-28 14:51:30 UTC
Yeah, I just experienced this too. My motherboard is an Asus P5B, and the onboard NIC is listed as follows: 03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 01) Upon booting a 2.6.24-rc1 kernel, the module loads correctly, but the device will drop any and all TX packets. Worse, upon rebooting the NIC is completely gone from the PCI bus, even with kernels other than 2.6.24-rc1, until the machine has been completely powered down and back up. In my case after about 2 days and 3 complete cycles of { power down; rest (for hours); power up} my NIC still hasn't reappeared. Make sure you have removed all power from the main board, by completely unplugging the system if needed. In my case, just bringing the system down to standby was not enough, I had to cut the power with the main switch on the back on the machine to get the NIC working again. (In reply to comment #3) > Make sure you have removed all power from the main board, by completely > unplugging the system if needed. > > In my case, just bringing the system down to standby was not enough, I had to > cut the power with the main switch on the back on the machine to get the NIC > working again. > Thank you for your suggestion. It does work for me :) Can you disable MMCONFIG and check if the device appears again (workable or not) ? Your .config should include something like: [...] # # Bus options (PCI, PCMCIA, EISA, MCA, ISA) # CONFIG_PCI=y # CONFIG_PCI_GOBIOS is not set # CONFIG_PCI_GOMMCONFIG is not set CONFIG_PCI_GODIRECT=y # CONFIG_PCI_GOANY is not set CONFIG_PCI_DIRECT=y -- Ueimor I have the same problem. I tried PCI direct access but it didn't help. When I booted to 2.6.24-rc1-git14 I saw the eth0 but it didn't find ip address (dhcp) and after reboot to stable kernel 2.6.23 the eth0 was missing so I had to unplug battery from my laptop. The same thing happened with MMCONFIG. kernel: 2.6.24-rc1-git14 laptop: Asus A6Jc 02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 01) Created attachment 13407 [details]
Bandaid for unwanted bit-sign propagation in mdio_write
Oops.
Some of the new xyz_hw_phy_config() functions are probably not happy.
Please give it a try once the interface appears again.
--
Ueimor
The patch didn't change anything :( (with pci direct access) Created attachment 13441 [details]
Fix r8169 for ASUS P5B motherboards
Submitted on LKML today.
Fixes have been merged in Linus's tree after 2.6.24-rc2 as : http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=50d84c2dc00e48ff9ba018ed0dd23276cf79e566 http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b9d04e2401bf308df921d3bbbdacab40fadc27bb -- Ueimor |