From 6d1c9cd32496d1bb227c229bd1518ba7b9a047bb Mon Sep 17 00:00:00 2001 From: Hui Tang Date: Thu, 1 Dec 2022 19:53:31 +0800 Subject: [PATCH] sched: programmable: Fix build error for nr_cpus_ids MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit hulk inclusion category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/I645C7 CVE: NA -------------------------------- When !CONFIG_SMP && CONFIG_BPF_SCHED, it will build error, as follows: ./include/linux/cpumask.h:37:33: error: expected identifier or ‘(’ before numeric constant 37 | #define nr_cpu_ids 1U | ^~ ./include/linux/bpf_topology.h:39:22: note: in expansion of macro ‘nr_cpu_ids’ 39 | unsigned int nr_cpu_ids; | ^~~~~~~~~~ kernel/sched/bpf_topology.c: In function ‘____bpf_get_cpumask_info’: ./include/linux/cpumask.h:37:33: error: expected identifier before numeric constant 37 | #define nr_cpu_ids 1U | ^~ kernel/sched/bpf_topology.c:75:15: note: in expansion of macro ‘nr_cpu_ids’ 75 | cpus->nr_cpu_ids = nr_cpu_ids; Fixes: f333bd6882e7 ("sched: programmable: Add helper function for...") Signed-off-by: Hui Tang --- include/linux/bpf_topology.h | 2 +- kernel/sched/bpf_topology.c | 2 +- tools/lib/bpf/libbpf_sched.h | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/include/linux/bpf_topology.h b/include/linux/bpf_topology.h index 0c7ee492edde..b2c6d621821d 100644 --- a/include/linux/bpf_topology.h +++ b/include/linux/bpf_topology.h @@ -36,7 +36,7 @@ struct bpf_cpumask_info { unsigned int nums_possible_cpus; unsigned int nums_active_cpus; unsigned int nums_isolate_cpus; - unsigned int nr_cpu_ids; + unsigned int bpf_nr_cpu_ids; unsigned int bpf_nr_cpumask_bits; struct cpumask cpu_possible_cpumask; struct cpumask cpu_active_cpumask; diff --git a/kernel/sched/bpf_topology.c b/kernel/sched/bpf_topology.c index 69541dc6a983..ce6cb8277246 100644 --- a/kernel/sched/bpf_topology.c +++ b/kernel/sched/bpf_topology.c @@ -72,7 +72,7 @@ BPF_CALL_2(bpf_get_cpumask_info, struct bpf_map *, map, struct bpf_cpumask_info cpus->nums_possible_cpus = num_possible_cpus(); cpus->nums_active_cpus = num_active_cpus(); cpus->nums_isolate_cpus = cpumask_weight(&cpus->cpu_isolate_cpumask); - cpus->nr_cpu_ids = nr_cpu_ids; + cpus->bpf_nr_cpu_ids = nr_cpu_ids; cpus->bpf_nr_cpumask_bits = nr_cpumask_bits; return 0; diff --git a/tools/lib/bpf/libbpf_sched.h b/tools/lib/bpf/libbpf_sched.h index b2008ff6bb25..04b43c145fcd 100644 --- a/tools/lib/bpf/libbpf_sched.h +++ b/tools/lib/bpf/libbpf_sched.h @@ -310,7 +310,7 @@ static __always_inline int libbpf_nr_cpus_ids(void) return -1; bpf_get_cpumask_info(&map_cpumask_info, cpus); - return getVal(cpus->nr_cpu_ids); + return getVal(cpus->bpf_nr_cpu_ids); } static __always_inline int libbpf_nr_cpumask_bits(void) -- GitLab