There was an issue with Qemu build with "--disable-system".
The traces could be generated and the build fails.
The traces were 'cut out' for previous patches, and overall,
the 'system' source set should be used like in pre-'eBPF blob' patches.
Sign
There was an issue with Qemu build with "--disable-system".
The traces could be generated and the build fails.
The traces were 'cut out' for previous patches, and overall,
the 'system' source set should be used like in pre-'eBPF blob' patches.
Sign
g QEMU. Overall, requesting the eBPF object from
QEMU itself solves possible failures with acceptable effort.
Links:
[PATCH 3/5] qmp: Added the helper stamp check.
https://lore.kernel.org/all/20230219162100.174318-4-and...@daynix.com/
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf.c
It allows using file descriptors of eBPF provided
outside of QEMU.
QEMU may be run without capabilities for eBPF and run
RSS program provided by management tool(g.e. libvirt).
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf_rss-stub.c | 6 ++
ebpf/ebpf_rss.c | 27
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
- some TCP/UDP packets
may be considered fragmented if DF flag is set.
Signed-off-by: Andrew Melnychenko
---
ebpf/rss.bpf.skeleton.h | 1343 ---
meson.build | 10 +-
tools/ebpf/rss.bpf.c|7 +-
3 files changed, 687 insertions(+), 673
eBPF RSS program and maps may now be passed during initialization.
Initially was implemented for libvirt to launch qemu without permissions,
and initialized eBPF program through the helper.
Signed-off-by: Andrew Melnychenko
---
hw/net/virtio-net.c| 54
Changed eBPF map updates through mmaped array.
Mmaped arrays provide direct access to map data.
It should omit using bpf_map_update_elem() call,
which may require capabilities that are not present.
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf_rss.c | 117
It allows using file descriptors of eBPF provided
outside of QEMU.
QEMU may be run without capabilities for eBPF and run
RSS program provided by management tool(g.e. libvirt).
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf_rss-stub.c | 9 +++--
ebpf/ebpf_rss.c | 27
red 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.
ebp
Changed eBPF map updates through mmaped array.
Mmaped arrays provide direct access to map data.
It should omit using bpf_map_update_elem() call,
which may require capabilities that are not present.
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf_rss.c | 120
- some TCP/UDP packets
may be considered fragmented if DF flag is set.
Signed-off-by: Andrew Melnychenko
---
ebpf/rss.bpf.skeleton.h | 1343 ---
meson.build | 10 +-
tools/ebpf/rss.bpf.c|7 +-
3 files changed, 687 insertions(+), 673
g QEMU. Overall, requesting the eBPF object from
QEMU itself solves possible failures with acceptable effort.
Links:
[PATCH 3/5] qmp: Added the helper stamp check.
https://lore.kernel.org/all/20230219162100.174318-4-and...@daynix.com/
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf.c
eBPF RSS program and maps may now be passed during initialization.
Initially was implemented for libvirt to launch qemu without permissions,
and initialized eBPF program through the helper.
Signed-off-by: Andrew Melnychenko
---
hw/net/virtio-net.c| 63
Updated section name, so libbpf should init/gues proper
program type without specifications during open/load.
Also, added map_flags with explicitly declared BPF_F_MMAPABLE.
Added check for BPF_F_MMAPABLE flag to meson script and
requirements to libbpf version.
Signed-off-by: Andrew Melnychenko
It allows using file descriptors of eBPF provided
outside of QEMU.
QEMU may be run without capabilities for eBPF and run
RSS program provided by management tool(g.e. libvirt).
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf_rss-stub.c | 6 ++
ebpf/ebpf_rss.c | 27
eBPF RSS program and maps may now be passed during initialization.
Initially was implemented for libvirt to launch qemu without permissions,
and initialized eBPF program through the helper.
Signed-off-by: Andrew Melnychenko
---
hw/net/virtio-net.c| 55
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
Changed eBPF map updates through mmaped array.
Mmaped arrays provide direct access to map data.
It should omit using bpf_map_update_elem() call,
which may require capabilities that are not present.
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf_rss.c | 117
g QEMU. Overall, requesting the eBPF object from
QEMU itself solves possible failures with acceptable effort.
Links:
[PATCH 3/5] qmp: Added the helper stamp check.
https://lore.kernel.org/all/20230219162100.174318-4-and...@daynix.com/
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf.c
Changed eBPF map updates through mmaped array.
Mmaped arrays provide direct access to map data.
It should omit using bpf_map_update_elem() call,
which may require capabilities that are not present.
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf_rss.c | 117
Updated section name, so libbpf should init/gues proper
program type without specifications during open/load.
Also, added map_flags with explicitly declared BPF_F_MMAPABLE.
Which would require kernel 5.5+.
Signed-off-by: Andrew Melnychenko
---
ebpf/rss.bpf.skeleton.h | 1460
g QEMU. Overall, requesting the eBPF object from
QEMU itself solves possible failures with acceptable effort.
Links:
[PATCH 3/5] qmp: Added the helper stamp check.
https://lore.kernel.org/all/20230219162100.174318-4-and...@daynix.com/
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf.c
It allows using file descriptors of eBPF provided
outside of QEMU.
QEMU may be run without capabilities for eBPF and run
RSS program provided by management tool(g.e. libvirt).
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf_rss-stub.c | 6 ++
ebpf/ebpf_rss.c | 27
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
eBPF RSS program and maps may now be passed during initialization.
Initially was implemented for libvirt to launch qemu without permissions,
and initialized eBPF program through the helper.
Signed-off-by: Andrew Melnychenko
---
hw/net/virtio-net.c| 55
Updated section name, so libbpf should init/gues proper
program type without specifications during open/load.
Also, added map_flags with explicitly declared BPF_F_MMAPABLE.
Signed-off-by: Andrew Melnychenko
---
ebpf/rss.bpf.skeleton.h | 1460 ---
tools/ebpf
eBPF RSS program and maps may now be passed during initialization.
Initially was implemented for libvirt to launch qemu without permissions,
and initialized eBPF program through the helper.
Signed-off-by: Andrew Melnychenko
---
hw/net/virtio-net.c| 55
It allows using file descriptors of eBPF provided
outside of QEMU.
QEMU may be run without capabilities for eBPF and run
RSS program provided by management tool(g.e. libvirt).
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf_rss-stub.c | 6 ++
ebpf/ebpf_rss.c | 27
g QEMU. Overall, requesting the eBPF object from
QEMU itself solves possible failures with acceptable effort.
Links:
[PATCH 3/5] qmp: Added the helper stamp check.
https://lore.kernel.org/all/20230219162100.174318-4-and...@daynix.com/
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf.c
Changed eBPF map updates through mmaped array.
Mmaped arrays provide direct access to map data.
It should omit using bpf_map_update_elem() call,
which may require capabilities that are not present.
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf_rss.c | 117
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
g the eBPF object from
QEMU itself solves possible failures with very little effort.
Links:
[PATCH 3/5] qmp: Added the helper stamp check.
https://lore.kernel.org/all/20230219162100.174318-4-and...@daynix.com/
Signed-off-by: Andrew Melnychenko
---
qapi/ebpf.json
Now, the binary objects may be retrieved by id.
It would require for future qmp commands that may require specific
eBPF blob.
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf.c | 70
ebpf/ebpf.h | 31 +
ebpf
It allows using file descriptors of eBPF provided
outside of QEMU.
QEMU may be run without capabilities for eBPF and run
RSS program provided by management tool(g.e. libvirt).
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf_rss-stub.c | 6 ++
ebpf/ebpf_rss.c | 27
Changed eBPF map updates through mmaped array.
Mmaped arrays provide direct access to map data.
It should omit using bpf_map_update_elem() call,
which may require capabilities that are not present.
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf_rss.c | 117
Updated section name, so libbpf should init/gues proper
program type without specifications during open/load.
Signed-off-by: Andrew Melnychenko
---
ebpf/rss.bpf.skeleton.h | 1469 ---
tools/ebpf/rss.bpf.c|2 +-
2 files changed, 741 insertions(+), 730
eBPF id.
Andrew Melnychenko (6):
ebpf: Added eBPF map update through mmap.
ebpf: Added eBPF initialization by fds.
virtio-net: Added property to load eBPF RSS with fds.
ebpf: Added declaration/initialization routines.
qmp: Added new command to retrieve eBPF blob.
ebpf: Updated eBPF
eBPF RSS program and maps may now be passed during initialization.
Initially was implemented for libvirt to launch qemu without permissions,
and initialized eBPF program through the helper.
Signed-off-by: Andrew Melnychenko
---
hw/net/virtio-net.c| 55
It allows using file descriptors of eBPF provided
outside of QEMU.
QEMU may be run without capabilities for eBPF and run
RSS program provided by management tool(g.e. libvirt).
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf_rss-stub.c | 6 ++
ebpf/ebpf_rss.c | 27
Changed eBPF map updates through mmaped array.
Mmaped arrays provide direct access to map data.
It should omit using bpf_map_update_elem() call,
which may require capabilities that are not present.
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf_rss.c | 117
eBPF RSS program and maps may now be passed during initialization.
Initially was implemented for libvirt to launch qemu without permissions,
and initialized eBPF program through the helper.
Signed-off-by: Andrew Melnychenko
---
hw/net/virtio-net.c| 55
Now, the binary objects may be retrieved by id.
It would require for future qmp commands that may require specific
eBPF blob.
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf.c | 70
ebpf/ebpf.h | 31 +
ebpf
Updated section name, so libbpf should init/gues proper
program type without specifications during open/load.
Signed-off-by: Andrew Melnychenko
---
ebpf/rss.bpf.skeleton.h | 1469 ---
tools/ebpf/rss.bpf.c|2 +-
2 files changed, 741 insertions(+), 730
Added command "request-ebpf". This command returns
eBPF program encoded base64. The program taken from the
skeleton and essentially is an ELF object that can be
loaded in the future with libbpf.
Signed-off-by: Andrew Melnychenko
---
qapi/ebpf.json
)
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 (6):
ebpf: Added eBPF map update through mmap.
ebpf: Added eBPF initialization by fds.
virtio-net
Changed eBPF map updates through mmaped array.
Mmaped arrays provide direct access to map data.
It should omit using bpf_map_update_elem() call,
which may require capabilities that are not present.
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf_rss.c | 117
Updated section name, so libbpf should init/gues proper
program type without specifications during open/load.
Signed-off-by: Andrew Melnychenko
---
ebpf/rss.bpf.skeleton.h | 1469 ---
tools/ebpf/rss.bpf.c|2 +-
2 files changed, 741 insertions(+), 730
Now, the binary objects may be retrieved by id.
It would require for future qmp commands that may require specific
eBPF blob.
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf.c | 54
ebpf/ebpf.h | 31 +++
ebpf
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 v1:
* refactored code.
* eBPF program ids implemented as enums
Andrew Melnychenko (6):
ebpf
Added command "request-ebpf". This command returns
eBPF program encoded base64. The program taken from the
skeleton and essentially is an ELF object that can be
loaded in the future with libbpf.
Signed-off-by: Andrew Melnychenko
---
monitor/qmp-cmds.c | 16
qapi
It allows using file descriptors of eBPF provided
outside of QEMU.
QEMU may be run without capabilities for eBPF and run
RSS program provided by management tool(g.e. libvirt).
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf_rss-stub.c | 6 ++
ebpf/ebpf_rss.c | 27
eBPF RSS program and maps may now be passed during initialization.
Initially was implemented for libvirt to launch qemu without permissions,
and initialized eBPF program through the helper.
Signed-off-by: Andrew Melnychenko
---
hw/net/virtio-net.c| 55
Now, the binary objects may be retrieved by id/name.
It would require for future qmp commands that may require specific
eBPF blob.
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf.c | 54
ebpf/ebpf.h | 31
Added command "request-ebpf". This command returns
eBPF program encoded base64. The program taken from the
skeleton and essentially is an ELF object that can be
loaded in the future with libbpf.
Signed-off-by: Andrew Melnychenko
---
monitor/qmp-cmds.c | 16
qapi
Updated section name, so libbpf should init/gues proper
program type without specifications during open/load.
Signed-off-by: Andrew Melnychenko
---
ebpf/rss.bpf.skeleton.h | 1469 ---
tools/ebpf/rss.bpf.c|2 +-
2 files changed, 741 insertions(+), 730
Changed eBPF map updates through mmaped array.
Mmaped arrays provide direct access to map data.
It should omit using bpf_map_update_elem() call,
which may require capabilities that are not present.
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf_rss-stub.c | 6 +++
ebpf/ebpf_rss.c | 120
eBPF RSS program and maps may now be passed during initialization.
Initially was implemented for libvirt to launch qemu without permissions,
and initialized eBPF program through the helper.
Signed-off-by: Andrew Melnychenko
---
hw/net/virtio-net.c| 96
)
Andrew Melnychenko (5):
ebpf: Added eBPF initialization by fds and map update.
virtio-net: Added property to load eBPF RSS with fds.
ebpf: Added declaration/initialization routines.
qmp: Added new command to retrieve eBPF blob.
ebpf: Updated eBPF program and skeleton.
ebpf/ebpf.c
Now, the binary objects may be retrieved by id/name.
It would require for future qmp commands that may require specific
eBPF blob.
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf.c | 48
ebpf/ebpf.h | 25 +
ebpf
eBPF RSS program and maps may now be passed during initialization.
Initially was implemented for libvirt to launch qemu without permissions,
and initialized eBPF program through the helper.
Signed-off-by: Andrew Melnychenko
---
hw/net/virtio-net.c| 77
Updated section name, so libbpf should init/gues proper
program type without specifications during open/load.
Signed-off-by: Andrew Melnychenko
---
ebpf/rss.bpf.skeleton.h | 1469 ---
tools/ebpf/rss.bpf.c|2 +-
2 files changed, 741 insertions(+), 730
Added command "request-ebpf". This command returns
eBPF program encoded base64. The program taken from the
skeleton and essentially is an ELF object that can be
loaded in the future with libbpf.
Signed-off-by: Andrew Melnychenko
---
monitor/qmp-cmds.c | 17 +
qapi
Changed eBPF map updates through mmaped array.
Mmaped arrays provide direct access to map data.
It should omit using bpf_map_update_elem() call,
which may require capabilities that are not present.
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf_rss-stub.c | 6 +++
ebpf/ebpf_rss.c | 120
.
* Libvirt requests eBPF blob through QMP.
* Libvirt loads blob for virtio-net.
* Libvirt launches the QEMU with eBPF fds passed.
Andrew Melnychenko (4):
ebpf: Added eBPF initialization by fds and map update.
virtio-net: Added property to load eBPF RSS with fds.
ebpf: Added declaration
eBPF RSS program and maps may now be passed during initialization.
Initially was implemented for libvirt to launch qemu without permissions,
and initialized eBPF program through the helper.
Signed-off-by: Andrew Melnychenko
---
hw/net/virtio-net.c| 77
libvirt.
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf_rss-stub.c | 6 +++
ebpf/ebpf_rss.c | 120 ++-
ebpf/ebpf_rss.h | 10
3 files changed, 113 insertions(+), 23 deletions(-)
diff --git a/ebpf/ebpf_rss-stub.c b/ebpf/ebpf_rss-stub.c
eck the stamp of the helper to make sure
that eBPF program is valid.
Signed-off-by: Andrew Melnychenko
---
monitor/qmp-cmds.c | 28
qapi/misc.json | 42 ++
2 files changed, 70 insertions(+)
diff --git a/monitor/qmp-cmds.c
refactored helper.
Andrew Melnychenko (5):
ebpf: Added eBPF initialization by fds and map update.
virtio-net: Added property to load eBPF RSS with fds.
qmp: Added the helper stamp check.
ebpf_rss_helper: Added helper for eBPF RSS.
qmp: Added find-ebpf-rss-helper command.
ebpf/ebpf_
Added a function to check the stamp in the helper.
eBPF helper should have a special symbol that generates during the build.
QEMU checks the helper and determines that it fits, so the helper
will produce proper output.
Signed-off-by: Andrew Melnychenko
---
meson.build
no reason yet to build eBPF loader and helper for non-Linux systems,
even if libbpf is present.
Signed-off-by: Andrew Melnychenko
---
ebpf/qemu-ebpf-rss-helper.c | 132
meson.build | 37 ++
2 files changed, 156 insertions(+), 13
ything works well, mostly because of
different interrupt routines(ICR clears during register write).
So, added ICR clearing during reading, according to the note by
section 13.3.27 of the 8257X developers manual.
Signed-off-by: Andrew Melnychenko
---
hw/net/e1000e_core.c | 10 ++
hw/ne
RSS maps are combined into one array map.
Changed eBPF map updates through mmaped array.
eBPF RSS context may be initialized by program fd and map fd.
virtio-net may provide fds passed by libvirt.
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf_rss-stub.c| 6 +
ebpf/ebpf_rss.c
tio-net.
Signed-off-by: Andrew Melnychenko
---
monitor/qmp-cmds.c | 32
qapi/misc.json | 33 +
2 files changed, 65 insertions(+)
diff --git a/monitor/qmp-cmds.c b/monitor/qmp-cmds.c
index f7d64a6457..c042ab5466 100644
---
reason yet to build eBPF loader and helper for non Linux systems,
even if libbpf is present.
Signed-off-by: Andrew Melnychenko
---
ebpf/qemu-ebpf-rss-helper.c | 130
meson.build | 37 ++
2 files changed, 154 insertions(+), 13 deletions
Added function to check the stamp in the helper.
eBPF helper should have a special symbol that generates during build.
QEMU checks the helper and determinates that it fits, so the helper
will produce proper output.
Signed-off-by: Andrew Melnychenko
---
meson.build | 10
eBPF RSS program and maps now may be passed during initialization.
Initially was implemented for libvirt to launch qemu without permissions.
Signed-off-by: Andrew Melnychenko
---
hw/net/virtio-net.c| 77 --
include/hw/virtio/virtio-net.h | 1 +
2
libvirt should use "that" helper for "that" emulator.
qmp sample:
C: { "execute": "query-helper-paths" }
S: { "return": [
{
"name": "qemu-ebpf-rss-helper",
"path": "/usr/local/libexe
tio-net.
Signed-off-by: Andrew Melnychenko
---
monitor/qmp-cmds.c | 78 ++
qapi/misc.json | 29 +
2 files changed, 107 insertions(+)
diff --git a/monitor/qmp-cmds.c b/monitor/qmp-cmds.c
index f7d64a6457..5dd2a58ea2 100644
--- a/moni
eBPF RSS context may be initialized by program fd and map fds.
virtio-net may provide fds passed by libvirt.
Signed-off-by: Andrew Melnychenko
---
ebpf/ebpf_rss-stub.c | 6 ++
ebpf/ebpf_rss.c | 31 ---
ebpf/ebpf_rss.h | 5 +
3 files changed, 39
Libbpf is used for eBPF RSS steering, which is
supported only by Linux TAP.
There is no reason yet to build eBPF loader and
helper for non Linux systems, even if libbpf is
present.
Signed-off-by: Andrew Melnychenko
---
meson.build | 29 -
1 file changed, 16
During unplug the virtio device is unplugged from virtio-bus on pci. In some
cases,
requests to virtio-pci mm may acquire during/after unplug. Added check that
virtio
device is on the bus, for "common" memory region.
Signed-off-by: Andrew Melnychenko
---
hw/virtio/virtio-pci.c | 8 +
Added check for "notify" memory region. Now reads will return "-1" if a virtio
device is not present on a virtio bus.
Signed-off-by: Andrew Melnychenko
---
hw/virtio/virtio-pci.c | 9 +++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/hw/virtio/virt
Helper program. Loads eBPF RSS program and maps and passes them through unix
socket.
Libvirt may launch this helper and pass eBPF fds to qemu virtio-net.
Signed-off-by: Andrew Melnychenko
---
ebpf/qemu-ebpf-rss-helper.c | 130
meson.build
er-paths" }
S: { "return": [
{
"name": "qemu-ebpf-rss-helper",
"path": "/usr/local/libexec/qemu-ebpf-rss-helper"
}
]
}
Andrew Melnychenko (5):
ebpf: Added eBPF initialization by fds.
virtio-net: Added property
eBPF RSS program and maps now may be passed during initialization.
Initially was implemented for libvirt to launch qemu without permissions.
Signed-off-by: Andrew Melnychenko
---
hw/net/virtio-net.c| 77 --
include/hw/virtio/virtio-net.h | 1 +
2
Now, if virtio device is not present on virtio-bus - pci config callbacks
will not lead to possible crush. The read will return "-1" which should be
interpreted by a driver that pci device may be unplugged.
Signed-off-by: Andrew Melnychenko
---
hw/virtio/virtio-pci.c | 10
5229a6f0
start_routine = 0x560b513faeb0
arg = 0x560b522738d0
r =
Andrew Melnychenko (3):
virtio-pci: Added check for virtio device presence in mm callbacks.
virtio-pci: Added check for virtio device in PCI config cbs.
virtio-pci: Changed return values for "notify&
Signed-off-by: Andrew Melnychenko
---
configure | 8 +-
ebpf/ebpf_rss-stub.c| 40
ebpf/ebpf_rss.c | 165 +++
ebpf/ebpf_rss.h | 44
ebpf/meson.build| 1 +
ebpf/rss.bpf.skeleton.h | 431
Signed-off-by: Yuri Benditovich
Signed-off-by: Andrew Melnychenko
---
MAINTAINERS | 8
1 file changed, 8 insertions(+)
diff --git a/MAINTAINERS b/MAINTAINERS
index 36055f14c5..c7e9a57cd9 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -3312,6 +3312,14 @@ F: include/hw/remote/proxy
ation requested by the guest.
Signed-off-by: Yuri Benditovich
Signed-off-by: Andrew Melnychenko
---
hw/net/vhost_net.c | 3 +
hw/net/virtio-net.c| 116 -
include/hw/virtio/virtio-net.h | 4 ++
net/vhost-vdpa.c | 2 +
4 files ch
ned-off-by: Andrew Melnychenko
---
tools/ebpf/Makefile.ebpf | 22 ++
tools/ebpf/rss.bpf.c | 571 +++
2 files changed, 593 insertions(+)
create mode 100755 tools/ebpf/Makefile.ebpf
create mode 100644 tools/ebpf/rss.bpf.c
diff --git a/tools/ebpf/Makefile.ebpf b/
For now, that method supported only by Linux TAP.
Linux TAP uses TUNSETSTEERINGEBPF ioctl.
Signed-off-by: Andrew Melnychenko
---
include/net/net.h | 2 ++
net/tap-bsd.c | 5 +
net/tap-linux.c | 13 +
net/tap-solaris.c | 5 +
net/tap-stub.c| 5 +
net/tap.c
Signed-off-by: Yuri Benditovich
Signed-off-by: Andrew Melnychenko
---
docs/devel/ebpf_rss.rst | 125
docs/devel/index.rst| 1 +
2 files changed, 126 insertions(+)
create mode 100644 docs/devel/ebpf_rss.rst
diff --git a/docs/devel/ebpf_rss.rst b
Additional code that will be used for eBPF setting steering routine.
Signed-off-by: Andrew Melnychenko
---
net/tap-linux.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/net/tap-linux.h b/net/tap-linux.h
index 2f36d100fc..1d06fe0de6 100644
--- a/net/tap-linux.h
+++ b/net/tap-linux.h
parsing in the eBPF program.
* added fragment packet parsing to skip L4.
Changes since v6:
* Added eBPF skeleton check to the meson.build file.
Changes since v7:
* Refactored code style and fixed warnings.
* Added explicit pkg-config method for libbpf dependency.
Andrew Melnychenko (7):
net/tap
Signed-off-by: Andrew Melnychenko
---
configure | 8 +-
ebpf/ebpf_rss-stub.c| 40
ebpf/ebpf_rss.c | 165 +++
ebpf/ebpf_rss.h | 44
ebpf/meson.build| 1 +
ebpf/rss.bpf.skeleton.h | 431
Signed-off-by: Yuri Benditovich
Signed-off-by: Andrew Melnychenko
---
MAINTAINERS | 8
1 file changed, 8 insertions(+)
diff --git a/MAINTAINERS b/MAINTAINERS
index 36055f14c5..c7e9a57cd9 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -3312,6 +3312,14 @@ F: include/hw/remote/proxy
Signed-off-by: Yuri Benditovich
Signed-off-by: Andrew Melnychenko
---
docs/devel/ebpf_rss.rst | 125
docs/devel/index.rst| 1 +
2 files changed, 126 insertions(+)
create mode 100644 docs/devel/ebpf_rss.rst
diff --git a/docs/devel/ebpf_rss.rst b
ned-off-by: Andrew Melnychenko
---
tools/ebpf/Makefile.ebpf | 22 ++
tools/ebpf/rss.bpf.c | 569 +++
2 files changed, 591 insertions(+)
create mode 100755 tools/ebpf/Makefile.ebpf
create mode 100644 tools/ebpf/rss.bpf.c
diff --git a/tools/ebpf/Makefile.ebpf b/
1 - 100 of 153 matches
Mail list logo