From: Kevin Laatz Date: Thu, 17 Jun 2021 14:18:15 +0000 (+0000) Subject: raw/ioat: fix missing ring pointer reset X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=7972110e59397f05eae31d1406efd0afa22bbbf3;p=dpdk.git raw/ioat: fix missing ring pointer reset In the event of a device reconfigure, "hdls_avail" is not being reset. This can lead to miscalculations in rte_ioat_completed_ops(), causing the function to report an incorrect amount of completed operations. This patch fixes the issue by resetting "hdls_avail" during the device configure. Fixes: 74464005a2af ("raw/ioat: rework SW ring layout") Cc: stable@dpdk.org Signed-off-by: Kevin Laatz Acked-by: Bruce Richardson --- diff --git a/drivers/raw/ioat/ioat_common.c b/drivers/raw/ioat/ioat_common.c index f4771745cc..60de41152a 100644 --- a/drivers/raw/ioat/ioat_common.c +++ b/drivers/raw/ioat/ioat_common.c @@ -174,6 +174,7 @@ idxd_dev_configure(const struct rte_rawdev *dev, } rte_idxd->hdls_read = rte_idxd->batch_start = 0; rte_idxd->batch_size = 0; + rte_idxd->hdls_avail = 0; return 0; }