6.x acpi powerbutton

Nate Lawson nate at root.org
Fri Apr 10 17:06:03 UTC 2009


Andriy Gapon wrote:
> on 09/04/2009 23:24 Stephen Clark said the following:
>> Is there a reason it doesn't send and event like Linux that can be acted
>> upon by user space other
>> than signaling init? I like to have a message written in
>> /var/log/messages that someone pressed
>> the powerbutton.
> 
> I think that for all suspend states except S5 userland is notified via
> devd mechanism and potentially can veto the suspend. S5 (soft-off) is
> coded to start shutdown immediately. You can try to hack on
> acpi_ReqSleepState in sys/dev/acpica/acpi.c.
> 
> I am not sure what is the reason for this special behavior of S5. But I
> like it, because it sometimes allows me to perform semi-clean shutdown
> when X goes crazy. But I also see when it could be useful to have S5
> request go through userland. So this could be configurable.

The reason for userland getting into the loop in the first place was to
run programs to shut down devices and reinit them after resume. This
isn't necessary in the shutdown case because init already sends a
signal, as you mention.

There's already a mechanism for timing out if userland is not
responding, so a suspend will ultimately happen whether or not it
answers. However, that waits for a while (1 minute?) and devd used to be
optional, so I thought it best to keep the existing S5 behavior
(immediate shutdown).

It may be ok to enable this for S5 but I don't think it's very useful.

-- 
Nate


More information about the freebsd-stable mailing list