[PATCH v3 3/4] event/skeleton: fix missing device pointer
Bruce Richardson
bruce.richardson at intel.com
Tue Oct 17 18:46:09 CEST 2023
Initialize the "dev" pointer in the eventdev structure so it can be
returned in calls to "rte_event_dev_info_get()" and avoid potential
crashes due to a NULL value being passed to "rte_dev_name()"
Fixes: bbbb929da5e6 ("event/skeleton: add skeleton eventdev driver")
Cc: stable at dpdk.org
Signed-off-by: Bruce Richardson <bruce.richardson at intel.com>
---
drivers/event/skeleton/skeleton_eventdev.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/event/skeleton/skeleton_eventdev.c b/drivers/event/skeleton/skeleton_eventdev.c
index dc9b131641..3aa6657f39 100644
--- a/drivers/event/skeleton/skeleton_eventdev.c
+++ b/drivers/event/skeleton/skeleton_eventdev.c
@@ -428,7 +428,7 @@ RTE_PMD_REGISTER_PCI_TABLE(event_skeleton_pci, pci_id_skeleton_map);
/* VDEV based event device */
static int
-skeleton_eventdev_create(const char *name, int socket_id)
+skeleton_eventdev_create(const char *name, int socket_id, struct rte_vdev_device *vdev)
{
struct rte_eventdev *eventdev;
@@ -440,6 +440,7 @@ skeleton_eventdev_create(const char *name, int socket_id)
}
eventdev->dev_ops = &skeleton_eventdev_ops;
+ eventdev->dev = &vdev->device;
eventdev->enqueue = skeleton_eventdev_enqueue;
eventdev->enqueue_burst = skeleton_eventdev_enqueue_burst;
eventdev->dequeue = skeleton_eventdev_dequeue;
@@ -459,7 +460,7 @@ skeleton_eventdev_probe(struct rte_vdev_device *vdev)
name = rte_vdev_device_name(vdev);
RTE_LOG(INFO, PMD, "Initializing %s on NUMA node %d\n", name,
rte_socket_id());
- return skeleton_eventdev_create(name, rte_socket_id());
+ return skeleton_eventdev_create(name, rte_socket_id(), vdev);
}
static int
--
2.39.2
More information about the stable
mailing list