From: Peter Hutterer <peter.hutterer@who-t.net>
To: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Cc: "Zheng, Lv" <lv.zheng@intel.com>,
"Wysocki, Rafael J" <rafael.j.wysocki@intel.com>,
"Rafael J . Wysocki" <rjw@rjwysocki.net>,
"Brown, Len" <len.brown@intel.com>, Lv Zheng <zetalog@gmail.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"linux-acpi@vger.kernel.org" <linux-acpi@vger.kernel.org>,
"systemd-devel@lists.freedesktop.org"
<systemd-devel@lists.freedesktop.org>,
"linux-input@vger.kernel.org" <linux-input@vger.kernel.org>
Subject: Re: [WIP PATCH 2/4] ACPI: button: remove the LID input node when the state is unknown
Date: Wed, 7 Jun 2017 11:27:50 +1000 [thread overview]
Message-ID: <20170607012750.GB13738@jelly> (raw)
In-Reply-To: <20170606102209.GA14880@mail.corp.redhat.com>
On Tue, Jun 06, 2017 at 12:22:09PM +0200, Benjamin Tissoires wrote:
[...]
> > This is because the aml table puts many Notify(LID, 0x80) in various control methods.
> > And not one of them but multiple of them will be invoked by various OS drivers during suspend/resume period.
> > I think this is not an isolated platform that will invoke multiple redundant "Notify(lid)".
> >
> > Fortunately, the lid state for the multiple notify(lid) should be same as the first "Notify(lid)".
> > I suppose this is why SW_LID is invented, as it can really filter such redundant events.
> > And user space finally can only see 1 "close" event.
> >
> > But unconditionally prepending "open" before all "close" events surely can break the logic by
> > delivering multiple "close" events to the user space.
>
> That doesn't matter. What matters is the state of the switch, not the
> event. So if user space receives (in case we marked the switch as not
> reliable) several close events, all user space will do is realize that
> the state is still closed and will act accordingly.
[...]
> Again, we don't care if the "event" comes from ACPI, the driver itself or
> user space (libinput). All that matters is the current state of the
> input node switch, that needs to match the physical world at any time.
as extra comment on those two: you cannot guarantee when e.g. libinput
checks the state. it may start up after the kernel has updated the EV_SW
state, it may close and re-open a device without notice (disabling a
device in X has that effect for example). So the EV_SW/SW_LID events are
nice to have, but we really rely on the *state* of the switch more than the
events.
Cheers,
Peter
next prev parent reply other threads:[~2017-06-07 1:27 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-06-01 18:46 [WIP PATCH 0/4] Rework the unreliable LID switch exported by ACPI Benjamin Tissoires
2017-06-01 18:46 ` Benjamin Tissoires
2017-06-01 18:46 ` [WIP PATCH 1/4] ACPI: button: extract input creation/destruction helpers Benjamin Tissoires
2017-06-01 18:46 ` Benjamin Tissoires
2017-06-01 18:46 ` [WIP PATCH 2/4] ACPI: button: remove the LID input node when the state is unknown Benjamin Tissoires
2017-06-01 18:46 ` Benjamin Tissoires
2017-06-05 3:19 ` Zheng, Lv
2017-06-06 10:22 ` Benjamin Tissoires
2017-06-07 1:27 ` Peter Hutterer [this message]
2017-06-07 9:56 ` Zheng, Lv
2017-06-07 9:56 ` Zheng, Lv
2017-06-01 18:46 ` [WIP PATCH 3/4] ACPI: button: Let input filter out the LID events Benjamin Tissoires
2017-06-05 4:28 ` Zheng, Lv
2017-06-06 10:31 ` Benjamin Tissoires
2017-06-01 18:46 ` [WIP PATCH 4/4] ACPI: button: Fix lid notification locks Benjamin Tissoires
2017-06-05 3:33 ` Zheng, Lv
2017-06-06 10:29 ` Benjamin Tissoires
2017-06-07 9:47 ` Zheng, Lv
2017-06-07 9:47 ` Zheng, Lv
2017-06-01 21:43 ` [WIP PATCH 0/4] Rework the unreliable LID switch exported by ACPI Bastien Nocera
2017-06-02 7:24 ` Benjamin Tissoires
2017-06-05 2:25 ` Zheng, Lv
2017-06-07 7:48 ` Lennart Poettering
2017-06-07 7:48 ` [systemd-devel] " Lennart Poettering
2017-06-13 10:06 ` Benjamin Tissoires
2017-06-13 10:06 ` [systemd-devel] " Benjamin Tissoires
2017-06-15 2:52 ` Zheng, Lv
2017-06-15 6:47 ` Peter Hutterer
2017-06-15 7:33 ` Zheng, Lv
2017-06-15 7:57 ` Peter Hutterer
2017-06-16 5:37 ` Zheng, Lv
2017-06-16 7:23 ` Benjamin Tissoires
2017-06-16 7:45 ` Zheng, Lv
2017-06-16 8:09 ` Benjamin Tissoires
2017-06-16 8:09 ` [systemd-devel] " Benjamin Tissoires
2017-06-16 8:53 ` Zheng, Lv
2017-06-16 9:06 ` Bastien Nocera
2017-06-16 9:06 ` Bastien Nocera
2017-06-16 16:32 ` Lennart Poettering
2017-06-19 2:16 ` Zheng, Lv
2017-06-19 1:43 ` Zheng, Lv
2017-06-19 22:08 ` Bastien Nocera
2017-06-19 22:08 ` [systemd-devel] " Bastien Nocera
2017-06-20 2:45 ` Zheng, Lv
2017-06-21 10:23 ` Bastien Nocera
2017-06-22 3:16 ` Zheng, Lv
2017-06-14 23:50 ` Zheng, Lv
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170607012750.GB13738@jelly \
--to=peter.hutterer@who-t.net \
--cc=benjamin.tissoires@redhat.com \
--cc=len.brown@intel.com \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-input@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lv.zheng@intel.com \
--cc=rafael.j.wysocki@intel.com \
--cc=rjw@rjwysocki.net \
--cc=systemd-devel@lists.freedesktop.org \
--cc=zetalog@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.