virtio: Add bool to VirtQueueElement
authorJonah Palmer <jonah.palmer@oracle.com>
Wed, 10 Jul 2024 12:55:14 +0000 (08:55 -0400)
committerMichael S. Tsirkin <mst@redhat.com>
Sun, 21 Jul 2024 18:45:56 +0000 (14:45 -0400)
Add the boolean 'in_order_filled' member to the VirtQueueElement structure.
The use of this boolean will signify whether the element has been processed
and is ready to be flushed (so long as the element is in-order). This
boolean is used to support the VIRTIO_F_IN_ORDER feature.

Reviewed-by: Eugenio Pérez <eperezma@redhat.com>
Signed-off-by: Jonah Palmer <jonah.palmer@oracle.com>
Message-Id: <20240710125522.4168043-2-jonah.palmer@oracle.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
include/hw/virtio/virtio.h

index 7512afbc8404e1d6a3424defc4ad03932cfad4d1..fdc827f82e47eb2d11840dd50c9e06e46eb5aceb 100644 (file)
@@ -69,6 +69,8 @@ typedef struct VirtQueueElement
     unsigned int ndescs;
     unsigned int out_num;
     unsigned int in_num;
+    /* Element has been processed (VIRTIO_F_IN_ORDER) */
+    bool in_order_filled;
     hwaddr *in_addr;
     hwaddr *out_addr;
     struct iovec *in_sg;