diff mbox series

ACPI: x86: Add adev NULL check to acpi_quirk_skip_serdev_enumeration()

Message ID 20241109220028.83047-1-hdegoede@redhat.com
State Accepted
Commit 4a49194f587a62d972b602e3e1a2c3cfe6567966
Headers show
Series ACPI: x86: Add adev NULL check to acpi_quirk_skip_serdev_enumeration() | expand

Commit Message

Hans de Goede Nov. 9, 2024, 10 p.m. UTC
acpi_dev_hid_match() does not check for adev == NULL, dereferencing
it unconditional.

Add a check for adev being NULL before calling acpi_dev_hid_match().

At the moment acpi_quirk_skip_serdev_enumeration() is never called with
a controller_parent without an ACPI companion, but better safe than sorry.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
 drivers/acpi/x86/utils.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Rafael J. Wysocki Nov. 12, 2024, 8:27 p.m. UTC | #1
On Sat, Nov 9, 2024 at 11:00 PM Hans de Goede <hdegoede@redhat.com> wrote:
>
> acpi_dev_hid_match() does not check for adev == NULL, dereferencing
> it unconditional.
>
> Add a check for adev being NULL before calling acpi_dev_hid_match().
>
> At the moment acpi_quirk_skip_serdev_enumeration() is never called with
> a controller_parent without an ACPI companion, but better safe than sorry.
>
> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
> ---
>  drivers/acpi/x86/utils.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/acpi/x86/utils.c b/drivers/acpi/x86/utils.c
> index 3eec889d4f5f..423565c31d5e 100644
> --- a/drivers/acpi/x86/utils.c
> +++ b/drivers/acpi/x86/utils.c
> @@ -536,7 +536,7 @@ int acpi_quirk_skip_serdev_enumeration(struct device *controller_parent, bool *s
>          * Set skip to true so that the tty core creates a serdev ctrl device.
>          * The backlight driver will manually create the serdev client device.
>          */
> -       if (acpi_dev_hid_match(adev, "DELL0501")) {
> +       if (adev && acpi_dev_hid_match(adev, "DELL0501")) {
>                 *skip = true;
>                 /*
>                  * Create a platform dev for dell-uart-backlight to bind to.
> --

Applied as 6.13 material, thanks!
diff mbox series

Patch

diff --git a/drivers/acpi/x86/utils.c b/drivers/acpi/x86/utils.c
index 3eec889d4f5f..423565c31d5e 100644
--- a/drivers/acpi/x86/utils.c
+++ b/drivers/acpi/x86/utils.c
@@ -536,7 +536,7 @@  int acpi_quirk_skip_serdev_enumeration(struct device *controller_parent, bool *s
 	 * Set skip to true so that the tty core creates a serdev ctrl device.
 	 * The backlight driver will manually create the serdev client device.
 	 */
-	if (acpi_dev_hid_match(adev, "DELL0501")) {
+	if (adev && acpi_dev_hid_match(adev, "DELL0501")) {
 		*skip = true;
 		/*
 		 * Create a platform dev for dell-uart-backlight to bind to.