dpdk: treat unknown socket ID as a valid socket ID

Ticket: #6232
pull/9288/head
Lukas Sismis 2 years ago committed by Victor Julien
parent 223356bfb5
commit ff8bbda53b

@ -1073,7 +1073,7 @@ static void DeviceSetMTU(struct rte_eth_conf *port_conf, uint16_t mtu)
/**
* \param port_id - queried port
* \param socket_id - socket ID of the queried port
* \return positive number on success, negative on failure (errno)
* \return non-negative number on success, negative on failure (errno)
*/
static int32_t DeviceSetSocketID(uint16_t port_id, int32_t *socket_id)
{
@ -1083,6 +1083,9 @@ static int32_t DeviceSetSocketID(uint16_t port_id, int32_t *socket_id)
#if RTE_VERSION >= RTE_VERSION_NUM(22, 11, 0, 0) // DPDK API changed since 22.11
retval = -rte_errno;
#else
if (retval == SOCKET_ID_ANY)
retval = 0; // DPDK couldn't determine socket ID of a port
#endif
return retval;

@ -553,11 +553,10 @@ static TmEcode ReceiveDPDKThreadInit(ThreadVars *tv, const void *initdata, void
DevicePostStartPMDSpecificActions(ptv, dev_info.driver_name);
uint16_t inconsistent_numa_cnt = SC_ATOMIC_GET(dpdk_config->inconsitent_numa_cnt);
if (inconsistent_numa_cnt > 0) {
if (inconsistent_numa_cnt > 0 && ptv->port_socket_id != SOCKET_ID_ANY) {
SCLogWarning("%s: NIC is on NUMA %d, %u threads on different NUMA node(s)",
dpdk_config->iface, rte_eth_dev_socket_id(ptv->port_id), inconsistent_numa_cnt);
}
if (ptv->port_socket_id == SOCKET_ID_ANY) {
dpdk_config->iface, ptv->port_socket_id, inconsistent_numa_cnt);
} else if (ptv->port_socket_id == SOCKET_ID_ANY) {
SCLogNotice(
"%s: unable to determine NIC's NUMA node, degraded performance can be expected",
dpdk_config->iface);

Loading…
Cancel
Save