diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2017-01-28 14:06:42 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2017-01-28 14:06:42 -0500 |
commit | 64a172d265643b345007ddaafcc523f6e5373b69 (patch) | |
tree | 012cba95b06014e2a5d916ae3081401a0552077f | |
parent | ef1dce990b06a3f5bf4f71100891686b5d3f7c7e (diff) | |
parent | 606f42265d384b9149bfb953c5dfc6d4710fef4c (diff) |
Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux
Pull arm64 fix from Catalin Marinas:
"Fix kernel panic on ACPI-based systems where CPU capacity description
is not currently handled"
* tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
arm64: skip register_cpufreq_notifier on ACPI-based systems
-rw-r--r-- | arch/arm64/kernel/topology.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/arch/arm64/kernel/topology.c b/arch/arm64/kernel/topology.c index 23e9e13bd2aa..655e65f38f31 100644 --- a/arch/arm64/kernel/topology.c +++ b/arch/arm64/kernel/topology.c | |||
@@ -11,6 +11,7 @@ | |||
11 | * for more details. | 11 | * for more details. |
12 | */ | 12 | */ |
13 | 13 | ||
14 | #include <linux/acpi.h> | ||
14 | #include <linux/cpu.h> | 15 | #include <linux/cpu.h> |
15 | #include <linux/cpumask.h> | 16 | #include <linux/cpumask.h> |
16 | #include <linux/init.h> | 17 | #include <linux/init.h> |
@@ -209,7 +210,12 @@ static struct notifier_block init_cpu_capacity_notifier = { | |||
209 | 210 | ||
210 | static int __init register_cpufreq_notifier(void) | 211 | static int __init register_cpufreq_notifier(void) |
211 | { | 212 | { |
212 | if (cap_parsing_failed) | 213 | /* |
214 | * on ACPI-based systems we need to use the default cpu capacity | ||
215 | * until we have the necessary code to parse the cpu capacity, so | ||
216 | * skip registering cpufreq notifier. | ||
217 | */ | ||
218 | if (!acpi_disabled || cap_parsing_failed) | ||
213 | return -EINVAL; | 219 | return -EINVAL; |
214 | 220 | ||
215 | if (!alloc_cpumask_var(&cpus_to_visit, GFP_KERNEL)) { | 221 | if (!alloc_cpumask_var(&cpus_to_visit, GFP_KERNEL)) { |