[PATCH] r8169: Fix WoL on RTL8168d/8111d.

Subsystems: 8169 10/100/1000 gigabit ethernet driver, networking drivers, the rest

STALE5018d REVIEWED: 1 (0M)

1 review trailer.

11 messages, 5 authors, 2012-11-13 · open the first message on its own page

[PATCH] r8169: Fix WoL on RTL8168d/8111d.

From: Cyril Brulebois <hidden>
Date: 2012-10-28 03:00:38

This regression was spotted between Debian squeeze and Debian wheezy
kernels (respectively based on 2.6.32 and 3.2). The fix was inspired
by <http://www.spinics.net/lists/netdev/msg178543.html>, using
RTL_GIGA_MAC_VER_{25,26} for the RTL8168d/8111d chipset.

Probable regression from d4ed95d796e5126bba51466dc07e287cebc8bd19;
more chipsets are likely affected.

Tested on top of a 3.2.23 kernel.

Reported-by: Florent Fourcot <redacted>
Tested-by: Florent Fourcot <redacted>
Signed-off-by: Cyril Brulebois <redacted>
---
 drivers/net/ethernet/realtek/r8169.c |    2 ++
 1 file changed, 2 insertions(+)


It looks like RTL_GIGA_MAC_VER_{25,26} are kinda supposed to go
together so I kept both. Florent's testing gave the following results:
 - RTL_GIGA_MAC_VER_25 only: FAIL.
 - RTL_GIGA_MAC_VER_26 only: SUCCESS.
 - RTL_GIGA_MAC_VER_25 + RTL_GIGA_MAC_VER_26: SUCCESS.

