[PATCH v2] x86/setup: Explicitly include acpi.h

From: Nathan Chancellor
Date: Wed Sep 01 2021 - 12:09:08 EST


After commit 342f43af70db ("iscsi_ibft: fix crash due to KASLR physical
memory remapping") x86_64_defconfig shows the following errors:

arch/x86/kernel/setup.c: In function ‘setup_arch’:
arch/x86/kernel/setup.c:916:13: error: implicit declaration of function ‘acpi_mps_check’ [-Werror=implicit-function-declaration]
916 | if (acpi_mps_check()) {
| ^~~~~~~~~~~~~~
arch/x86/kernel/setup.c:1110:9: error: implicit declaration of function ‘acpi_table_upgrade’ [-Werror=implicit-function-declaration]
1110 | acpi_table_upgrade();
| ^~~~~~~~~~~~~~~~~~
arch/x86/kernel/setup.c:1112:9: error: implicit declaration of function ‘acpi_boot_table_init’ [-Werror=implicit-function-declaration]
1112 | acpi_boot_table_init();
| ^~~~~~~~~~~~~~~~~~~~
arch/x86/kernel/setup.c:1120:9: error: implicit declaration of function ‘early_acpi_boot_init’; did you mean ‘early_cpu_init’? [-Werror=implicit-function-declaration]
1120 | early_acpi_boot_init();
| ^~~~~~~~~~~~~~~~~~~~
| early_cpu_init
arch/x86/kernel/setup.c:1162:9: error: implicit declaration of function ‘acpi_boot_init’ [-Werror=implicit-function-declaration]
1162 | acpi_boot_init();
| ^~~~~~~~~~~~~~
cc1: some warnings being treated as errors

acpi.h was being implicitly included from iscsi_ibft.h in this
configuration so the removal of that header means these functions have
no definition or declaration. Add acpi.h explicitly so there is no more
error.

Tested-by: Matthieu Baerts <matthieu.baerts@xxxxxxxxxxxx>
Signed-off-by: Nathan Chancellor <nathan@xxxxxxxxxx>
---

Linus, would you mind taking this directly? Boris indicated here he was
okay with that:

https://lore.kernel.org/r/YS8stOCBCdfZ+J0Y@xxxxxxx/

v1 -> v2:

* "certain configurations" -> "x86_64_defconfig", be definitive.

* Add Matthieu's tested-by.

arch/x86/kernel/setup.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
index 63b20536c8d2..79f164141116 100644
--- a/arch/x86/kernel/setup.c
+++ b/arch/x86/kernel/setup.c
@@ -5,6 +5,7 @@
* This file contains the setup_arch() code, which handles the architecture-dependent
* parts of early kernel initialization.
*/
+#include <linux/acpi.h>
#include <linux/console.h>
#include <linux/crash_dump.h>
#include <linux/dma-map-ops.h>

base-commit: 9e9fb7655ed585da8f468e29221f0ba194a5f613
--
2.33.0