Mandating NETIF_F_HW_CSUM to enable TLS offload feature is wrong.
And it broke tls offload feature for the drivers, which are still
using NETIF_F_IP_CSUM or NETIF_F_IPV6_CSUM. We should use
NETIF_F_CSUM_MASK instead.

Fixes: ae0b04b238e2 ("net: Disable NETIF_F_HW_TLS_TX when HW_CSUM is disabled")
Signed-off-by: Rohit Maheshwari <roh...@chelsio.com>
---
 net/core/dev.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/core/dev.c b/net/core/dev.c
index a46334906c94..b1f99287f280 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -9643,7 +9643,7 @@ static netdev_features_t netdev_fix_features(struct 
net_device *dev,
                }
        }
 
-       if ((features & NETIF_F_HW_TLS_TX) && !(features & NETIF_F_HW_CSUM)) {
+       if ((features & NETIF_F_HW_TLS_TX) && !(features & NETIF_F_CSUM_MASK)) {
                netdev_dbg(dev, "Dropping TLS TX HW offload feature since no 
CSUM feature.\n");
                features &= ~NETIF_F_HW_TLS_TX;
        }
-- 
2.18.1

Reply via email to