net/fm10k: advertise supported RSS hash function

Message ID 20190506084434.41042-1-xiao.w.wang@intel.com (mailing list archive)
State Accepted, archived
Delegated to: Qi Zhang
Headers
Series net/fm10k: advertise supported RSS hash function |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK
ci/mellanox-Performance-Testing success Performance Testing PASS
ci/intel-Performance-Testing success Performance Testing PASS

Commit Message

Xiao Wang May 6, 2019, 8:44 a.m. UTC
  PMD should advertise supported RSS hash functions via
dev_info.flow_type_rss_offloads variable [1], otherwise upper level check
would fail on configuring RSS, leading to MQ RSS failure.

[1] commit aa1a6d87f15d ("ethdev: force RSS offload rules again")
Cc: stable@dpdk.org

Signed-off-by: Xiao Wang <xiao.w.wang@intel.com>
---
 drivers/net/fm10k/fm10k_ethdev.c | 9 +++++++++
 1 file changed, 9 insertions(+)
  

Comments

Qi Zhang May 14, 2019, 2:57 p.m. UTC | #1
> -----Original Message-----
> From: Wang, Xiao W
> Sent: Monday, May 6, 2019 4:45 PM
> To: Zhang, Qi Z <qi.z.zhang@intel.com>
> Cc: dev@dpdk.org; Yigit, Ferruh <ferruh.yigit@intel.com>; Wang, Xiao W
> <xiao.w.wang@intel.com>; stable@dpdk.org
> Subject: [PATCH] net/fm10k: advertise supported RSS hash function
> 
> PMD should advertise supported RSS hash functions via
> dev_info.flow_type_rss_offloads variable [1], otherwise upper level check
> would fail on configuring RSS, leading to MQ RSS failure.
> 
> [1] commit aa1a6d87f15d ("ethdev: force RSS offload rules again")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Xiao Wang <xiao.w.wang@intel.com>

Acked-by: Qi Zhang <qi.z.zhang@intel.com>

Applied to dpdk-next-net-intel.

Thanks
Qi
  

Patch

diff --git a/drivers/net/fm10k/fm10k_ethdev.c b/drivers/net/fm10k/fm10k_ethdev.c
index caf4d1bc0..f64d07bba 100644
--- a/drivers/net/fm10k/fm10k_ethdev.c
+++ b/drivers/net/fm10k/fm10k_ethdev.c
@@ -1389,6 +1389,15 @@  fm10k_dev_infos_get(struct rte_eth_dev *dev,
 
 	dev_info->hash_key_size = FM10K_RSSRK_SIZE * sizeof(uint32_t);
 	dev_info->reta_size = FM10K_MAX_RSS_INDICES;
+	dev_info->flow_type_rss_offloads = ETH_RSS_IPV4 |
+					ETH_RSS_IPV6 |
+					ETH_RSS_IPV6_EX |
+					ETH_RSS_NONFRAG_IPV4_TCP |
+					ETH_RSS_NONFRAG_IPV6_TCP |
+					ETH_RSS_IPV6_TCP_EX |
+					ETH_RSS_NONFRAG_IPV4_UDP |
+					ETH_RSS_NONFRAG_IPV6_UDP |
+					ETH_RSS_IPV6_UDP_EX;
 
 	dev_info->default_rxconf = (struct rte_eth_rxconf) {
 		.rx_thresh = {