git: bc98adaf6a93 - stable/13 - Check cpu_softc is not NULL before dereferencing

From: Alexander Motin <mav_at_FreeBSD.org>
Date: Tue, 04 Jan 2022 18:09:23 UTC
The branch stable/13 has been updated by mav:

URL: https://cgit.FreeBSD.org/src/commit/?id=bc98adaf6a931de912917805d36bf2ed5777e258

commit bc98adaf6a931de912917805d36bf2ed5777e258
Author:     Andrew Turner <andrew@FreeBSD.org>
AuthorDate: 2021-09-27 11:22:15 +0000
Commit:     Alexander Motin <mav@FreeBSD.org>
CommitDate: 2022-01-04 18:08:58 +0000

    Check cpu_softc is not NULL before dereferencing
    
    In the acpi_cpu_postattach SYSINIT function cpu_softc may be NULL, e.g.
    on arm64 when booting from FDT. Check it is not NULL at the start of
    the function so we don't try to dereference a NULL pointer.
    
    Sponsored by:   The FreeBSD Foundation
    
    (cherry picked from commit 4e50efb1944bffe6ae648c8c81bd0814c18474b9)
---
 sys/dev/acpica/acpi_cpu.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/sys/dev/acpica/acpi_cpu.c b/sys/dev/acpica/acpi_cpu.c
index 0577b6eac8b7..aac25af830ea 100644
--- a/sys/dev/acpica/acpi_cpu.c
+++ b/sys/dev/acpica/acpi_cpu.c
@@ -444,6 +444,9 @@ acpi_cpu_postattach(void *unused __unused)
     struct acpi_cpu_softc *sc;
     int attached = 0, i;
 
+    if (cpu_softc == NULL)
+	return;
+
     mtx_lock(&Giant);
     CPU_FOREACH(i) {
 	if ((sc = cpu_softc[i]) != NULL)