Return from cpu_schedule_up when either cpu is 0 or
NR_CPUS == 1. This fixes the following:
core.c: In function 'cpu_schedule_up':
core.c:2769:19: error: array subscript 1 is above array bounds
of 'struct vcpu *[1]' [-Werror=array-bounds]
2769 | if ( idle_vcpu[cpu] == NULL )
|
Signed-off-by: Connor Davis <[email protected]>
---
xen/common/sched/core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/xen/common/sched/core.c b/xen/common/sched/core.c
index 9745a77eee..f5ec65bf9b 100644
--- a/xen/common/sched/core.c
+++ b/xen/common/sched/core.c
@@ -2763,7 +2763,7 @@ static int cpu_schedule_up(unsigned int cpu)
cpumask_set_cpu(cpu, &sched_res_mask);
/* Boot CPU is dealt with later in scheduler_init(). */
- if ( cpu == 0 )
+ if ( cpu == 0 || NR_CPUS == 1 )
return 0;
if ( idle_vcpu[cpu] == NULL )
--
2.27.0