[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 3/5] qmp: Added the helper stamp check.
From: |
Daniel P . Berrangé |
Subject: |
Re: [PATCH 3/5] qmp: Added the helper stamp check. |
Date: |
Wed, 22 Mar 2023 15:59:11 +0000 |
User-agent: |
Mutt/2.2.9 (2022-11-12) |
On Wed, Mar 22, 2023 at 03:26:59PM +0200, Andrew Melnichenko wrote:
> Hi all,
> I've researched an issue a bit. The solution with passing eBPF blob
> and loading in the Libvirt looks promising.
> Overall, the possible solution looks like this:
> * Libvirt checks virtio-net properties and understands that eBPF
> steering may be required.
> * Libvirt requests eBPF blob through QMP.
> * Libvirt loads blob for virtio-net and passes fds from eBPF to QEMU.
>
> I think that it's a good idea to pass only eBPF blob without
> additional metainformation. Most metainfo that we need could be
> retrieved from eBPF blob, and the only question is to pass fds
> sequence to QEMU.
> I propose to pass them as they appear in the blob itself, like
> "virtio-net-pci,ebpf_rss_fds=<prog>,<map1>,<map2>,<map3>...".
Using ',' for separating FDs is a bad idea, because ',' is already
used for separating QemuOpts arguments.
With -netdev we use ':' for spearating FDs with vhostfds= and fds=
arguments, so I'd suggest following that practice.
> Also, I think it's a good idea to make a "general" QMP request for
> eBPF blobs. Something like "request_ebpf <arg>"(g.e "request_ebpf
> virtio-net-rss").
That's reasonable as a future proofing idea I think.
With regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|