ACPI: x86: s2idle: Fix a NULL pointer dereference
authorMario Limonciello <mario.limonciello@amd.com>
Wed, 28 Sep 2022 16:19:34 +0000 (11:19 -0500)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Wed, 28 Sep 2022 19:32:49 +0000 (21:32 +0200)
commit39f81776c6807d605cfec6fa7a2439fa4786034e
tree21712a6c3ba3c3613821ad88aba2e67179ab5edc
parent631b54519e8e58758e4541756c1818dcebd2dcc9
ACPI: x86: s2idle: Fix a NULL pointer dereference

Ryzen 7000 (Raphael) introduced AMDI0008 for _HID.  This ID was added
in commit ed470febf837 ("ACPI: PM: s2idle: Add support for upcoming AMD
uPEP HID AMDI008"), but then removed in favor of aligning all new IDs
to Rembrandt support in commit fd894f05cf30 ("ACPI: x86: s2idle: If a
new AMD _HID is missing assume Rembrandt").

Unfortunately there was a mistake in commit 100a57379380 ("ACPI: x86:
s2idle: Move _HID handling for AMD systems into structures") that can
lead to a NULL pointer dereference accessing `dev_id->driver_data` in
the sentinel of `amd_hid_ids`.  Fix this dereference.

Reported-by: Richard Gong <Richard.Gong@amd.com>
Fixes: 100a57379380 ("ACPI: x86: s2idle: Move _HID handling for AMD systems into structures")
Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/acpi/x86/s2idle.c