lkml.org 
[lkml]   [2009]   [Oct]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: 2.6.32-rc1: spurious error message from "ACPI button: provide lid status functions"
On Sat, 03 Oct 2009 11:52:57 +0100
Alan Jenkins <alan-jenkins@tuffmail.co.uk> wrote:

> ACPI: Waking up from system sleep state S4
> PM: Device PNP0C0D:00 failed to thaw: error 1
>
> The device appears to be the acpi lid "button". The error comes from
> calling acpi_lid_send_state():
>
> @@ -242,7 +272,12 @@ static int acpi_lid_send_state(struct
> acpi_device *device)
> /* input layer checks if event is redundant */
> input_report_switch(button->input, SW_LID, !state);
> input_sync(button->input);
> - return 0;
> +
> + ret = blocking_notifier_call_chain(&acpi_lid_notifier, state,
> device);
> + if (ret == NOTIFY_DONE)
> + ret = blocking_notifier_call_chain(&acpi_lid_notifier,
> state,
> + device);
> + return ret;
> }
>
>
> The "error 1" is actually NOTIFY_OK.
>
> @include/linux/notify.h:
> #define NOTIFY_DONE 0x0000 /* Don't care */
> #define NOTIFY_OK 0x0001 /* Suits me */
> #define NOTIFY_STOP_MASK 0x8000 /* Don't call further */
> #define NOTIFY_BAD (NOTIFY_STOP_MASK|0x0002)
> /* Bad/Veto action */
> /*
> * Clean way to return from the notifier and stop further calls.
> */
> #define NOTIFY_STOP (NOTIFY_OK|NOTIFY_STOP_MASK)
>
>
> Clearly acpi_lid_send_state() should return 0 for NOTIFY_OK. I guess
> NOTIFY_STOP can be ignored until someone says they need it.
>
> But I don't understand the NOTIFY_DONE case, so I'm not sure. I can't
> find any users to reverse engineer it. IMO it either needs to be
> removed or commented.
>
> Can you please sort this out, so we don't see this error message on a
> completely successful resume?

Ah yeah, this does look funky. I'll fix it up.

Thanks,
--
Jesse Barnes, Intel Open Source Technology Center


\
 
 \ /
  Last update: 2009-10-06 02:09    [W:0.033 / U:0.052 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site