linux/drivers/acpi/acpica
Cryolitia PukNgae 9d6c58dae8 ACPICA: Avoid walking the Namespace if start_node is NULL
Although commit 0c9992315e ("ACPICA: Avoid walking the ACPI Namespace
if it is not there") fixed the situation when both start_node and
acpi_gbl_root_node are NULL, the Linux kernel mainline now still crashed
on Honor Magicbook 14 Pro [1].

That happens due to the access to the member of parent_node in
acpi_ns_get_next_node().  The NULL pointer dereference will always
happen, no matter whether or not the start_node is equal to
ACPI_ROOT_OBJECT, so move the check of start_node being NULL
out of the if block.

Unfortunately, all the attempts to contact Honor have 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

Link: 1c1b57b9eb
Link: https://gist.github.com/Cryolitia/a860ffc97437dcd2cd988371d5b73ed7 [1]
Link: https://github.com/denis-bb/honor-fmb-p-dsdt [2]
Signed-off-by: Cryolitia PukNgae <cryolitia.pukngae@linux.dev>
Reviewed-by: WangYuli <wangyl5933@chinaunicom.cn>
[ rjw: Subject adjustment, changelog edits ]
Link: https://patch.msgid.link/20251125-acpica-v1-1-99e63b1b25f8@linux.dev
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2025-11-25 22:14:11 +01:00
..
Makefile ACPI: disable -Wstringop-truncation 2024-04-09 17:02:30 +02:00
acapps.h ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
accommon.h ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
acconvert.h ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
acdebug.h ACPICA: Debugger: drop ACPI_NONSTRING attribute from name_seg 2025-09-15 12:20:12 +02:00
acdispat.h ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
acevents.h ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
acglobal.h ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
achware.h ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
acinterp.h ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
aclocal.h ACPICA: Fix largest possible resource descriptor index 2025-09-15 12:20:13 +02:00
acmacros.h ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
acnamesp.h ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
acobject.h ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
acopcode.h ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
acparser.h ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
acpredef.h ACPICA: ACPI_TYPE_ANY does not include the package type 2025-09-15 12:20:13 +02:00
acresrc.h ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
acstruct.h ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
actables.h ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
acutils.h ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
amlcode.h ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
amlresrc.h ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
dbcmds.c ACPICA: Add interrupt command to acpiexec 2023-07-10 18:48:15 +02:00
dbconvert.c ACPICA: check null return of ACPI_ALLOCATE_ZEROED() in acpi_db_convert_to_package() 2024-08-02 16:51:07 +02:00
dbdisply.c ACPICA: iASL: add new OperationRegion subtype keyword PlatformRtMechanism 2020-06-05 13:34:23 +02:00
dbexec.c ACPICA: Debugger: Add a new command: "ALL <NameSeg>" 2020-10-08 18:03:55 +02:00
dbfileio.c
dbhistry.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
dbinput.c ACPICA: Add interrupt command to acpiexec 2023-07-10 18:48:15 +02:00
dbmethod.c ACPICA: Debugger: Add a new command: "ALL <NameSeg>" 2020-10-08 18:03:55 +02:00
dbnames.c ACPICA: debugger: check status of acpi_evaluate_object() in acpi_db_walk_for_fields() 2024-03-26 13:06:47 +01:00
dbobject.c ACPICA: Clean up exception code class checks 2021-01-18 16:01:10 +01:00
dbstats.c
dbtest.c
dbutils.c
dbxface.c
dsargs.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
dscontrol.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
dsdebug.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
dsfield.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
dsinit.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
dsmethod.c ACPICA: Print error messages for too few or too many arguments 2025-09-15 12:20:13 +02:00
dsmthdat.c ACPICA: Add support for printing AML arguments when trace point enabled 2025-04-24 22:01:18 +02:00
dsobject.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
dsopcode.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
dspkginit.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
dsutils.c ACPICA: Fix warnings from PR #295 merge 2025-03-27 13:17:18 +01:00
dswexec.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
dswload.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
dswload2.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
dswscope.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
dswstate.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
evevent.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
evglock.c ACPICA: Allow to skip Global Lock initialization 2025-09-15 12:20:12 +02:00
evgpe.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
evgpeblk.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
evgpeinit.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
evgpeutil.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
evhandler.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
evmisc.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
evregion.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
evrgnini.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
evsci.c
evxface.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
evxfevnt.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
evxfgpe.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
evxfregn.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
exconcat.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
exconfig.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
exconvrt.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
excreate.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
exdebug.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
exdump.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
exfield.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
exfldio.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
exmisc.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
exmutex.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
exnames.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
exoparg1.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
exoparg2.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
exoparg3.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
exoparg6.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
exprep.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
exregion.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
exresnte.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
exresolv.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
exresop.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
exserial.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
exstore.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
exstoren.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
exstorob.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
exsystem.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
extrace.c ACPICA: Decrease `AcpiExTracePoint` verbosity 2025-06-26 20:56:57 +02:00
exutils.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
hwacpi.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
hwesleep.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
hwgpe.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
hwpci.c
hwregs.c ACPICA: Clean up double word in comment 2022-04-13 20:24:57 +02:00
hwsleep.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
hwtimer.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
hwvalid.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
hwxface.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
hwxfsleep.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
nsaccess.c ACPICA: Always create namespace nodes using acpi_ns_create_node() 2021-03-24 14:50:54 +01:00
nsalloc.c ACPICA: Remove unnecessary semicolon 2020-10-08 18:03:56 +02:00
nsarguments.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
nsconvert.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
nsdump.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
nsdumpdv.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
nseval.c
nsinit.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
nsload.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
nsnames.c ACPICA: Apply ACPI_NONSTRING 2025-05-12 15:38:42 +02:00
nsobject.c
nsparse.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
nspredef.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
nsprepkg.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
nsrepair.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
nsrepair2.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
nssearch.c
nsutils.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
nswalk.c ACPICA: Avoid walking the Namespace if start_node is NULL 2025-11-25 22:14:11 +01:00
nsxfeval.c
nsxfname.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
nsxfobj.c ACPICA: Tree-wide: fix various typos and spelling mistakes 2020-10-08 18:03:55 +02:00
psargs.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
psloop.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
psobject.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
psopcode.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
psopinfo.c ACPICA: Change the compilation conditions 2025-09-15 12:20:12 +02:00
psparse.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
psscope.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
pstree.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
psutils.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
pswalk.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
psxface.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
rsaddr.c ACPICA: Apply pack(1) to union aml_resource 2025-05-06 23:05:42 +02:00
rscalc.c ACPICA: Apply pack(1) to union aml_resource 2025-05-06 23:05:42 +02:00
rscreate.c
rsdump.c ACPICA: Avoid warning for Dump Functions 2024-08-29 19:04:22 +02:00
rsdumpinfo.c ACPICA: add support for ClockInput resource (v6.5) 2023-04-06 20:29:11 +02:00
rsinfo.c ACPICA: add support for ClockInput resource (v6.5) 2023-04-06 20:29:11 +02:00
rsio.c
rsirq.c
rslist.c ACPICA: Apply pack(1) to union aml_resource 2025-05-06 23:05:42 +02:00
rsmemory.c
rsmisc.c ACPICA: Avoid undefined behavior: load of misaligned address 2023-04-06 20:29:11 +02:00
rsserial.c ACPICA: add support for ClockInput resource (v6.5) 2023-04-06 20:29:11 +02:00
rsutils.c
rsxface.c
tbdata.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
tbfadt.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
tbfind.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
tbinstal.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
tbprint.c ACPICA: Work around bogus -Wstringop-overread warning since GCC 11 2025-10-21 15:54:34 +02:00
tbutils.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
tbxface.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
tbxfload.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
tbxfroot.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
utaddress.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
utalloc.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
utascii.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
utbuffer.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
utcache.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
utcksum.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
utcopy.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
utdebug.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
utdecode.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
utdelete.c ACPICA: Utilities: Fix spelling mistake "Incremement" -> "Increment" 2025-05-12 15:38:42 +02:00
uterror.c
uteval.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
utexcep.c
utglobal.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
uthex.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
utids.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
utinit.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
utlock.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
utmath.c
utmisc.c
utmutex.c
utnonansi.c ACPICA: Switch back to using strncpy() in acpi_ut_safe_strncpy() 2025-05-29 21:19:10 +02:00
utobject.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
utosi.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
utownerid.c
utpredef.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
utprint.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
utresdecode.c ACPICA: add support for ClockInput resource (v6.5) 2023-04-06 20:29:11 +02:00
utresrc.c ACPICA: Apply pack(1) to union aml_resource 2025-05-06 23:05:42 +02:00
utstate.c
utstring.c ACPICA: Improve warning message for "invalid ACPI name" 2022-10-28 17:28:23 +02:00
utstrsuppt.c ACPICA: add type casts for string functions 2021-01-22 15:51:53 +01:00
utstrtoul64.c
uttrack.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
utuuid.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
utxface.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
utxferror.c
utxfinit.c ACPICA: Update copyright year 2025-05-12 15:38:43 +02:00
utxfmutex.c