OSDN Git Service

ethtool: enable Inline TLS in HW
authorAtul Gupta <atul.gupta@chelsio.com>
Sat, 31 Mar 2018 16:11:53 +0000 (21:41 +0530)
committerDavid S. Miller <davem@davemloft.net>
Sun, 1 Apr 2018 03:37:32 +0000 (23:37 -0400)
Ethtool option enables TLS record offload on HW, user
configures the feature for netdev capable of Inline TLS.
This allows user to define custom sk_prot for Inline TLS sock

Signed-off-by: Atul Gupta <atul.gupta@chelsio.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/netdev_features.h
net/core/ethtool.c

index db84c51..35b79f4 100644 (file)
@@ -79,6 +79,7 @@ enum {
        NETIF_F_RX_UDP_TUNNEL_PORT_BIT, /* Offload of RX port for UDP tunnels */
 
        NETIF_F_GRO_HW_BIT,             /* Hardware Generic receive offload */
+       NETIF_F_HW_TLS_RECORD_BIT,      /* Offload TLS record */
 
        /*
         * Add your fresh new feature above and remember to update
@@ -145,6 +146,7 @@ enum {
 #define NETIF_F_HW_ESP         __NETIF_F(HW_ESP)
 #define NETIF_F_HW_ESP_TX_CSUM __NETIF_F(HW_ESP_TX_CSUM)
 #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 for_each_netdev_feature(mask_addr, bit)        \
        for_each_set_bit(bit, (unsigned long *)mask_addr, NETDEV_FEATURE_COUNT)
index eb55252..03416e6 100644 (file)
@@ -108,6 +108,7 @@ static const char netdev_features_strings[NETDEV_FEATURE_COUNT][ETH_GSTRING_LEN]
        [NETIF_F_HW_ESP_BIT] =           "esp-hw-offload",
        [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",
 };
 
 static const char