qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 1/2] net: assert that tx packets have nonzero si


From: Stefan Hajnoczi
Subject: Re: [Qemu-devel] [PATCH 1/2] net: assert that tx packets have nonzero size
Date: Mon, 22 Jul 2019 08:17:06 +0100
User-agent: Mutt/1.12.0 (2019-05-25)

On Fri, Jul 19, 2019 at 06:52:24PM +0000, Oleinik, Alexander wrote:
> Virtual devices should not try to send zero-sized packets. The caller
> should check the size prior to calling qemu_sendv_packet_async.
> 
> Signed-off-by: Alexander Oleinik <address@hidden>
> ---
>  net/net.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/net/net.c b/net/net.c
> index 7d4098254f..fad20bc611 100644
> --- a/net/net.c
> +++ b/net/net.c
> @@ -741,6 +741,9 @@ ssize_t qemu_sendv_packet_async(NetClientState *sender,
>      size_t size = iov_size(iov, iovcnt);
>      int ret;
>  
> +    /* 0-sized packets are unsupported. Check size in the caller */
> +    assert(size);

Please include the rationale:

  A return value of 0 means the packet has been queued and will be sent
  asynchronously.  Therefore this function has no way of reporting that
  a 0-sized packet has been sent successfully.  Forbid it for now and if
  someone needs this functionality then the API will require a change.

This way someone who hits this will understand why the assertion is
there.

Stefan

Attachment: signature.asc
Description: PGP signature


reply via email to

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