[PATCH net] r8169: don't advertise pause in jumbo mode

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

STALE1972d REVIEWED: 1 (0M)

1 review trailer.

4 messages, 2 authors, 2021-04-14 · open the first message on its own page

[PATCH net] r8169: don't advertise pause in jumbo mode

From: Heiner Kallweit <hkallweit1@gmail.com>
Date: 2021-04-14 07:41:07

It has been reported [0] that using pause frames in jumbo mode impacts
performance. There's no available chip documentation, but vendor
drivers r8168 and r8125 don't advertise pause in jumbo mode. So let's
do the same, according to Roman it fixes the issue.

[0] https://bugzilla.kernel.org/show_bug.cgi?id=212617

Fixes: 9cf9b84cc701 ("r8169: make use of phy_set_asym_pause")
Reported-by: Roman Mamedov <redacted>
Tested-by: Roman Mamedov <redacted>
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
---
This patch doesn't apply cleanly on some kernel versions, but the needed
changes are trivial.
---
 drivers/net/ethernet/realtek/r8169_main.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/realtek/r8169_main.c b/drivers/net/ethernet/realtek/r8169_main.c
index 1b48084f2..7d02bab1c 100644
--- a/drivers/net/ethernet/realtek/r8169_main.c
+++ b/drivers/net/ethernet/realtek/r8169_main.c
@@ -2386,6 +2386,13 @@ static void rtl_jumbo_config(struct rtl8169_private *tp)
 
 	if (pci_is_pcie(tp->pci_dev) && tp->supports_gmii)
 		pcie_set_readrq(tp->pci_dev, readrq);
+
+	/* Chip doesn't support pause in jumbo mode */
+	linkmode_mod_bit(ETHTOOL_LINK_MODE_Pause_BIT,
+			 tp->phydev->advertising, !jumbo);
+	linkmode_mod_bit(ETHTOOL_LINK_MODE_Asym_Pause_BIT,
+			 tp->phydev->advertising, !jumbo);
+	phy_start_aneg(tp->phydev);
 }
 
 DECLARE_RTL_COND(rtl_chipcmd_cond)
@@ -4647,8 +4654,6 @@ static int r8169_phy_connect(struct rtl8169_private *tp)
 	if (!tp->supports_gmii)
 		phy_set_max_speed(phydev, SPEED_100);
 
-	phy_support_asym_pause(phydev);
-
 	phy_attached_info(phydev);
 
 	return 0;
-- 
2.31.1

Re: [PATCH net] r8169: don't advertise pause in jumbo mode

From: Greg KH <gregkh@linuxfoundation.org>
Date: 2021-04-14 07:49:56

On Wed, Apr 14, 2021 at 09:40:51AM +0200, Heiner Kallweit wrote:
It has been reported [0] that using pause frames in jumbo mode impacts
performance. There's no available chip documentation, but vendor
drivers r8168 and r8125 don't advertise pause in jumbo mode. So let's
do the same, according to Roman it fixes the issue.

[0] https://bugzilla.kernel.org/show_bug.cgi?id=212617

Fixes: 9cf9b84cc701 ("r8169: make use of phy_set_asym_pause")
Reported-by: Roman Mamedov <redacted>
Tested-by: Roman Mamedov <redacted>
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
---
This patch doesn't apply cleanly on some kernel versions, but the needed
changes are trivial.
---
 drivers/net/ethernet/realtek/r8169_main.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

<formletter>

This is not the correct way to submit patches for inclusion in the
stable kernel tree.  Please read:
    https://www.kernel.org/doc/html/latest/process/stable-kernel-rules.html
for how to do this properly.

</formletter>

Re: [PATCH net] r8169: don't advertise pause in jumbo mode

From: Heiner Kallweit <hkallweit1@gmail.com>
Date: 2021-04-14 07:56:42

On 14.04.2021 09:49, Greg KH wrote:
On Wed, Apr 14, 2021 at 09:40:51AM +0200, Heiner Kallweit wrote:
quoted
It has been reported [0] that using pause frames in jumbo mode impacts
performance. There's no available chip documentation, but vendor
drivers r8168 and r8125 don't advertise pause in jumbo mode. So let's
do the same, according to Roman it fixes the issue.

[0] https://bugzilla.kernel.org/show_bug.cgi?id=212617

Fixes: 9cf9b84cc701 ("r8169: make use of phy_set_asym_pause")
Reported-by: Roman Mamedov <redacted>
Tested-by: Roman Mamedov <redacted>
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
---
This patch doesn't apply cleanly on some kernel versions, but the needed
changes are trivial.
---
 drivers/net/ethernet/realtek/r8169_main.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

<formletter>

This is not the correct way to submit patches for inclusion in the
stable kernel tree.  Please read:
    https://www.kernel.org/doc/html/latest/process/stable-kernel-rules.html
for how to do this properly.

</formletter>
Until recently the procedure in netdev has been to annotate the patch as
"net" and not cc stable. IIRC there is an experiment to cc stable.
If this isn't applicable any longer and the old process still applies,
then please ignore the cc'ed stable.

Re: [PATCH net] r8169: don't advertise pause in jumbo mode

From: Greg KH <gregkh@linuxfoundation.org>
Date: 2021-04-14 08:18:24

On Wed, Apr 14, 2021 at 09:56:30AM +0200, Heiner Kallweit wrote:
On 14.04.2021 09:49, Greg KH wrote:
quoted
On Wed, Apr 14, 2021 at 09:40:51AM +0200, Heiner Kallweit wrote:
quoted
It has been reported [0] that using pause frames in jumbo mode impacts
performance. There's no available chip documentation, but vendor
drivers r8168 and r8125 don't advertise pause in jumbo mode. So let's
do the same, according to Roman it fixes the issue.

[0] https://bugzilla.kernel.org/show_bug.cgi?id=212617

Fixes: 9cf9b84cc701 ("r8169: make use of phy_set_asym_pause")
Reported-by: Roman Mamedov <redacted>
Tested-by: Roman Mamedov <redacted>
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
---
This patch doesn't apply cleanly on some kernel versions, but the needed
changes are trivial.
---
 drivers/net/ethernet/realtek/r8169_main.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

<formletter>

This is not the correct way to submit patches for inclusion in the
stable kernel tree.  Please read:
    https://www.kernel.org/doc/html/latest/process/stable-kernel-rules.html
for how to do this properly.

</formletter>
Until recently the procedure in netdev has been to annotate the patch as
"net" and not cc stable. IIRC there is an experiment to cc stable.
If this isn't applicable any longer and the old process still applies,
then please ignore the cc'ed stable.
You need to put the "Cc: stable..." in the signed-off-by area, as the
documentation link above states.

thanks,

greg k-h
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help