ACPICA: fixup after acpi_get_object_info() change
PATCH 1/1 ACPICA: fixup after acpi_get_object_info() change
Commit 15b8dd53f5ffa changed info->hardware_id from a static array to a pointer. If hardware_id is non-NULL, it points to a NULL-terminated string, so we don't need to terminate it explicitly. However, it may be NULL; in that case, we *can't* add a NULL terminator.
This causes a NULL pointer dereference oops for devices without _HID.
--- drivers/pci/hotplug/acpiphp_ibm.c | 1 - 1 files changed, 0 insertions(+), 1 deletions(-)
drivers/pci/hotplug/acpiphp_ibm.c +0 -1
@@ -406,7 +406,6 @@ static acpi_status __init ibm_find_acpi_device(acpi_handle handle, __func__, status);return retval; } - info->hardware_id.string[sizeof (info->hardware_id.length) -1 ] ='\0' ; if (info->current_status && (info->valid & ACPI_VALID_HID) && (!strcmp(info->hardware_id.string, IBM_HARDWARE_ID1) ||
Oops, I meant to CC you guys, but forgot. 15b8dd53f5ffa is in acpi-test, but not upstream yet.
Quoted 29 lines · Bjorn Helgaas
Commit
15b8dd53f5ffachangedinfo->hardware_idfrom a static array to a pointer. Ifhardware_idis non-NULL, it points to a NULL-terminated string, so we don't need to terminate it explicitly. However, it may be NULL; in that case, we *can't* add a NULL terminator.This causes a NULL pointer dereference oops for devices without
_HID.Signed-off-by Bjorn Helgaas <[email protected]>CC Lin Ming <[email protected]>CC Bob Moore <[email protected]>CC Gary Hade <[email protected]>--- drivers/pci/hotplug/acpiphp_ibm.c | 1 - 1 files changed, 0 insertions(+), 1 deletions(-)drivers/pci/hotplug/acpiphp_ibm.c +0
-1@@ -406,7 +406,6 @@ static acpi_status __init ibm_find_acpi_device(acpi_handle handle, __func__, status);return retval; } - info->hardware_id.string[sizeof (info->hardware_id.length) -1 ] ='\0' ; if (info->current_status && (info->valid & ACPI_VALID_HID) && (!strcmp(info->hardware_id.string, IBM_HARDWARE_ID1) ||