examples/ipsec_secgw: fix security session

Fixes: 3da37f6821 ("examples/ipsec_secgw: create session mempools for ethdevs")

Some NICs do not have the rte_security context, this patch fixes the segment fault
caused by this.

Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com>
Acked-by: Radu Nicolau <radu.nicolau@intel.com>
This commit is contained in:
Fan Zhang 2018-01-23 12:32:11 +00:00 committed by Pablo de Lara
parent c202320775
commit a6b57a534d

View File

@ -1384,10 +1384,16 @@ cryptodevs_init(void)
max_sess_sz = sess_sz;
}
for (port_id = 0; port_id < rte_eth_dev_count(); port_id++) {
void *sec_ctx;
if ((enabled_port_mask & (1 << port_id)) == 0)
continue;
sess_sz = rte_security_session_get_size(
rte_eth_dev_get_sec_ctx(port_id));
sec_ctx = rte_eth_dev_get_sec_ctx(port_id);
if (sec_ctx == NULL)
continue;
sess_sz = rte_security_session_get_size(sec_ctx);
if (sess_sz > max_sess_sz)
max_sess_sz = sess_sz;
}