net: wimax: i2400m: control.c: Cleaning up conjunction always evaluates to false
authorRickard Strandqvist <rickard_strandqvist@spectrumdigital.se>
Sat, 7 Jun 2014 11:26:37 +0000 (13:26 +0200)
committerDavid S. Miller <davem@davemloft.net>
Wed, 11 Jun 2014 07:13:16 +0000 (00:13 -0700)
Logical conjunction always evaluates to false:  minor < 2 && minor > 1
I guess what you wanted is rather: minor > 2 || minor < 1

This was partly found using a static code analysis program called cppcheck.

Signed-off-by: Rickard Strandqvist <rickard_strandqvist@spectrumdigital.se>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/wimax/i2400m/control.c

index 4a01e5c..4c41790 100644 (file)
@@ -1061,7 +1061,7 @@ int i2400m_firmware_check(struct i2400m *i2400m)
                goto error_bad_major;
        }
        result = 0;
-       if (minor < I2400M_HDIv_MINOR_2 && minor > I2400M_HDIv_MINOR)
+       if (minor > I2400M_HDIv_MINOR_2 || minor < I2400M_HDIv_MINOR)
                dev_warn(dev, "untested minor fw version %u.%u.%u\n",
                         major, minor, branch);
        /* Yes, we ignore the branch -- we don't have to track it */