This is not a bug but a feature. The user is asking to suspend the machine twice, so it is doing as it is told.
acpid just gets a bunch of events and handles them in a serialized fashion. Hence if a user presses the sleep button and then closes the lid, acpid will have 2 sets of suspend requests.
We may have the following:
sleep button --> event
lid --> event
acpid gets the 1st event and suspends the machine. It may be that the 2nd event is also being activated but the kernel freezes this before it kicks off a 2nd suspend. Once the machine resumes, we can be sure that the 2nd suspend event kicks in and hence we see the double suspend.
This is not a bug but a feature. The user is asking to suspend the machine twice, so it is doing as it is told.
acpid just gets a bunch of events and handles them in a serialized fashion. Hence if a user presses the sleep button and then closes the lid, acpid will have 2 sets of suspend requests.
We may have the following:
sleep button --> event
lid --> event
acpid gets the 1st event and suspends the machine. It may be that the 2nd event is also being activated but the kernel freezes this before it kicks off a 2nd suspend. Once the machine resumes, we can be sure that the 2nd suspend event kicks in and hence we see the double suspend.