lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <YS7kRKmWw33rVWF6@archlinux-ax161>
Date:   Tue, 31 Aug 2021 19:24:04 -0700
From:   Nathan Chancellor <nathan@...nel.org>
To:     Thomas Gleixner <tglx@...utronix.de>,
        Ingo Molnar <mingo@...hat.com>, Borislav Petkov <bp@...en8.de>,
        x86@...nel.org
Cc:     "H. Peter Anvin" <hpa@...or.com>, linux-kernel@...r.kernel.org,
        Maurizio Lombardi <mlombard@...hat.com>,
        Mike Rapoport <rppt@...ux.ibm.com>,
        Konrad Rzeszutek Wilk <konrad@...nel.org>
Subject: Re: [PATCH] x86/setup: Explicitly include acpi.h

On Tue, Aug 31, 2021 at 07:15:11PM -0700, Nathan Chancellor wrote:
> After commit 342f43af70db ("iscsi_ibft: fix crash due to KASLR physical
> memory remapping"), certain configurations show 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 these
> configurations so the removal of that means these functions have no
> definition or declaration. Add acpi.h explicitly so there is no more
> error.
> 
> Signed-off-by: Nathan Chancellor <nathan@...nel.org>
> ---
> 
> * No fixes tag as I doubt the mentioned commit is the root cause.
> 
> * The configuration was WSL2's, I did not drill down exactly which set
>   of configs triggers this but it is pretty obvious what is going on
>   here.

Actually, it reproduces with x86_64_defconfig so the configuration is
irrelevant. It looks like commit 12609013c43a ("x86/setup: Clean up the
header portion of setup.c") removed acpi.h, presumably because
iscsi_ibft.h included it but AFAIK, the kernel's policy has always been
to expliciltly include headers that are needed, rather than relying on
them being implicitly included.

If people care, I can resent with a fixes tag and calling out
x86_64_defconfig instead of the vague "certain configurations" but I do
not have a strong opinion personally.

>  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
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