Somehow when bpftool is compiled in -Og mode, compiler produces new warnings
about possibly uninitialized variables. Fix all the reported problems.

Fixes: 2119f2189df1 ("bpftool: add C output format option to btf dump 
subcommand")
Signed-off-by: Andrii Nakryiko <and...@kernel.org>
---
 tools/bpf/bpftool/btf.c  | 3 +++
 tools/bpf/bpftool/main.c | 3 +--
 tools/bpf/bpftool/map.c  | 2 +-
 3 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/tools/bpf/bpftool/btf.c b/tools/bpf/bpftool/btf.c
index 985610c3f193..62953bbf68b4 100644
--- a/tools/bpf/bpftool/btf.c
+++ b/tools/bpf/bpftool/btf.c
@@ -546,6 +546,7 @@ static int do_dump(int argc, char **argv)
                        NEXT_ARG();
                        if (argc < 1) {
                                p_err("expecting value for 'format' option\n");
+                               err = -EINVAL;
                                goto done;
                        }
                        if (strcmp(*argv, "c") == 0) {
@@ -555,11 +556,13 @@ static int do_dump(int argc, char **argv)
                        } else {
                                p_err("unrecognized format specifier: '%s', 
possible values: raw, c",
                                      *argv);
+                               err = -EINVAL;
                                goto done;
                        }
                        NEXT_ARG();
                } else {
                        p_err("unrecognized option: '%s'", *argv);
+                       err = -EINVAL;
                        goto done;
                }
        }
diff --git a/tools/bpf/bpftool/main.c b/tools/bpf/bpftool/main.c
index b86f450e6fce..d9afb730136a 100644
--- a/tools/bpf/bpftool/main.c
+++ b/tools/bpf/bpftool/main.c
@@ -276,7 +276,7 @@ static int do_batch(int argc, char **argv)
        int n_argc;
        FILE *fp;
        char *cp;
-       int err;
+       int err = 0;
        int i;
 
        if (argc < 2) {
@@ -370,7 +370,6 @@ static int do_batch(int argc, char **argv)
        } else {
                if (!json_output)
                        printf("processed %d commands\n", lines);
-               err = 0;
        }
 err_close:
        if (fp != stdin)
diff --git a/tools/bpf/bpftool/map.c b/tools/bpf/bpftool/map.c
index b400364ee054..09ae0381205b 100644
--- a/tools/bpf/bpftool/map.c
+++ b/tools/bpf/bpftool/map.c
@@ -100,7 +100,7 @@ static int do_dump_btf(const struct btf_dumper *d,
                       void *value)
 {
        __u32 value_id;
-       int ret;
+       int ret = 0;
 
        /* start of key-value pair */
        jsonw_start_object(d->jw);
-- 
2.24.1

Reply via email to