diff options
author | Gavin Shan <gshan@redhat.com> | 2020-03-19 10:01:44 +1100 |
---|---|---|
committer | Catalin Marinas <catalin.marinas@arm.com> | 2020-03-24 17:24:19 +0000 |
commit | de58ed5e16e62f36c7ed05552f18b7f9c647dcaf (patch) | |
tree | b92e5b00897604c1e1efd375cc1a27d51c2c3aa3 /arch/arm64/kernel/setup.c | |
parent | 6885fb129be30c627eb2f5b1498dba498ff6c037 (diff) | |
download | linux-de58ed5e16e62f36c7ed05552f18b7f9c647dcaf.tar.gz linux-de58ed5e16e62f36c7ed05552f18b7f9c647dcaf.tar.bz2 linux-de58ed5e16e62f36c7ed05552f18b7f9c647dcaf.zip |
arm64: Introduce get_cpu_ops() helper function
This introduces get_cpu_ops() to return the CPU operations according to
the given CPU index. For now, it simply returns the @cpu_ops[cpu] as
before. Also, helper function __cpu_try_die() is introduced to be shared
by cpu_die() and ipi_cpu_crash_stop(). So it shouldn't introduce any
functional changes.
Signed-off-by: Gavin Shan <gshan@redhat.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Acked-by: Mark Rutland <mark.rutland@arm.com>
Diffstat (limited to 'arch/arm64/kernel/setup.c')
-rw-r--r-- | arch/arm64/kernel/setup.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/arm64/kernel/setup.c b/arch/arm64/kernel/setup.c index f66bd260cce8..3fd2c11c09fc 100644 --- a/arch/arm64/kernel/setup.c +++ b/arch/arm64/kernel/setup.c @@ -371,8 +371,10 @@ void __init setup_arch(char **cmdline_p) static inline bool cpu_can_disable(unsigned int cpu) { #ifdef CONFIG_HOTPLUG_CPU - if (cpu_ops[cpu] && cpu_ops[cpu]->cpu_can_disable) - return cpu_ops[cpu]->cpu_can_disable(cpu); + const struct cpu_operations *ops = get_cpu_ops(cpu); + + if (ops && ops->cpu_can_disable) + return ops->cpu_can_disable(cpu); #endif return false; } |