[PATCH v2] ACPI: glue: Reduce debug noise from acpi_device_notify()
"Rafael J. Wysocki" <[email protected]>
| Newsgroups | org.kernel.vger.linux-acpi,org.kernel.vger.linux-kernel |
|---|---|
| Organization | Linux Kernel Development - Intel |
| Message-ID | <[email protected]> |
From: "Rafael J. Wysocki" <[email protected]> When debug is enabled in the ACPI glue code that handles binding devices to ACPI companions, acpi_device_notify() produces a lot of message noise related to devices that have no ACPI companions. Reduce that noise by checking the most obvious case, ACPI device objects, directly and returning from acpi_device_notify() in that case without printing any debug messages. Also avoid printing a debug message when there is no matching ACPI bus type definition for the given device, which is the case for the vast majority of devices. Additionally, make the debug messages that get printed more informative and change the format prefix to "ACPI/glue", so it is easier to filter these messages. Signed-off-by: Rafael J. Wysocki <[email protected]> --- v1 -> v2: * Do not return early from acpi_device_notify() for devices without a bus type (Sashiko) * Do not print messages for devices without matching ACPI bus type definition (the vast majority) * Update changelog --- drivers/acpi/glue.c | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) --- a/drivers/acpi/glue.c +++ b/drivers/acpi/glue.c @@ -6,7 +6,7 @@ * Copyright (c) 2005 Intel Corp. */ -#define pr_fmt(fmt) "ACPI: " fmt +#define pr_fmt(fmt) "ACPI/glue: " fmt #include <linux/acpi_iort.h> #include <linux/export.h> @@ -354,22 +354,27 @@ void acpi_device_notify(struct device *d struct acpi_device *adev; int ret; + /* ACPI devices have no ACPI companions. */ + if (dev->bus == &acpi_bus_type) + return; + ret = acpi_bind_one(dev, NULL); if (ret) { struct acpi_bus_type *type = acpi_get_bus_type(dev); if (!type) - goto err; + return; adev = type->find_companion(dev); if (!adev) { dev_dbg(dev, "ACPI companion not found\n"); - goto err; + return; } ret = acpi_bind_one(dev, adev); - if (ret) - goto err; - + if (ret) { + dev_dbg(dev, "Binding to ACPI companion failed\n"); + return; + } if (type->setup) { type->setup(dev); goto done; @@ -391,11 +396,6 @@ void acpi_device_notify(struct device *d done: acpi_handle_debug(ACPI_HANDLE(dev), "Bound to device %s\n", dev_name(dev)); - - return; - -err: - dev_dbg(dev, "No ACPI support\n"); } void acpi_device_notify_remove(struct device *dev)