[Devel] [PATCH RHEL COMMIT] Revert "ms/net: introduce a netdev feature for UDP GRO forwarding"

Konstantin Khorenko khorenko at virtuozzo.com
Mon Sep 20 14:02:41 MSK 2021


The commit is pushed to "branch-rh9-5.14.vz9.1.x-ovz" and will appear at https://src.openvz.org/scm/ovz/vzkernel.git
after ark-5.14
------>
commit 40b3e15cf0df54e5437def6ed85e515184dc408e
Author: Konstantin Khorenko <khorenko at virtuozzo.com>
Date:   Mon Sep 20 13:22:17 2021 +0300

    Revert "ms/net: introduce a netdev feature for UDP GRO forwarding"
    
    This reverts commit 6f1c0ea133a6e4a193a7b285efe209664caeea43.
    
    We need a place to store netdev feature bit for venet, but
    in ms kernel all 64 features are occupied already.
    
    In fact 63 bits are used, but we already use 1 previously unused bit
    for NETIF_F_VIRTUAL_BIT.
    
    We are going to drop venet, but still need to do some performance
    measurements before doing this, so let's not invent something
    complicated for now, but revert 1 ms patch which frees 1 netdev feature
    bit.
    We will use it for venet for now, do our measurements, then drop venet
    and re-apply ms patch for UDP GRO forwarding netdev feature.
    
    https://jira.sw.ru/browse/PSBM-133985
    
    Signed-off-by: Konstantin Khorenko <khorenko at virtuozzo.com>
---
 include/linux/netdev_features.h | 7 ++++---
 net/ethtool/common.c            | 2 +-
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/include/linux/netdev_features.h b/include/linux/netdev_features.h
index e7793410413b..bcb60fe57395 100644
--- a/include/linux/netdev_features.h
+++ b/include/linux/netdev_features.h
@@ -84,7 +84,8 @@ enum {
 	NETIF_F_GRO_FRAGLIST_BIT,	/* Fraglist GRO */
 
 	NETIF_F_HW_MACSEC_BIT,		/* Offload MACsec operations */
-	NETIF_F_GRO_UDP_FWD_BIT,	/* Allow UDP GRO for forwarding */
+	/* here goes NETIF_F_GRO_UDP_FWD_BIT in ms, temporarily reverted */
+					/* Allow UDP GRO for forwarding */
 
 	NETIF_F_HW_HSR_TAG_INS_BIT,	/* Offload HSR tag insertion */
 	NETIF_F_HW_HSR_TAG_RM_BIT,	/* Offload HSR tag removal */
@@ -163,7 +164,7 @@ enum {
 #define NETIF_F_GRO_FRAGLIST	__NETIF_F(GRO_FRAGLIST)
 #define NETIF_F_GSO_FRAGLIST	__NETIF_F(GSO_FRAGLIST)
 #define NETIF_F_HW_MACSEC	__NETIF_F(HW_MACSEC)
-#define NETIF_F_GRO_UDP_FWD	__NETIF_F(GRO_UDP_FWD)
+
 #define NETIF_F_HW_HSR_TAG_INS	__NETIF_F(HW_HSR_TAG_INS)
 #define NETIF_F_HW_HSR_TAG_RM	__NETIF_F(HW_HSR_TAG_RM)
 #define NETIF_F_HW_HSR_FWD	__NETIF_F(HW_HSR_FWD)
@@ -247,7 +248,7 @@ static inline int find_next_netdev_feature(u64 feature, unsigned long start)
 #define NETIF_F_SOFT_FEATURES	(NETIF_F_GSO | NETIF_F_GRO)
 
 /* Changeable features with no special hardware requirements that defaults to off. */
-#define NETIF_F_SOFT_FEATURES_OFF	(NETIF_F_GRO_FRAGLIST | NETIF_F_GRO_UDP_FWD)
+#define NETIF_F_SOFT_FEATURES_OFF	NETIF_F_GRO_FRAGLIST
 
 #define NETIF_F_VLAN_FEATURES	(NETIF_F_HW_VLAN_CTAG_FILTER | \
 				 NETIF_F_HW_VLAN_CTAG_RX | \
diff --git a/net/ethtool/common.c b/net/ethtool/common.c
index c63e0739dc6a..04dcc58c4030 100644
--- a/net/ethtool/common.c
+++ b/net/ethtool/common.c
@@ -69,7 +69,7 @@ const char netdev_features_strings[NETDEV_FEATURE_COUNT][ETH_GSTRING_LEN] = {
 	[NETIF_F_HW_TLS_RX_BIT] =	 "tls-hw-rx-offload",
 	[NETIF_F_GRO_FRAGLIST_BIT] =	 "rx-gro-list",
 	[NETIF_F_HW_MACSEC_BIT] =	 "macsec-hw-offload",
-	[NETIF_F_GRO_UDP_FWD_BIT] =	 "rx-udp-gro-forwarding",
+
 	[NETIF_F_HW_HSR_TAG_INS_BIT] =	 "hsr-tag-ins-offload",
 	[NETIF_F_HW_HSR_TAG_RM_BIT] =	 "hsr-tag-rm-offload",
 	[NETIF_F_HW_HSR_FWD_BIT] =	 "hsr-fwd-offload",


More information about the Devel mailing list