net/ixgbe: fix RSS flow return error

Message ID 1540265890-40975-1-git-send-email-wei.zhao1@intel.com (mailing list archive)
State Accepted, archived
Delegated to: Qi Zhang
Headers
Series net/ixgbe: fix RSS flow return error |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK

Commit Message

Zhao1, Wei Oct. 23, 2018, 3:38 a.m. UTC
  If hash function is 0, it should disable RSS then return 0.

Fixes: 518cc3927b13 ("net/ixgbe: move RSS to flow API")

Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
---
 drivers/net/ixgbe/ixgbe_rxtx.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
  

Comments

Peng, Yuan Oct. 23, 2018, 6:19 a.m. UTC | #1
Tested-by: Peng, Yuan <yuan.peng@intel.com>

- Tested Branch: master
- Tested Commit: 739e13bcc98f562d3301f808ec76507ebae82e63
- OS: 4.5.5-300.fc24.x86_64
- GCC: gcc (GCC) 5.3.1 20151207 (Red Hat 5.3.1-2)
- CPU: Intel(R) Xeon(R) CPU E5-2699 v4 @ 2.20GHz
- NIC: Intel Corporation 82599ES 10-Gigabit SFI/SFP+ Network Connection [8086:10fb] (rev 01)
     Intel Corporation Ethernet Controller X710 for 10GbE SFP+ [8086:1572] (rev 01)
- Default x86_64-native-linuxapp-gcc configuration
- Prerequisites:
- Total 1 cases, 1 passed, 0 failed

- Case:
./usertools/dpdk-devbind.py -b igb_uio 05:00.0 05:00.1
1. Start the testpmd::

    ./testpmd -c 1ffff -n 4 -- -i --nb-cores=8 --rxq=4 --txq=4 --port-topology=chained
    testpmd> set fwd rxonly
    testpmd> set verbose 1
    testpmd> start

2. Show port default RSS fuctions::

    testpmd> show port 0 rss-hash
    RSS functions:
     ipv4-frag ipv4-other ipv6-frag ipv6-other ip

   Send the ipv4-other packets with different src/dst ip address.
   All the packets are distributed to all the four queues.

3. disable all RSS fuctions::

    testpmd> flow create 0 ingress pattern end actions rss types none end / end
    Flow rule #0 created
    testpmd> show port 0 rss-hash
    RSS disabled

   Send the ipv4-udp packets with different src/dst ip address.
   All the packets are distributed to queue 0.
   Notes: only i40e support the command,
   others don't support the command created.

4. enable RSS fuction with all RSS hash type::

    testpmd> flow create 0 ingress pattern end actions rss types all end / end
    Flow rule #1 created
    testpmd> show port 0 rss-hash
    RSS functions:
     all ipv4-frag ipv4-tcp ipv4-udp ipv4-sctp ipv4-other ipv6-frag ipv6-tcp ipv6-udp ipv6-sctp ipv6-other l2-payload ip udp tcp sctp

   Send the ipv4-udp packets with different src/dst ip address.
   All the packets are distributed to all the four queues.

-----Original Message-----
From: Zhao1, Wei 
Sent: Tuesday, October 23, 2018 11:38 AM
To: dev@dpdk.org
Cc: Zhang, Qi Z <qi.z.zhang@intel.com>; stable@dpdk.org; Peng, Yuan <yuan.peng@intel.com>; Zhao1, Wei <wei.zhao1@intel.com>
Subject: [PATCH] net/ixgbe: fix RSS flow return error

If hash function is 0, it should disable RSS then return 0.

Fixes: 518cc3927b13 ("net/ixgbe: move RSS to flow API")

Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
---
 drivers/net/ixgbe/ixgbe_rxtx.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ixgbe/ixgbe_rxtx.c b/drivers/net/ixgbe/ixgbe_rxtx.c index ae21f04..ad9c46d 100644
--- a/drivers/net/ixgbe/ixgbe_rxtx.c
+++ b/drivers/net/ixgbe/ixgbe_rxtx.c
@@ -5703,7 +5703,7 @@ ixgbe_config_rss_filter(struct rte_eth_dev *dev,
 	 */
 	if ((rss_conf.rss_hf & IXGBE_RSS_OFFLOAD_ALL) == 0) {
 		ixgbe_rss_disable(dev);
-		return -EINVAL;
+		return 0;
 	}
 	if (rss_conf.rss_key == NULL)
 		rss_conf.rss_key = rss_intel_key; /* Default hash key */
--
2.7.5
  
Qi Zhang Oct. 23, 2018, 8:36 p.m. UTC | #2
> -----Original Message-----
> From: Zhao1, Wei
> Sent: Monday, October 22, 2018 10:38 PM
> To: dev@dpdk.org
> Cc: Zhang, Qi Z <qi.z.zhang@intel.com>; stable@dpdk.org; Peng, Yuan
> <yuan.peng@intel.com>; Zhao1, Wei <wei.zhao1@intel.com>
> Subject: [PATCH] net/ixgbe: fix RSS flow return error
> 
> If hash function is 0, it should disable RSS then return 0.
> 
> Fixes: 518cc3927b13 ("net/ixgbe: move RSS to flow API")
> 
> Signed-off-by: Wei Zhao <wei.zhao1@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/ixgbe/ixgbe_rxtx.c b/drivers/net/ixgbe/ixgbe_rxtx.c
index ae21f04..ad9c46d 100644
--- a/drivers/net/ixgbe/ixgbe_rxtx.c
+++ b/drivers/net/ixgbe/ixgbe_rxtx.c
@@ -5703,7 +5703,7 @@  ixgbe_config_rss_filter(struct rte_eth_dev *dev,
 	 */
 	if ((rss_conf.rss_hf & IXGBE_RSS_OFFLOAD_ALL) == 0) {
 		ixgbe_rss_disable(dev);
-		return -EINVAL;
+		return 0;
 	}
 	if (rss_conf.rss_key == NULL)
 		rss_conf.rss_key = rss_intel_key; /* Default hash key */