qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 0/8] Report fatal errors from failure with pre-opened eBPF RSS FDs
@ 2024-10-23  8:50 Daniel P. Berrangé
  2024-10-23  8:50 ` [PATCH v3 1/8] net: fix build when libbpf is disabled, but libxdp is enabled Daniel P. Berrangé
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: Daniel P. Berrangé @ 2024-10-23  8:50 UTC (permalink / raw)
  To: qemu-devel
  Cc: Michael S. Tsirkin, Yuri Benditovich, Daniel P. Berrangé,
	Paolo Bonzini, Andrew Melnychenko, Philippe Mathieu-Daudé,
	Marc-André Lureau, Jason Wang

The virtio-net code for eBPF RSS is still ignoring errors when
failing to load the eBPF RSS program passed in by the mgmt app
via pre-opened FDs.

This series re-factors the eBPF common code so that it actually
reports using "Error" objects. Then it makes virtio-net treat
a failure to load pre-opened FDs as a fatal problem. When doing
speculative opening of eBPF FDs, QEMU merely prints a warning,
and allows the software fallback to continue.

Trace event coverage is significantly expanded to make this all
much more debuggable too.

Changed in v3:

 - Fixed bpf stubs for new Error **errp argument
 - Added fix for pre-existing flaw with libxdp build logic
   when bpf is disabled

Changed in v2:

 - Split 'ebpf_error' probe into multiple probes

Daniel P. Berrangé (8):
  net: fix build when libbpf is disabled, but libxdp is enabled
  hw/net: fix typo s/epbf/ebpf/ in virtio-net
  ebpf: drop redundant parameter checks in static methods
  ebpf: improve error trace events
  ebpf: add formal error reporting to all APIs
  hw/net: report errors from failing to use eBPF RSS FDs
  ebpf: improve trace event coverage to all key operations
  hw/net: improve tracing of eBPF RSS setup

 ebpf/ebpf_rss-stub.c |   8 +--
 ebpf/ebpf_rss.c      | 118 ++++++++++++++++++++++++++++---------------
 ebpf/ebpf_rss.h      |  10 ++--
 ebpf/trace-events    |   8 ++-
 hw/net/trace-events  |   8 +--
 hw/net/virtio-net.c  |  63 +++++++++++++++--------
 meson.build          |  10 +++-
 net/meson.build      |   2 +-
 8 files changed, 151 insertions(+), 76 deletions(-)

-- 
2.46.0



^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2024-10-23  8:53 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-10-23  8:50 [PATCH v3 0/8] Report fatal errors from failure with pre-opened eBPF RSS FDs Daniel P. Berrangé
2024-10-23  8:50 ` [PATCH v3 1/8] net: fix build when libbpf is disabled, but libxdp is enabled Daniel P. Berrangé
2024-10-23  8:50 ` [PATCH v3 2/8] hw/net: fix typo s/epbf/ebpf/ in virtio-net Daniel P. Berrangé
2024-10-23  8:50 ` [PATCH v3 3/8] ebpf: drop redundant parameter checks in static methods Daniel P. Berrangé
2024-10-23  8:50 ` [PATCH v3 4/8] ebpf: improve error trace events Daniel P. Berrangé
2024-10-23  8:51 ` [PATCH v3 5/8] ebpf: add formal error reporting to all APIs Daniel P. Berrangé
2024-10-23  8:51 ` [PATCH v3 6/8] hw/net: report errors from failing to use eBPF RSS FDs Daniel P. Berrangé
2024-10-23  8:51 ` [PATCH v3 7/8] ebpf: improve trace event coverage to all key operations Daniel P. Berrangé
2024-10-23  8:51 ` [PATCH v3 8/8] hw/net: improve tracing of eBPF RSS setup Daniel P. Berrangé

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).