The idx in rte_vhost_set_last_inflight_io_split is from the frontend
driver, check if it's in the virtqueue range.

Fixes: bb0c2de9602b ("vhost: add APIs to operate inflight ring")
Cc: sta...@dpdk.org

Signed-off-by: Li Feng <fen...@smartx.com>
---
 lib/vhost/vhost.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/lib/vhost/vhost.c b/lib/vhost/vhost.c
index 9540522dac..3b674ac320 100644
--- a/lib/vhost/vhost.c
+++ b/lib/vhost/vhost.c
@@ -1226,6 +1226,9 @@ rte_vhost_set_last_inflight_io_split(int vid, uint16_t 
vring_idx,
        if (unlikely(!vq->inflight_split))
                return -1;
 
+       if (unlikely(idx >= vq->size))
+               return -1;
+
        vq->inflight_split->last_inflight_io = idx;
        return 0;
 }
-- 
2.31.1

Reply via email to