qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Vincenzo Maffione <v.maffione@gmail.com>
To: qemu-devel@nongnu.org
Cc: jasowang@redhat.com, Vincenzo Maffione <v.maffione@gmail.com>
Subject: [Qemu-devel] [PATCH v1 0/1] Allow TAP to unnegotiate virtio-net header
Date: Fri, 15 Feb 2019 18:46:58 +0100	[thread overview]
Message-ID: <20190215174659.4007-1-v.maffione@gmail.com> (raw)

Hi,
  I was doing experiments with a custom paravirtualized net device,
and I ran into a limitation of the TAP backend. I see from the kernel
code that it is not possible to set the TAP virtio-net header
length to something different from 10 or 12, which means that it
is not possible to set it to 0. That's fine.
The QEMU implementation of the TAP backend already supports
the case where virtio-net header is set to 10 or 12 in kernel,
but the emulated/paravirtualized net device is not using that:
the TAP backend will just strip/prepend a zeroed header in this case
(e.g., see the if statement in tap_receive_iov()).
However, the tap_using_vnet_hdr() has an assert() that prevents
this situation to happen, and I don't understand why. Maybe it
is a leftover? I tried to remove the assert and by doing that
my paravirtualized device was able to stop using the virtio-net
header.

Vincenzo Maffione (1):
  net: tap: allow net frontends to un-negotiate virtio-net header

 net/tap.c | 1 -
 1 file changed, 1 deletion(-)

-- 
2.20.1

             reply	other threads:[~2019-02-15 17:47 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-02-15 17:46 Vincenzo Maffione [this message]
2019-02-15 17:46 ` [Qemu-devel] [PATCH v1 1/1] net: tap: allow net frontends to un-negotiate virtio-net header Vincenzo Maffione
2019-02-18  4:19 ` [Qemu-devel] [PATCH v1 0/1] Allow TAP to unnegotiate " Jason Wang
2019-02-18 11:53   ` Vincenzo Maffione
2019-02-19  6:48     ` Jason Wang
2019-02-19  8:28       ` Vincenzo Maffione
2019-02-19  9:35         ` Jason Wang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190215174659.4007-1-v.maffione@gmail.com \
    --to=v.maffione@gmail.com \
    --cc=jasowang@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).