media: qt1010: fix bogus warnings
authorMauro Carvalho Chehab <mchehab@s-opensource.com>
Wed, 1 Nov 2017 21:05:48 +0000 (17:05 -0400)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Mon, 11 Dec 2017 18:04:51 +0000 (13:04 -0500)
The logic at qt1010_init_meas1() and qt1010_init_meas2()
are too complex for static analizers to identify that
some vars are always be initialized.

That causes smatch to produce the following warnings:
drivers/media/tuners/qt1010.c:248 qt1010_init_meas1() error: uninitialized symbol 'val2'.
drivers/media/tuners/qt1010.c:282 qt1010_init_meas2() error: uninitialized symbol 'val'.

So, add annotations to prevent those bogus warnings.

Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
drivers/media/tuners/qt1010.c

index ee33b7c..b92be88 100644 (file)
@@ -224,7 +224,7 @@ static int qt1010_set_params(struct dvb_frontend *fe)
 static int qt1010_init_meas1(struct qt1010_priv *priv,
                             u8 oper, u8 reg, u8 reg_init_val, u8 *retval)
 {
-       u8 i, val1, val2;
+       u8 i, val1, uninitialized_var(val2);
        int err;
 
        qt1010_i2c_oper_t i2c_data[] = {
@@ -259,7 +259,7 @@ static int qt1010_init_meas1(struct qt1010_priv *priv,
 static int qt1010_init_meas2(struct qt1010_priv *priv,
                            u8 reg_init_val, u8 *retval)
 {
-       u8 i, val;
+       u8 i, uninitialized_var(val);
        int err;
        qt1010_i2c_oper_t i2c_data[] = {
                { QT1010_WR, 0x07, reg_init_val },