]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blame - releases/2.6.36.2/r8169-revert-handle-rxfifo-errors-on-8168-chips.patch
Fixes for 5.10
[thirdparty/kernel/stable-queue.git] / releases / 2.6.36.2 / r8169-revert-handle-rxfifo-errors-on-8168-chips.patch
CommitLineData
9a58d64e
GKH
1From 53f57357ff0afc37804f4e82ee3123e0c0a2cad6 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?fran=C3=A7ois=20romieu?= <romieu@fr.zoreil.com>
3Date: Mon, 8 Nov 2010 13:23:05 +0000
4Subject: r8169: revert "Handle rxfifo errors on 8168 chips"
5
6From: =?UTF-8?q?fran=C3=A7ois=20romieu?= <romieu@fr.zoreil.com>
7
8commit 53f57357ff0afc37804f4e82ee3123e0c0a2cad6 upstream.
9
10The original patch helps under obscure conditions (no pun) but
11some 8168 do not like it. The change needs to be tightened with
12a specific 8168 version.
13
14This reverts commit 801e147cde02f04b5c2f42764cd43a89fc7400a2
15("r8169: Handle rxfifo errors on 8168 chips").
16
17Regression at https://bugzilla.kernel.org/show_bug.cgi?id=20882
18
19Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
20Tested-by: Andreas Radke <a.radke@arcor.de>
21Cc: Matthew Garrett <mjg@redhat.com>
22Cc: Daniel J Blueman <daniel.blueman@gmail.com>
23Signed-off-by: David S. Miller <davem@davemloft.net>
24Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
25
26---
27 drivers/net/r8169.c | 5 +++--
28 1 file changed, 3 insertions(+), 2 deletions(-)
29
30--- a/drivers/net/r8169.c
31+++ b/drivers/net/r8169.c
32@@ -2936,7 +2936,7 @@ static const struct rtl_cfg_info {
33 .hw_start = rtl_hw_start_8168,
34 .region = 2,
35 .align = 8,
36- .intr_event = SYSErr | RxFIFOOver | LinkChg | RxOverflow |
37+ .intr_event = SYSErr | LinkChg | RxOverflow |
38 TxErr | TxOK | RxOK | RxErr,
39 .napi_event = TxErr | TxOK | RxOK | RxOverflow,
40 .features = RTL_FEATURE_GMII | RTL_FEATURE_MSI,
41@@ -4628,7 +4628,8 @@ static irqreturn_t rtl8169_interrupt(int
42 }
43
44 /* Work around for rx fifo overflow */
45- if (unlikely(status & RxFIFOOver)) {
46+ if (unlikely(status & RxFIFOOver) &&
47+ (tp->mac_version == RTL_GIGA_MAC_VER_11)) {
48 netif_stop_queue(dev);
49 rtl8169_tx_timeout(dev);
50 break;