net: Add TLS TX offload features
authorIlya Lesokhin <ilyal@mellanox.com>
Mon, 30 Apr 2018 07:16:14 +0000 (10:16 +0300)
committerDavid S. Miller <davem@davemloft.net>
Tue, 1 May 2018 13:42:47 +0000 (09:42 -0400)
This patch adds a netdev feature to configure TLS TX offloads.

Signed-off-by: Ilya Lesokhin <ilyal@mellanox.com>
Signed-off-by: Boris Pismenny <borisp@mellanox.com>
Signed-off-by: Aviad Yehezkel <aviadye@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/netdev_features.h
net/core/ethtool.c

index fe2f3b3..c87c3a3 100644 (file)
@@ -78,6 +78,7 @@ enum {
        NETIF_F_HW_ESP_BIT,             /* Hardware ESP transformation offload */
        NETIF_F_HW_ESP_TX_CSUM_BIT,     /* ESP with TX checksum offload */
        NETIF_F_RX_UDP_TUNNEL_PORT_BIT, /* Offload of RX port for UDP tunnels */
+       NETIF_F_HW_TLS_TX_BIT,          /* Hardware TLS TX offload */
 
        NETIF_F_GRO_HW_BIT,             /* Hardware Generic receive offload */
        NETIF_F_HW_TLS_RECORD_BIT,      /* Offload TLS record */
@@ -149,6 +150,7 @@ enum {
 #define        NETIF_F_RX_UDP_TUNNEL_PORT  __NETIF_F(RX_UDP_TUNNEL_PORT)
 #define NETIF_F_HW_TLS_RECORD  __NETIF_F(HW_TLS_RECORD)
 #define NETIF_F_GSO_UDP_L4     __NETIF_F(GSO_UDP_L4)
+#define NETIF_F_HW_TLS_TX      __NETIF_F(HW_TLS_TX)
 
 #define for_each_netdev_feature(mask_addr, bit)        \
        for_each_set_bit(bit, (unsigned long *)mask_addr, NETDEV_FEATURE_COUNT)
index b849fda..3c6ce8a 100644 (file)
@@ -110,6 +110,7 @@ static const char netdev_features_strings[NETDEV_FEATURE_COUNT][ETH_GSTRING_LEN]
        [NETIF_F_HW_ESP_TX_CSUM_BIT] =   "esp-tx-csum-hw-offload",
        [NETIF_F_RX_UDP_TUNNEL_PORT_BIT] =       "rx-udp_tunnel-port-offload",
        [NETIF_F_HW_TLS_RECORD_BIT] =   "tls-hw-record",
+       [NETIF_F_HW_TLS_TX_BIT] =        "tls-hw-tx-offload",
 };
 
 static const char