diff options
author | Alexandra Winter <wintera@linux.ibm.com> | 2022-05-10 09:05:06 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2022-05-11 12:31:01 +0100 |
commit | 2c50c6867c85afee6f2b3bcbc50fc9d0083d1343 (patch) | |
tree | 4469aa230199e2cc5cc95adf9d7f6bbdeee3621e | |
parent | 2423b0d0724d47897c8a3a988f62aedd3e87ceba (diff) | |
download | linux-2c50c6867c85afee6f2b3bcbc50fc9d0083d1343.tar.bz2 |
s390/ctcm: fix variable dereferenced before check
Found by cppcheck and smatch.
smatch complains about
drivers/s390/net/ctcm_sysfs.c:43 ctcm_buffer_write() warn: variable dereferenced before check 'priv' (see line 42)
Fixes: 3c09e2647b5e ("ctcm: rename READ/WRITE defines to avoid redefinitions")
Reported-by: Colin Ian King <colin.i.king@gmail.com>
Signed-off-by: Alexandra Winter <wintera@linux.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/s390/net/ctcm_sysfs.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/s390/net/ctcm_sysfs.c b/drivers/s390/net/ctcm_sysfs.c index ded1930a00b2..e3813a7aa5e6 100644 --- a/drivers/s390/net/ctcm_sysfs.c +++ b/drivers/s390/net/ctcm_sysfs.c @@ -39,11 +39,12 @@ static ssize_t ctcm_buffer_write(struct device *dev, struct ctcm_priv *priv = dev_get_drvdata(dev); int rc; - ndev = priv->channel[CTCM_READ]->netdev; - if (!(priv && priv->channel[CTCM_READ] && ndev)) { + if (!(priv && priv->channel[CTCM_READ] && + priv->channel[CTCM_READ]->netdev)) { CTCM_DBF_TEXT(SETUP, CTC_DBF_ERROR, "bfnondev"); return -ENODEV; } + ndev = priv->channel[CTCM_READ]->netdev; rc = kstrtouint(buf, 0, &bs1); if (rc) |