summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuan Chen <chenyuan@kylinos.cn>2025-06-17 09:24:42 -0400
committerAndrii Nakryiko <andrii@kernel.org>2025-06-17 13:28:26 -0700
commit85cd83fed8267cde0dd1cea719808aad95ae4de7 (patch)
tree45fda4624875530fc8bc362a1084a38edf955eb7
parent66ab68c9de89672366fdc474f4f185bb58cecf2d (diff)
bpftool: Fix JSON writer resource leak in version command
When using `bpftool --version -j/-p`, the JSON writer object created in do_version() was not properly destroyed after use. This caused a memory leak each time the version command was executed with JSON output. Fix: 004b45c0e51a (tools: bpftool: provide JSON output for all possible commands) Suggested-by: Quentin Monnet <qmo@kernel.org> Signed-off-by: Yuan Chen <chenyuan@kylinos.cn> Signed-off-by: Andrii Nakryiko <andrii@kernel.org> Reviewed-by: Quentin Monnet <qmo@kernel.org> Link: https://lore.kernel.org/bpf/20250617132442.9998-1-chenyuan_fl@163.com
-rw-r--r--tools/bpf/bpftool/main.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/tools/bpf/bpftool/main.c b/tools/bpf/bpftool/main.c
index cd5963cb6058..2b7f2bd3a7db 100644
--- a/tools/bpf/bpftool/main.c
+++ b/tools/bpf/bpftool/main.c
@@ -534,9 +534,9 @@ int main(int argc, char **argv)
usage();
if (version_requested)
- return do_version(argc, argv);
-
- ret = cmd_select(commands, argc, argv, do_help);
+ ret = do_version(argc, argv);
+ else
+ ret = cmd_select(commands, argc, argv, do_help);
if (json_output)
jsonw_destroy(&json_wtr);