On Mon, Aug 6, 2012 at 2:26 PM, Paolo Bonzini <pbonz...@redhat.com> wrote: > Commit b1f416aa8d870fab71030abc9401cfc77b948e8e breaks vhost_net > because it always registers the virtio_pci_host_notifier_read() handler > function on the ioeventfd, even when vhost_net.ko is using the ioeventfd. > The result is both QEMU and vhost_net.ko polling on the same eventfd > and the virtio_net.ko guest driver seeing inconsistent results: > > # ifconfig eth0 192.168.0.1 netmask 255.255.255.0 > virtio_net virtio0: output:id 0 is not a head! > > To fix this, proceed the same as we do for irqfd: add a parameter to > virtio_queue_set_host_notifier_fd_handler and in that case only set > the notifier, not the handler. > > Cc: Stefan Hajnoczi <stefa...@linux.vnet.ibm.com> > Signed-off-by: Paolo Bonzini <pbonz...@redhat.com> > --- > hw/virtio-pci.c | 14 +++++++------- > hw/virtio.c | 7 +++++-- > hw/virtio.h | 3 ++- > 3 file modificati, 14 inserzioni(+), 10 rimozioni(-)
Internationalized diff stat, I never noticed... :) Tested-by: Stefan Hajnoczi <stefa...@linux.vnet.ibm.com> Reviewed-by: Stefan Hajnoczi <stefa...@linux.vnet.ibm.com>