* [PATCH v1] ACPI: glue: Reduce debug noise from acpi_device_notify()
@ 2026-09-04 12:55 Rafael J. Wysocki
2026-09-05 6:56 ` Andy Shevchenko
0 siblings, 1 reply; 2+ messages in thread
From: Rafael J. Wysocki @ 2026-09-04 12:55 UTC (permalink / raw)
To: Linux ACPI; +Cc: LKML, Andy Shevchenko
From: "Rafael J. Wysocki" <rafael.j.wysocki@intel.com>
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 cases, ACPI device
objects and devices without a bus type, directly and returning from
acpi_device_notify() in these cases without printing any debug
messages.
Also 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 <rafael.j.wysocki@intel.com>
---
drivers/acpi/glue.c | 34 ++++++++++++++++++++--------------
1 file changed, 20 insertions(+), 14 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,33 @@ 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;
+ struct acpi_bus_type *type;
+ /* Skip devices without bus types. */
+ if (!dev->bus)
+ return;
+
+ type = acpi_get_bus_type(dev);
+ if (!type) {
+ dev_dbg(dev, "No matching ACPI bus type description\n");
+ 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 +402,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)
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH v1] ACPI: glue: Reduce debug noise from acpi_device_notify()
2026-09-04 12:55 [PATCH v1] ACPI: glue: Reduce debug noise from acpi_device_notify() Rafael J. Wysocki
@ 2026-09-05 6:56 ` Andy Shevchenko
0 siblings, 0 replies; 2+ messages in thread
From: Andy Shevchenko @ 2026-09-05 6:56 UTC (permalink / raw)
To: Rafael J. Wysocki; +Cc: Linux ACPI, LKML
On Fri, Sep 04, 2026 at 02:55:03PM +0200, Rafael J. Wysocki wrote:
> From: "Rafael J. Wysocki" <rafael.j.wysocki@intel.com>
>
> 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 cases, ACPI device
> objects and devices without a bus type, directly and returning from
> acpi_device_notify() in these cases without printing any debug
> messages.
>
> Also 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.
I would argue that the consistent formatting will be "ACPI: glue: "
$ git grep -n 'pr_fmt.*ACPI: [^"]' -- drivers/acpi/ | wc -l
24
The / is used only in two cases: acpi/hmat and acpi/mrrm.
--
With Best Regards,
Andy Shevchenko
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-09-05 6:56 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-04 12:55 [PATCH v1] ACPI: glue: Reduce debug noise from acpi_device_notify() Rafael J. Wysocki
2026-09-05 6:56 ` Andy Shevchenko
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox