Hello Stephen,

hw struct is just used in control plane, I think it has little impact on performance, howerver I am going to take your advice and fix it in next version of patches.

Thanks.

On 2023/9/18 10:28, Stephen Hemminger wrote:
On Mon, 4 Sep 2023 12:56:30 +0800
<wa...@3snic.com> wrote:

  static int
  sssnic_ethdev_init(struct rte_eth_dev *ethdev)
  {
-       RTE_SET_USED(ethdev);
+       int ret;
+       struct sssnic_hw *hw;
+       struct sssnic_netdev *netdev;
+       struct rte_pci_device *pci_dev;
+
        PMD_INIT_FUNC_TRACE();
- return -EINVAL;
+       if (rte_eal_process_type() != RTE_PROC_PRIMARY)
+               return 0;
+
+       netdev = SSSNIC_ETHDEV_PRIVATE(ethdev);
+       pci_dev = RTE_ETH_DEV_TO_PCI(ethdev);
+       hw = rte_zmalloc("sssnic_hw", sizeof(struct sssnic_hw), 0);
For performance you might want to use rte_zmalloc_socket() to make sure
the hw structure is on the same NUMA node as PCI device.

--
Regards,
Renyong Wan

Reply via email to