On Sat, 03 Oct 2009 11:52:57 +0100 Alan Jenkins <alan-jenkins@xxxxxxxxxxxxxx> 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 -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html