All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lorenzo Bianconi <lorenzo.bianconi@redhat.com>
To: David Ahern <dsahern@kernel.org>
Cc: Jesper Dangaard Brouer <jbrouer@redhat.com>,
	Marcus Wichelmann <marcus.wichelmann@hetzner-cloud.de>,
	xdp-newbies@vger.kernel.org, cloud@xdp-project.net,
	brouer@redhat.com, Anton Protopopov <aspsk@isovalent.com>,
	Kumar Kartikeya Dwivedi <memxor@gmail.com>,
	Jason Wang <jasowang@redhat.com>,
	"Karlsson, Magnus" <magnus.karlsson@intel.com>
Subject: Re: [xdp-cloud] Questions about Offloads and XDP-Hints regarding a Cloud-Provider Use-Case
Date: Thu, 29 Sep 2022 00:37:12 +0200	[thread overview]
Message-ID: <YzTMmGuZjiO8+dVu@lore-desk> (raw)
In-Reply-To: <2d2d13bd-da93-2e04-3fd1-a5fd4713d7df@kernel.org>

[-- Attachment #1: Type: text/plain, Size: 2752 bytes --]

> On 9/28/22 11:07 AM, Jesper Dangaard Brouer wrote:
> > 
> > On 28/09/2022 15.54, Marcus Wichelmann wrote:
> >>
> >> I'm working for a cloud hosting provider and we're working on a new
> >> XDP-based networking stack for our VM-Hosts that uses XDP to
> >> accelerate the connectivity of our qemu/KVM VMs to the outside.
> >>
> > 
> > Welcome to the community! Sounds like an excellent use-case and
> > opportunity for speeding up the RX packets from physical NIC into the
> > VM.  Good to hear someone (again) having this use-case. I've personally
> 
> +1
> 
> > not been focused on this use-case lately, mostly because community
> > members that I was interacting with changed jobs, away from cloud
> > hosting companies. Good to have a user back in this area!
> > 
> > 
> >> For this, we use XDP_REDIRECT to forward packets between the physical
> >> host NIC and the VM tap devices. The main issue we have now is, that
> >> our VM guests have some virtio NIC offloads enabled: rx/tx
> >> checksumming, TSO/GSO, GRO and Scatter-Gather.
> > 
> > Supporting RX-checksumming is part of the plans for XDP-hints, although
> > virtio_net is not part of my initial patchset.
> 
> Lorenzo and I both had versions of a patch to propagate rx csum
> validation to the VM on xdp redirect. I do not recall a version after
> this one:
> 
> https://lore.kernel.org/netdev/cover.1622222367.git.lorenzo@kernel.org/
> 
> and I lost of track of what change is needed for it to go in.

iirc the blocking point was the missing CHECKSUM_COMPLETE support (we support
just CHECKSUM_UNNECESSARY). We can conver it with XDP hw-hints.

Regards,
Lorenzo

> 
> > 
> > XDP-redirect with GRO and Scatter-Gather frames are part of the
> > multi-buff effort (Cc Lorenzo), but currently XDP_REDIRECT with
> > multi-buff is disabled (except for cpumap), because the lack of
> > XDP-feature bits, meaning we cannot determine (in kernel) if receiving
> > net_device supports multi-buff (Cc Kumar).
> > 
> >> Currently, these offloads (especially TSO/GSO) are incompatible with
> >> XDP_REDIRECT and result in packets being dropped. Because disabling
> >> these offloads in all our customer VMs is not a good option, we're
> >> searching for ways to support these offloads with XDP.
> >>
> > 
> > To David Ahern, didn't the kernel recently loosen up on having to
> > disable these offloads for KVM virtio_net?
> 
> not that I am aware. Still need tx offloads disabled.
> 
> 
> This summarizes what I was looking into back in 2020, along with the
> current state of XDP for VM use case:
> 
> https://legacy.netdevconf.info/0x14/pub/slides/24/netdev-0x14-XDP-and-the-cloud.pdf
> 
> source code is still on github too.
> 

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

  reply	other threads:[~2022-09-28 22:37 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-28 13:54 Questions about Offloads and XDP-Hints regarding a Cloud-Provider Use-Case Marcus Wichelmann
2022-09-28 18:07 ` [xdp-cloud] " Jesper Dangaard Brouer
2022-09-28 18:32   ` David Ahern
2022-09-28 22:37     ` Lorenzo Bianconi [this message]
2022-09-29  2:14       ` Jason Wang
2022-09-29  4:00         ` David Ahern
2022-09-29 13:16   ` [xdp-cloud] " Marcus Wichelmann
2022-10-03 10:56     ` Jesper Dangaard Brouer

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=YzTMmGuZjiO8+dVu@lore-desk \
    --to=lorenzo.bianconi@redhat.com \
    --cc=aspsk@isovalent.com \
    --cc=brouer@redhat.com \
    --cc=cloud@xdp-project.net \
    --cc=dsahern@kernel.org \
    --cc=jasowang@redhat.com \
    --cc=jbrouer@redhat.com \
    --cc=magnus.karlsson@intel.com \
    --cc=marcus.wichelmann@hetzner-cloud.de \
    --cc=memxor@gmail.com \
    --cc=xdp-newbies@vger.kernel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.