diff options
| author | Stefan Hajnoczi | 2022-10-13 20:59:08 +0200 |
|---|---|---|
| committer | Stefan Hajnoczi | 2022-10-26 20:56:42 +0200 |
| commit | baf422684d73c7bf38e2c18815e18d44fcf395b6 (patch) | |
| tree | 3ed8a3693f381a50de97abceea510e30f6260294 /include/hw/virtio | |
| parent | blkio: implement BDRV_REQ_REGISTERED_BUF optimization (diff) | |
| download | qemu-baf422684d73c7bf38e2c18815e18d44fcf395b6.tar.gz qemu-baf422684d73c7bf38e2c18815e18d44fcf395b6.tar.xz qemu-baf422684d73c7bf38e2c18815e18d44fcf395b6.zip | |
virtio-blk: use BDRV_REQ_REGISTERED_BUF optimization hint
Register guest RAM using BlockRAMRegistrar and set the
BDRV_REQ_REGISTERED_BUF flag so block drivers can optimize memory
accesses in I/O requests.
This is for vdpa-blk, vhost-user-blk, and other I/O interfaces that rely
on DMA mapping/unmapping.
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>
Message-id: 20221013185908.1297568-14-stefanha@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Diffstat (limited to 'include/hw/virtio')
| -rw-r--r-- | include/hw/virtio/virtio-blk.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/hw/virtio/virtio-blk.h b/include/hw/virtio/virtio-blk.h index d311c57cca..7f589b4146 100644 --- a/include/hw/virtio/virtio-blk.h +++ b/include/hw/virtio/virtio-blk.h @@ -19,6 +19,7 @@ #include "hw/block/block.h" #include "sysemu/iothread.h" #include "sysemu/block-backend.h" +#include "sysemu/block-ram-registrar.h" #include "qom/object.h" #define TYPE_VIRTIO_BLK "virtio-blk-device" @@ -64,6 +65,7 @@ struct VirtIOBlock { struct VirtIOBlockDataPlane *dataplane; uint64_t host_features; size_t config_size; + BlockRAMRegistrar blk_ram_registrar; }; typedef struct VirtIOBlockReq { |
