DPDK patches and discussions
 help / color / mirror / Atom feed
From: Qi Zhang <qi.z.zhang@intel.com>
To: qiming.yang@intel.com
Cc: dev@dpdk.org, xiaolong.ye@intel.com,
	Qi Zhang <qi.z.zhang@intel.com>,
	Grzegorz Nitka <grzegorz.nitka@intel.com>,
	"Paul M . Stillwell Jr" <paul.m.stillwell.jr@intel.com>
Subject: [dpdk-dev] [PATCH 08/52] net/ice/base: improve VSI filters rebuild
Date: Wed,  3 Jun 2020 10:39:32 +0800	[thread overview]
Message-ID: <20200603024016.30636-9-qi.z.zhang@intel.com> (raw)
In-Reply-To: <20200603024016.30636-1-qi.z.zhang@intel.com>

This change improve VSI filter configuration rebuild for
multiport configuration, ie. where 1 PF includes more than
one logical port. For some functions, association between
port and corresponding switch_info or port_info structure
has been lost because by default the pointer to the first
element of array (switch, port etc.) is passed as function
argument. With this change, pointer to proper element is
added an extra argument in relevant functions.

Signed-off-by: Grzegorz Nitka <grzegorz.nitka@intel.com>
Signed-off-by: Paul M. Stillwell Jr <paul.m.stillwell.jr@intel.com>
Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
---
 drivers/net/ice/base/ice_common.c | 59 +++++++++++++++++++++++++++++++--------
 drivers/net/ice/base/ice_switch.c | 38 ++++++++++++++++++-------
 drivers/net/ice/base/ice_switch.h |  5 +++-
 3 files changed, 79 insertions(+), 23 deletions(-)

diff --git a/drivers/net/ice/base/ice_common.c b/drivers/net/ice/base/ice_common.c
index 499653c21..aab560504 100644
--- a/drivers/net/ice/base/ice_common.c
+++ b/drivers/net/ice/base/ice_common.c
@@ -493,6 +493,7 @@ ice_aq_set_mac_cfg(struct ice_hw *hw, u16 max_frame_size, struct ice_sq_cd *cd)
 enum ice_status ice_init_fltr_mgmt_struct(struct ice_hw *hw)
 {
 	struct ice_switch_info *sw;
+	enum ice_status status;
 
 	hw->switch_info = (struct ice_switch_info *)
 			  ice_malloc(hw, sizeof(*hw->switch_info));
@@ -504,27 +505,36 @@ enum ice_status ice_init_fltr_mgmt_struct(struct ice_hw *hw)
 
 	INIT_LIST_HEAD(&sw->vsi_list_map_head);
 
-	return ice_init_def_sw_recp(hw, &hw->switch_info->recp_list);
+	status = ice_init_def_sw_recp(hw, &hw->switch_info->recp_list);
+	if (status) {
+		ice_free(hw, hw->switch_info);
+		return status;
+	}
+	return ICE_SUCCESS;
 }
 
 /**
- * ice_cleanup_fltr_mgmt_struct - cleanup filter management list and locks
+ * ice_cleanup_fltr_mgmt_single - clears single filter mngt struct
  * @hw: pointer to the HW struct
+ * @sw: pointer to switch info struct for which function clears filters
  */
