F23: r8169 stopped working

Francois Romieu romieu at fr.zoreil.com
Thu Nov 12 23:37:17 UTC 2015


Jos Vos <jos at xos.nl> :
[...]
> On a new laptop that I used successfully with the F22 Live image for
> several times (using the wired Ethernet), I now installed F23
> and there I can't get the RTL8111/8168/8411 wired Ethernet working:
> after a while trying to get an address I get:
> 
> Nov 12 17:29:38 localhost kernel: ------------[ cut here ]------------
> Nov 12 17:29:38 localhost kernel: WARNING: CPU: 0 PID: 0 at net/sched/sch_generic.c:303 dev_watchdog+0x22e/0x240()
> Nov 12 17:29:38 localhost kernel: NETDEV WATCHDOG: enp3s0 (r8169): transmit queue 0 timed out
[...]
> Nov 12 17:29:38 localhost kernel: Hardware name: LENOVO 80ES/Lenovo B50-30, BIOS 9CCN26WW(V2.04) 06/06/2014
[...]
> At first sight, I don't see recent bug reports about this, but I
> can't imnagine I'm the only one seeing this problem...
> 
> Any suggestions or comments?

The stuff below could suck on post 4.2. It should be merged shortly.

Please followup #PR on netdev.

diff --git a/drivers/net/ethernet/realtek/r8169.c b/drivers/net/ethernet/realtek/r8169.c
index b4f2123..79ef799 100644
--- a/drivers/net/ethernet/realtek/r8169.c
+++ b/drivers/net/ethernet/realtek/r8169.c
@@ -7429,15 +7429,15 @@ process_pkt:
 
 			rtl8169_rx_vlan_tag(desc, skb);
 
+			if (skb->pkt_type == PACKET_MULTICAST)
+				dev->stats.multicast++;
+
 			napi_gro_receive(&tp->napi, skb);
 
 			u64_stats_update_begin(&tp->rx_stats.syncp);
 			tp->rx_stats.packets++;
 			tp->rx_stats.bytes += pkt_size;
 			u64_stats_update_end(&tp->rx_stats.syncp);
-
-			if (skb->pkt_type == PACKET_MULTICAST)
-				dev->stats.multicast++;
 		}
 release_descriptor:
 		desc->opts2 = 0;
-- 
Ueimor


More information about the devel mailing list