qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 0/3] net: fix hub control flow (again)


From: Stefan Hajnoczi
Subject: [Qemu-devel] [PATCH 0/3] net: fix hub control flow (again)
Date: Fri, 24 Aug 2012 14:39:50 +0100

Two networking issues have been observed:

1. When the USB network interface and dump net client are on the same "VLAN",
   the USB network interface drops packets.  This was assumed to be because the
   dump net client can receive packets all the time, whereas the USB network
   interface has a single buffer that the guest must empty.

The (incorrect) fix for #1 was to only broadcast "VLAN" packets when all net
clients can receive.  Once this code change was merged a new issue appeared:

2. When two NICs are on a "VLAN" they must both be up.  If one NIC is not up
   then no traffic can flow on the "VLAN".

This patch series fixes the root cause for #1, namely, that the USB network
interface clobbers its input buffer when usbnet_receive() is called before the 
guest has a chance to empty the buffer.

Then we can revert the "VLAN" flow control change which caused #2.  The result
is that both #1 and #2 are now fixed.

Stefan Hajnoczi (3):
  net: clean up usbnet_receive()
  net: fix usbnet_receive() packet drops
  net: broadcast hub packets if at least one port can receive

 hw/usb/dev-network.c |   49 +++++++++++++++++++++++++++++++++----------------
 net/hub.c            |    6 +++---
 2 files changed, 36 insertions(+), 19 deletions(-)

-- 
1.7.10.4




reply via email to

[Prev in Thread] Current Thread [Next in Thread]