[PATCH] tools/bpf:Fix the wrong format specifier

Zhu Jun posted 1 patch 1 year, 6 months ago
There is a newer version of this series
tools/bpf/bpftool/xlated_dumper.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
[PATCH] tools/bpf:Fix the wrong format specifier
Posted by Zhu Jun 1 year, 6 months ago
The unsigned int should use "%u" instead of "%d".

Signed-off-by: Zhu Jun <zhujun2@cmss.chinamobile.com>
---
 tools/bpf/bpftool/xlated_dumper.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/tools/bpf/bpftool/xlated_dumper.c b/tools/bpf/bpftool/xlated_dumper.c
index 567f56dfd9f1..3efa639434be 100644
--- a/tools/bpf/bpftool/xlated_dumper.c
+++ b/tools/bpf/bpftool/xlated_dumper.c
@@ -349,7 +349,7 @@ void dump_xlated_plain(struct dump_data *dd, void *buf, unsigned int len,
 
 		double_insn = insn[i].code == (BPF_LD | BPF_IMM | BPF_DW);
 
-		printf("% 4d: ", i);
+		printf("% 4u: ", i);
 		print_bpf_insn(&cbs, insn + i, true);
 
 		if (opcodes) {
@@ -415,7 +415,7 @@ void dump_xlated_for_graph(struct dump_data *dd, void *buf_start, void *buf_end,
 			}
 		}
 
-		printf("%d: ", insn_off);
+		printf("%u: ", insn_off);
 		print_bpf_insn(&cbs, cur, true);
 
 		if (opcodes) {
-- 
2.17.1
Re: [PATCH] tools/bpf:Fix the wrong format specifier
Posted by Quentin Monnet 1 year, 6 months ago
2024-07-23 23:42 UTC-0700 ~ Zhu Jun <zhujun2@cmss.chinamobile.com>
> The unsigned int should use "%u" instead of "%d".
> 
> Signed-off-by: Zhu Jun <zhujun2@cmss.chinamobile.com>
> ---
>  tools/bpf/bpftool/xlated_dumper.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/tools/bpf/bpftool/xlated_dumper.c b/tools/bpf/bpftool/xlated_dumper.c
> index 567f56dfd9f1..3efa639434be 100644
> --- a/tools/bpf/bpftool/xlated_dumper.c
> +++ b/tools/bpf/bpftool/xlated_dumper.c
> @@ -349,7 +349,7 @@ void dump_xlated_plain(struct dump_data *dd, void *buf, unsigned int len,
>  
>  		double_insn = insn[i].code == (BPF_LD | BPF_IMM | BPF_DW);
>  
> -		printf("% 4d: ", i);
> +		printf("% 4u: ", i);


Thanks! But did you try to compile this? It produces a warning:

	xlated_dumper.c: In function ‘dump_xlated_plain’:
	xlated_dumper.c:352:28: warning: ' ' flag used with ‘%u’ gnu_printf format [-Wformat=]
	  352 |                 printf("% 4u: ", i);
	      |                            ^

Please fix it.

Quentin
Re: [PATCH] tools/bpf:Fix the wrong format specifier
Posted by Geliang Tang 1 year, 6 months ago
On Tue, 2024-07-23 at 23:42 -0700, Zhu Jun wrote:
> The unsigned int should use "%u" instead of "%d".

I guess you mean:

The format specifier of "unsigned int" in printf() should be "%u", not
"%d".

> Signed-off-by: Zhu Jun <zhujun2@cmss.chinamobile.com>

Acked-by: Geliang Tang <geliang@kernel.org>

> ---
>  tools/bpf/bpftool/xlated_dumper.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/tools/bpf/bpftool/xlated_dumper.c
> b/tools/bpf/bpftool/xlated_dumper.c
> index 567f56dfd9f1..3efa639434be 100644
> --- a/tools/bpf/bpftool/xlated_dumper.c
> +++ b/tools/bpf/bpftool/xlated_dumper.c
> @@ -349,7 +349,7 @@ void dump_xlated_plain(struct dump_data *dd, void
> *buf, unsigned int len,
>  
>  		double_insn = insn[i].code == (BPF_LD | BPF_IMM |
> BPF_DW);
>  
> -		printf("% 4d: ", i);
> +		printf("% 4u: ", i);
>  		print_bpf_insn(&cbs, insn + i, true);
>  
>  		if (opcodes) {
> @@ -415,7 +415,7 @@ void dump_xlated_for_graph(struct dump_data *dd,
> void *buf_start, void *buf_end,
>  			}
>  		}
>  
> -		printf("%d: ", insn_off);
> +		printf("%u: ", insn_off);
>  		print_bpf_insn(&cbs, cur, true);
>  
>  		if (opcodes) {