diff --git a/drivers/net/ethernet/realtek/r8169.c b/drivers/net/ethernet/realtek/r8169.c
index e7ff886..eb6a5e4 100644
--- a/drivers/net/ethernet/realtek/r8169.c
+++ b/drivers/net/ethernet/realtek/r8169.c
@@ -3827,6 +3827,8 @@ static void rtl_wol_suspend_quirk(struct rtl8169_private *tp)
 	void __iomem *ioaddr = tp->mmio_addr;
 
 	switch (tp->mac_version) {
+	case RTL_GIGA_MAC_VER_25:
+	case RTL_GIGA_MAC_VER_26:
 	case RTL_GIGA_MAC_VER_29:
 	case RTL_GIGA_MAC_VER_30:
 	case RTL_GIGA_MAC_VER_32:
-- 
1.7.10.4

Re: [PATCH] r8169: Fix WoL on RTL8168d/8111d.

From: Francois Romieu <romieu@fr.zoreil.com>
Date: 2012-10-28 23:27:14

Cyril Brulebois [off-list ref] :
This regression was spotted between Debian squeeze and Debian wheezy
kernels (respectively based on 2.6.32 and 3.2). The fix was inspired
by <http://www.spinics.net/lists/netdev/msg178543.html>, using
RTL_GIGA_MAC_VER_{25,26} for the RTL8168d/8111d chipset.
If someone experiences problems or has questions about WoL with
Realtek's 816x chipsets, http://marc.info/?t=132079219400004 would
imho be a better reference.

[...]
Tested on top of a 3.2.23 kernel.
It should still be relevant for current kernel. I'll give it a try.

[...]
It looks like RTL_GIGA_MAC_VER_{25,26} are kinda supposed to go
together so I kept both. Florent's testing gave the following results:
 - RTL_GIGA_MAC_VER_25 only: FAIL.
 - RTL_GIGA_MAC_VER_26 only: SUCCESS.
 - RTL_GIGA_MAC_VER_25 + RTL_GIGA_MAC_VER_26: SUCCESS.
I don't understand the VER_25 vs VER_26 difference.

-- 
Ueimor

Re: [PATCH] r8169: Fix WoL on RTL8168d/8111d.

From: Cyril Brulebois <hidden>
Date: 2012-10-29 00:21:48

Francois Romieu [off-list ref] (29/10/2012):
Cyril Brulebois [off-list ref] :
quoted
This regression was spotted between Debian squeeze and Debian wheezy
kernels (respectively based on 2.6.32 and 3.2). The fix was inspired
by <http://www.spinics.net/lists/netdev/msg178543.html>, using
RTL_GIGA_MAC_VER_{25,26} for the RTL8168d/8111d chipset.
If someone experiences problems or has questions about WoL with
Realtek's 816x chipsets, http://marc.info/?t=132079219400004 would
imho be a better reference.
Thanks. Should I re-send with that as reference, or will you amend the
patch once you're done with your testing?
[...]
quoted
Tested on top of a 3.2.23 kernel.
It should still be relevant for current kernel. I'll give it a try.
FWIW, further testing was suggested on some Debian lists, and 3.2.32
(which includes some commits related to r8169) is also affected.
[...]
quoted
It looks like RTL_GIGA_MAC_VER_{25,26} are kinda supposed to go
together so I kept both. Florent's testing gave the following results:
 - RTL_GIGA_MAC_VER_25 only: FAIL.
 - RTL_GIGA_MAC_VER_26 only: SUCCESS.
 - RTL_GIGA_MAC_VER_25 + RTL_GIGA_MAC_VER_26: SUCCESS.
I don't understand the VER_25 vs VER_26 difference.
Neither do I. We just figured that it would nice to test all three
cases since those two macros popped up when looking at the 8168D
family.

Mraw,
KiBi.

Re: [PATCH] r8169: Fix WoL on RTL8168d/8111d.

From: Francois Romieu <romieu@fr.zoreil.com>
Date: 2012-10-29 23:04:40

Cyril Brulebois [off-list ref] :
[...]
Thanks. Should I re-send with that as reference, or will you amend the
patch once you're done with your testing?
It would be nice to resend, directly to netdev and davem.

Shutdown Wol behaved as expected with 3.7-rc3 for both cards: unicast WoL
failed without the patch while broadcast WoL worked. Unicast and broadcast
worked after the patch.

-- 
Ueimor

[PATCH v2] r8169: Fix WoL on RTL8168d/8111d.

From: Cyril Brulebois <hidden>
Date: 2012-11-01 00:01:16

This regression was spotted between Debian squeeze and Debian wheezy
kernels (respectively based on 2.6.32 and 3.2). More info about
Wake-on-LAN issues with Realtek's 816x chipsets can be found in the
following thread: http://marc.info/?t=132079219400004

Probable regression from d4ed95d796e5126bba51466dc07e287cebc8bd19;
more chipsets are likely affected.

Tested on top of a 3.2.23 kernel.

Reported-by: Florent Fourcot <redacted>
Tested-by: Florent Fourcot <redacted>
Hinted-by: Francois Romieu [off-list ref]
Signed-off-by: Cyril Brulebois <redacted>
---
 drivers/net/ethernet/realtek/r8169.c |    2 ++
 1 file changed, 2 insertions(+)

v2: Update link in commit message, and re-send to netdev/Dave according
    to Francois Romieu's comment, thanks.
diff --git a/drivers/net/ethernet/realtek/r8169.c b/drivers/net/ethernet/realtek/r8169.c
index e7ff886..eb6a5e4 100644
--- a/drivers/net/ethernet/realtek/r8169.c
+++ b/drivers/net/ethernet/realtek/r8169.c
@@ -3827,6 +3827,8 @@ static void rtl_wol_suspend_quirk(struct rtl8169_private *tp)
 	void __iomem *ioaddr = tp->mmio_addr;
 
 	switch (tp->mac_version) {
+	case RTL_GIGA_MAC_VER_25:
+	case RTL_GIGA_MAC_VER_26:
 	case RTL_GIGA_MAC_VER_29:
 	case RTL_GIGA_MAC_VER_30:
 	case RTL_GIGA_MAC_VER_32:
-- 
1.7.10.4

Re: [PATCH v2] r8169: Fix WoL on RTL8168d/8111d.

From: Francois Romieu <romieu@fr.zoreil.com>
Date: 2012-11-01 22:44:12

Cyril Brulebois [off-list ref] :
This regression was spotted between Debian squeeze and Debian wheezy
kernels (respectively based on 2.6.32 and 3.2). More info about
Wake-on-LAN issues with Realtek's 816x chipsets can be found in the
following thread: http://marc.info/?t=132079219400004
David, please apply to -net.

Thanks.

-- 
Ueimor

Re: [PATCH v2] r8169: Fix WoL on RTL8168d/8111d.

From: David Miller <davem@davemloft.net>
Date: 2012-11-03 19:17:03

From: Francois Romieu <romieu@fr.zoreil.com>
Date: Thu, 1 Nov 2012 23:21:13 +0100
Cyril Brulebois [off-list ref] :
quoted
This regression was spotted between Debian squeeze and Debian wheezy
kernels (respectively based on 2.6.32 and 3.2). More info about
Wake-on-LAN issues with Realtek's 816x chipsets can be found in the
following thread: http://marc.info/?t=132079219400004
David, please apply to -net.
Done.

[3.0.y, 3.2.y, 3.4.y] Re: [PATCH v2] r8169: Fix WoL on RTL8168d/8111d.

From: Jonathan Nieder <hidden>
Date: 2012-11-12 16:39:09

Francois Romieu wrote:
Cyril Brulebois [off-list ref] :
quoted
This regression was spotted between Debian squeeze and Debian wheezy
kernels (respectively based on 2.6.32 and 3.2). More info about
Wake-on-LAN issues with Realtek's 816x chipsets can be found in the
following thread: http://marc.info/?t=132079219400004
David, please apply to -net.
This has been applied as commit b00e69dee4cc in mainline; thanks!

François and David, would this be a candidate for inclusion in
3.0- and newer stable kernels?

Jonathan

Re: [3.0.y, 3.2.y, 3.4.y] Re: [PATCH v2] r8169: Fix WoL on RTL8168d/8111d.

From: Francois Romieu <romieu@fr.zoreil.com>
Date: 2012-11-12 23:27:46

Jonathan Nieder [off-list ref] :
[...]
This has been applied as commit b00e69dee4cc in mainline; thanks!

Fran??ois and David, would this be a candidate for inclusion in
3.0- and newer stable kernels?
- 3.0.51
  b00e69dee4ccbb3a19989e3d4f1385bc2e3406cd
  aee77e4accbeb2c86b1d294cd84fec4a12dde3bd

- 3.4.18
  0481776b7a70f09acf7d9d97c288c3a8403fbfe4
  b00e69dee4ccbb3a19989e3d4f1385bc2e3406cd
  aee77e4accbeb2c86b1d294cd84fec4a12dde3bd

- 3.6.6
  0481776b7a70f09acf7d9d97c288c3a8403fbfe4
  b00e69dee4ccbb3a19989e3d4f1385bc2e3406cd
  aee77e4accbeb2c86b1d294cd84fec4a12dde3bd

I'll cook the patches.

-- 
Ueimor

Re: [3.0.y, 3.2.y, 3.4.y] Re: [PATCH v2] r8169: Fix WoL on RTL8168d/8111d.

From: David Miller <davem@davemloft.net>
Date: 2012-11-12 23:27:59

From: Francois Romieu <romieu@fr.zoreil.com>
Date: Tue, 13 Nov 2012 00:03:39 +0100
Jonathan Nieder [off-list ref] :
[...]
quoted
This has been applied as commit b00e69dee4cc in mainline; thanks!

Fran??ois and David, would this be a candidate for inclusion in
3.0- and newer stable kernels?
- 3.0.51
  b00e69dee4ccbb3a19989e3d4f1385bc2e3406cd
  aee77e4accbeb2c86b1d294cd84fec4a12dde3bd

- 3.4.18
  0481776b7a70f09acf7d9d97c288c3a8403fbfe4
  b00e69dee4ccbb3a19989e3d4f1385bc2e3406cd
  aee77e4accbeb2c86b1d294cd84fec4a12dde3bd

- 3.6.6
  0481776b7a70f09acf7d9d97c288c3a8403fbfe4
  b00e69dee4ccbb3a19989e3d4f1385bc2e3406cd
  aee77e4accbeb2c86b1d294cd84fec4a12dde3bd

I'll cook the patches.
Thank you, these all look fine for -stable to me.

Re: [3.0.y, 3.2.y, 3.4.y] Re: [PATCH v2] r8169: Fix WoL on RTL8168d/8111d.

From: Ben Hutchings <hidden>
Date: 2012-11-13 20:25:05

On Mon, 2012-11-12 at 18:27 -0500, David Miller wrote:
From: Francois Romieu <romieu@fr.zoreil.com>
Date: Tue, 13 Nov 2012 00:03:39 +0100
quoted
Jonathan Nieder [off-list ref] :
[...]
quoted
This has been applied as commit b00e69dee4cc in mainline; thanks!

Fran??ois and David, would this be a candidate for inclusion in
3.0- and newer stable kernels?
- 3.0.51
  b00e69dee4ccbb3a19989e3d4f1385bc2e3406cd
  aee77e4accbeb2c86b1d294cd84fec4a12dde3bd

- 3.4.18
  0481776b7a70f09acf7d9d97c288c3a8403fbfe4
  b00e69dee4ccbb3a19989e3d4f1385bc2e3406cd
  aee77e4accbeb2c86b1d294cd84fec4a12dde3bd

- 3.6.6
  0481776b7a70f09acf7d9d97c288c3a8403fbfe4
  b00e69dee4ccbb3a19989e3d4f1385bc2e3406cd
  aee77e4accbeb2c86b1d294cd84fec4a12dde3bd

I'll cook the patches.
Thank you, these all look fine for -stable to me.
I've queued up all three for 3.2.

Ben.

-- 
Ben Hutchings
For every complex problem
there is a solution that is simple, neat, and wrong.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help