50 lines
1.6 KiB
Diff
50 lines
1.6 KiB
Diff
|
|
From 8ca08cd0671207b57d934b439d7b245966fbbfe8 Mon Sep 17 00:00:00 2001
|
||
|
|
From: Huisong Li <lihuisong@huawei.com>
|
||
|
|
Date: Fri, 10 Mar 2023 17:35:09 +0800
|
||
|
|
Subject: net/hns3: separate setting hash key
|
||
|
|
|
||
|
|
[ upstream commit fe9cc8b88babd0911d91dc194b35c7c352e2bf7b ]
|
||
|
|
|
||
|
|
The settings of hash key comes from the ethdev ops (like, dev_configure
|
||
|
|
and rss_hash_update) and rte_flow API. For the ethdev ops, driver has
|
||
|
|
to save it to rss_info::key in hns3_hw structure so as to it can be
|
||
|
|
restored when reset is triggered. While rte_flow API no need to use
|
||
|
|
this field to save, they has a global flow_rss_list to maintain all
|
||
|
|
rules which save hash key. And hash key can be restored by this rule
|
||
|
|
information during the reset phase.
|
||
|
|
|
||
|
|
Cc: stable@dpdk.org
|
||
|
|
|
||
|
|
Signed-off-by: Huisong Li <lihuisong@huawei.com>
|
||
|
|
Signed-off-by: Dongdong Liu <liudongdong3@huawei.com>
|
||
|
|
---
|
||
|
|
drivers/net/hns3/hns3_rss.c | 5 +++--
|
||
|
|
1 file changed, 3 insertions(+), 2 deletions(-)
|
||
|
|
|
||
|
|
diff --git a/drivers/net/hns3/hns3_rss.c b/drivers/net/hns3/hns3_rss.c
|
||
|
|
index dcd42b554a..401e3adfdf 100644
|
||
|
|
--- a/drivers/net/hns3/hns3_rss.c
|
||
|
|
+++ b/drivers/net/hns3/hns3_rss.c
|
||
|
|
@@ -376,8 +376,7 @@ hns3_rss_set_algo_key(struct hns3_hw *hw, uint8_t hash_algo,
|
||
|
|
return ret;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
- /* Update the shadow RSS key with user specified */
|
||
|
|
- memcpy(hw->rss_info.key, key, hw->rss_key_size);
|
||
|
|
+
|
||
|
|
return 0;
|
||
|
|
}
|
||
|
|
|
||
|
|
@@ -672,6 +671,8 @@ hns3_dev_rss_hash_update(struct rte_eth_dev *dev,
|
||
|
|
key, hw->rss_key_size);
|
||
|
|
if (ret)
|
||
|
|
goto set_algo_key_fail;
|
||
|
|
+ /* Update the shadow RSS key with user specified */
|
||
|
|
+ memcpy(hw->rss_info.key, key, hw->rss_key_size);
|
||
|
|
}
|
||
|
|
rte_spinlock_unlock(&hw->lock);
|
||
|
|
|
||
|
|
--
|
||
|
|
2.23.0
|
||
|
|
|