[dpdk-dev] [PATCH v2 15/27] app/testpmd: enlarge the hash flags of RSS to 64 bits

Helin Zhang helin.zhang at intel.com
Thu Jun 5 07:08:59 CEST 2014


As the hash flags of RSS has been enlarged from 16 bits to 64 bits in
'struct rte_eth_rss_conf' in rte_ethdev.h, the size of it in testpmd
should be enlarged as well. In addition, macro of ETH_RSS_IP is used
to replace all IP hash flags of RSS.

Signed-off-by: Helin Zhang <helin.zhang at intel.com>
Signed-off-by: Jing Chen <jing.d.chen at intel.com>
Acked-by: Cunming Liang <cunming.liang at intel.com>
Acked-by: Jijiang Liu <jijiang.liu at intel.com>
Acked-by: Jingjing Wu <jingjing.wu at intel.com>
Tested-by: Waterman Cao <waterman.cao at intel.com>
---
 app/test-pmd/cmdline.c    | 4 ++--
 app/test-pmd/parameters.c | 5 ++---
 app/test-pmd/testpmd.c    | 2 +-
 app/test-pmd/testpmd.h    | 2 +-
 4 files changed, 6 insertions(+), 7 deletions(-)

diff --git a/app/test-pmd/cmdline.c b/app/test-pmd/cmdline.c
index ddb825d..fb52e89 100644
--- a/app/test-pmd/cmdline.c
+++ b/app/test-pmd/cmdline.c
@@ -1135,9 +1135,9 @@ cmd_config_rss_parsed(void *parsed_result,
 	uint8_t i;
 
 	if (!strcmp(res->value, "ip"))
-		rss_conf.rss_hf = ETH_RSS_IPV4 | ETH_RSS_IPV6;
+		rss_conf.rss_hf = ETH_RSS_IP;
 	else if (!strcmp(res->value, "udp"))
-		rss_conf.rss_hf = ETH_RSS_IPV4_UDP | ETH_RSS_IPV6_UDP;
+		rss_conf.rss_hf = ETH_RSS_UDP;
 	else if (!strcmp(res->value, "none"))
 		rss_conf.rss_hf = 0;
 	else {
diff --git a/app/test-pmd/parameters.c b/app/test-pmd/parameters.c
index 7a60048..725ca6f 100644
--- a/app/test-pmd/parameters.c
+++ b/app/test-pmd/parameters.c
@@ -832,10 +832,9 @@ launch_args_parse(int argc, char** argv)
 			if (!strcmp(lgopts[opt_idx].name, "forward-mode"))
 				set_pkt_forwarding_mode(optarg);
 			if (!strcmp(lgopts[opt_idx].name, "rss-ip"))
-				rss_hf = ETH_RSS_IPV4 | ETH_RSS_IPV6;
+				rss_hf = ETH_RSS_IP;
 			if (!strcmp(lgopts[opt_idx].name, "rss-udp"))
-				rss_hf = ETH_RSS_IPV4 |
-						ETH_RSS_IPV6 | ETH_RSS_IPV4_UDP;
+				rss_hf = ETH_RSS_UDP;
 			if (!strcmp(lgopts[opt_idx].name, "rxq")) {
 				n = atoi(optarg);
 				if (n >= 1 && n <= (int) MAX_QUEUE_ID)
diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c
index bc38305..eea2c6c 100644
--- a/app/test-pmd/testpmd.c
+++ b/app/test-pmd/testpmd.c
@@ -250,7 +250,7 @@ uint32_t txq_flags = 0; /* No flags set. */
 /*
  * Receive Side Scaling (RSS) configuration.
  */
-uint16_t rss_hf = ETH_RSS_IPV4 | ETH_RSS_IPV6; /* RSS IP by default. */
+uint64_t rss_hf = ETH_RSS_IP; /* RSS IP by default. */
 
 /*
  * Port topology configuration
diff --git a/app/test-pmd/testpmd.h b/app/test-pmd/testpmd.h
index c2b970e..f91f9cd 100644
--- a/app/test-pmd/testpmd.h
+++ b/app/test-pmd/testpmd.h
@@ -326,7 +326,7 @@ extern portid_t fwd_ports_ids[RTE_MAX_ETHPORTS];
 extern struct rte_port *ports;
 
 extern struct rte_eth_rxmode rx_mode;
-extern uint16_t rss_hf;
+extern uint64_t rss_hf;
 
 extern queueid_t nb_rxq;
 extern queueid_t nb_txq;
-- 
1.8.1.4



More information about the dev mailing list