[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 1/1] ebpf: Added traces back. Changed source set for eBPF
|
From: |
Andrew Melnichenko |
|
Subject: |
Re: [PATCH v2 1/1] ebpf: Added traces back. Changed source set for eBPF to 'system'. |
|
Date: |
Mon, 22 Apr 2024 16:52:24 +0300 |
Hello, everyone.
Was added missed "trace.h"
Best regards.
On Mon, Apr 22, 2024 at 5:17 PM Andrew Melnychenko <andrew@daynix.com> wrote:
>
> 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.
>
> Signed-off-by: Andrew Melnychenko <andrew@daynix.com>
> ---
> ebpf/ebpf_rss.c | 7 +++++++
> ebpf/meson.build | 2 +-
> ebpf/trace.h | 1 +
> 3 files changed, 9 insertions(+), 1 deletion(-)
> create mode 100644 ebpf/trace.h
>
> diff --git a/ebpf/ebpf_rss.c b/ebpf/ebpf_rss.c
> index d102f3dd092..87f0714910e 100644
> --- a/ebpf/ebpf_rss.c
> +++ b/ebpf/ebpf_rss.c
> @@ -25,6 +25,8 @@
> #include "ebpf/rss.bpf.skeleton.h"
> #include "ebpf/ebpf.h"
>
> +#include "trace.h"
> +
> void ebpf_rss_init(struct EBPFRSSContext *ctx)
> {
> if (ctx != NULL) {
> @@ -55,18 +57,21 @@ static bool ebpf_rss_mmap(struct EBPFRSSContext *ctx)
> PROT_READ | PROT_WRITE, MAP_SHARED,
> ctx->map_configuration, 0);
> if (ctx->mmap_configuration == MAP_FAILED) {
> + trace_ebpf_error("eBPF RSS", "can not mmap eBPF configuration
> array");
> return false;
> }
> ctx->mmap_toeplitz_key = mmap(NULL, qemu_real_host_page_size(),
> PROT_READ | PROT_WRITE, MAP_SHARED,
> ctx->map_toeplitz_key, 0);
> if (ctx->mmap_toeplitz_key == MAP_FAILED) {
> + trace_ebpf_error("eBPF RSS", "can not mmap eBPF toeplitz key");
> goto toeplitz_fail;
> }
> ctx->mmap_indirections_table = mmap(NULL, qemu_real_host_page_size(),
> PROT_READ | PROT_WRITE, MAP_SHARED,
> ctx->map_indirections_table, 0);
> if (ctx->mmap_indirections_table == MAP_FAILED) {
> + trace_ebpf_error("eBPF RSS", "can not mmap eBPF indirection table");
> goto indirection_fail;
> }
>
> @@ -108,12 +113,14 @@ bool ebpf_rss_load(struct EBPFRSSContext *ctx)
>
> rss_bpf_ctx = rss_bpf__open();
> if (rss_bpf_ctx == NULL) {
> + trace_ebpf_error("eBPF RSS", "can not open eBPF RSS object");
> goto error;
> }
>
> bpf_program__set_type(rss_bpf_ctx->progs.tun_rss_steering_prog,
> BPF_PROG_TYPE_SOCKET_FILTER);
>
> if (rss_bpf__load(rss_bpf_ctx)) {
> + trace_ebpf_error("eBPF RSS", "can not load RSS program");
> goto error;
> }
>
> diff --git a/ebpf/meson.build b/ebpf/meson.build
> index c5bf9295a20..bff6156f518 100644
> --- a/ebpf/meson.build
> +++ b/ebpf/meson.build
> @@ -1 +1 @@
> -common_ss.add(when: libbpf, if_true: files('ebpf.c', 'ebpf_rss.c'),
> if_false: files('ebpf_rss-stub.c'))
> +system_ss.add(when: libbpf, if_true: files('ebpf.c', 'ebpf_rss.c'),
> if_false: files('ebpf_rss-stub.c'))
> diff --git a/ebpf/trace.h b/ebpf/trace.h
> new file mode 100644
> index 00000000000..abefc46ab10
> --- /dev/null
> +++ b/ebpf/trace.h
> @@ -0,0 +1 @@
> +#include "trace/trace-ebpf.h"
> --
> 2.44.0
>