eventdev: add device stop flush callback
authorGage Eads <gage.eads@intel.com>
Mon, 2 Apr 2018 18:03:30 +0000 (13:03 -0500)
committerThomas Monjalon <thomas@monjalon.net>
Mon, 16 Apr 2018 08:10:12 +0000 (10:10 +0200)
commitd593a8177fb95cfa9554dd7c9c679f56542e7ed0
tree5f9e7a246708abb40da59220f869a68ca71b958d
parentb770f952de678b4964d05ce49b0518919f152b83
eventdev: add device stop flush callback

When an event device is stopped, it drains all event queues and ports.
These events may contain pointers, so to prevent memory leaks eventdev now
supports a user-provided flush callback that is called during the queue
drain process. This callback is stored in process memory, so the callback
must be registered by any process that may call rte_event_dev_stop().

This commit also clarifies the behavior of rte_event_dev_stop().

This follows this mailing list discussion:
http://dpdk.org/ml/archives/dev/2018-January/087484.html

Signed-off-by: Gage Eads <gage.eads@intel.com>
Acked-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
drivers/event/dpaa/dpaa_eventdev.c
drivers/event/dpaa2/dpaa2_eventdev.c
drivers/event/octeontx/ssovf_evdev.c
drivers/event/opdl/opdl_evdev.c
drivers/event/skeleton/skeleton_eventdev.c
drivers/event/sw/sw_evdev.c
lib/librte_eventdev/rte_eventdev.c
lib/librte_eventdev/rte_eventdev.h
lib/librte_eventdev/rte_eventdev_pmd.h
lib/librte_eventdev/rte_eventdev_version.map