xen does not have a register that, when written, will cause can_receive to go from false to true. However, flushing the queue can be attempted whenever the front-end raises its side of the Xen event channel. There is a single event channel for tx and rx.
Cc: Stefano Stabellini <stefano.stabell...@eu.citrix.com> Cc: Stefan Hajnoczi <stefa...@linux.vnet.ibm.com> Signed-off-by: Paolo Bonzini <pbonz...@redhat.com> --- hw/xen_nic.c | 1 + 1 file modificati, 1 inserzioni(+) diff --git a/hw/xen_nic.c b/hw/xen_nic.c index 8b79bfb..cf7d559 100644 --- a/hw/xen_nic.c +++ b/hw/xen_nic.c @@ -415,6 +415,7 @@ static void net_event(struct XenDevice *xendev) { struct XenNetDev *netdev = container_of(xendev, struct XenNetDev, xendev); net_tx_packets(netdev); + qemu_flush_queued_packets(&netdev->nic->nc); } static int net_free(struct XenDevice *xendev) -- 1.7.11.2