qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH v9 0/5] eBPF RSS through QMP support.


From: Andrew Melnichenko
Subject: Re: [PATCH v9 0/5] eBPF RSS through QMP support.
Date: Mon, 26 Feb 2024 12:23:29 +0200

Hi all,
Jason, can you please review the patch set, thank you.

On Mon, Feb 5, 2024 at 6:54 PM Andrew Melnychenko <andrew@daynix.com> wrote:
>
> This series of patches provides the ability to retrieve eBPF program
> through qmp, so management application may load bpf blob with proper 
> capabilities.
> Now, virtio-net devices can accept eBPF programs and maps through properties
> as external file descriptors. Access to the eBPF map is direct through mmap()
> call, so it should not require additional capabilities to bpf* calls.
> eBPF file descriptors can be passed to QEMU from parent process or by unix
> socket with sendfd() qmp command.
>
> Changes since v8:
>  * rebased and refactored QMP interface
>  * license SPDX id only for new files
>
> Changes since v7:
>  * rebased and refactored
>  * used SPDX license identifier
>  * used DEFINE_PROP_ARRAY() for virtio-net "ebpf-rss-fds" property
>
> Changes since v6:
>  * added comments to ebpf.json
>  * added libbpf version requirements to meson script with BPF_F_MMAPABLE check
>
> Changes since v5:
>  * refactored ebpf.json
>
> Changes since v4:
>  * refactored commit hunks
>  * added explicit BPF_F_MMAPABLE declaration
>
> Changes since v3:
>  * fixed issue with the build if bpf disabled
>  * rebased to the last master
>  * refactored according to review
>
> Changes since v2:
>  * moved/refactored QMP command
>  * refactored virtio-net
>
> Changes since v1:
>  * refactored virtio-net
>  * moved hunks for ebpf mmap()
>  * added qmp enum for eBPF id.
>
> Andrew Melnychenko (5):
>   ebpf: Added eBPF map update through mmap.
>   ebpf: Added eBPF initialization by fds.
>   virtio-net: Added property to load eBPF RSS with fds.
>   qmp: Added new command to retrieve eBPF blob.
>   ebpf: Updated eBPF program and skeleton.
>
>  ebpf/ebpf.c                    |   69 ++
>  ebpf/ebpf.h                    |   29 +
>  ebpf/ebpf_rss-stub.c           |    6 +
>  ebpf/ebpf_rss.c                |  150 +++-
>  ebpf/ebpf_rss.h                |   10 +
>  ebpf/meson.build               |    2 +-
>  ebpf/rss.bpf.skeleton.h        | 1343 ++++++++++++++++----------------
>  hw/net/virtio-net.c            |   54 +-
>  include/hw/virtio/virtio-net.h |    2 +
>  meson.build                    |   10 +-
>  qapi/ebpf.json                 |   66 ++
>  qapi/meson.build               |    1 +
>  qapi/qapi-schema.json          |    1 +
>  tools/ebpf/rss.bpf.c           |    7 +-
>  14 files changed, 1047 insertions(+), 703 deletions(-)
>  create mode 100644 ebpf/ebpf.c
>  create mode 100644 ebpf/ebpf.h
>  create mode 100644 qapi/ebpf.json
>
> --
> 2.43.0
>



reply via email to

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