[RFC PATCH v4 5/5] tests: Added tests for eBPF blob loading.

2024-07-29 Thread Andrew Melnychenko
Added net-virtio-rss-bpf to qemuxmlconf's test. Synthetically modified caps-9.0.0 with a reply. Added mock functions for loading eBPF. Signed-off-by: Andrew Melnychenko Fixed Tests for 9.1.0 Added tests for SPARK Fixed issue with ident Signed-off-by: Andrew Melnychenko ---

[RFC PATCH v4 2/5] qemu_capabilities: Added logic for retrieving eBPF objects from QEMU.

2024-07-29 Thread Andrew Melnychenko
eBPF objects stored in the hash table during runtime. eBPF objects cached encoded in base64 in the .xml cache file. Signed-off-by: Andrew Melnychenko --- src/qemu/qemu_capabilities.c | 130 src/qemu/qemu_capabilities.h | 4

[RFC PATCH v4 4/5] qemu_command: Added "ebpf_rss_fds" support for virtio-net.

2024-07-29 Thread Andrew Melnychenko
Added new capability ebpf_rss_fds for QEMU. Added logic for loading the "RSS" eBPF program. eBPF file descriptors passed to the QEMU. Signed-off-by: Andrew Melnychenko --- src/qemu/qemu_capabilities.c | 2 + src/qemu/qemu_capabilities.h | 1 +

[RFC PATCH v4 3/5] qemu_interface: Added routine for loading the eBPF objects.

2024-07-29 Thread Andrew Melnychenko
Also, added dependencies for libbpf with bpf option. Signed-off-by: Andrew Melnychenko --- libvirt.spec.in | 3 ++ meson.build | 7 meson_options.txt | 1 + src/qemu/meson.build | 1 + src/qemu/qemu_interface.c | 87

[RFC PATCH v4 1/5] qemu_monitor: Added QEMU's "request-ebpf" support.

2024-07-29 Thread Andrew Melnychenko
administrative capabilities are required, so Libvirt may load it and pass it to the QEMU instance. For now, there is only "RSS"(Receive Side Scaling) for virtio-net eBPF program and maps. Signed-off-by: Andrew Melnychenko --- src/qemu/qemu_monitor.c | 9 + src/qemu/qemu_monitor.h

[RFC PATCH v4 0/5] Added virtio-net RSS with eBPF support.

2024-07-29 Thread Andrew Melnychenko
FC v2: * refactored and rebased. * applied changes according to the Qemu. * added basic test. Changes since RFC v1: * changed eBPF format saved in the XML cache. * refactored and checked with syntax test. * refactored patch hunks. Andrew Melnychenko (5): qemu_monitor: Added QEMU&#

[RFC PATCH v3 6/6] tests: Added tests for eBPF blob loading.

2024-05-12 Thread Andrew Melnychenko
Added net-virtio-rss-bpf to qemuxmlconf's test. Synthetically modified caps-9.0.0 with a reply. Added mock functions for loading eBPF. Signed-off-by: Andrew Melnychenko --- .../caps_9.0.0_x86_64.replies | 199 ++ .../caps_9.0.0_x86_6

[RFC PATCH v3 5/6] qemu_conf: Added configuration to optionally disable eBPF loading.

2024-05-12 Thread Andrew Melnychenko
Currently, there is no way to control that config through qemu.conf file. This optional is required for future eBPF tests. Signed-off-by: Andrew Melnychenko --- src/qemu/qemu_command.c | 8 +--- src/qemu/qemu_conf.c| 2 ++ src/qemu/qemu_conf.h| 2 ++ 3 files changed, 9 insertions

[RFC PATCH v3 4/6] qemu_command: Added "ebpf_rss_fds" support for virtio-net.

2024-05-12 Thread Andrew Melnychenko
Added new capability ebpf_rss_fds for QEMU. Added logic for loading the "RSS" eBPF program. eBPF file descriptors passed to the QEMU. Signed-off-by: Andrew Melnychenko --- src/qemu/qemu_capabilities.c | 4 +++ src/qemu/qemu_capabilities.h | 3 ++ src/qemu/qemu_command.c

[RFC PATCH v3 2/6] qemu_capabilities: Added logic for retrieving eBPF objects from QEMU.

2024-05-12 Thread Andrew Melnychenko
eBPF objects stored in the hash table during runtime. eBPF objects cached encoded in base64 in the .xml cache file. Signed-off-by: Andrew Melnychenko --- src/qemu/qemu_capabilities.c | 122 +++ src/qemu/qemu_capabilities.h | 3 + 2 files changed, 125 insertions

[RFC PATCH v3 3/6] qemu_interface: Added routine for loading the eBPF objects.

2024-05-12 Thread Andrew Melnychenko
Also, added dependencies for libbpf with bpf option. Signed-off-by: Andrew Melnychenko --- meson.build | 7 meson_options.txt | 1 + src/qemu/meson.build | 1 + src/qemu/qemu_interface.c | 83 +++ src/qemu/qemu_interface.h

[RFC PATCH v3 1/6] qemu_monitor: Added QEMU's "request-ebpf" support.

2024-05-12 Thread Andrew Melnychenko
administrative capabilities are required, so Libvirt may load it and pass it to the QEMU instance. For now, there is only "RSS"(Receive Side Scaling) for virtio-net eBPF program and maps. Signed-off-by: Andrew Melnychenko --- src/qemu/qemu_monitor.c | 13 + src/qemu/qemu_mon

[RFC PATCH v3 0/6] Added virtio-net RSS with eBPF support.

2024-05-12 Thread Andrew Melnychenko
quot;in-qemu" RSS(vhost not supported). Changes since RFC v2: * refactored and rebased. * applied changes according to the Qemu. * added basic test. Changes since RFC v1: * changed eBPF format saved in the XML cache. * refactored and checked with syntax test. * refactored patch