Re: [PATCH 2/3] ACPI / PM: Make messages in acpi_device_set_power() print device names
From: Rafael J. Wysocki <hidden>
Date: 2013-07-31 10:17:52
Also in:
linux-acpi, linux-pm, lkml
On Wednesday, July 31, 2013 02:52:53 PM Aaron Lu wrote:
quoted hunk ↗ jump to hunk
On 07/29/2013 08:20 PM, Rafael J. Wysocki wrote:quoted
On Monday, July 29, 2013 10:29:36 AM Aaron Lu wrote:quoted
On 07/27/2013 09:11 PM, Rafael J. Wysocki wrote:quoted
From: Rafael J. Wysocki <redacted> Modify acpi_device_set_power() so that diagnostic messages printed by it to the kernel log always contain the name of the device concerned to make it possible to identify the device that triggered the message if need be. Also replace printk(KERN_WARNING ) with dev_warn() everywhere in that function. Signed-off-by: Rafael J. Wysocki <redacted> --- drivers/acpi/device_pm.c | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) Index: linux-pm/drivers/acpi/device_pm.c ===================================================================--- linux-pm.orig/drivers/acpi/device_pm.c +++ linux-pm/drivers/acpi/device_pm.c@@ -166,20 +166,20 @@ int acpi_device_set_power(struct acpi_de /* Make sure this is a valid target state */ if (state == device->power.state) { - ACPI_DEBUG_PRINT((ACPI_DB_INFO, "Device is already at %s\n", + ACPI_DEBUG_PRINT((ACPI_DB_INFO, "Device [%s] already in %s\n", + device->pnp.bus_id, acpi_power_state_string(state))); return 0; } if (!device->power.states[state].flags.valid) { - printk(KERN_WARNING PREFIX "Device does not support %s\n", - acpi_power_state_string(state)); + dev_warn(&device->dev, "Power state %s not supported\n", + acpi_power_state_string(state)); return -ENODEV; } if (device->parent && (state < device->parent->power.state)) { - printk(KERN_WARNING PREFIX - "Cannot set device to a higher-powered" - " state than parent\n"); + dev_warn(&device->dev, "Cannot transition to a higher-powered " + "state than parent\n");I think the state information would also be useful here: dev_warn(&device->dev, "Cannot transition to a higher-powereed " "state %d than paeren's state %d\n", state, device->parent->power.state);This is not the scope of this patch, please send another one on top of it.Patch to add state information in error message, apply on top of this one. From: Aaron Lu <redacted> Subject: [PATCH] ACPI / PM: Add state information in error message for acpi_device_set_power The state information can be useful to know what the problem is when it appeared in an error message about a device can not being set to a higher power state than its parent, so this patch adds such state information for both the target state of the device failed to be set and the current parent's state. Signed-off-by: Aaron Lu <redacted> --- drivers/acpi/device_pm.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)diff --git a/drivers/acpi/device_pm.c b/drivers/acpi/device_pm.c index beb9625..707258b 100644 --- a/drivers/acpi/device_pm.c +++ b/drivers/acpi/device_pm.c@@ -179,7 +179,8 @@ int acpi_device_set_power(struct acpi_device *device, int state) } if (device->parent && (state < device->parent->power.state)) { dev_warn(&device->dev, - "Cannot transition to a higher-powered state than parent\n"); + "Cannot transition to a higher-powered state %d than parent's state %d\n",
This message will look a little odd I think ->
+ state, device->parent->power.state);
-> and please don't use raw numbers in such messages. What about "Cannot transition to power state %s for parent in %s\n", acpi_power_state_string(state), acpi_power_state_string(device->parent->power.state)
return -ENODEV; }
Thanks, Rafael -- I speak only for myself. Rafael J. Wysocki, Intel Open Source Technology Center.