Message ID | b918dc4dd76410a57f7516a855f66b0a2bd58326.1730929545.git.sd@queasysnail.net |
---|---|
State | New |
Headers | show |
Series | macsec: inherit lower device's features and TSO limits when offloading | expand |
On Thu, Nov 07, 2024 at 12:13:27AM +0100, Sabrina Dubroca wrote: > 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>
diff --git a/drivers/net/netdevsim/netdev.c b/drivers/net/netdevsim/netdev.c index cad85bb0cf54..0be47fed4efc 100644 --- a/drivers/net/netdevsim/netdev.c +++ b/drivers/net/netdevsim/netdev.c @@ -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; }
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> --- drivers/net/netdevsim/netdev.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-)