app/testpmd: support more types for flow RSS

Message ID 1540194565-40052-1-git-send-email-wei.zhao1@intel.com (mailing list archive)
State Superseded, archived
Delegated to: Ferruh Yigit
Headers
Series app/testpmd: support more types for flow RSS |

Checks

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

Commit Message

Zhao1, Wei Oct. 22, 2018, 7:49 a.m. UTC
  Some user and tester require flow RSS to support more types,
so and "all" and "none" to make configuration more easy for users.

Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
---
 app/test-pmd/config.c | 4 ++++
 1 file changed, 4 insertions(+)
  

Comments

Iremonger, Bernard Oct. 22, 2018, 10:44 a.m. UTC | #1
Hi Zhao,

> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Wei Zhao
> Sent: Monday, October 22, 2018 8:49 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: [dpdk-dev] [PATCH] app/testpmd: support more types for flow RSS
> 
> Some user and tester require flow RSS to support more types, so and "all" and

typo in commit message "and "all"  " should be "add "all""

> "none" to make configuration more easy for users.
> 
> Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
> ---
>  app/test-pmd/config.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/app/test-pmd/config.c b/app/test-pmd/config.c index
> bf3cd0a..f068da1 100644
> --- a/app/test-pmd/config.c
> +++ b/app/test-pmd/config.c
> @@ -74,6 +74,10 @@ static const struct {  };
> 
>  const struct rss_type_info rss_type_table[] = {
> +	{ "all", ETH_RSS_IP | ETH_RSS_TCP |
> +			ETH_RSS_UDP | ETH_RSS_SCTP |
> +			ETH_RSS_L2_PAYLOAD },
> +	{ "none", 0 },
>  	{ "ipv4", ETH_RSS_IPV4 },
>  	{ "ipv4-frag", ETH_RSS_FRAG_IPV4 },
>  	{ "ipv4-tcp", ETH_RSS_NONFRAG_IPV4_TCP },
> --
> 2.7.5

The "all" and "none" options are already documented in testpmd.
This looks like a fix, if so should there be a fixes line?

Regards,

Bernard.
  
Peng, Yuan Oct. 23, 2018, 6:20 a.m. UTC | #2
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: Monday, October 22, 2018 3:49 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] app/testpmd: support more types for flow RSS

Some user and tester require flow RSS to support more types, so and "all" and "none" to make configuration more easy for users.

Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
---
 app/test-pmd/config.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/app/test-pmd/config.c b/app/test-pmd/config.c index bf3cd0a..f068da1 100644
--- a/app/test-pmd/config.c
+++ b/app/test-pmd/config.c
@@ -74,6 +74,10 @@ static const struct {  };
 
 const struct rss_type_info rss_type_table[] = {
+	{ "all", ETH_RSS_IP | ETH_RSS_TCP |
+			ETH_RSS_UDP | ETH_RSS_SCTP |
+			ETH_RSS_L2_PAYLOAD },
+	{ "none", 0 },
 	{ "ipv4", ETH_RSS_IPV4 },
 	{ "ipv4-frag", ETH_RSS_FRAG_IPV4 },
 	{ "ipv4-tcp", ETH_RSS_NONFRAG_IPV4_TCP },
--
2.7.5
  
Zhao1, Wei Oct. 23, 2018, 9:37 a.m. UTC | #3
Hi, Iremonger  Bernard

> -----Original Message-----
> From: Iremonger, Bernard
> Sent: Monday, October 22, 2018 6:45 PM
> To: Zhao1, Wei <wei.zhao1@intel.com>; 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: RE: [dpdk-dev] [PATCH] app/testpmd: support more types for flow
> RSS
> 
> Hi Zhao,
> 
> > -----Original Message-----
> > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Wei Zhao
> > Sent: Monday, October 22, 2018 8:49 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: [dpdk-dev] [PATCH] app/testpmd: support more types for flow
> > RSS
> >
> > Some user and tester require flow RSS to support more types, so and
> > "all" and
> 
> typo in commit message "and "all"  " should be "add "all""

Yes, I will commit v2 for that. 
Thank you!

> 
> > "none" to make configuration more easy for users.
> >
> > Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
> > ---
> >  app/test-pmd/config.c | 4 ++++
> >  1 file changed, 4 insertions(+)
> >
> > diff --git a/app/test-pmd/config.c b/app/test-pmd/config.c index
> > bf3cd0a..f068da1 100644
> > --- a/app/test-pmd/config.c
> > +++ b/app/test-pmd/config.c
> > @@ -74,6 +74,10 @@ static const struct {  };
> >
> >  const struct rss_type_info rss_type_table[] = {
> > +	{ "all", ETH_RSS_IP | ETH_RSS_TCP |
> > +			ETH_RSS_UDP | ETH_RSS_SCTP |
> > +			ETH_RSS_L2_PAYLOAD },
> > +	{ "none", 0 },
> >  	{ "ipv4", ETH_RSS_IPV4 },
> >  	{ "ipv4-frag", ETH_RSS_FRAG_IPV4 },
> >  	{ "ipv4-tcp", ETH_RSS_NONFRAG_IPV4_TCP },
> > --
> > 2.7.5
> 
> The "all" and "none" options are already documented in testpmd.
> This looks like a fix, if so should there be a fixes line?
> 

Not a fix, this is used by rte_flow command line, not old CLI.

> Regards,
> 
> Bernard.
>
  

Patch

diff --git a/app/test-pmd/config.c b/app/test-pmd/config.c
index bf3cd0a..f068da1 100644
--- a/app/test-pmd/config.c
+++ b/app/test-pmd/config.c
@@ -74,6 +74,10 @@  static const struct {
 };
 
 const struct rss_type_info rss_type_table[] = {
+	{ "all", ETH_RSS_IP | ETH_RSS_TCP |
+			ETH_RSS_UDP | ETH_RSS_SCTP |
+			ETH_RSS_L2_PAYLOAD },
+	{ "none", 0 },
 	{ "ipv4", ETH_RSS_IPV4 },
 	{ "ipv4-frag", ETH_RSS_FRAG_IPV4 },
 	{ "ipv4-tcp", ETH_RSS_NONFRAG_IPV4_TCP },