I also get two resume cycles rather than three when acpid is stopped.
With acpid running I got: $ xev | sed -n 's/^.*state \([0-9].*\), keycode *\([0-9]\+\) *\(.*\), .*$/keycode \2 = \3, state = \1/p' keycode 150 = (keysym 0x1008ff2f, XF86Sleep), state = 0x0 keycode 150 = (keysym 0x1008ff2f, XF86Sleep), state = 0x0 keycode 150 = (keysym 0x1008ff2f, XF86Sleep), state = 0x0 keycode 150 = (keysym 0x1008ff2f, XF86Sleep), state = 0x0
With it stopped I get: keycode 150 = (keysym 0x1008ff2f, XF86Sleep), state = 0x0 keycode 150 = (keysym 0x1008ff2f, XF86Sleep), state = 0x0
# input-events 8 /dev/input/event8 bustype : BUS_HOST vendor : 0x1014 product : 0x5054 version : 16641 name : "ThinkPad Extra Buttons" phys : "thinkpad_acpi/input0" bits ev : EV_SYN EV_KEY EV_MSC
waiting for events 13:31:12.184303: EV_KEY KEY_SLEEP pressed 13:31:12.184320: EV_SYN code=0 value=0 13:31:12.184325: EV_KEY KEY_SLEEP released 13:31:12.184328: EV_SYN code=0 value=0 timeout, quitting
I wonder if it is possible that these two events (press and release) both get mapped onto XF86Sleep keycode events, generating two suspend calls?
I also get two resume cycles rather than three when acpid is stopped.
With acpid running I got:
$ xev | sed -n 's/^.*state \([0-9].*\), keycode *\([0-9]\+\) *\(.*\), .*$/keycode \2 = \3, state = \1/p'
keycode 150 = (keysym 0x1008ff2f, XF86Sleep), state = 0x0
keycode 150 = (keysym 0x1008ff2f, XF86Sleep), state = 0x0
keycode 150 = (keysym 0x1008ff2f, XF86Sleep), state = 0x0
keycode 150 = (keysym 0x1008ff2f, XF86Sleep), state = 0x0
With it stopped I get:
keycode 150 = (keysym 0x1008ff2f, XF86Sleep), state = 0x0
keycode 150 = (keysym 0x1008ff2f, XF86Sleep), state = 0x0
# input-events 8 acpi/input0"
/dev/input/event8
bustype : BUS_HOST
vendor : 0x1014
product : 0x5054
version : 16641
name : "ThinkPad Extra Buttons"
phys : "thinkpad_
bits ev : EV_SYN EV_KEY EV_MSC
waiting for events
13:31:12.184303: EV_KEY KEY_SLEEP pressed
13:31:12.184320: EV_SYN code=0 value=0
13:31:12.184325: EV_KEY KEY_SLEEP released
13:31:12.184328: EV_SYN code=0 value=0
timeout, quitting
I wonder if it is possible that these two events (press and release) both get mapped onto XF86Sleep keycode events, generating two suspend calls?