Most recent kernel where this bug did *NOT* occur: unknown Distribution: Gentoo Linux (x86 stable) Hardware Environment: ASUS M2N-MX MoBo (MCP61 Ethernet) Software Environment: forcedeth Problem Description: When a cable (tried several) is connected, the connection intermittently drops and reconnects at random intervals. During the reconnects communication and transfer speed is fine. The other end is not the problem because it works when using the also present (and only used because of this BUG) Intel NIC (e1000) in the system. I already tried latest snapshot 2.6.21-rc7-git4, but problem is still there. I also tried compiling the Kernel with and without MSI, made no difference. What is causing this? The connection is fine within Windoze BTW. I get this in the kernel log: forcedeth.c: Reverse Engineered nForce ethernet driver. Version 0.60. forcedeth: using HIGHDMA eth0: forcedeth.c: subsystem: 01043:8234 bound to 0000:00:07.0 Apr 20 17:55:40 [kernel] eth0: link down. Apr 20 17:55:43 [kernel] eth0: link up. Apr 20 17:55:44 [kernel] eth0: link down. Apr 20 17:55:47 [kernel] eth0: link up. Apr 20 17:55:49 [kernel] eth0: link down. Apr 20 17:55:51 [kernel] eth0: link up. Apr 20 17:56:37 [kernel] eth0: link down. Apr 20 17:56:40 [kernel] eth0: link up. Apr 20 18:01:05 [kernel] eth0: link down. Apr 20 18:01:08 [kernel] eth0: link up. Apr 20 18:02:21 [kernel] eth0: link down. Apr 20 18:02:24 [kernel] eth0: link up. Apr 20 18:03:24 [kernel] eth0: link down. Apr 20 18:03:31 [kernel] eth0: link up. Apr 20 18:05:41 [kernel] eth0: link down. Apr 20 18:05:44 [kernel] eth0: link up. Apr 20 18:05:46 [kernel] eth0: link down. Apr 20 18:05:49 [kernel] eth0: link up. lspci: 00:00.0 RAM memory: nVidia Corporation MCP61 Memory Controller (rev a1) 00:01.0 ISA bridge: nVidia Corporation MCP61 LPC Bridge (rev a2) 00:01.1 SMBus: nVidia Corporation MCP61 SMBus (rev a2) 00:01.2 RAM memory: nVidia Corporation MCP61 Memory Controller (rev a2) 00:01.3 Co-processor: nVidia Corporation MCP61 SMU (rev a2) 00:02.0 USB Controller: nVidia Corporation MCP61 USB Controller (rev a2) 00:02.1 USB Controller: nVidia Corporation MCP61 USB Controller (rev a2) 00:04.0 PCI bridge: nVidia Corporation MCP61 PCI bridge (rev a1) 00:05.0 Audio device: nVidia Corporation MCP61 High Definition Audio (rev a2) 00:06.0 IDE interface: nVidia Corporation MCP61 IDE (rev a2) 00:07.0 Bridge: nVidia Corporation MCP61 Ethernet (rev a2) 00:08.0 IDE interface: nVidia Corporation MCP61 SATA Controller (rev a2) 00:08.1 IDE interface: nVidia Corporation MCP61 SATA Controller (rev a2) 00:09.0 PCI bridge: nVidia Corporation MCP61 PCI Express bridge (rev a2) 00:0b.0 PCI bridge: nVidia Corporation MCP61 PCI Express bridge (rev a2) 00:0c.0 PCI bridge: nVidia Corporation MCP61 PCI Express bridge (rev a2) 00:0d.0 VGA compatible controller: nVidia Corporation GeForce 6100 nForce 430 (rev a2) 00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration 00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map 00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller 00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control 01:06.0 Ethernet controller: Intel Corporation 82541PI Gigabit Ethernet Controller (rev 05) 01:07.0 Ethernet controller: Atheros Communications, Inc. AR5212 802.11abg NIC (rev 01) cat /proc/interrupts: CPU0 CPU1 0: 1447150 1248 IO-APIC-edge timer 1: 8 2 IO-APIC-edge i8042 6: 1 4 IO-APIC-edge floppy 9: 0 0 IO-APIC-fasteoi acpi 12: 0 4 IO-APIC-edge i8042 14: 51213 12 IO-APIC-edge ide0 16: 135974 5 IO-APIC-fasteoi libata, ohci_hcd:usb2 17: 33052 5 IO-APIC-fasteoi libata, HDA Intel 18: 350634 1 IO-APIC-fasteoi ehci_hcd:usb1, nvidia 19: 587446 1 IO-APIC-fasteoi eth0 20: 2882 1 IO-APIC-fasteoi eth1 21: 110639 1 IO-APIC-fasteoi wifi0 NMI: 0 0 LOC: 1448407 1448350 ERR: 1 MIS: 0 Steps to reproduce: I only need connect a cable and there go the disconnections
Created attachment 11264 [details] debug driver Can you try the attached driver? If it still repros, can you send me the output of dmesg?
Created attachment 11266 [details] dmesg when using forcedeth v0.62
Erm I forgot to say: Same problem with the debug driver v0.62 you provided. Also it seems there is no debug data, the posted debug driver logs the same messages as the release driver in kernel log.
For my reference: downstream bug https://bugs.gentoo.org/show_bug.cgi?id=173041
The debug driver spits out the phy vendor and revision. Are you using autonegotiation or forcing the speed?
I use autonegotiation. It's a 3 Meter CAT 5e direct crossover link between 2 computers. The other end is also an ASUS MoBo but the M2N32-SLI Deluxe with nVidia MCP55 Gigabit Ethernet (The forcedeth driver works fine for that board).
I setup a similar environment as yours: M2N-E SLI (MCP61) with crossover cable to MCP55 system. I do not the issue as you are seeing. Have you tried the other way around? MCP61 connected to another non-NVIDIA phy? Can you see if ASUS has a newer version of the BIOS?
There are newer BIOS. Currently, I am on v0302 because thats the only one where I get Cool & Quiet running on Linux. The problem is also when the MCP61 is connected to a ThinkPad T41p (Intel gigabit). I found out it doesn't disconnect, when using a cheap cable with only 2 pairs, so only 100MBit connection but stable. Still confusing why Gigabit does not work correctly.
The PHY is an Attansic F1 by the way.
Interesting that it only happens in Gigabit mode. If it is relatively easy for you to swap different BIOS, you could try out a newer one to see if it happens and then go back to your old BIOS again. I will ask the HW engineers here to see if they can dig up an explanation/fix.
I tried newest BIOS v0504, neither powernow worked nor was the MCP61 disconnection problem solved. Also Linux only booted when I disabled APIC in BIOS. I think these newer BIOS cause more trouble than really solve problems. Back to v0302 for now.
I could give you remote root access and an active gigabit connection if needed.
Can you try using the gige cable at 100Mbps. You can use ethtool to set the NIC into 100Mbps full duplex autoneg: "ethtool -s ethX speed 100 duplex full autoneg on". Just want to eliminate the cable as the problem.
Just noticed you said you tried different cables. Have you tried connecting to a switch? Is your cable a straight through cable or crossover cable?
I don't have a gigabit switch - too expensive for me at the moment. Yes I tried different cables. When tested with the M2N32-SLI Deluxe on the other end, I used a crossed cable. When connecting to my Notebook, I use straight-through cable but the NIC is an Intel NIC which does auto MDI/MDI-X so cabling should be correct.
Yes, I wanted to make sure that the attansic phy doesn't have an issue with MDI/MDI-X crossover. Please try a straight through cable as a double check.
Didn't make any difference. I've now tried all possible cable combinations - problem still remained every try. I've also tried today's released BETA BIOS v0701 - problem still remained. Also no powernow and no APIC. DAMN! I'm losing hope...
In the case where you see the reconnects, can you send me the output of "ethtool ethX" and "ethtool -d ethX"
kik-server ~ # ethtool eth0 Settings for eth0: Supported ports: [ MII ] Supported link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full Supports auto-negotiation: Yes Advertised link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full Advertised auto-negotiation: Yes Speed: 1000Mb/s Duplex: Full Port: MII PHYAD: 1 Transceiver: external Auto-negotiation: on Supports Wake-on: g Wake-on: d Link detected: yes kik-server ~ # ethtool -d eth0 Offset Values -------- ----- 000: 00 00 00 00 ff 00 00 00 03 00 00 00 ca 03 06 01 010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 040: 0e e2 20 04 55 a4 00 00 20 2e 00 00 00 00 00 00 050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 060: 00 00 00 00 00 00 00 00 00 00 00 00 ff ff 00 00 070: ff ff 00 00 ff ff 00 00 ff ff 00 00 00 00 00 00 080: 3c 0f 3b 00 01 00 00 c0 00 00 00 00 20 00 7f 00 090: 1c 06 00 00 01 00 00 00 00 00 00 00 f5 7f 00 00 0a0: 0f 05 14 00 16 00 00 00 00 18 f3 52 d4 0e 00 00 0b0: 01 00 5e 00 00 01 00 00 ff ff ff ff ff ff 00 00 0c0: 02 00 00 1c 01 00 00 00 01 00 00 00 01 00 00 00 0d0: 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 0e0: 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 0f0: 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 100: 00 88 f0 36 00 80 f0 36 3f 00 7f 00 00 80 00 00 110: 32 00 01 00 00 00 00 00 12 00 00 00 b0 8a f0 36 120: 00 84 f0 36 40 11 49 36 f3 ff 00 a0 10 f8 10 0b 130: 1c 06 00 80 bc 8a f0 36 60 83 f0 36 00 80 e0 0f 140: 20 41 30 00 00 22 c0 80 00 00 00 00 00 00 00 00 150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 160: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 170: 80 00 ff 01 00 c0 00 00 00 00 00 00 00 00 00 00 180: 16 00 00 00 08 00 00 00 69 79 94 01 03 81 00 00 190: 2a 00 00 00 5b 3c 00 00 80 00 00 00 db bd 00 00 1a0: 16 00 00 00 08 00 00 00 69 79 94 01 03 81 00 00 1b0: 2a 00 00 00 5b 3c 00 00 80 00 00 00 db bd 00 00 1c0: 16 00 00 00 08 00 00 00 69 79 94 01 03 81 00 00 1d0: 2a 00 00 00 5b 3c 00 00 80 00 00 00 db bd 00 00 1e0: 16 00 00 00 08 00 00 00 69 79 94 01 03 81 00 00 1f0: 2a 00 00 00 5b 3c 00 00 80 00 00 00 db bd 00 00 200: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 210: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 220: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 230: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 240: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 250: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 260: 00 00 00 00 00 00 00 00 01 50 02 fe 00 01 00 00 270: 10 00 00 00 a1 00 00 00 11 50 02 fe a1 01 00 00 280: 20 0d 00 00 11 00 00 00 00 00 00 00 00 00 00 00 290: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2c0: 00 00 00 00 00 00 00 00 14 00 00 00 00 00 00 00 2d0: 00 00 00 00 00 00 00 00 11 00 00 00 cc 06 00 00 2e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2f0: 00 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 300: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 310: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 320: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 330: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 340: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 350: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 360: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 370: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 380: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 390: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3b0: 00 00 00 00 04 00 00 00 ff ff 00 00 ff ff 00 00 3c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 400: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 410: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 420: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 430: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 440: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 450: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 460: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 470: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 480: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 490: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 500: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 510: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 520: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 530: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 540: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 550: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 560: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 570: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 580: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 590: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5c0: 00 00 06 00 ff ff 00 00 00 00 00 00 00 00 00 00 5d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 600: 24 00 00 00 But this is what I get when the link is online, because the disconnect/reconnect is random and only for a second or so.
Any news? The offer for root access to the problematic system still stays.
I didn't see anything in the register dump that could point to the source of the problem. I am currently trying to get my hands on the same board to try to repro your issue. It will be easier to debug this way instead of remote access. Btw, someone else also reported the same issue, so you are not the only one.
Can you try adding this code in the function nv_get_regs() and recompile the driver, reload the new driver, and then send me the output of "dmesg" after you type "ethtool -d ethX". for (i = 0; i < 0x1F; i++) printk(KERN_INFO "phy reg %x: %x\n", i, mii_rw(dev, np->phyaddr, i, MII_READ));
Gave this (dmesg): forcedeth.c: Reverse Engineered nForce ethernet driver. Version 0.62. ACPI: PCI Interrupt 0000:00:07.0[A] -> Link [LMAC] -> GSI 21 (level, low) -> IRQ 19 PCI: Setting latency timer of device 0000:00:07.0 to 64 forcedeth: using HIGHDMA 0000:00:07.0: open: Found PHY 004d:d016 at address 1. 0000:00:07.0: open: Found PHY 1340:0034 at address 1. eth0: forcedeth.c: subsystem: 01043:8234 bound to 0000:00:07.0 eth0: no link during initialization. eth0: link up. phy reg 0: 1000 phy reg 1: 796d phy reg 2: 4d phy reg 3: d016 phy reg 4: de1 phy reg 5: c1e1 phy reg 6: f phy reg 7: 2801 phy reg 8: 0 phy reg 9: 200 phy reg a: 3c05 phy reg b: 0 phy reg c: 0 phy reg d: 0 phy reg e: 0 phy reg f: 2000 phy reg 10: 62 phy reg 11: bc10 phy reg 12: 0 phy reg 13: fe02 phy reg 14: 2c phy reg 15: 0 phy reg 16: 0 phy reg 17: 0 phy reg 18: 4100 phy reg 19: 0 phy reg 1a: 0 phy reg 1b: 0 phy reg 1c: 0 phy reg 1d: 0 phy reg 1e: 24e
Can you run it twice and then send the output? I want to see if some status bits are cleared on the second time you read the phy registers... Btw, which configuration is this? MCP61 <---> Intel? straight through cable or crossover cable?
One more experiment is to set the following define to zero: #define NVREG_ADAPTCTL_RUNNING 0x100000
Yes, I'm also experiencing this issue. ~ 2 weeks ago it was very bad (network was practically unusable). Since I received some correspondence from Ayaz, it has gotten better; only happening ~1-2 times each day. Unfortunately, I did not change anything since initiating contact w/ Ayaz. Please let me know if there is anything I can do to help diagnose this problem.
Here's a brief synopsis of my situation (perhaps it will help others with their searches): I got a new MB a few months ago and I can't get the networking to work continuously. I get these messages in /var/log/messages: May 9 07:17:27 nimble eth0: link down. May 9 07:17:28 nimble eth0: link up. They occur almost entirely randomly. That is, sometimes 10-15 min will pass w/out any problem (ie. eth0 is up the entire time). Other times, eth0 will alternate between "up" and "down" for 20-30 min. The duration between Up and Down varies also, between 1 second and ~15 seconds. Here's some details on my system: MB: ASUS M2N-SLI Deluxe Chipset: NVIDIA nForce 570 SLI MCP LAN: NVIDIA nForce 570 SLI MCP built-in dual Gigabit MAC w/ external Marvell PHY URL: http://www.asus.com/products4.aspx?l1=3&l2=101&l3=0&model=1160&modelmenu =1 Kernel: 2.6.21.1 (I also tried 2.6.18.6, 2.6.20.4 and 2.6.20.7) Here's what I tried so far w/out any luck: - Another CAT-V cable from another machine which isn't exhibiting the problem - Changing ports on my router - With the 2.6.20.4 kernel I tried these kernel params: - ACPI=off - noapic - ACPI=off noapic
ethtool -d eth0 #1 Offset Values -------- ----- 000: 00 00 00 00 ff 00 00 00 03 00 00 00 ca 03 01 02 010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 040: 0e e2 20 04 55 a4 00 00 20 2e 00 00 00 00 00 00 050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 060: 00 00 00 00 00 00 00 00 00 00 00 00 ff ff 00 00 070: ff ff 00 00 ff ff 00 00 ff ff 00 00 00 00 00 00 080: 3c 0f 3b 00 01 00 00 c0 00 00 00 00 20 00 7f 00 090: 1c 06 00 00 01 00 00 00 00 00 00 00 09 7f 00 00 0a0: 0f 05 14 00 16 00 00 00 00 18 f3 52 d4 0e 00 00 0b0: 01 00 5e 00 00 01 00 00 ff ff ff ff ff ff 00 00 0c0: 02 00 00 1c 01 00 00 00 01 00 00 00 01 00 00 00 0d0: 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 0e0: 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 0f0: 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 100: 00 18 2b 19 00 10 2b 19 3f 00 7f 00 00 80 00 00 110: 32 00 01 00 00 00 00 00 14 00 00 00 20 18 2b 19 120: 00 11 2b 19 c0 d2 65 29 eb ff 00 a0 10 20 9f 1b 130: 1c 06 00 80 2c 18 2b 19 30 10 2b 19 00 80 e0 0f 140: 20 41 30 00 00 22 c0 80 00 00 00 00 00 00 00 00 150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 160: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 170: 80 00 ff 01 00 c0 00 00 00 00 00 00 00 00 00 00 180: 16 00 00 00 08 00 00 00 69 79 94 01 03 81 00 00 190: 2a 00 00 00 73 3c 00 00 80 00 00 00 f3 bd 00 00 1a0: 16 00 00 00 08 00 00 00 69 79 94 01 03 81 00 00 1b0: 2a 00 00 00 73 3c 00 00 80 00 00 00 f3 bd 00 00 1c0: 16 00 00 00 08 00 00 00 69 79 94 01 03 81 00 00 1d0: 2a 00 00 00 73 3c 00 00 80 00 00 00 f3 bd 00 00 1e0: 16 00 00 00 08 00 00 00 69 79 94 01 03 81 00 00 1f0: 2a 00 00 00 73 3c 00 00 80 00 00 00 f3 bd 00 00 200: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 210: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 220: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 230: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 240: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 250: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 260: 00 00 00 00 00 00 00 00 01 50 02 fe 00 01 00 00 270: 10 00 00 00 a1 00 00 00 11 50 02 fe a1 01 00 00 280: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 290: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2d0: 01 00 00 00 00 00 00 00 00 00 00 00 5a 01 00 00 2e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2f0: 00 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 300: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 310: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 320: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 330: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 340: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 350: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 360: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 370: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 380: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 390: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3b0: 00 00 00 00 04 00 00 00 ff ff 00 00 ff ff 00 00 3c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 400: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 410: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 420: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 430: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 440: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 450: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 460: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 470: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 480: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 490: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 500: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 510: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 520: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 530: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 540: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 550: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 560: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 570: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 580: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 590: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5c0: 00 00 06 00 ff ff 00 00 00 00 00 00 00 00 00 00 5d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 600: 24 00 00 00 dmesg #1 May 19 01:55:22 [kernel] forcedeth.c: Reverse Engineered nForce ethernet driver. Version 0.62. May 19 01:55:22 [kernel] ACPI: PCI Interrupt 0000:00:07.0[A] -> Link [LMAC] -> GSI 23 (level, low) -> IRQ 17 May 19 01:55:22 [kernel] PCI: Setting latency timer of device 0000:00:07.0 to 64 May 19 01:55:22 [kernel] forcedeth: using HIGHDMA May 19 01:55:22 [kernel] 0000:00:07.0: open: Found PHY 004d:d016 at address 1. May 19 01:55:22 [kernel] 0000:00:07.0: open: Found PHY 1340:0034 at address 1. May 19 01:55:23 [kernel] eth0: forcedeth.c: subsystem: 01043:8234 bound to 0000:00:07.0 May 19 01:55:24 [kernel] eth0: no link during initialization. May 19 01:55:25 [kernel] eth0: link up. May 19 01:55:27 [kernel] eth0: link down. May 19 01:55:30 [kernel] eth0: link up. May 19 01:55:32 [kernel] eth0: link down. May 19 01:55:35 [kernel] eth0: link up. May 19 01:55:40 [kernel] eth0: link down. May 19 01:55:42 [kernel] eth0: link up. May 19 01:55:55 [kernel] phy reg 0: 1000 May 19 01:55:55 [kernel] phy reg 1: 796d May 19 01:55:55 [kernel] phy reg 2: 4d May 19 01:55:55 [kernel] phy reg 3: d016 May 19 01:55:55 [kernel] phy reg 4: de1 May 19 01:55:55 [kernel] phy reg 5: c1e1 May 19 01:55:55 [kernel] phy reg 6: f May 19 01:55:55 [kernel] phy reg 7: 2801 May 19 01:55:55 [kernel] phy reg 8: 0 May 19 01:55:55 [kernel] phy reg 9: 200 May 19 01:55:55 [kernel] phy reg a: 3c00 May 19 01:55:55 [kernel] phy reg b: 0 May 19 01:55:55 [kernel] phy reg c: 0 May 19 01:55:55 [kernel] phy reg d: 0 May 19 01:55:55 [kernel] phy reg e: 0 May 19 01:55:55 [kernel] phy reg f: 2000 May 19 01:55:55 [kernel] phy reg 10: 62 May 19 01:55:55 [kernel] phy reg 11: bc10 May 19 01:55:55 [kernel] phy reg 12: 0 May 19 01:55:55 [kernel] phy reg 13: fe42 May 19 01:55:55 [kernel] phy reg 14: 2c May 19 01:55:55 [kernel] phy reg 15: 0 May 19 01:55:55 [kernel] phy reg 16: 0 May 19 01:55:55 [kernel] phy reg 17: 0 May 19 01:55:55 [kernel] phy reg 18: 4100 May 19 01:55:55 [kernel] phy reg 19: 0 May 19 01:55:55 [kernel] phy reg 1a: 0 May 19 01:55:55 [kernel] phy reg 1b: 0 May 19 01:55:55 [kernel] phy reg 1c: 0 May 19 01:55:55 [kernel] phy reg 1d: 0 May 19 01:55:55 [kernel] phy reg 1e: 24e ethtool -d eth0 #2 Offset Values -------- ----- 000: 00 00 00 00 ff 00 00 00 03 00 00 00 ca 03 ce 00 010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 040: 0e e2 20 04 55 a4 00 00 20 2e 00 00 00 00 00 00 050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 060: 00 00 00 00 00 00 00 00 00 00 00 00 ff ff 00 00 070: ff ff 00 00 ff ff 00 00 ff ff 00 00 00 00 00 00 080: 3e 0f 3b 00 01 00 00 c0 00 00 00 00 20 00 7f 00 090: 1c 06 00 00 01 00 00 00 00 00 00 00 38 74 00 00 0a0: 0f 07 16 00 16 00 00 00 00 18 f3 52 d4 0e 00 00 0b0: 01 00 5e 00 00 01 00 00 ff ff ff ff ff ff 00 00 0c0: 00 01 00 1c 01 00 00 00 01 00 00 00 01 00 00 00 0d0: 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 0e0: 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 0f0: 01 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 100: 00 78 5d 1a 00 70 5d 1a 3f 00 7f 00 00 80 00 00 110: e8 03 01 00 00 00 00 00 94 02 00 00 10 78 5d 1a 120: c0 70 5d 1a 00 22 15 1d eb ff 00 a0 10 f0 78 19 130: 1c 06 00 80 1c 78 5d 1a 00 70 5d 1a 00 80 e0 01 140: 20 41 30 00 00 22 c0 80 00 00 00 00 00 00 00 00 150: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 160: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 170: 80 00 ff 01 00 c0 00 00 00 00 00 00 00 00 00 00 180: 12 00 00 00 08 00 00 00 49 79 94 01 03 81 00 00 190: 21 00 00 00 49 79 00 00 1b 05 00 00 5b fd 00 00 1a0: 12 00 00 00 08 00 00 00 49 79 94 01 03 81 00 00 1b0: 21 00 00 00 49 79 00 00 00 00 00 00 4b f9 00 00 1c0: 12 00 00 00 08 00 00 00 49 79 94 01 03 81 00 00 1d0: 21 00 00 00 49 79 00 00 00 00 00 00 4b f9 00 00 1e0: 12 00 00 00 08 00 00 00 49 79 94 01 03 81 00 00 1f0: 21 00 00 00 49 79 00 00 00 00 00 00 4b f9 00 00 200: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 210: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 220: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 230: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 240: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 250: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 260: 00 00 00 00 00 00 00 00 01 50 02 fe 00 01 00 00 270: 10 00 00 00 a1 00 00 00 11 50 02 fe a1 01 00 00 280: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 290: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2f0: 00 00 00 00 01 00 00 00 01 00 00 00 01 00 00 00 300: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 310: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 320: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 330: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 340: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 350: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 360: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 370: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 380: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 390: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3b0: 00 00 00 00 04 00 00 00 ff ff 00 00 ff ff 00 00 3c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 400: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 410: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 420: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 430: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 440: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 450: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 460: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 470: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 480: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 490: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 500: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 510: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 520: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 530: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 540: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 550: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 560: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 570: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 580: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 590: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5c0: 00 00 06 00 ff ff 00 00 00 00 00 00 00 00 00 00 5d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 600: 24 00 00 00 dmesg #2 May 19 01:57:56 [kernel] forcedeth.c: Reverse Engineered nForce ethernet driver. Version 0.62. May 19 01:57:56 [kernel] ACPI: PCI Interrupt 0000:00:07.0[A] -> Link [LMAC] -> GSI 23 (level, low) -> IRQ 17 May 19 01:57:56 [kernel] PCI: Setting latency timer of device 0000:00:07.0 to 64 May 19 01:57:56 [kernel] forcedeth: using HIGHDMA May 19 01:57:56 [kernel] 0000:00:07.0: open: Found PHY 004d:d016 at address 1. May 19 01:57:56 [kernel] 0000:00:07.0: open: Found PHY 1340:0034 at address 1. May 19 01:57:57 [kernel] eth0: forcedeth.c: subsystem: 01043:8234 bound to 0000:00:07.0 May 19 01:57:58 [kernel] eth0: no link during initialization. May 19 01:57:59 [kernel] eth0: link up. May 19 01:58:00 [kernel] eth0: link down. May 19 01:58:02 [kernel] phy reg 0: 1000 May 19 01:58:02 [kernel] phy reg 1: 7949 May 19 01:58:02 [kernel] phy reg 2: 4d May 19 01:58:02 [kernel] phy reg 3: d016 May 19 01:58:02 [kernel] phy reg 4: de1 May 19 01:58:02 [kernel] phy reg 5: c1e1 May 19 01:58:02 [kernel] phy reg 6: e May 19 01:58:02 [kernel] phy reg 7: 2801 May 19 01:58:02 [kernel] phy reg 8: 0 May 19 01:58:02 [kernel] phy reg 9: 200 May 19 01:58:02 [kernel] phy reg a: 0 May 19 01:58:02 [kernel] phy reg b: 0 May 19 01:58:02 [kernel] phy reg c: 0 May 19 01:58:02 [kernel] phy reg d: 0 May 19 01:58:02 [kernel] phy reg e: 0 May 19 01:58:02 [kernel] phy reg f: 2000 May 19 01:58:02 [kernel] phy reg 10: 62 May 19 01:58:02 [kernel] phy reg 11: 10 May 19 01:58:02 [kernel] phy reg 12: 0 May 19 01:58:02 [kernel] phy reg 13: fe02 May 19 01:58:02 [kernel] phy reg 14: 2c May 19 01:58:02 [kernel] phy reg 15: 0 May 19 01:58:02 [kernel] phy reg 16: 0 May 19 01:58:02 [kernel] phy reg 17: 0 May 19 01:58:02 [kernel] phy reg 18: 4100 May 19 01:58:02 [kernel] phy reg 19: 0 May 19 01:58:02 [kernel] phy reg 1a: 0 May 19 01:58:02 [kernel] phy reg 1b: 0 May 19 01:58:02 [kernel] phy reg 1c: 0 May 19 01:58:02 [kernel] phy reg 1d: 0 May 19 01:58:02 [kernel] phy reg 1e: 24e May 19 01:58:03 [kernel] eth0: link up. May 19 01:58:03 [kernel] eth0: link down. May 19 01:58:06 [kernel] eth0: link up. May 19 01:58:08 [kernel] eth0: link down. May 19 01:58:10 [kernel] eth0: link up. The second attempt of ethtool -d eth0 was during a disconnect/reconnect but I can't tell for sure. This try was M2N-MX MCP61 (Gentoo) <---> MCP55 (WinXP) using a straight-through cable.
Now I've also recompiled with #define NVREG_ADAPTCTL_RUNNING 0x000000 made absolutely no difference which means still disconnects/reconnects at random intervals.
Is there anything more I can try to track down the problem?
I see I have to get another mainboard to get things working. Not only because of this nasty gigabit bug that obviously can't be fixed any time soon, but also because of losing powernow and APIC when updating to newer BIOS. Sad.
I am in the midst of comparing the register dump with a Windows register dump so see why this issue does not repro on Windows. Let me try to track down the BIOS discrepancies.
BIOS engineering is asking if the new BIOS causes a system hang during powernow?
Huh? I thought this bug is about forcedeth. You pleased me to try a newer BIOS a few weeks ago, which I did. but with any newer BIOS I have powernow and APIC problems. I think these problems are not related to nVidia but to ASUS support. Still: powernow: Module does not load because it can't find any PSB (power state block) tables. Yes, Cool & Quiet is activated in BIOS. APIC: Kernel immediately boots into blackscreen. Boots when APIC is disabled in BIOS.
Regarding the network problem, I'm not sure if this helps, but I noticed that rebooting my router while the network connection is oscillating fixes the problem temporarily. After the reboot the connection stays connected for a variable amount of time, usually > 10 min. I don't know if this is a result of the connection being used less.
I experienced this in Bug #7770. The solution was to remove the NAPI option within the forcedeth driver and then compile the kernel. After this option was excluded, everything went back to normal - no connection drops.
Created attachment 11600 [details] linux-2.6.20-gentoo-r8/.config If needed, here is my kernel .config for linux-2.6.20-gentoo-r8
I always keep experimental features away from my kernel. This is a 24/7 machine. So NAPI for forcedeth already was disabled and therefore double-disabling this is not the solution.
So, after 2 months this bug is not solved yet. No replies anymore. I think nVidia is trying to sit this out. I'll go out buying another (Intel based!) MoBo next week, this nVidia stuff is just pure rubbish.
An NVIDIA engineer has been trying to repro in house but can not repro the issue here. We in the process of acquiring another board. So no, we are not trying to sit this out.
I can repro the issue. And you can by taking advantage of my offer for shell access to that machine for debugging. The machine is connected to the internet via WLAN, so the forcedeth-connection can be tested without getting dropped out.
Currently, we are thinking it is either a hardware(phy) or board or BIOS issue that would require physical hands on testing of the board. Have you also contacted Asus about the issue in case they know of a fix?
Yes I've contacted them. They sent me a BETA BIOS v0801, but that didn't help. It solved none of my problems. After that I never heard of them again, case closed. I even opened another case, still no response. God I like this kind of support.
Still, I wonder how can it be a hardware problem when it works fine within Windows?
The NVIDIA engineer mentioned to me yesterday that he saw it happen in Windows and is trying to investigate while we get another board. Of course, still not ruling out a driver issue.
The bug not only happen with linux/windows drivers also happen without loading any driver, even the M2N-MX system is in power off state that only have stanby power supply. We observe the Intermittent connection in opposite machine that connect to that M2N-MX board which in S5 state. We are now working with PHY vendor to find out the root cause.
Uh great :-(. So this means it can't be solved just by software, right? When it also happens even in S5. Looks like I really have to get my hands on another board. Damn ASUS crap.
Short update: Recently released BIOS v0804 does not help. It also still has the problem with Cool & Quiet and APIC not working anymore.
It is confirmed to be an analog board issue. Please contact ASUS for repairing/replacing your board.
Really? Is there a newer board revision or will the replace-board just have the same issue?
I don't know if ASUS will just give you a new board with the fixes or repair your board.
Thanks for all your work on this issue. Has ASUS confirmed the diagnosis or will it be unknown to them? Is there something I can provide ASUS which details the problem and diagnosis that it is in fact a board issue (some type of reference to your findings like a PTR)? I'm trying to avoid downtime if possible.
It's unknow for Asus, PHY vendor said the noise the power supply of PHY will make the PHY fail to operate, add a proper de-cap or regulator will fix this bug.
I've solved the problem for me by buying another board, this time an Gigabyte GA-M61P-S3 which makes use of an Realtek PHY. This one works as designed, also APIC and Powernow work perfectly. Goodbye Asus, hello Gigabyte. The M2N-MX rubbish got sold on ebay.
As a follow-up, I found that my board exhibits the problem when the temperature drops. It was somewhat sporadic during the earlier parts of the summer. But as the heat set in and the air conditioner kicked in, the problem surfaced and would not relent. After a couple instances I theorized it was temperature related. A few experiments confirmed that lower temps (about 75F and lower) triggered the problem on demand. It's too bad that AMD's higher temps aren't quite enough to keep the box warm when the ambient temps drop. :)