1e918876 breaks r8169 (linux-3.18+)

Tomas Szepe
2015-02-03T10:15:50Z

Hi,

Since linux-3.18.0, r8169 is having problems driving one of my add-on
PCIe NICs. The interface is losing link for several seconds at a time,
the frequency being about once a minute when the traffic is high.

The first loss of link is accompanied by the message "NETDEV WATCHDOG:
eth1 (r8169): transmit queue 0 timed out" and a call trace, while
subsequent occurrences only report "r8169 0000:01:00.0 eth1: link up"
(w/o the complementary "link down" message).

I've traced the culprit down to commit 1e918876, "r8169: add support
for Byte Queue Limits" by Florian Westphal <fw@strlen.de>. Reverting
the patch appears to fix the problem on linux-3.18.5.

The same issue might already have been reported by Marco Berizzi here:
http://lkml.org/lkml/2014/12/11/65

The NIC is:
01:00.0 0200: 10ec:8168 (Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller) (rev 01)
Subsystem: 10ec:8168 (Realtek Semiconductor Co., Ltd. RTL8111/8168 PCI Express Gigabit Ethernet controller)
Flags: bus master, fast devsel, latency 0, IRQ 27
I/O ports at e000 [size=256]
Memory at f7d00000 (64-bit, non-prefetchable) [size=4K]
Expansion ROM at f7d20000 [disabled] [size=128K]
Capabilities: [40] Power Management version 2
Capabilities: [48] Vital Product Data
Capabilities: [50] MSI: Enable+ Count=1/2 Maskable- 64bit+
Capabilities: [60] Express Endpoint, MSI 00
Capabilities: [84] Vendor Specific Information: Len=4c <?>
Capabilities: [100] Advanced Error Reporting
Capabilities: [12c] Virtual Channel
Capabilities: [148] Device Serial Number 98-2d-00-00-10-ec-81-68
Capabilities: [154] Power Budgeting <?>

Best regards,
--
Tomas Szepe <szepe@pinerecords.com>