* Re: [dpdk-dev] [PATCH] examples/ip_pipeline: fix RSS
2018-07-31 14:49 [dpdk-dev] [PATCH] examples/ip_pipeline: fix RSS Cristian Dumitrescu
@ 2018-07-31 14:53 ` Zhang, Roy Fan
2018-07-31 14:53 ` Ananyev, Konstantin
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: Zhang, Roy Fan @ 2018-07-31 14:53 UTC (permalink / raw)
To: Dumitrescu, Cristian, dev
> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Cristian Dumitrescu
> Sent: Tuesday, July 31, 2018 3:49 PM
> To: dev@dpdk.org
> Subject: [dpdk-dev] [PATCH] examples/ip_pipeline: fix RSS
>
> Fix for RSS issue triggered by latest changes in ethdev layer.
>
> Signed-off-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
> ---
> examples/ip_pipeline/link.c | 9 +++------
> 1 file changed, 3 insertions(+), 6 deletions(-)
>
> diff --git a/examples/ip_pipeline/link.c b/examples/ip_pipeline/link.c index
> 2ccfea4..392a890 100644
> --- a/examples/ip_pipeline/link.c
> +++ b/examples/ip_pipeline/link.c
> @@ -158,12 +158,9 @@ link_create(const char *name, struct link_params
> *params)
> memcpy(&port_conf, &port_conf_default, sizeof(port_conf));
> if (rss) {
> port_conf.rxmode.mq_mode = ETH_MQ_RX_RSS;
> - if (port_info.flow_type_rss_offloads & ETH_RSS_IPV4)
> - port_conf.rx_adv_conf.rss_conf.rss_hf |=
> - ETH_RSS_IPV4;
> - if (port_info.flow_type_rss_offloads & ETH_RSS_IPV6)
> - port_conf.rx_adv_conf.rss_conf.rss_hf |=
> - ETH_RSS_IPV6;
> + port_conf.rx_adv_conf.rss_conf.rss_hf =
> + (ETH_RSS_IP | ETH_RSS_TCP | ETH_RSS_UDP) &
> + port_info.flow_type_rss_offloads;
> }
>
> cpu_id = (uint32_t) rte_eth_dev_socket_id(port_id);
> --
> 2.7.4
Acked-by: Fan Zhang <roy.fan.zhang@intel.com>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [dpdk-dev] [PATCH] examples/ip_pipeline: fix RSS
2018-07-31 14:49 [dpdk-dev] [PATCH] examples/ip_pipeline: fix RSS Cristian Dumitrescu
2018-07-31 14:53 ` Zhang, Roy Fan
@ 2018-07-31 14:53 ` Ananyev, Konstantin
2018-08-02 7:03 ` Peng, Yuan
2018-08-05 20:08 ` Thomas Monjalon
3 siblings, 0 replies; 5+ messages in thread
From: Ananyev, Konstantin @ 2018-07-31 14:53 UTC (permalink / raw)
To: Dumitrescu, Cristian, dev
> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Cristian Dumitrescu
> Sent: Tuesday, July 31, 2018 3:49 PM
> To: dev@dpdk.org
> Subject: [dpdk-dev] [PATCH] examples/ip_pipeline: fix RSS
>
> Fix for RSS issue triggered by latest changes in ethdev layer.
>
> Signed-off-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
> ---
> examples/ip_pipeline/link.c | 9 +++------
> 1 file changed, 3 insertions(+), 6 deletions(-)
>
> diff --git a/examples/ip_pipeline/link.c b/examples/ip_pipeline/link.c
> index 2ccfea4..392a890 100644
> --- a/examples/ip_pipeline/link.c
> +++ b/examples/ip_pipeline/link.c
> @@ -158,12 +158,9 @@ link_create(const char *name, struct link_params *params)
> memcpy(&port_conf, &port_conf_default, sizeof(port_conf));
> if (rss) {
> port_conf.rxmode.mq_mode = ETH_MQ_RX_RSS;
> - if (port_info.flow_type_rss_offloads & ETH_RSS_IPV4)
> - port_conf.rx_adv_conf.rss_conf.rss_hf |=
> - ETH_RSS_IPV4;
> - if (port_info.flow_type_rss_offloads & ETH_RSS_IPV6)
> - port_conf.rx_adv_conf.rss_conf.rss_hf |=
> - ETH_RSS_IPV6;
> + port_conf.rx_adv_conf.rss_conf.rss_hf =
> + (ETH_RSS_IP | ETH_RSS_TCP | ETH_RSS_UDP) &
> + port_info.flow_type_rss_offloads;
> }
>
> cpu_id = (uint32_t) rte_eth_dev_socket_id(port_id);
> --
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
> 2.7.4
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [dpdk-dev] [PATCH] examples/ip_pipeline: fix RSS
2018-07-31 14:49 [dpdk-dev] [PATCH] examples/ip_pipeline: fix RSS Cristian Dumitrescu
2018-07-31 14:53 ` Zhang, Roy Fan
2018-07-31 14:53 ` Ananyev, Konstantin
@ 2018-08-02 7:03 ` Peng, Yuan
2018-08-05 20:08 ` Thomas Monjalon
3 siblings, 0 replies; 5+ messages in thread
From: Peng, Yuan @ 2018-08-02 7:03 UTC (permalink / raw)
To: Dumitrescu, Cristian, dev; +Cc: Peng, Yuan
Tested-by: Peng, Yuan <yuan.peng@intel.com>
- Tested Commit: 23888166d99682b1491a917277e4ff0ff01639b2
- 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 Device Fortville [8086:1583]
- Default x86_64-native-linuxapp-gcc configuration
I have verified the ip_pipeline rss case with 18.08-rc2 applied your patch 43469
* ./build/ip_pipeline -c 0x1F -n 4 -- -s ./examples/rss.cli
* Start traffic on just one input port.
* output traffic was seen (in equal amounts) for each of the 4x output ports
the bug is not represented.
-----Original Message-----
From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Cristian Dumitrescu
Sent: Tuesday, July 31, 2018 10:49 PM
To: dev@dpdk.org
Subject: [dpdk-dev] [PATCH] examples/ip_pipeline: fix RSS
Fix for RSS issue triggered by latest changes in ethdev layer.
Signed-off-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
---
examples/ip_pipeline/link.c | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)
diff --git a/examples/ip_pipeline/link.c b/examples/ip_pipeline/link.c index 2ccfea4..392a890 100644
--- a/examples/ip_pipeline/link.c
+++ b/examples/ip_pipeline/link.c
@@ -158,12 +158,9 @@ link_create(const char *name, struct link_params *params)
memcpy(&port_conf, &port_conf_default, sizeof(port_conf));
if (rss) {
port_conf.rxmode.mq_mode = ETH_MQ_RX_RSS;
- if (port_info.flow_type_rss_offloads & ETH_RSS_IPV4)
- port_conf.rx_adv_conf.rss_conf.rss_hf |=
- ETH_RSS_IPV4;
- if (port_info.flow_type_rss_offloads & ETH_RSS_IPV6)
- port_conf.rx_adv_conf.rss_conf.rss_hf |=
- ETH_RSS_IPV6;
+ port_conf.rx_adv_conf.rss_conf.rss_hf =
+ (ETH_RSS_IP | ETH_RSS_TCP | ETH_RSS_UDP) &
+ port_info.flow_type_rss_offloads;
}
cpu_id = (uint32_t) rte_eth_dev_socket_id(port_id);
--
2.7.4
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [dpdk-dev] [PATCH] examples/ip_pipeline: fix RSS
2018-07-31 14:49 [dpdk-dev] [PATCH] examples/ip_pipeline: fix RSS Cristian Dumitrescu
` (2 preceding siblings ...)
2018-08-02 7:03 ` Peng, Yuan
@ 2018-08-05 20:08 ` Thomas Monjalon
3 siblings, 0 replies; 5+ messages in thread
From: Thomas Monjalon @ 2018-08-05 20:08 UTC (permalink / raw)
To: Cristian Dumitrescu; +Cc: dev, Fan Zhang, Konstantin Ananyev, Yuan Peng
31/07/2018 16:49, Cristian Dumitrescu:
> Fix for RSS issue triggered by latest changes in ethdev layer.
>
> Signed-off-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
Collected agreements:
Acked-by: Fan Zhang <roy.fan.zhang@intel.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Tested-by: Yuan Peng <yuan.peng@intel.com>
But 3 things are missing:
- The issue is not described
- The fix is not explained (you chose to mask unsupported RSS fields)
- There is no Fixes line, I guess this one:
Fixes: aa1a6d87f15d ("ethdev: force RSS offload rules again")
Please send a v2
^ permalink raw reply [flat|nested] 5+ messages in thread