Hi THomas, <snip>
> > @@ -424,7 +425,10 @@ rte_eth_dev_socket_id(uint8_t port_id) { > > if (!rte_eth_dev_is_valid_port(port_id)) > > return -1; > > - return rte_eth_devices[port_id].pci_dev->numa_node; > > + if (rte_eth_devices[port_id].dev_type == RTE_ETH_DEV_PCI) > > + return rte_eth_devices[port_id].pci_dev->numa_node; > > + else > > + return rte_eth_devices[port_id].data->numa_node; > > Clearly not the way to go. > We should remove the special cases (PCI, PDEV, VDEV) instead of adding > more checks. The dev_type field is not new, just using it now to distinguish between PCI and non PCI devices. I have moved some of the RTE_PCI_DRV flags to a new dev_flags field in struct rte_eth_dev{}, These flags are independent of the driver type (PCI or non PCI). Do you have view on this new dev_flags field and macros? Regards, Bernard.