summaryrefslogtreecommitdiff
path: root/patches/r8169-regression.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/r8169-regression.patch')
-rw-r--r--patches/r8169-regression.patch49
1 files changed, 49 insertions, 0 deletions
diff --git a/patches/r8169-regression.patch b/patches/r8169-regression.patch
new file mode 100644
index 0000000..ae93bc2
--- /dev/null
+++ b/patches/r8169-regression.patch
@@ -0,0 +1,49 @@
+From 53f57357ff0afc37804f4e82ee3123e0c0a2cad6 Mon Sep 17 00:00:00 2001
+From: =?utf8?q?fran=C3=A7ois=20romieu?= <romieu@fr.zoreil.com>
+Date: Mon, 8 Nov 2010 13:23:05 +0000
+Subject: [PATCH] r8169: revert "Handle rxfifo errors on 8168 chips"
+
+The original patch helps under obscure conditions (no pun) but
+some 8168 do not like it. The change needs to be tightened with
+a specific 8168 version.
+
+This reverts commit 801e147cde02f04b5c2f42764cd43a89fc7400a2
+("r8169: Handle rxfifo errors on 8168 chips").
+
+Regression at https://bugzilla.kernel.org/show_bug.cgi?id=20882
+
+Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
+Tested-by: Andreas Radke <a.radke@arcor.de>
+Cc: Matthew Garrett <mjg@redhat.com>
+Cc: Daniel J Blueman <daniel.blueman@gmail.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/r8169.c | 5 +++--
+ 1 files changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/net/r8169.c b/drivers/net/r8169.c
+index d88ce9f..3a0877e 100644
+--- a/drivers/net/r8169.c
++++ b/drivers/net/r8169.c
+@@ -2931,7 +2931,7 @@ static const struct rtl_cfg_info {
+ .hw_start = rtl_hw_start_8168,
+ .region = 2,
+ .align = 8,
+- .intr_event = SYSErr | RxFIFOOver | LinkChg | RxOverflow |
++ .intr_event = SYSErr | LinkChg | RxOverflow |
+ TxErr | TxOK | RxOK | RxErr,
+ .napi_event = TxErr | TxOK | RxOK | RxOverflow,
+ .features = RTL_FEATURE_GMII | RTL_FEATURE_MSI,
+@@ -4588,7 +4588,8 @@ static irqreturn_t rtl8169_interrupt(int irq, void *dev_instance)
+ }
+
+ /* Work around for rx fifo overflow */
+- if (unlikely(status & RxFIFOOver)) {
++ if (unlikely(status & RxFIFOOver) &&
++ (tp->mac_version == RTL_GIGA_MAC_VER_11)) {
+ netif_stop_queue(dev);
+ rtl8169_tx_timeout(dev);
+ break;
+--
+1.7.3.2
+