[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20211021165618.178352-3-sdf@google.com>
Date: Thu, 21 Oct 2021 09:56:17 -0700
From: Stanislav Fomichev <sdf@...gle.com>
To: netdev@...r.kernel.org, bpf@...r.kernel.org
Cc: ast@...nel.org, daniel@...earbox.net, andrii@...nel.org,
Stanislav Fomichev <sdf@...gle.com>,
Quentin Monnet <quentin@...valent.com>
Subject: [PATCH bpf-next v4 2/3] bpftool: conditionally append / to the progtype
Otherwise, attaching with bpftool doesn't work with strict section names.
Also, switch to libbpf strict mode to use the latest conventions
(note, I don't think we have any cli api guarantees?).
Cc: Quentin Monnet <quentin@...valent.com>
Signed-off-by: Stanislav Fomichev <sdf@...gle.com>
---
tools/bpf/bpftool/main.c | 4 ++++
tools/bpf/bpftool/prog.c | 9 +++++++--
2 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/tools/bpf/bpftool/main.c b/tools/bpf/bpftool/main.c
index 02eaaf065f65..8223bac1e401 100644
--- a/tools/bpf/bpftool/main.c
+++ b/tools/bpf/bpftool/main.c
@@ -409,6 +409,10 @@ int main(int argc, char **argv)
block_mount = false;
bin_name = argv[0];
+ ret = libbpf_set_strict_mode(LIBBPF_STRICT_ALL);
+ if (ret)
+ p_err("failed to enable libbpf strict mode: %d", ret);
+
hash_init(prog_table.table);
hash_init(map_table.table);
hash_init(link_table.table);
diff --git a/tools/bpf/bpftool/prog.c b/tools/bpf/bpftool/prog.c
index 277d51c4c5d9..b04990588ccf 100644
--- a/tools/bpf/bpftool/prog.c
+++ b/tools/bpf/bpftool/prog.c
@@ -1420,8 +1420,13 @@ static int load_with_options(int argc, char **argv, bool first_prog_only)
err = get_prog_type_by_name(type, &common_prog_type,
&expected_attach_type);
free(type);
- if (err < 0)
- goto err_free_reuse_maps;
+ if (err < 0) {
+ err = get_prog_type_by_name(*argv, &common_prog_type,
+ &expected_attach_type);
+ if (err < 0)
+
+ goto err_free_reuse_maps;
+ }
NEXT_ARG();
} else if (is_prefix(*argv, "map")) {
--
2.33.0.1079.g6e70778dc9-goog
Powered by blists - more mailing lists