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 <stefa...@redhat.com> > --- > 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