]> git.proxmox.com Git - qemu.git/commit
net: do not report queued packets as sent
authorStefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Mon, 20 Aug 2012 12:35:23 +0000 (13:35 +0100)
committerStefan Hajnoczi <stefanha@gmail.com>
Fri, 14 Sep 2012 07:40:32 +0000 (08:40 +0100)
commit06b5f36d052b540a59b52150582d65674199b2ce
treec3ecb857f9a9730930ade0995ad3f13ecf05ac50
parentc67f5dc10573687497f0f5c3aec19b15c35c63d7
net: do not report queued packets as sent

Net send functions have a return value where 0 means the packet has not
been sent and will be queued.  A non-zero value means the packet was
sent or an error caused the packet to be dropped.

This patch fixes two instances where packets are queued but we return
their size.  This causes callers to believe the packets were sent.  When
the caller uses the async send interface this creates a real problem
because the callback will be invoked for a packet that the caller
believed to be already sent.  This bug can cause double-frees in the
caller.

Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
net/queue.c