struct null_queue rx_null_queues[RTE_MAX_QUEUES_PER_PORT];
struct null_queue tx_null_queues[RTE_MAX_QUEUES_PER_PORT];
- struct ether_addr eth_addr;
+ struct rte_ether_addr eth_addr;
/** Bit mask of RSS offloads, the bit offset also means flow type */
uint64_t flow_type_rss_offloads;
static int
eth_mac_address_set(__rte_unused struct rte_eth_dev *dev,
- __rte_unused struct ether_addr *addr)
+ __rte_unused struct rte_ether_addr *addr)
{
return 0;
}
if (eth_dev == NULL)
return -1;
- if (rte_eal_process_type() != RTE_PROC_PRIMARY)
- return rte_eth_dev_release_port_secondary(eth_dev);
-
- rte_free(eth_dev->data->dev_private);
+ if (rte_eal_process_type() == RTE_PROC_PRIMARY)
+ /* mac_addrs must not be freed alone because part of dev_private */
+ eth_dev->data->mac_addrs = NULL;
rte_eth_dev_release_port(eth_dev);