]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
netdevsim: add more hw_features
authorSabrina Dubroca <sd@queasysnail.net>
Wed, 6 Nov 2024 23:13:27 +0000 (00:13 +0100)
committerJakub Kicinski <kuba@kernel.org>
Mon, 11 Nov 2024 22:12:20 +0000 (14:12 -0800)
netdevsim currently only set HW_TC in its hw_features, but other
features should also be present to better reflect the behavior of real
HW.

In my macsec offload testing, this ends up as HW_CSUM being missing
from hw_features, so it doesn't stick in wanted_features when offload
is turned off. Then HW_CSUM (and thus TSO, thanks to
netdev_fix_features) is not automatically turned back on when offload
is re-enabled.

Signed-off-by: Sabrina Dubroca <sd@queasysnail.net>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/b918dc4dd76410a57f7516a855f66b0a2bd58326.1730929545.git.sd@queasysnail.net
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/netdevsim/netdev.c

index cad85bb0cf54db19e9f2d9852f20366def2d3e23..0be47fed4efc5664c436c91669de5d7c13ef3411 100644 (file)
@@ -663,7 +663,11 @@ static void nsim_setup(struct net_device *dev)
                         NETIF_F_FRAGLIST |
                         NETIF_F_HW_CSUM |
                         NETIF_F_TSO;
-       dev->hw_features |= NETIF_F_HW_TC;
+       dev->hw_features |= NETIF_F_HW_TC |
+                           NETIF_F_SG |
+                           NETIF_F_FRAGLIST |
+                           NETIF_F_HW_CSUM |
+                           NETIF_F_TSO;
        dev->max_mtu = ETH_MAX_MTU;
        dev->xdp_features = NETDEV_XDP_ACT_HW_OFFLOAD;
 }