diff options
author | 2022-09-02 00:37:30 -0700 | |
---|---|---|
committer | 2022-10-28 19:01:54 +0200 | |
commit | 2437513a814b3e93bd02879740a8a06e52e2cf7d (patch) | |
tree | 11afd5c514c02225da6646497b10f352ba551962 | |
parent | Linux 6.1-rc2 (diff) | |
download | wireguard-linux-2437513a814b3e93bd02879740a8a06e52e2cf7d.tar.xz wireguard-linux-2437513a814b3e93bd02879740a8a06e52e2cf7d.zip |
ACPI: processor: idle: Check acpi_fetch_acpi_dev() return value
The return value of acpi_fetch_acpi_dev() could be NULL, which would
cause a NULL pointer dereference to occur in acpi_device_hid().
Signed-off-by: Li Zhong <floridsleeves@gmail.com>
[ rjw: Subject and changelog edits, added empty line after if () ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
-rw-r--r-- | drivers/acpi/processor_idle.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c index acfabfe07c4f..fc5b5b2c9e81 100644 --- a/drivers/acpi/processor_idle.c +++ b/drivers/acpi/processor_idle.c @@ -1134,6 +1134,9 @@ static int acpi_processor_get_lpi_info(struct acpi_processor *pr) status = acpi_get_parent(handle, &pr_ahandle); while (ACPI_SUCCESS(status)) { d = acpi_fetch_acpi_dev(pr_ahandle); + if (!d) + break; + handle = pr_ahandle; if (strcmp(acpi_device_hid(d), ACPI_PROCESSOR_CONTAINER_HID)) |