This patch changes RSS rule destroy API from ice_rem_vsi_rss_cfg() to ice_rem_rss_cfg(). ice_rem_vsi_rss_cfg() removes RSS configurations associated with VSI. ice_rem_rss_cfg() remove an existing RSS configuration with matching hashed fields. To support input set change, we should adopt ice_rem_rss_cfg(). This patch also fixes logic error otherwise ice_rem_rss_cfg() is never be carried out.
Fixes: 5ad3db8d4bdd ("net/ice: enable advanced RSS") Signed-off-by: Simei Su <simei...@intel.com> --- drivers/net/ice/ice_hash.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/net/ice/ice_hash.c b/drivers/net/ice/ice_hash.c index 3381b45..ba83a12 100644 --- a/drivers/net/ice/ice_hash.c +++ b/drivers/net/ice/ice_hash.c @@ -464,6 +464,7 @@ struct ice_hash_match_type ice_hash_type_list[] = { "No memory for filter_ptr"); return -ENOMEM; } + filter_ptr->symm = 1; if (hash_function == RTE_ETH_HASH_FUNCTION_SIMPLE_XOR) { /* Enable registers for simple_xor hash function. */ @@ -528,7 +529,8 @@ struct ice_hash_match_type ice_hash_type_list[] = { (1 << VSIQF_HASH_CTL_HASH_SCHEME_S); ICE_WRITE_REG(hw, VSIQF_HASH_CTL(vsi->vsi_id), reg); } else { - ret = ice_rem_vsi_rss_cfg(hw, vsi->idx); + ret = ice_rem_rss_cfg(hw, vsi->idx, + filter_ptr->hashed_flds, filter_ptr->packet_hdr); if (ret) { rte_flow_error_set(error, EINVAL, RTE_FLOW_ERROR_TYPE_HANDLE, NULL, -- 1.8.3.1