cryptodev: simplify device list retrieval logic
authorPablo de Lara <pablo.de.lara.guarch@intel.com>
Wed, 21 Jun 2017 06:28:21 +0000 (07:28 +0100)
committerPablo de Lara <pablo.de.lara.guarch@intel.com>
Wed, 28 Jun 2017 17:59:22 +0000 (19:59 +0200)
rte_cryptodev_devices_get() function returns an array of devices
sharing the same driver.

Instead of having two different paths depending on the device being
virtual or physical, retrieve the driver name from rte_device structure.

Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Acked-by: Declan Doherty <declan.doherty@intel.com>
lib/librte_cryptodev/rte_cryptodev.c

index 8875304..46b9adc 100644 (file)
@@ -511,15 +511,11 @@ rte_cryptodev_devices_get(const char *driver_name, uint8_t *devices,
        for (i = 0; i < max_devs && count < nb_devices; i++) {
 
                if (devs[i].attached == RTE_CRYPTODEV_ATTACHED) {
-                       const struct rte_cryptodev_driver *drv = devs[i].driver;
                        int cmp;
 
-                       if (drv)
-                               cmp = strncmp(drv->pci_drv.driver.name,
-                                       driver_name, strlen(driver_name));
-                       else
-                               cmp = strncmp(devs[i].data->name,
-                                       driver_name, strlen(driver_name));
+                       cmp = strncmp(devs[i].device->driver->name,
+                                       driver_name,
+                                       strlen(driver_name));
 
                        if (cmp == 0)
                                devices[count++] = devs[i].data->dev_id;