[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v5 04/11] dataplane: add virtqueue vring code
From: |
Kevin Wolf |
Subject: |
Re: [Qemu-devel] [PATCH v5 04/11] dataplane: add virtqueue vring code |
Date: |
Fri, 07 Dec 2012 15:07:06 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:13.0) Gecko/20120605 Thunderbird/13.0 |
Am 05.12.2012 21:47, schrieb Stefan Hajnoczi:
> The virtio-blk-data-plane cannot access memory using the usual QEMU
> functions since it executes outside the global mutex and the memory APIs
> are this time are not thread-safe.
>
> This patch introduces a virtqueue module based on the kernel's vhost
> vring code. The trick is that we map guest memory ahead of time and
> access it cheaply outside the global mutex.
>
> Once the hardware emulation code can execute outside the global mutex it
> will be possible to drop this code.
>
> Signed-off-by: Stefan Hajnoczi <address@hidden>
> ---
> hw/Makefile.objs | 2 +-
> hw/dataplane/Makefile.objs | 2 +-
> hw/dataplane/vring.c | 361
> +++++++++++++++++++++++++++++++++++++++++++++
> hw/dataplane/vring.h | 63 ++++++++
> trace-events | 3 +
> 5 files changed, 429 insertions(+), 2 deletions(-)
> create mode 100644 hw/dataplane/vring.c
> create mode 100644 hw/dataplane/vring.h
>
> diff --git a/hw/Makefile.objs b/hw/Makefile.objs
> index d581d8d..cec84bc 100644
> --- a/hw/Makefile.objs
> +++ b/hw/Makefile.objs
> @@ -1,4 +1,4 @@
> -common-obj-y = usb/ ide/
> +common-obj-y = usb/ ide/ dataplane/
> common-obj-y += loader.o
> common-obj-$(CONFIG_VIRTIO) += virtio-console.o
> common-obj-$(CONFIG_VIRTIO) += virtio-rng.o
Shouldn't this hunk be in patch 3?
Kevin
- [Qemu-devel] [PATCH v5 00/11] virtio: virtio-blk data plane, Stefan Hajnoczi, 2012/12/05
- [Qemu-devel] [PATCH v5 01/11] raw-posix: add raw_get_aio_fd() for virtio-blk-data-plane, Stefan Hajnoczi, 2012/12/05
- [Qemu-devel] [PATCH v5 02/11] configure: add CONFIG_VIRTIO_BLK_DATA_PLANE, Stefan Hajnoczi, 2012/12/05
- [Qemu-devel] [PATCH v5 03/11] dataplane: add host memory mapping code, Stefan Hajnoczi, 2012/12/05
- [Qemu-devel] [PATCH v5 04/11] dataplane: add virtqueue vring code, Stefan Hajnoczi, 2012/12/05
- [Qemu-devel] [PATCH v5 05/11] dataplane: add event loop, Stefan Hajnoczi, 2012/12/05
- [Qemu-devel] [PATCH v5 06/11] dataplane: add Linux AIO request queue, Stefan Hajnoczi, 2012/12/05
- [Qemu-devel] [PATCH v5 07/11] iov: add iov_discard() to remove data, Stefan Hajnoczi, 2012/12/05
- [Qemu-devel] [PATCH v5 11/11] virtio-blk: add x-data-plane=on|off performance feature, Stefan Hajnoczi, 2012/12/05
- [Qemu-devel] [PATCH v5 09/11] iov: add qemu_iovec_concat_iov(), Stefan Hajnoczi, 2012/12/05