virtio_ring: remove flags check for unmap packed indirect desc
authorXuan Zhuo <xuanzhuo@linux.alibaba.com>
Thu, 24 Feb 2022 11:03:56 +0000 (19:03 +0800)
committerMichael S. Tsirkin <mst@redhat.com>
Mon, 28 Mar 2022 20:52:58 +0000 (16:52 -0400)
When calling vring_unmap_desc_packed(), it will not encounter the
situation that the flags contains VRING_DESC_F_INDIRECT. So remove this
logic.

Signed-off-by: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
Link: https://lore.kernel.org/r/20220224110402.108161-4-xuanzhuo@linux.alibaba.com
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
drivers/virtio/virtio_ring.c

index fadd0a7503e9e4d838e53d7cda44e754b6d2e098..cfb028ca238ebf1fbcdc5b11b5870aa78956361a 100644 (file)
@@ -1009,19 +1009,11 @@ static void vring_unmap_desc_packed(const struct vring_virtqueue *vq,
 
        flags = le16_to_cpu(desc->flags);
 
-       if (flags & VRING_DESC_F_INDIRECT) {
-               dma_unmap_single(vring_dma_dev(vq),
-                                le64_to_cpu(desc->addr),
-                                le32_to_cpu(desc->len),
-                                (flags & VRING_DESC_F_WRITE) ?
-                                DMA_FROM_DEVICE : DMA_TO_DEVICE);
-       } else {
-               dma_unmap_page(vring_dma_dev(vq),
-                              le64_to_cpu(desc->addr),
-                              le32_to_cpu(desc->len),
-                              (flags & VRING_DESC_F_WRITE) ?
-                              DMA_FROM_DEVICE : DMA_TO_DEVICE);
-       }
+       dma_unmap_page(vring_dma_dev(vq),
+                      le64_to_cpu(desc->addr),
+                      le32_to_cpu(desc->len),
+                      (flags & VRING_DESC_F_WRITE) ?
+                      DMA_FROM_DEVICE : DMA_TO_DEVICE);
 }
 
 static struct vring_packed_desc *alloc_indirect_packed(unsigned int total_sg,