Re: [PATCH] ACPICA: Avoid walking the Namespace if StartNode is NULL
From: Rafael J. Wysocki
Date: Tue Nov 25 2025 - 16:18:13 EST
On Tue, Nov 25, 2025 at 9:14 AM Cryolitia PukNgae
<cryolitia.pukngae@xxxxxxxxx> wrote:
>
> ACPICA commit 1c1b57b9eba4554cb132ee658dd942c0210ed20d
>
> Since commit 0c9992315e73 ("ACPICA: Avoid walking the ACPI Namespace
> if it is not there") fixed the situation that both StartNode and
> AcpiGbl_RootNode is NULL. The Linux kernel mainline now still crashed
> on Honor Magicbook 14 Pro[1]. Due to the access to the member of
> ParentNode in AcpiNsGetNextNode, the NULL pointer dereference will
> always happen, no matter whether the StartNode equals to the
> ACPI_ROOT_OBJECT or not. So we move the check of StartNode being NULL
> out of the if block.
>
> Unfortunately, all the attempt to contact with Honor has failed, they
> refused to provide any technical support for Linux. The bad DSDT
> table's dump could be found on GitHub[2].
>
> DMI: HONOR FMB-P/FMB-P-PCB, BIOS 1.13 05/08/2025
>
> 1. https://gist.github.com/Cryolitia/a860ffc97437dcd2cd988371d5b73ed7
> 2. https://github.com/denis-bb/honor-fmb-p-dsdt
>
> Signed-off-by: Cryolitia PukNgae <cryolitia@xxxxxxxxxx>
> Link: https://github.com/acpica/acpica/pull/1061
> Signed-off-by: Cryolitia PukNgae <cryolitia.pukngae@xxxxxxxxx>
> ---
> drivers/acpi/acpica/nswalk.c | 9 ++++++---
> 1 file changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/acpi/acpica/nswalk.c b/drivers/acpi/acpica/nswalk.c
> index a2ac06a26e92..5670ff5a43cd 100644
> --- a/drivers/acpi/acpica/nswalk.c
> +++ b/drivers/acpi/acpica/nswalk.c
> @@ -169,9 +169,12 @@ acpi_ns_walk_namespace(acpi_object_type type,
>
> if (start_node == ACPI_ROOT_OBJECT) {
> start_node = acpi_gbl_root_node;
> - if (!start_node) {
> - return_ACPI_STATUS(AE_NO_NAMESPACE);
> - }
> + }
> +
> + /* Avoid walking the namespace if the StartNode is NULL */
> +
> + if (!start_node) {
> + return_ACPI_STATUS(AE_NO_NAMESPACE);
> }
>
> /* Null child means "get first node" */
>
> ---
Applied as 6.19 material with adjusted subject and some edits in the changelog.
Thanks!