From 0109baf1964ca047646d49708263b2f6cbd63571 Mon Sep 17 00:00:00 2001 From: Marcin Zapolski Date: Wed, 17 Jul 2019 09:58:06 +0200 Subject: [PATCH] examples/ipsec-secgw: fix use of ethdev internal struct Modify ipsec-secgw example app to use rte_eth_dev_info_get instead of rte_eth_dev. Apps should not be using internal DPDK data structures directly. Fixes: a4677f78368b ("examples/ipsec-secgw: add target queues in flow actions") Cc: stable@dpdk.org Signed-off-by: Marcin Zapolski Reviewed-by: Bruce Richardson Acked-by: Nelio Laranjeiro --- examples/ipsec-secgw/ipsec.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/examples/ipsec-secgw/ipsec.c b/examples/ipsec-secgw/ipsec.c index d1cbdc38d5..f8fc49bac1 100644 --- a/examples/ipsec-secgw/ipsec.c +++ b/examples/ipsec-secgw/ipsec.c @@ -189,23 +189,22 @@ create_session(struct ipsec_ctx *ipsec_ctx, struct ipsec_sa *sa) .rss_key = rss_key, .rss_key_len = 40, }; - struct rte_eth_dev *eth_dev; + struct rte_eth_dev_info dev_info; uint16_t queue[RTE_MAX_QUEUES_PER_PORT]; struct rte_flow_action_rss action_rss; unsigned int i; unsigned int j; + rte_eth_dev_info_get(sa->portid, &dev_info); sa->action[2].type = RTE_FLOW_ACTION_TYPE_END; /* Try RSS. */ sa->action[1].type = RTE_FLOW_ACTION_TYPE_RSS; sa->action[1].conf = &action_rss; - eth_dev = ctx->device; rte_eth_dev_rss_hash_conf_get(sa->portid, &rss_conf); for (i = 0, j = 0; - i < eth_dev->data->nb_rx_queues; ++i) - if (eth_dev->data->rx_queues[i]) - queue[j++] = i; + i < dev_info.nb_rx_queues; ++i) + queue[j++] = i; action_rss = (struct rte_flow_action_rss){ .types = rss_conf.rss_hf, .key_len = rss_conf.rss_key_len, -- 2.20.1