raw/ioat: fix memory leak in device configure
authorKevin Laatz <kevin.laatz@intel.com>
Thu, 17 Jun 2021 14:17:52 +0000 (14:17 +0000)
committerThomas Monjalon <thomas@monjalon.net>
Tue, 22 Jun 2021 20:58:15 +0000 (22:58 +0200)
During device configure, memory is allocated for "hdl_ring_flags". In the
event of another call to the device configure function (reconfigure), a
memory leak would occur. This patch fixes the memory leak by free'ing the
memory before reallocating it.

Fixes: 245efe544d8e ("raw/ioat: report status of completed jobs")
Cc: stable@dpdk.org
Signed-off-by: Kevin Laatz <kevin.laatz@intel.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
drivers/raw/ioat/ioat_common.c

index d01c1ee..f477174 100644 (file)
@@ -147,6 +147,7 @@ idxd_dev_configure(const struct rte_rawdev *dev,
        /* in case we are reconfiguring a device, free any existing memory */
        rte_free(rte_idxd->desc_ring);
        rte_free(rte_idxd->hdl_ring);
+       rte_free(rte_idxd->hdl_ring_flags);
 
        /* allocate the descriptor ring at 2x size as batches can't wrap */
        rte_idxd->desc_ring = rte_zmalloc(NULL,