app/testpmd: check for valid mbuf pool

Fixes: b6ea6408fbc7 ("ethdev: store numa_node per device")

Signed-off-by: Bernard Iremonger <bernard.iremonger@intel.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
This commit is contained in:
Bernard Iremonger 2016-06-14 16:35:41 +01:00 committed by Thomas Monjalon
parent 931126baaf
commit 1e1d6bdd6d

View File

@ -1360,7 +1360,7 @@ start_port(portid_t pid)
if (mp == NULL) {
printf("Failed to setup RX queue:"
"No mempool allocation"
"on the socket %d\n",
" on the socket %d\n",
rxring_numa[pi]);
return -1;
}
@ -1368,17 +1368,23 @@ start_port(portid_t pid)
diag = rte_eth_rx_queue_setup(pi, qi,
nb_rxd,rxring_numa[pi],
&(port->rx_conf),mp);
}
else
} else {
struct rte_mempool *mp =
mbuf_pool_find(port->socket_id);
if (mp == NULL) {
printf("Failed to setup RX queue:"
"No mempool allocation"
" on the socket %d\n",
port->socket_id);
return -1;
}
diag = rte_eth_rx_queue_setup(pi, qi,
nb_rxd,port->socket_id,
&(port->rx_conf),
mbuf_pool_find(port->socket_id));
&(port->rx_conf), mp);
}
if (diag == 0)
continue;
/* Fail to setup rx queue, return */
if (rte_atomic16_cmpset(&(port->port_status),
RTE_PORT_HANDLING,