[next] Input: qt1050: fix less than zero comparison on an unsigned int
diff mbox series

Message ID 20190507082135.21538-1-colin.king@canonical.com
State New
Headers show
Series
  • [next] Input: qt1050: fix less than zero comparison on an unsigned int
Related show

Commit Message

Colin Ian King May 7, 2019, 8:21 a.m. UTC
From: Colin Ian King <colin.king@canonical.com>

Currently the less than zero comparison of val is always false because
val is an unsigned int. Fix this by making val a signed int.

Addresses-Coverity: ("Unsigned compared against zero")
Fixes: a33ff45923c8 ("Input: qt1050 - add Microchip AT42QT1050 support")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
---
 drivers/input/keyboard/qt1050.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Dan Carpenter May 7, 2019, 8:27 a.m. UTC | #1
On Tue, May 07, 2019 at 09:21:35AM +0100, Colin King wrote:
> From: Colin Ian King <colin.king@canonical.com>
> 
> Currently the less than zero comparison of val is always false because
> val is an unsigned int. Fix this by making val a signed int.
> 
> Addresses-Coverity: ("Unsigned compared against zero")
> Fixes: a33ff45923c8 ("Input: qt1050 - add Microchip AT42QT1050 support")
> Signed-off-by: Colin Ian King <colin.king@canonical.com>
> ---
>  drivers/input/keyboard/qt1050.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/input/keyboard/qt1050.c b/drivers/input/keyboard/qt1050.c
> index 6b1603cb7515..4debddb13972 100644
> --- a/drivers/input/keyboard/qt1050.c
> +++ b/drivers/input/keyboard/qt1050.c
> @@ -222,7 +222,7 @@ static struct regmap_config qt1050_regmap_config = {
>  
>  static bool qt1050_identify(struct qt1050_priv *ts)
>  {
> -	unsigned int val;
> +	int val;

This code is checking the wrong thing anyway.  It should be:

	int ret;

	ret = regmap_read(&val);
	if (ret)
		return false;

regards,
dan carpenter
Marco Felsch May 7, 2019, 8:32 a.m. UTC | #2
Hi Ian,

On 19-05-07 09:21, Colin King wrote:
> From: Colin Ian King <colin.king@canonical.com>
> 
> Currently the less than zero comparison of val is always false because
> val is an unsigned int. Fix this by making val a signed int.

Thanks for covering that, was an copy 'n' paste failure..
> 
> Addresses-Coverity: ("Unsigned compared against zero")
> Fixes: a33ff45923c8 ("Input: qt1050 - add Microchip AT42QT1050 support")
> Signed-off-by: Colin Ian King <colin.king@canonical.com>
> ---
>  drivers/input/keyboard/qt1050.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/input/keyboard/qt1050.c b/drivers/input/keyboard/qt1050.c
> index 6b1603cb7515..4debddb13972 100644
> --- a/drivers/input/keyboard/qt1050.c
> +++ b/drivers/input/keyboard/qt1050.c
> @@ -222,7 +222,7 @@ static struct regmap_config qt1050_regmap_config = {
>  
>  static bool qt1050_identify(struct qt1050_priv *ts)
>  {
> -	unsigned int val;
> +	int val;

I think the proper solution is to add a ret val, because this covers the
success/fail. I will send a patch to fix this.

Regards,
  Marco

>  	/* Read Chip ID */
>  	regmap_read(ts->regmap, QT1050_CHIP_ID, &val);
> -- 
> 2.20.1
> 
>
Colin Ian King May 7, 2019, 8:46 a.m. UTC | #3
On 07/05/2019 09:32, Marco Felsch wrote:
> Hi Ian,
> 
> On 19-05-07 09:21, Colin King wrote:
>> From: Colin Ian King <colin.king@canonical.com>
>>
>> Currently the less than zero comparison of val is always false because
>> val is an unsigned int. Fix this by making val a signed int.
> 
> Thanks for covering that, was an copy 'n' paste failure..
>>
>> Addresses-Coverity: ("Unsigned compared against zero")
>> Fixes: a33ff45923c8 ("Input: qt1050 - add Microchip AT42QT1050 support")
>> Signed-off-by: Colin Ian King <colin.king@canonical.com>
>> ---
>>  drivers/input/keyboard/qt1050.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/input/keyboard/qt1050.c b/drivers/input/keyboard/qt1050.c
>> index 6b1603cb7515..4debddb13972 100644
>> --- a/drivers/input/keyboard/qt1050.c
>> +++ b/drivers/input/keyboard/qt1050.c
>> @@ -222,7 +222,7 @@ static struct regmap_config qt1050_regmap_config = {
>>  
>>  static bool qt1050_identify(struct qt1050_priv *ts)
>>  {
>> -	unsigned int val;
>> +	int val;
> 
> I think the proper solution is to add a ret val, because this covers the
> success/fail. I will send a patch to fix this.

OK, thanks for the follow-up fix.

Regards,
Colin

> 
> Regards,
>   Marco
> 
>>  	/* Read Chip ID */
>>  	regmap_read(ts->regmap, QT1050_CHIP_ID, &val);
>> -- 
>> 2.20.1
>>
>>
>

Patch
diff mbox series

diff --git a/drivers/input/keyboard/qt1050.c b/drivers/input/keyboard/qt1050.c
index 6b1603cb7515..4debddb13972 100644
--- a/drivers/input/keyboard/qt1050.c
+++ b/drivers/input/keyboard/qt1050.c
@@ -222,7 +222,7 @@  static struct regmap_config qt1050_regmap_config = {
 
 static bool qt1050_identify(struct qt1050_priv *ts)
 {
-	unsigned int val;
+	int val;
 
 	/* Read Chip ID */
 	regmap_read(ts->regmap, QT1050_CHIP_ID, &val);