[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2] fix unbounded NetQueue
From: |
Stefan Hajnoczi |
Subject: |
Re: [Qemu-devel] [PATCH v2] fix unbounded NetQueue |
Date: |
Fri, 8 Feb 2013 10:49:26 +0100 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
On Tue, Feb 05, 2013 at 06:29:09PM +0100, Luigi Rizzo wrote:
> In the current implementation of qemu, running without a network
> backend will cause the queue to grow unbounded when the guest is
> transmitting traffic.
>
> This patch fixes the problem by implementing bounded size NetQueue,
> used with an arbitrary limit of 10000 packets, and dropping packets
> when the queue is full _and_ the sender does not pass a callback.
>
> The second condition makes sure that we never drop packets that
> contains a callback (which would be tricky, because the producer
> expects the callback to be run when all previous packets have been
> consumed; so we cannot run it when the packet is dropped).
>
> If documentation is correct, producers that submit a callback should
> stop sending when their packet is queued, so there is no real risk
> that the queue exceeds the max size by large values.
>
> Signed-off-by: Luigi Rizzo <address@hidden>
Thanks, applied to the net-next tree:
https://github.com/stefanha/qemu/commits/net-next
This patch will be part of the first net pull request for QEMU 1.5.
Stefan