Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

drivers/base/cpu: crash data showing should depends on KEXEC_CORE

After commit 88a6f8994421 ("crash: memory and CPU hotplug sysfs
attributes"), on x86_64, if only below kernel configs related to kdump are
set, compiling error are triggered.

----
CONFIG_CRASH_CORE=y
CONFIG_KEXEC_CORE=y
CONFIG_CRASH_DUMP=y
CONFIG_CRASH_HOTPLUG=y
------

------------------------------------------------------
drivers/base/cpu.c: In function `crash_hotplug_show':
drivers/base/cpu.c:309:40: error: implicit declaration of function `crash_hotplug_cpu_support'; did you mean `crash_hotplug_show'? [-Werror=implicit-function-declaration]
309 | return sysfs_emit(buf, "%d\n", crash_hotplug_cpu_support());
| ^~~~~~~~~~~~~~~~~~~~~~~~~
| crash_hotplug_show
cc1: some warnings being treated as errors
------------------------------------------------------

CONFIG_KEXEC is used to enable kexec_load interface, the
crash_notes/crash_notes_size/crash_hotplug showing depends on
CONFIG_KEXEC is incorrect. It should depend on KEXEC_CORE instead.

Fix it now.

Link: https://lkml.kernel.org/r/20231128055248.659808-1-bhe@redhat.com
Fixes: 88a6f8994421 ("crash: memory and CPU hotplug sysfs attributes")
Signed-off-by: Baoquan He <bhe@redhat.com>
Tested-by: Ignat Korchagin <ignat@cloudflare.com> [compile-time only]
Tested-by: Alexander Gordeev <agordeev@linux.ibm.com>
Reviewed-by: Eric DeVolder <eric_devolder@yahoo.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>

authored by

Baoquan He and committed by
Andrew Morton
4e9e2e4c 7d6fa31a

+3 -3
+3 -3
drivers/base/cpu.c
··· 144 144 #endif /* CONFIG_ARCH_CPU_PROBE_RELEASE */ 145 145 #endif /* CONFIG_HOTPLUG_CPU */ 146 146 147 - #ifdef CONFIG_KEXEC 147 + #ifdef CONFIG_KEXEC_CORE 148 148 #include <linux/kexec.h> 149 149 150 150 static ssize_t crash_notes_show(struct device *dev, ··· 189 189 #endif 190 190 191 191 static const struct attribute_group *common_cpu_attr_groups[] = { 192 - #ifdef CONFIG_KEXEC 192 + #ifdef CONFIG_KEXEC_CORE 193 193 &crash_note_cpu_attr_group, 194 194 #endif 195 195 NULL 196 196 }; 197 197 198 198 static const struct attribute_group *hotplugable_cpu_attr_groups[] = { 199 - #ifdef CONFIG_KEXEC 199 + #ifdef CONFIG_KEXEC_CORE 200 200 &crash_note_cpu_attr_group, 201 201 #endif 202 202 NULL