From: Kevin Laatz <kevin.la...@intel.com> When rte_rawdev_pmd_release() is called, rte_rawdev_close() looks for a dev_close function for the device causing a segmentation fault when no close() function is implemented for a driver.
This patch resolves the issue by adding a stub function ioat_dev_close(). Fixes: f687e842e328 ("raw/ioat: introduce IOAT driver") Cc: sta...@dpdk.org Reported-by: Sunil Pai G <sunil.pa...@intel.com> Signed-off-by: Kevin Laatz <kevin.la...@intel.com> Reviewed-by: Bruce Richardson <bruce.richard...@intel.com> Acked-by: Sunil Pai G <sunil.pa...@intel.com> Acked-by: Radu Nicolau <radu.nico...@intel.com> --- drivers/raw/ioat/ioat_rawdev.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/drivers/raw/ioat/ioat_rawdev.c b/drivers/raw/ioat/ioat_rawdev.c index 7f1a15436..0732b059f 100644 --- a/drivers/raw/ioat/ioat_rawdev.c +++ b/drivers/raw/ioat/ioat_rawdev.c @@ -203,6 +203,12 @@ ioat_xstats_reset(struct rte_rawdev *dev, const uint32_t *ids, uint32_t nb_ids) return 0; } +static int +ioat_dev_close(struct rte_rawdev *dev __rte_unused) +{ + return 0; +} + extern int ioat_rawdev_test(uint16_t dev_id); static int @@ -212,6 +218,7 @@ ioat_rawdev_create(const char *name, struct rte_pci_device *dev) .dev_configure = ioat_dev_configure, .dev_start = ioat_dev_start, .dev_stop = ioat_dev_stop, + .dev_close = ioat_dev_close, .dev_info_get = ioat_dev_info_get, .xstats_get = ioat_xstats_get, .xstats_get_names = ioat_xstats_get_names, -- 2.25.1