From 5ebb15d265bdd95ce2f151d05ee7ed84caefa647 Mon Sep 17 00:00:00 2001 From: Stewart Smith Date: Thu, 29 Nov 2018 15:28:26 +1100 Subject: core/cpu.c: avoid container_of(NULL) in next_cpu() A certain finicky static analysis tool did point out that we were operating on a value that could be null (and since first_cpu() calls next_cpu(NULL) to get the first one, it also gets to be complained about as next_cpu() could act on that NULL pointer). So, rework things to shut the static analysis tool up, when in fact this was never a problem. Signed-off-by: Stewart Smith --- core/cpu.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'core') diff --git a/core/cpu.c b/core/cpu.c index 4f518a4..a83f8ba 100644 --- a/core/cpu.c +++ b/core/cpu.c @@ -739,13 +739,13 @@ struct cpu_thread *find_cpu_by_server(u32 server_no) struct cpu_thread *next_cpu(struct cpu_thread *cpu) { - struct cpu_stack *s = container_of(cpu, struct cpu_stack, cpu); - unsigned int index; + struct cpu_stack *s; + unsigned int index = 0; - if (cpu == NULL) - index = 0; - else + if (cpu != NULL) { + s = container_of(cpu, struct cpu_stack, cpu); index = s - cpu_stacks + 1; + } for (; index <= cpu_max_pir; index++) { cpu = &cpu_stacks[index].cpu; if (cpu->state != cpu_state_no_cpu) -- cgit v1.1