netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next] r8169: enable SG/TSO on selected chip versions per default
@ 2024-10-10 10:58 Heiner Kallweit
  2024-10-11  8:57 ` Simon Horman
  2024-10-14 12:20 ` patchwork-bot+netdevbpf
  0 siblings, 2 replies; 3+ messages in thread
From: Heiner Kallweit @ 2024-10-10 10:58 UTC (permalink / raw)
  To: Realtek linux nic maintainers, Paolo Abeni, Jakub Kicinski,
	David Miller, Eric Dumazet
  Cc: netdev@vger.kernel.org

Due to problem reports in the past SG and TSO/TSO6 are disabled per
default. It's not fully clear which chip versions are affected, so we
may impact also users of unaffected chip versions, unless they know
how to use ethtool for enabling SG/TSO/TSO6.
Vendor drivers r8168/r8125 enable SG/TSO/TSO6 for selected chip
versions per default, I'd interpret this as confirmation that these
chip versions are unaffected. So let's do the same here.

Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
---
 drivers/net/ethernet/realtek/r8169_main.c | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)

diff --git a/drivers/net/ethernet/realtek/r8169_main.c b/drivers/net/ethernet/realtek/r8169_main.c
index 71339910b..d90c11356 100644
--- a/drivers/net/ethernet/realtek/r8169_main.c
+++ b/drivers/net/ethernet/realtek/r8169_main.c
@@ -5567,11 +5567,6 @@ static int rtl_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
 
 	dev->features |= dev->hw_features;
 
-	/* There has been a number of reports that using SG/TSO results in
-	 * tx timeouts. However for a lot of people SG/TSO works fine.
-	 * Therefore disable both features by default, but allow users to
-	 * enable them. Use at own risk!
-	 */
 	if (rtl_chip_supports_csum_v2(tp)) {
 		dev->hw_features |= NETIF_F_SG | NETIF_F_TSO | NETIF_F_TSO6;
 		netif_set_tso_max_size(dev, RTL_GSO_MAX_SIZE_V2);
@@ -5582,6 +5577,17 @@ static int rtl_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
 		netif_set_tso_max_segs(dev, RTL_GSO_MAX_SEGS_V1);
 	}
 
+	/* There has been a number of reports that using SG/TSO results in
+	 * tx timeouts. However for a lot of people SG/TSO works fine.
+	 * It's not fully clear which chip versions are affected. Vendor
+	 * drivers enable SG/TSO for certain chip versions per default,
+	 * let's mimic this here. On other chip versions users can
+	 * use ethtool to enable SG/TSO, use at own risk!
+	 */
+	if (tp->mac_version >= RTL_GIGA_MAC_VER_46 &&
+	    tp->mac_version != RTL_GIGA_MAC_VER_61)
+		dev->features |= dev->hw_features;
+
 	dev->hw_features |= NETIF_F_RXALL;
 	dev->hw_features |= NETIF_F_RXFCS;
 
-- 
2.47.0


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH net-next] r8169: enable SG/TSO on selected chip versions per default
  2024-10-10 10:58 [PATCH net-next] r8169: enable SG/TSO on selected chip versions per default Heiner Kallweit
@ 2024-10-11  8:57 ` Simon Horman
  2024-10-14 12:20 ` patchwork-bot+netdevbpf
  1 sibling, 0 replies; 3+ messages in thread
From: Simon Horman @ 2024-10-11  8:57 UTC (permalink / raw)
  To: Heiner Kallweit
  Cc: Realtek linux nic maintainers, Paolo Abeni, Jakub Kicinski,
	David Miller, Eric Dumazet, netdev@vger.kernel.org

On Thu, Oct 10, 2024 at 12:58:02PM +0200, Heiner Kallweit wrote:
> Due to problem reports in the past SG and TSO/TSO6 are disabled per
> default. It's not fully clear which chip versions are affected, so we
> may impact also users of unaffected chip versions, unless they know
> how to use ethtool for enabling SG/TSO/TSO6.
> Vendor drivers r8168/r8125 enable SG/TSO/TSO6 for selected chip
> versions per default, I'd interpret this as confirmation that these
> chip versions are unaffected. So let's do the same here.
> 
> Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>

Reviewed-by: Simon Horman <horms@kernel.org>


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH net-next] r8169: enable SG/TSO on selected chip versions per default
  2024-10-10 10:58 [PATCH net-next] r8169: enable SG/TSO on selected chip versions per default Heiner Kallweit
  2024-10-11  8:57 ` Simon Horman
@ 2024-10-14 12:20 ` patchwork-bot+netdevbpf
  1 sibling, 0 replies; 3+ messages in thread
From: patchwork-bot+netdevbpf @ 2024-10-14 12:20 UTC (permalink / raw)
  To: Heiner Kallweit; +Cc: nic_swsd, pabeni, kuba, davem, edumazet, netdev

Hello:

This patch was applied to netdev/net-next.git (main)
by David S. Miller <davem@davemloft.net>:

On Thu, 10 Oct 2024 12:58:02 +0200 you wrote:
> Due to problem reports in the past SG and TSO/TSO6 are disabled per
> default. It's not fully clear which chip versions are affected, so we
> may impact also users of unaffected chip versions, unless they know
> how to use ethtool for enabling SG/TSO/TSO6.
> Vendor drivers r8168/r8125 enable SG/TSO/TSO6 for selected chip
> versions per default, I'd interpret this as confirmation that these
> chip versions are unaffected. So let's do the same here.
> 
> [...]

Here is the summary with links:
  - [net-next] r8169: enable SG/TSO on selected chip versions per default
    https://git.kernel.org/netdev/net-next/c/b8bf38440ba9

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html



^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2024-10-14 12:20 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-10-10 10:58 [PATCH net-next] r8169: enable SG/TSO on selected chip versions per default Heiner Kallweit
2024-10-11  8:57 ` Simon Horman
2024-10-14 12:20 ` patchwork-bot+netdevbpf

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).