From c82f2f8b4b3a32e7a3fe586419ff4fb628ac9f7d Mon Sep 17 00:00:00 2001 From: Ori Kam Date: Mon, 5 Nov 2018 09:35:27 +0000 Subject: [PATCH] examples/flow_filtering: filter out unsupported offloads Some of the requested offloads are not supported by all devices. This patch fixes this issue by setting only the supported offloads. Fixes: feca6c428a5e ("examples/flow_filtering: add Tx queues setup process") Cc: stable@dpdk.org Signed-off-by: Ori Kam Acked-by: Wei Zhao --- examples/flow_filtering/main.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/examples/flow_filtering/main.c b/examples/flow_filtering/main.c index a73d120e35..27e287ae74 100644 --- a/examples/flow_filtering/main.c +++ b/examples/flow_filtering/main.c @@ -136,6 +136,8 @@ init_port(void) struct rte_eth_rxconf rxq_conf; struct rte_eth_dev_info dev_info; + rte_eth_dev_info_get(port_id, &dev_info); + port_conf.txmode.offloads &= dev_info.rx_offload_capa; printf(":: initializing port: %d\n", port_id); ret = rte_eth_dev_configure(port_id, nr_queues, nr_queues, &port_conf); @@ -145,7 +147,6 @@ init_port(void) ret, port_id); } - rte_eth_dev_info_get(port_id, &dev_info); rxq_conf = dev_info.default_rxconf; rxq_conf.offloads = port_conf.rxmode.offloads; /* only set Rx queues: something we care only so far */ -- 2.20.1