Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751648AbaGTJu6 (ORCPT ); Sun, 20 Jul 2014 05:50:58 -0400 Received: from mail-ig0-f182.google.com ([209.85.213.182]:55754 "EHLO mail-ig0-f182.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751113AbaGTJu4 (ORCPT ); Sun, 20 Jul 2014 05:50:56 -0400 MIME-Version: 1.0 In-Reply-To: <20140719234843.GA28580@core.coreip.homeip.net> References: <20140719234843.GA28580@core.coreip.homeip.net> Date: Sun, 20 Jul 2014 11:50:55 +0200 Message-ID: Subject: Re: [PATCH] Input: fix defuzzing logic From: David Herrmann To: Dmitry Torokhov Cc: "open list:HID CORE LAYER" , Benson Leung , Andrew de los Reyes , Henrik Rydberg , linux-kernel Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi On Sun, Jul 20, 2014 at 1:49 AM, Dmitry Torokhov wrote: > We attempt to remove noise from coordinates reported by devices in > input_handle_abs_event(), unfortunately, unless we were dropping the > event altogether, we were ignoring the adjusted value and were passing > on the original value instead. Reviewed-by: David Herrmann Thanks David > Reviewed-by: Andrew de los Reyes > Reviewed-by: Benson Leung > Signed-off-by: Dmitry Torokhov > --- > drivers/input/input.c | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/drivers/input/input.c b/drivers/input/input.c > index 1c4c0db..29ca0bb 100644 > --- a/drivers/input/input.c > +++ b/drivers/input/input.c > @@ -257,9 +257,10 @@ static int input_handle_abs_event(struct input_dev *dev, > } > > static int input_get_disposition(struct input_dev *dev, > - unsigned int type, unsigned int code, int value) > + unsigned int type, unsigned int code, int *pval) > { > int disposition = INPUT_IGNORE_EVENT; > + int value = *pval; > > switch (type) { > > @@ -357,6 +358,7 @@ static int input_get_disposition(struct input_dev *dev, > break; > } > > + *pval = value; > return disposition; > } > > @@ -365,7 +367,7 @@ static void input_handle_event(struct input_dev *dev, > { > int disposition; > > - disposition = input_get_disposition(dev, type, code, value); > + disposition = input_get_disposition(dev, type, code, &value); > > if ((disposition & INPUT_PASS_TO_DEVICE) && dev->event) > dev->event(dev, type, code, value); > > -- > Dmitry -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/