Blob Blame History Raw
From: Kumar Kartikeya Dwivedi <memxor@gmail.com>
Date: Thu, 26 Aug 2021 17:39:10 +0530
Subject: samples: bpf: Fix uninitialized variable in xdp_redirect_cpu
Patch-mainline: v5.15-rc1
Git-commit: 48b2e71c2e53263ebbb6798bbf208e191937e691
References: jsc#PED-1377

While at it, also improve help output when CPU number is greater than
possible.

Fixes: e531a220cc59 ("samples: bpf: Convert xdp_redirect_cpu to XDP samples helper")
Signed-off-by: Kumar Kartikeya Dwivedi <memxor@gmail.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Link: https://lore.kernel.org/bpf/20210826120910.454081-1-memxor@gmail.com
Acked-by: Shung-Hsi Yu <shung-hsi.yu@suse.com>
---
 samples/bpf/xdp_redirect_cpu_user.c |    5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

--- a/samples/bpf/xdp_redirect_cpu_user.c
+++ b/samples/bpf/xdp_redirect_cpu_user.c
@@ -141,7 +141,7 @@ static int create_cpu_entry(__u32 cpu, s
 static int mark_cpus_unavailable(void)
 {
 	int ret, i, n_cpus = libbpf_num_possible_cpus();
-	__u32 invalid_cpu;
+	__u32 invalid_cpu = n_cpus;
 
 	for (i = 0; i < n_cpus; i++) {
 		ret = bpf_map_update_elem(avail_fd, &i,
@@ -449,8 +449,9 @@ int main(int argc, char **argv)
 			add_cpu = strtoul(optarg, NULL, 0);
 			if (add_cpu >= n_cpus) {
 				fprintf(stderr,
-				"--cpu nr too large for cpumap err(%d):%s\n",
+				"--cpu nr too large for cpumap err (%d):%s\n",
 					errno, strerror(errno));
+				usage(argv, long_options, __doc__, mask, true, skel->obj);
 				goto end_cpu;
 			}
 			cpu[added_cpus++] = add_cpu;