ethdev: export secondary attach function
authorAmi Sabo <amis@radware.com>
Thu, 2 Mar 2017 09:00:41 +0000 (11:00 +0200)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Fri, 14 Apr 2017 13:22:31 +0000 (15:22 +0200)
Today eth_dev_attach_secondary is defined as static and can only be
called by pci drivers. However, the functionality is also required for
non-pci drivers - so the patch export the function.

Signed-off-by: Ami Sabo <amis@radware.com>
lib/librte_ether/rte_ethdev.c
lib/librte_ether/rte_ethdev.h
lib/librte_ether/rte_ether_version.map

index fa6ae44..37e8aa8 100644 (file)
@@ -247,8 +247,8 @@ rte_eth_dev_allocate(const char *name)
  * makes sure that the same device would have the same port id both
  * in the primary and secondary process.
  */
-static struct rte_eth_dev *
-eth_dev_attach_secondary(const char *name)
+struct rte_eth_dev *
+rte_eth_dev_attach_secondary(const char *name)
 {
        uint8_t i;
        struct rte_eth_dev *eth_dev;
@@ -310,7 +310,7 @@ rte_eth_dev_pci_probe(struct rte_pci_driver *pci_drv,
                if (eth_dev->data->dev_private == NULL)
                        rte_panic("Cannot allocate memzone for private port data\n");
        } else {
-               eth_dev = eth_dev_attach_secondary(ethdev_name);
+               eth_dev = rte_eth_dev_attach_secondary(ethdev_name);
                if (eth_dev == NULL) {
                        /*
                         * if we failed to attach a device, it means the
index d072538..2a2595b 100644 (file)
@@ -1802,6 +1802,19 @@ struct rte_eth_dev *rte_eth_dev_allocated(const char *name);
  */
 struct rte_eth_dev *rte_eth_dev_allocate(const char *name);
 
+/**
+ * @internal
+ * Attach to the ethdev already initialized by the primary
+ * process.
+ *
+ * @param       name    Ethernet device's name.
+ * @return
+ *   - Success: Slot in the rte_dev_devices array for attached
+ *        device.
+ *   - Error: Null pointer.
+ */
+struct rte_eth_dev *rte_eth_dev_attach_secondary(const char *name);
+
 /**
  * @internal
  * Release the specified ethdev port.
index 0ea3856..66fd5bb 100644 (file)
@@ -158,6 +158,7 @@ DPDK_17.02 {
 DPDK_17.05 {
        global:
 
+       rte_eth_dev_attach_secondary;
        rte_eth_find_next;
 
 } DPDK_17.02;