event/dlb: add queue and port release

These entry points are NO-OPS. DLB does not support
reconfiguring individual queues or ports. The entire device
must be reconfigured.

Signed-off-by: Timothy McDaniel <timothy.mcdaniel@intel.com>
Reviewed-by: Gage Eads <gage.eads@intel.com>
This commit is contained in:
Timothy McDaniel 2020-11-01 17:30:14 -06:00 committed by Jerin Jacob
parent d1112958f4
commit 11a34b5ac8

View File

@ -159,6 +159,9 @@ dlb_free_qe_mem(struct dlb_port *qm_port)
rte_free(qm_port->consume_qe);
qm_port->consume_qe = NULL;
rte_memzone_free(dlb_port[qm_port->id][PORT_TYPE(qm_port)].mz);
dlb_port[qm_port->id][PORT_TYPE(qm_port)].mz = NULL;
}
static int
@ -3804,6 +3807,28 @@ dlb_eventdev_close(struct rte_eventdev *dev)
return 0;
}
static void
dlb_eventdev_port_release(void *port)
{
struct dlb_eventdev_port *ev_port = port;
if (ev_port) {
struct dlb_port *qm_port = &ev_port->qm_port;
if (qm_port->config_state == DLB_CONFIGURED)
dlb_free_qe_mem(qm_port);
}
}
static void
dlb_eventdev_queue_release(struct rte_eventdev *dev, uint8_t id)
{
RTE_SET_USED(dev);
RTE_SET_USED(id);
/* This function intentionally left blank. */
}
void
dlb_entry_points_init(struct rte_eventdev *dev)
{
@ -3818,7 +3843,9 @@ dlb_entry_points_init(struct rte_eventdev *dev)
.queue_def_conf = dlb_eventdev_queue_default_conf_get,
.port_def_conf = dlb_eventdev_port_default_conf_get,
.queue_setup = dlb_eventdev_queue_setup,
.queue_release = dlb_eventdev_queue_release,
.port_setup = dlb_eventdev_port_setup,
.port_release = dlb_eventdev_port_release,
.port_link = dlb_eventdev_port_link,
.port_unlink = dlb_eventdev_port_unlink,
.port_unlinks_in_progress =