RDMA/core: Remove NULL check before dev_{put, hold}
authorJules Irenge <jbi.octave@gmail.com>
Tue, 30 Apr 2024 22:47:45 +0000 (23:47 +0100)
committerLeon Romanovsky <leon@kernel.org>
Sun, 5 May 2024 12:12:35 +0000 (15:12 +0300)
Coccinelle reports a warning

WARNING: NULL check before dev_{put, hold} functions is not needed

The reason is the call netdev_{put, hold} of dev_{put,hold} will check NULL
There is no need to check before using dev_{put, hold}

Signed-off-by: Jules Irenge <jbi.octave@gmail.com>
Link: https://lore.kernel.org/r/ZjF1Eedxwhn4JSkz@octinomon.home
Signed-off-by: Leon Romanovsky <leon@kernel.org>
drivers/infiniband/core/device.c
drivers/infiniband/core/lag.c
drivers/infiniband/core/roce_gid_mgmt.c

index 07cb6c5ffda0008fa035e7df7489b3aa097b7477..55aa7aa32d4ab3e6d6710401bed35bf5916e41fe 100644 (file)
@@ -2174,8 +2174,7 @@ int ib_device_set_netdev(struct ib_device *ib_dev, struct net_device *ndev,
        spin_unlock_irqrestore(&pdata->netdev_lock, flags);
 
        add_ndev_hash(pdata);
-       if (old_ndev)
-               __dev_put(old_ndev);
+       __dev_put(old_ndev);
 
        return 0;
 }
@@ -2235,8 +2234,7 @@ struct net_device *ib_device_get_netdev(struct ib_device *ib_dev,
                spin_lock(&pdata->netdev_lock);
                res = rcu_dereference_protected(
                        pdata->netdev, lockdep_is_held(&pdata->netdev_lock));
-               if (res)
-                       dev_hold(res);
+               dev_hold(res);
                spin_unlock(&pdata->netdev_lock);
        }
 
@@ -2311,9 +2309,7 @@ void ib_enum_roce_netdev(struct ib_device *ib_dev,
 
                        if (filter(ib_dev, port, idev, filter_cookie))
                                cb(ib_dev, port, idev, cookie);
-
-                       if (idev)
-                               dev_put(idev);
+                       dev_put(idev);
                }
 }
 
index eca6e37c72ba55fd353309d835b7e807e5935c17..8fd80adfe833e7b6e99e4577e73225490d9df184 100644 (file)
@@ -93,8 +93,7 @@ static struct net_device *rdma_get_xmit_slave_udp(struct ib_device *device,
        slave = netdev_get_xmit_slave(master, skb,
                                      !!(device->lag_flags &
                                         RDMA_LAG_FLAGS_HASH_ALL_SLAVES));
-       if (slave)
-               dev_hold(slave);
+       dev_hold(slave);
        rcu_read_unlock();
        kfree_skb(skb);
        return slave;
index e958c43dd28fdfa282f937020f4322c0e5129028..d5131b3ba8ab04d836764dfd7141868da01bff27 100644 (file)
@@ -601,8 +601,7 @@ static void del_netdev_default_ips_join(struct ib_device *ib_dev, u32 port,
 
        rcu_read_lock();
        master_ndev = netdev_master_upper_dev_get_rcu(rdma_ndev);
-       if (master_ndev)
-               dev_hold(master_ndev);
+       dev_hold(master_ndev);
        rcu_read_unlock();
 
        if (master_ndev) {