]> git.hungrycats.org Git - linux/commitdiff
net: wangxun: fix to change Rx features
authorJiawen Wu <jiawenwu@trustnetic.com>
Fri, 17 May 2024 06:51:38 +0000 (14:51 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 30 May 2024 07:49:51 +0000 (09:49 +0200)
[ Upstream commit 68067f065ee730c7c67b361c3c81808d25d5a90b ]

Fix the issue where some Rx features cannot be changed.

When using ethtool -K to turn off rx offload, it returns error and
displays "Could not change any device features". And netdev->features
is not assigned a new value to actually configure the hardware.

Fixes: 6dbedcffcf54 ("net: libwx: Implement xx_set_features ops")
Signed-off-by: Jiawen Wu <jiawenwu@trustnetic.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/wangxun/libwx/wx_lib.c

index 08d3e4069c5facbe3974215b0a6177f20140178e..6aa6073476f7d07470b2162309870258ed620b25 100644 (file)
@@ -2694,12 +2694,14 @@ int wx_set_features(struct net_device *netdev, netdev_features_t features)
                wx->rss_enabled = false;
        }
 
+       netdev->features = features;
+
        if (changed &
            (NETIF_F_HW_VLAN_CTAG_RX |
             NETIF_F_HW_VLAN_STAG_RX))
                wx_set_rx_mode(netdev);
 
-       return 1;
+       return 0;
 }
 EXPORT_SYMBOL(wx_set_features);