-void ice_cleanup_fltr_mgmt_struct(struct ice_hw *hw)
+static void
+ice_cleanup_fltr_mgmt_single(struct ice_hw *hw, struct ice_switch_info *sw)
 {
-	struct ice_switch_info *sw = hw->switch_info;
 	struct ice_vsi_list_map_info *v_pos_map;
 	struct ice_vsi_list_map_info *v_tmp_map;
 	struct ice_sw_recipe *recps;
 	u8 i;
 
+	if (!sw)
+		return;
+
 	LIST_FOR_EACH_ENTRY_SAFE(v_pos_map, v_tmp_map, &sw->vsi_list_map_head,
 				 ice_vsi_list_map_info, list_entry) {
 		LIST_DEL(&v_pos_map->list_entry);
 		ice_free(hw, v_pos_map);
 	}
-	recps = hw->switch_info->recp_list;
+	recps = sw->recp_list;
 	for (i = 0; i < ICE_MAX_NUM_RECIPES; i++) {
 		struct ice_recp_grp_entry *rg_entry, *tmprg_entry;
 
@@ -564,12 +574,21 @@ void ice_cleanup_fltr_mgmt_struct(struct ice_hw *hw)
 		if (recps[i].root_buf)
 			ice_free(hw, recps[i].root_buf);
 	}
-	ice_rm_all_sw_replay_rule_info(hw);
+	ice_rm_sw_replay_rule_info(hw, sw);
 	ice_free(hw, sw->recp_list);
 	ice_free(hw, sw);
 }
 
 /**
+ * ice_cleanup_all_fltr_mgmt - cleanup filter management list and locks
+ * @hw: pointer to the HW struct
+ */
+void ice_cleanup_fltr_mgmt_struct(struct ice_hw *hw)
+{
+	ice_cleanup_fltr_mgmt_single(hw, hw->switch_info);
+}
+
+/**
  * ice_get_itr_intrl_gran
  * @hw: pointer to the HW struct
  *
@@ -4104,18 +4123,32 @@ ice_cfg_vsi_lan(struct ice_port_info *pi, u16 vsi_handle, u16 tc_bitmap,
 }
 
 /**
+ * ice_is_main_vsi - checks whether the VSI is main VSI
+ * @hw: pointer to the HW struct
+ * @vsi_handle: VSI handle
+ *
+ * Checks whether the VSI is the main VSI (the first PF VSI created on
+ * given PF).
+ */
+static bool ice_is_main_vsi(struct ice_hw *hw, u16 vsi_handle)
+{
+	return vsi_handle == ICE_MAIN_VSI_HANDLE && hw->vsi_ctx[vsi_handle];
+}
+
+/**
  * ice_replay_pre_init - replay pre initialization
  * @hw: pointer to the HW struct
+ * @sw: pointer to switch info struct for which function initializes filters
  *
  * Initializes required config data for VSI, FD, ACL, and RSS before replay.
  */
