Allow error to be returned for VIRTCHNL_OP_SET_RSS_HENA when set hena = 0. Add warning that PF doesnot support hena = 0 now.
Fixes: 95f2f0e9fc2a6("net/iavf: improve default RSS") Cc: sta...@dpdk.org Signed-off-by: Xuan Ding <xuan.d...@intel.com> --- drivers/net/iavf/iavf_ethdev.c | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/drivers/net/iavf/iavf_ethdev.c b/drivers/net/iavf/iavf_ethdev.c index e22c62ed00..46857875ea 100644 --- a/drivers/net/iavf/iavf_ethdev.c +++ b/drivers/net/iavf/iavf_ethdev.c @@ -1250,11 +1250,15 @@ iavf_dev_rss_hash_update(struct rte_eth_dev *dev, if (rss_conf->rss_hf == 0) return 0; - /* Overwritten default RSS. */ + /* Clear existing RSS. */ ret = iavf_set_hena(adapter, 0); + + /* It is a workaround, temporarily allow error to be returned + * due to possible lack of PF handling for hena = 0. + */ if (ret) - PMD_DRV_LOG(ERR, "%s Remove rss vsi fail %d", - __func__, ret); + PMD_DRV_LOG(WARNING, "fail to clean existing RSS," + "lack PF support"); /* Set new RSS configuration. */ ret = iavf_rss_hash_set(adapter, rss_conf->rss_hf, true); @@ -2174,10 +2178,12 @@ iavf_dev_init(struct rte_eth_dev *eth_dev) /* Set hena = 0 to ask PF to cleanup all existing RSS. */ ret = iavf_set_hena(adapter, 0); - if (ret) { - PMD_DRV_LOG(ERR, "fail to disable default PF RSS"); - return ret; - } + if (ret) + /* It is a workaround, temporarily allow error to be returned + * due to possible lack of PF handling for hena = 0. + */ + PMD_DRV_LOG(WARNING, "fail to disable default RSS," + "lack PF support"); return 0; } -- 2.17.1