int skeleton_pmd_logtype;
/* Count of instances */
-uint16_t skeldev_init_once;
+static uint16_t skeldev_init_once;
/**< Rawdev Skeleton dummy driver name */
#define SKELETON_PMD_RAWDEV_NAME rawdev_skeleton
return ret;
}
+static uint16_t skeleton_rawdev_queue_count(struct rte_rawdev *dev)
+{
+ struct skeleton_rawdev *skeldev;
+
+ SKELETON_PMD_FUNC_TRACE();
+
+ RTE_FUNC_PTR_OR_ERR_RET(dev, -EINVAL);
+
+ skeldev = skeleton_rawdev_get_priv(dev);
+ return skeldev->num_queues;
+}
+
static int skeleton_rawdev_get_attr(struct rte_rawdev *dev,
const char *attr_name,
uint64_t *attr_value)
.queue_def_conf = skeleton_rawdev_queue_def_conf,
.queue_setup = skeleton_rawdev_queue_setup,
.queue_release = skeleton_rawdev_queue_release,
+ .queue_count = skeleton_rawdev_queue_count,
.attr_get = skeleton_rawdev_get_attr,
.attr_set = skeleton_rawdev_set_attr,
rawdev->dev_ops = &skeleton_rawdev_ops;
rawdev->device = &vdev->device;
- rawdev->driver_name = vdev->device.driver->name;
skeldev = skeleton_rawdev_get_priv(rawdev);
name = rte_vdev_device_name(vdev);
+ if (name == NULL)
+ return -EINVAL;
+
/* More than one instance is not supported */
if (skeldev_init_once) {
SKELETON_PMD_ERR("Multiple instance not supported for %s",
int ret;
name = rte_vdev_device_name(vdev);
+ if (name == NULL)
+ return -1;
SKELETON_PMD_INFO("Closing %s on NUMA node %d", name, rte_socket_id());