vhost: fix sign extension in async split ring
authorCheng Jiang <cheng1.jiang@intel.com>
Wed, 12 May 2021 02:30:41 +0000 (02:30 +0000)
committerChenbo Xia <chenbo.xia@intel.com>
Wed, 12 May 2021 08:28:08 +0000 (10:28 +0200)
Change the variable type in store_dma_desc_info_split() to fix
suspicious implicit sign extension.

Coverity issue: 370604, 370607, 370609
Fixes: 3d6cb86b0de5 ("vhost: refactor async split ring functions")

Signed-off-by: Cheng Jiang <cheng1.jiang@intel.com>
lib/vhost/virtio_net.c

index 8e36f4c..9137a99 100644 (file)
@@ -1474,7 +1474,7 @@ static __rte_always_inline void
 store_dma_desc_info_split(struct vring_used_elem *s_ring, struct vring_used_elem *d_ring,
                uint16_t ring_size, uint16_t s_idx, uint16_t d_idx, uint16_t count)
 {
-       uint16_t elem_size = sizeof(struct vring_used_elem);
+       size_t elem_size = sizeof(struct vring_used_elem);
 
        if (d_idx + count <= ring_size) {
                rte_memcpy(d_ring + d_idx, s_ring + s_idx, count * elem_size);