Re: [PATCH] Revert "Input: clear BTN_RIGHT/MIDDLE on buttonpads"

Peter Hutterer
2022-03-31T04:38:44Z

On Wed, Mar 30, 2022 at 09:13:30PM -0700, Dmitry Torokhov wrote:
> On Wed, Mar 30, 2022 at 02:30:37PM +0200, Benjamin Tissoires wrote:
> > On Wed, Mar 30, 2022 at 2:27 PM Thorsten Leemhuis
> > <regressions@leemhuis.info> wrote:
> > >
> > > Hi, this is your Linux kernel regression tracker.
> > >
> > > On 21.03.22 19:44, José Expósito wrote:
> > > > This reverts commit 37ef4c19b4c659926ce65a7ac709ceaefb211c40.
> > > >
> > > > The touchpad present in the Dell Precision 7550 and 7750 laptops
> > > > reports a HID_DG_BUTTONTYPE of type MT_BUTTONTYPE_CLICKPAD. However,
> > > > the device is not a clickpad, it is a touchpad with physical buttons.
> > > >
> > > > In order to fix this issue, a quirk for the device was introduced in
> > > > libinput [1] [2] to disable the INPUT_PROP_BUTTONPAD property:
> > > >
> > > > [Precision 7x50 Touchpad]
> > > > MatchBus=i2c
> > > > MatchUdevType=touchpad
> > > > MatchDMIModalias=dmi:*svnDellInc.:pnPrecision7?50*
> > > > AttrInputPropDisable=INPUT_PROP_BUTTONPAD
> > > >
> > > > However, because of the change introduced in 37ef4c19b4 ("Input: clear
> > > > BTN_RIGHT/MIDDLE on buttonpads") the BTN_RIGHT key bit is not mapped
> > > > anymore breaking the device right click button and making impossible to
> > > > workaround it in user space.
> > > >
> > > > In order to avoid breakage on other present or future devices, revert
> > > > the patch causing the issue.
> > > >
> > > > Cc: stable@vger.kernel.org
> > > > Link: https://gitlab.freedesktop.org/libinput/libinput/-/merge_requests/481 [1]
> > > > Link: https://bugzilla.redhat.com/show_bug.cgi?id=1868789 [2]
> > > > Signed-off-by: José Expósito <jose.exposito89@gmail.com>
> > > > [...]
> > >
> > > Jiri, Benjamin, what the status here? Sure, this is not a crucial
> > > regression and we are in the middle of the merge window, but it looks
> > > like nothing has happened for a week now. Or was progress made somewhere
> > > and I just missed it?
> >
> > No, I think it just wasn't picked up by the input maintainer yet
> > (Dmitry, now in CC).
> >
> > FWIW:
> > Acked-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
> >
> > José, please do not forget to add the input maintainer when you target
> > the input tree, not the HID one :)
>
> I see that there were several ACKs, but how many devices misuse the
> HID_DG_BUTTONTYPE? Would it be better to quirk against either affected
> Dell models, or particular touchpads (by HID IDs) instead of reverting
> wholesale?

fwiw, a quick git grep in libinput shows 12 entries for disabling BTN_RIGHT
and 9 entries for enabling/disabling INPUT_PROP_BUTTONPAD. That's not the
number of devices affected by this bug, merely devices we know advertise the
wrong combination.

Note that the cause for the revert is loss of functionality. Previously, a
device was just advertising buttons incorrectly but still worked fine. This
was mostly a cosmetic issue (and could be worked around in userspace). With
the patch in place some devices right button no longer works because it's
filtered by the kernel. That's why the revert is needed.

The device could/should still be quirked to drop INPUT_PROP_BUTTONPAD but that
is only required to work around the cosmetic issues then.

Cheers,
Peter