lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Sat, 21 Apr 2012 10:16:40 +1000
From:	Benjamin Herrenschmidt <benh@...nel.crashing.org>
To:	Dmitry Torokhov <dmitry.torokhov@...il.com>
Cc:	Daniel Drake <dsd@...top.org>,
	Peter Hutterer <peter.hutterer@...-t.net>,
	"X.Org Devel List" <xorg-devel@...ts.freedesktop.org>,
	Linux Kernel list <linux-kernel@...r.kernel.org>
Subject: Re: Multitouch regression in 3.3 on thinkpad X220 clickpad

On Fri, 2012-04-20 at 10:01 -0700, Dmitry Torokhov wrote:

> It looks we lost a condition in synaptics_set_advanced_gesture_mode().
> It used to be:
> 
> 
> 	if (!(SYN_CAP_ADV_GESTURE(priv->ext_cap_0c) ||
> 			SYN_CAP_IMAGE_SENSOR(priv->ext_cap_0c)))
> 		return 0;
> 
> and now simply is:
> 
> 	if (!SYN_CAP_ADV_GESTURE(priv->ext_cap_0c))
> 		return 0;
> 
> Could you try restoring the condition and see if it fixes the
> regression?

Yes, that's it. Please shoot the patch below to Linus.

Thanks,
Ben.

input/synaptics: Fix regression with "image sensor" trackpads

commit 7968a5dd492ccc38345013e534ad4c8d6eb60ed1
Input: synaptics - add support for Relative mode

Accidentally broke support for advanced gestures (multitouch)
on some trackpads such as the one in my ThinkPad X220 by
incorretly changing the condition for enabling them. This
restores it.

Signed-off-by: Benjamin Herrenschmidt <benh@...nel.crashing.org>
CC: stable@...nel.org [3.3]

diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
index a3bb49c..37b3792 100644
--- a/drivers/input/mouse/synaptics.c
+++ b/drivers/input/mouse/synaptics.c
@@ -273,7 +273,8 @@ static int synaptics_set_advanced_gesture_mode(struct psmouse *psmouse)
 	static unsigned char param = 0xc8;
 	struct synaptics_data *priv = psmouse->private;
 
-	if (!SYN_CAP_ADV_GESTURE(priv->ext_cap_0c))
+	if (!(SYN_CAP_ADV_GESTURE(priv->ext_cap_0c) ||
+	      SYN_CAP_IMAGE_SENSOR(priv->ext_cap_0c)))
 		return 0;
 
 	if (psmouse_sliced_command(psmouse, SYN_QUE_MODEL))


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