-static enum ice_status ice_replay_pre_init(struct ice_hw *hw)
+static enum ice_status
+ice_replay_pre_init(struct ice_hw *hw, struct ice_switch_info *sw)
 {
-	struct ice_switch_info *sw = hw->switch_info;
 	u8 i;
 
 	/* Delete old entries from replay filter list head if there is any */
-	ice_rm_all_sw_replay_rule_info(hw);
+	ice_rm_sw_replay_rule_info(hw, sw);
 	/* In start of replay, move entries into replay_rules list, it
 	 * will allow adding rules entries back to filt_rules list,
 	 * which is operational list.
@@ -4138,14 +4171,16 @@ static enum ice_status ice_replay_pre_init(struct ice_hw *hw)
  */
 enum ice_status ice_replay_vsi(struct ice_hw *hw, u16 vsi_handle)
 {
+	struct ice_switch_info *sw = hw->switch_info;
+	struct ice_port_info *pi = hw->port_info;
 	enum ice_status status;
 
 	if (!ice_is_vsi_valid(hw, vsi_handle))
 		return ICE_ERR_PARAM;
 
 	/* Replay pre-initialization if there is any */
-	if (vsi_handle == ICE_MAIN_VSI_HANDLE) {
-		status = ice_replay_pre_init(hw);
+	if (ice_is_main_vsi(hw, vsi_handle)) {
+		status = ice_replay_pre_init(hw, sw);
 		if (status)
 			return status;
 	}
@@ -4154,7 +4189,7 @@ enum ice_status ice_replay_vsi(struct ice_hw *hw, u16 vsi_handle)
 	if (status)
 		return status;
 	/* Replay per VSI all filters */
-	status = ice_replay_vsi_all_fltr(hw, vsi_handle);
+	status = ice_replay_vsi_all_fltr(hw, pi, vsi_handle);
 	if (!status)
 		status = ice_replay_vsi_agg(hw, vsi_handle);
 	return status;
diff --git a/drivers/net/ice/base/ice_switch.c b/drivers/net/ice/base/ice_switch.c
index 5b968b7ce..910fb5236 100644
--- a/drivers/net/ice/base/ice_switch.c
+++ b/drivers/net/ice/base/ice_switch.c
@@ -7460,6 +7460,8 @@ enum ice_status ice_replay_all_fltr(struct ice_hw *hw)
 /**
  * ice_replay_vsi_fltr - Replay filters for requested VSI
  * @hw: pointer to the hardware structure
+ * @pi: pointer to port information structure
+ * @sw: pointer to switch info struct for which function replays filters
  * @vsi_handle: driver VSI handle
  * @recp_id: Recipe ID for which rules need to be replayed
  * @list_head: list for which filters need to be replayed
@@ -7468,7 +7470,8 @@ enum ice_status ice_replay_all_fltr(struct ice_hw *hw)
  * It is required to pass valid VSI handle.
  */
 static enum ice_status
-ice_replay_vsi_fltr(struct ice_hw *hw, u16 vsi_handle, u8 recp_id,
+ice_replay_vsi_fltr(struct ice_hw *hw, struct ice_port_info *pi,
+		    struct ice_switch_info *sw, u16 vsi_handle, u8 recp_id,
 		    struct LIST_HEAD_TYPE *list_head)
 {
 	struct ice_fltr_mgmt_list_entry *itr;
@@ -7478,7 +7481,7 @@ ice_replay_vsi_fltr(struct ice_hw *hw, u16 vsi_handle, u8 recp_id,
 
 	if (LIST_EMPTY(list_head))
 		return status;
-	recp_list = &hw->switch_info->recp_list[recp_id];
+	recp_list = &sw->recp_list[recp_id];
 	hw_vsi_id = ice_get_hw_vsi_num(hw, vsi_handle);
 
 	LIST_FOR_EACH_ENTRY(itr, list_head, ice_fltr_mgmt_list_entry,
@@ -7492,7 +7495,7 @@ ice_replay_vsi_fltr(struct ice_hw *hw, u16 vsi_handle, u8 recp_id,
 			if (f_entry.fltr_info.src_id == ICE_SRC_ID_VSI)
 				f_entry.fltr_info.src = hw_vsi_id;
 			status = ice_add_rule_internal(hw, recp_list,
-						       hw->port_info->lport,
+						       pi->lport,
 						       &f_entry);
 			if (status != ICE_SUCCESS)
 				goto end;
@@ -7512,7 +7515,7 @@ ice_replay_vsi_fltr(struct ice_hw *hw, u16 vsi_handle, u8 recp_id,
 			status = ice_add_vlan_internal(hw, recp_list, &f_entry);
 		else
 			status = ice_add_rule_internal(hw, recp_list,
-						       hw->port_info->lport,
+						       pi->lport,
 						       &f_entry);
 		if (status != ICE_SUCCESS)
 			goto end;
@@ -7557,11 +7560,14 @@ ice_replay_vsi_adv_rule(struct ice_hw *hw, u16 vsi_handle,
 /**
  * ice_replay_vsi_all_fltr - replay all filters stored in bookkeeping lists
  * @hw: pointer to the hardware structure
+ * @pi: pointer to port information structure
  * @vsi_handle: driver VSI handle
  *
  * Replays filters for requested VSI via vsi_handle.
  */
-enum ice_status ice_replay_vsi_all_fltr(struct ice_hw *hw, u16 vsi_handle)
+enum ice_status
+ice_replay_vsi_all_fltr(struct ice_hw *hw, struct ice_port_info *pi,
+			u16 vsi_handle)
 {
 	struct ice_switch_info *sw = hw->switch_info;
 	enum ice_status status;
@@ -7573,7 +7579,8 @@ enum ice_status ice_replay_vsi_all_fltr(struct ice_hw *hw, u16 vsi_handle)
 
 		head = &sw->recp_list[i].filt_replay_rules;
 		if (!sw->recp_list[i].adv_rule)
-			status = ice_replay_vsi_fltr(hw, vsi_handle, i, head);
+			status = ice_replay_vsi_fltr(hw, pi, sw, vsi_handle, i,
+						     head);
 		else
 			status = ice_replay_vsi_adv_rule(hw, vsi_handle, head);
 		if (status != ICE_SUCCESS)
@@ -7584,14 +7591,14 @@ enum ice_status ice_replay_vsi_all_fltr(struct ice_hw *hw, u16 vsi_handle)
 }
 
 /**
- * ice_rm_all_sw_replay_rule_info - deletes filter replay rules
+ * ice_rm_all_sw_replay_rule - helper function to delete filter replay rules
  * @hw: pointer to the HW struct
+ * @sw: pointer to switch info struct for which function removes filters
  *
- * Deletes the filter replay rules.
+ * Deletes the filter replay rules for given switch
  */
-void ice_rm_all_sw_replay_rule_info(struct ice_hw *hw)
+void ice_rm_sw_replay_rule_info(struct ice_hw *hw, struct ice_switch_info *sw)
 {
-	struct ice_switch_info *sw = hw->switch_info;
 	u8 i;
 
 	if (!sw)
@@ -7609,3 +7616,14 @@ void ice_rm_all_sw_replay_rule_info(struct ice_hw *hw)
 		}
 	}
 }
+
+/**
+ * ice_rm_all_sw_replay_rule_info - deletes filter replay rules
+ * @hw: pointer to the HW struct
+ *
+ * Deletes the filter replay rules.
+ */
+void ice_rm_all_sw_replay_rule_info(struct ice_hw *hw)
+{
+	ice_rm_sw_replay_rule_info(hw, hw->switch_info);
+}
diff --git a/drivers/net/ice/base/ice_switch.h b/drivers/net/ice/base/ice_switch.h
index 6bd50518f..ba7c56f44 100644
--- a/drivers/net/ice/base/ice_switch.h
+++ b/drivers/net/ice/base/ice_switch.h
@@ -485,7 +485,10 @@ ice_init_def_sw_recp(struct ice_hw *hw, struct ice_sw_recipe **recp_list);
 u16 ice_get_hw_vsi_num(struct ice_hw *hw, u16 vsi_handle);
 bool ice_is_vsi_valid(struct ice_hw *hw, u16 vsi_handle);
 
-enum ice_status ice_replay_vsi_all_fltr(struct ice_hw *hw, u16 vsi_handle);
+enum ice_status
+ice_replay_vsi_all_fltr(struct ice_hw *hw, struct ice_port_info *pi,
+			u16 vsi_handle);
+void ice_rm_sw_replay_rule_info(struct ice_hw *hw, struct ice_switch_info *sw);
 void ice_rm_all_sw_replay_rule_info(struct ice_hw *hw);
 bool ice_is_prof_rule(enum ice_sw_tunnel_type type);
 
-- 
2.13.6


  parent reply	other threads:[~2020-06-03  2:37 UTC|newest]

Thread overview: 187+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-03  2:39 [dpdk-dev] [PATCH 00/52] net/ice: base code update Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 01/52] net/ice/base: add support for non-IP Layer2 protocol Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 02/52] net/ice/base: add FDIR program status WB macro Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 03/52] net/ice/base: disable profile merge for FDIR Qi Zhang
2020-06-03  6:42   ` Yang, Qiming
2020-06-03  2:39 ` [dpdk-dev] [PATCH 04/52] net/ice/base: avoid undefined behavior Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 05/52] net/ice/base: consolidate implementation of MAC config set Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 06/52] net/ice/base: report AOC PHY Types as Fiber Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 07/52] net/ice/base: gate devices from FW link override Qi Zhang
2020-06-03  2:39 ` Qi Zhang [this message]
2020-06-03  2:39 ` [dpdk-dev] [PATCH 09/52] net/ice/base: add AUI media type Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 10/52] net/ice/base: fix variable type for ACL Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 11/52] net/ice/base: update PHY type high max index value Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 12/52] net/ice/base: consolidate VF Promiscuous mode Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 13/52] net/ice/base: refactor flow director filter swap Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 14/52] net/ice/base: change IPV6 training packet Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 15/52] net/ice/base: group function protoypes together Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 16/52] net/ice/base: cleanup comment formatting Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 17/52] net/ice/base: add FDIR support for L2TPV3 ESP AH and PFCP Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 18/52] net/ice/base: add FD completion report option Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 19/52] net/ice/base: initialize Set PHY Configuration FEC fields Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 20/52] net/ice/baes: add NVM help functions Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 21/52] net/ice/base: allow GENEVE and VXLAN rules with VLAN Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 22/52] net/ice/base: increase timeout after PFR Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 23/52] net/ice/base: remove unnecessary braces Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 24/52] net/ice/base: adjust function signature style format Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 25/52] net/ice/base: add RSS support for IPv6 prefix Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 26/52] net/ice/base: use macro for sizeof Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 27/52] net/ice/base: add debug logs Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 28/52] net/ice/base: return correct error code Qi Zhang
2020-06-03  2:47   ` Patil, Kiran
2020-06-03  2:39 ` [dpdk-dev] [PATCH 29/52] net/ice/base: remove unnecessary code Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 30/52] net/ice/base: add support for more PPPoE packet type Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 31/52] net/ice/base: reset flags when all rules are deleted Qi Zhang
2020-06-03  2:47   ` Patil, Kiran
2020-06-03  2:39 ` [dpdk-dev] [PATCH 32/52] net/ice/base: reset capabilities before parsing Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 33/52] net/ice/base: add RL profile bit mask check Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 34/52] net/ice/base: update the vsi handle to remaining VSI Qi Zhang
2020-06-03  2:39 ` [dpdk-dev] [PATCH 35/52] net/ice/base: correct return value Qi Zhang
2020-06-03  2:47   ` Patil, Kiran
2020-06-03  2:40 ` [dpdk-dev] [PATCH 36/52] net/ice/base: remove unneeded variable Qi Zhang
2020-06-03  2:40 ` [dpdk-dev] [PATCH 37/52] net/ice/base: fix for memory leak Qi Zhang
2020-06-03  2:40 ` [dpdk-dev] [PATCH 38/52] net/ice/base: add entries in Profile TCAM with priority Qi Zhang
2020-06-03  2:40 ` [dpdk-dev] [PATCH 39/52] net/ice/base: remove unimplemented function prototypes Qi Zhang
2020-06-03  2:40 ` [dpdk-dev] [PATCH 40/52] net/ice/base: add new API to check all autoneg enable bits Qi Zhang
2020-06-03  2:40 ` [dpdk-dev] [PATCH 41/52] net/ice/base: avoid PPPoE ipv4 overlap Qi Zhang
2020-06-03  2:40 ` [dpdk-dev] [PATCH 42/52] net/ice/base: initialize AQ failure variable when set fc Qi Zhang
2020-06-03  2:40 ` [dpdk-dev] [PATCH 43/52] net/ice/base: adjust scheduler default BW weight Qi Zhang
2020-06-03  2:40 ` [dpdk-dev] [PATCH 44/52] net/ice/base: distribute Tx queues evenly Qi Zhang
2020-06-03  2:40 ` [dpdk-dev] [PATCH 45/52] net/ice/base: add a new command to LLDP commands Qi Zhang
2020-06-03  2:40 ` [dpdk-dev] [PATCH 46/52] net/ice/base: remove unused code for VSI list free Qi Zhang
2020-06-03  2:40 ` [dpdk-dev] [PATCH 47/52] net/ice/base: fix reference count when update VSI list Qi Zhang
2020-06-03  2:40 ` [dpdk-dev] [PATCH 48/52] net/ice/base: add more tunnel type for IPv4 and IPv6 Qi Zhang
2020-06-03  2:40 ` [dpdk-dev] [PATCH 49/52] net/ice/base: fix uninitialized flag Qi Zhang
2020-06-08  2:51   ` Yang, Qiming
2020-06-03  2:40 ` [dpdk-dev] [PATCH 50/52] net/ice/base: add more device ID support Qi Zhang
2020-06-03  2:40 ` [dpdk-dev] [PATCH 51/52] net/ice/base: add 1G SGMII PHY type Qi Zhang
2020-06-03  2:40 ` [dpdk-dev] [PATCH 52/52] net/ice/base: update IPV4 and IPV6 flow ptype masks Qi Zhang
2020-06-09 11:59 ` [dpdk-dev] [PATCH v2 00/52] net/ice: base code update Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 01/52] net/ice/base: add support for non-IP Layer2 protocol Qi Zhang
2020-06-11 18:38     ` Ferruh Yigit
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 02/52] net/ice/base: add FDIR program status WB macro Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 03/52] net/ice/base: disable profile merge for FDIR Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 04/52] net/ice/base: avoid undefined behavior Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 05/52] net/ice/base: consolidate implementation of MAC config set Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 06/52] net/ice/base: report AOC PHY Types as Fiber Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 07/52] net/ice/base: gate devices from FW link override Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 08/52] net/ice/base: improve VSI filters rebuild Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 09/52] net/ice/base: add AUI media type Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 10/52] net/ice/base: fix variable type for ACL Qi Zhang
2020-06-11 18:35     ` Ferruh Yigit
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 11/52] net/ice/base: update PHY type high max index value Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 12/52] net/ice/base: consolidate VF Promiscuous mode Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 13/52] net/ice/base: refactor flow director filter swap Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 14/52] net/ice/base: change IPV6 training packet Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 15/52] net/ice/base: group function protoypes together Qi Zhang
2020-06-11 18:37     ` Ferruh Yigit
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 16/52] net/ice/base: cleanup comment formatting Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 17/52] net/ice/base: add FDIR support for L2TPV3 ESP AH and PFCP Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 18/52] net/ice/base: add FD completion report option Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 19/52] net/ice/base: initialize Set PHY Configuration FEC fields Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 20/52] net/ice/baes: add NVM help functions Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 21/52] net/ice/base: allow GENEVE and VXLAN rules with VLAN Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 22/52] net/ice/base: increase timeout after PFR Qi Zhang
2020-06-11 18:38     ` Ferruh Yigit
2020-06-15  1:58       ` Zhang, Qi Z
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 23/52] net/ice/base: remove unnecessary braces Qi Zhang
2020-06-11 18:39     ` Ferruh Yigit
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 24/52] net/ice/base: adjust function signature style format Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 25/52] net/ice/base: add RSS support for IPv6 prefix Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 26/52] net/ice/base: use macro for sizeof Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 27/52] net/ice/base: add debug logs Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 28/52] net/ice/base: return correct error code Qi Zhang
2020-06-11 18:39     ` Ferruh Yigit
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 29/52] net/ice/base: remove unnecessary code Qi Zhang
2020-06-11 18:35     ` Ferruh Yigit
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 30/52] net/ice/base: add support for more PPPoE packet type Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 31/52] net/ice/base: reset flags when all rules are deleted Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 32/52] net/ice/base: reset capabilities before parsing Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 33/52] net/ice/base: add RL profile bit mask check Qi Zhang
2020-06-11 18:39     ` Ferruh Yigit
2020-06-11 20:29       ` Singh, Tarun K
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 34/52] net/ice/base: update the vsi handle to remaining VSI Qi Zhang
2020-06-11 18:40     ` Ferruh Yigit
2020-06-12  2:34       ` Wang, Haiyue
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 35/52] net/ice/base: correct return value Qi Zhang
2020-06-11 18:40     ` Ferruh Yigit
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 36/52] net/ice/base: remove unneeded variable Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 37/52] net/ice/base: fix for memory leak Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 38/52] net/ice/base: add entries in Profile TCAM with priority Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 39/52] net/ice/base: remove unimplemented function prototypes Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 40/52] net/ice/base: add new API to check all autoneg enable bits Qi Zhang
2020-06-11 18:42     ` Ferruh Yigit
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 41/52] net/ice/base: avoid PPPoE ipv4 overlap Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 42/52] net/ice/base: initialize AQ failure variable when set fc Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 43/52] net/ice/base: adjust scheduler default BW weight Qi Zhang
2020-06-11 18:36     ` Ferruh Yigit
2020-06-11 20:27       ` Singh, Tarun K
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 44/52] net/ice/base: distribute Tx queues evenly Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 45/52] net/ice/base: add a new command to LLDP commands Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 46/52] net/ice/base: remove unused code for VSI list free Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 47/52] net/ice/base: fix reference count when update VSI list Qi Zhang
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 48/52] net/ice/base: add more tunnel type for IPv4 and IPv6 Qi Zhang
2020-06-11 18:37     ` Ferruh Yigit
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 49/52] net/ice/base: fix uninitialized flag Qi Zhang
2020-06-11 18:45     ` [dpdk-dev] [dpdk-stable] " Ferruh Yigit
2020-06-09 11:59   ` [dpdk-dev] [PATCH v2 50/52] net/ice/base: add more device ID support Qi Zhang
2020-06-09 12:00   ` [dpdk-dev] [PATCH v2 51/52] net/ice/base: add 1G SGMII PHY type Qi Zhang
2020-06-09 12:00   ` [dpdk-dev] [PATCH v2 52/52] net/ice/base: update IPV4 and IPV6 flow ptype masks Qi Zhang
2020-06-11 18:46     ` Ferruh Yigit
2020-06-10  5:27   ` [dpdk-dev] [PATCH v2 00/52] net/ice: base code update Yang, Qiming
2020-06-11  0:34   ` Ye Xiaolong
2020-06-15  2:04 ` [dpdk-dev] [PATCH v3 00/53] " Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 01/53] net/ice/base: add support for non-IP Layer2 protocol Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 02/53] net/ice/base: add FDIR program status WB macro Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 03/53] net/ice/base: disable profile merge for FDIR Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 04/53] net/ice/base: avoid undefined behavior Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 05/53] net/ice/base: consolidate implementation of MAC config set Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 06/53] net/ice/base: report AOC PHY Types as Fiber Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 07/53] net/ice/base: gate devices from FW link override Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 08/53] net/ice/base: improve VSI filters rebuild Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 09/53] net/ice/base: add AUI media type Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 10/53] net/ice/base: fix variable type for ACL Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 11/53] net/ice/base: update PHY type high max index value Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 12/53] net/ice/base: consolidate VF Promiscuous mode Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 13/53] net/ice/base: refactor flow director filter swap Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 14/53] net/ice/base: change IPV6 training packet Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 15/53] net/ice/base: group function prototypes together Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 16/53] net/ice/base: cleanup comment formatting Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 17/53] net/ice/base: add FDIR support for L2TPV3 ESP AH and PFCP Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 18/53] net/ice/base: add FD completion report option Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 19/53] net/ice/base: initialize Set PHY Configuration FEC fields Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 20/53] net/ice/baes: add NVM help functions Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 21/53] net/ice/base: allow GENEVE and VXLAN rules with VLAN Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 22/53] net/ice/base: increase timeout after PF Reset Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 23/53] net/ice/base: remove unnecessary braces Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 24/53] net/ice/base: adjust function signature style format Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 25/53] net/ice/base: add RSS support for IPv6 prefix Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 26/53] net/ice/base: use macro for sizeof Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 27/53] net/ice/base: add debug logs Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 28/53] net/ice/base: return correct error code Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 29/53] net/ice/base: remove unnecessary code Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 30/53] net/ice/base: add support for more PPPoE packet type Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 31/53] net/ice/base: reset flags when all rules are deleted Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 32/53] net/ice/base: reset capabilities before parsing Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 33/53] net/ice/base: add rate limiting profile bit mask check Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 34/53] net/ice/base: update the vsi handle to remaining VSI Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 35/53] net/ice/base: fix return value Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 36/53] net/ice/base: remove unneeded variable Qi Zhang
2020-06-15  2:04   ` [dpdk-dev] [PATCH v3 37/53] net/ice/base: fix for memory leak Qi Zhang
2020-06-15  2:05   ` [dpdk-dev] [PATCH v3 38/53] net/ice/base: add entries in Profile TCAM with priority Qi Zhang
2020-06-15  2:05   ` [dpdk-dev] [PATCH v3 39/53] net/ice/base: remove unimplemented function prototypes Qi Zhang
2020-06-15  2:05   ` [dpdk-dev] [PATCH v3 40/53] net/ice/base: support checking all autoneg enable bits Qi Zhang
2020-06-15  2:05   ` [dpdk-dev] [PATCH v3 41/53] net/ice/base: avoid PPPoE ipv4 overlap Qi Zhang
2020-06-15  2:05   ` [dpdk-dev] [PATCH v3 42/53] net/ice/base: initialize AQ failure variable when set fc Qi Zhang
2020-06-15  2:05   ` [dpdk-dev] [PATCH v3 43/53] net/ice/base: adjust scheduler default bandwidth weight Qi Zhang
2020-06-15  2:05   ` [dpdk-dev] [PATCH v3 44/53] net/ice/base: distribute Tx queues evenly Qi Zhang
2020-06-15  2:05   ` [dpdk-dev] [PATCH v3 45/53] net/ice/base: add a new command to LLDP commands Qi Zhang
2020-06-15  2:05   ` [dpdk-dev] [PATCH v3 46/53] net/ice/base: remove unused code for VSI list free Qi Zhang
2020-06-15  2:05   ` [dpdk-dev] [PATCH v3 47/53] net/ice/base: fix reference count when update VSI list Qi Zhang
2020-06-15  2:05   ` [dpdk-dev] [PATCH v3 48/53] net/ice/base: add more tunnel type for IPv4 and IPv6 Qi Zhang
2020-06-15  2:05   ` [dpdk-dev] [PATCH v3 49/53] net/ice/base: fix uninitialized flag for result index bitmap Qi Zhang
2020-06-15  2:05   ` [dpdk-dev] [PATCH v3 50/53] net/ice/base: add more device ID support Qi Zhang
2020-06-15  2:05   ` [dpdk-dev] [PATCH v3 51/53] net/ice/base: add 1G SGMII PHY type Qi Zhang
2020-06-15  2:05   ` [dpdk-dev] [PATCH v3 52/53] net/ice/base: update IPV4 and IPV6 flow ptype masks Qi Zhang
2020-06-15  2:05   ` [dpdk-dev] [PATCH v3 53/53] net/ice/base: remove PPPoD from PPPoE bitmap Qi Zhang
2020-06-16  7:47   ` [dpdk-dev] [PATCH v3 00/53] net/ice: base code update Ye Xiaolong

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200603024016.30636-9-qi.z.zhang@intel.com \
    --to=qi.z.zhang@intel.com \
    --cc=dev@dpdk.org \
    --cc=grzegorz.nitka@intel.com \
    --cc=paul.m.stillwell.jr@intel.com \
    --cc=qiming.yang@intel.com \
    --cc=xiaolong.ye@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).