OSDN Git Service

net: use rhashtable_lookup() instead of rhashtable_lookup_fast()
authorTaehee Yoo <ap420073@gmail.com>
Fri, 22 Nov 2019 08:15:19 +0000 (08:15 +0000)
committerJakub Kicinski <jakub.kicinski@netronome.com>
Sat, 23 Nov 2019 20:15:01 +0000 (12:15 -0800)
rhashtable_lookup_fast() internally calls rcu_read_lock() then,
calls rhashtable_lookup(). So if rcu_read_lock() is already held,
rhashtable_lookup() is enough.

Signed-off-by: Taehee Yoo <ap420073@gmail.com>
Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com>
drivers/infiniband/hw/hfi1/sdma.c
drivers/net/ethernet/mellanox/mlx5/core/en_tc.c
drivers/net/ethernet/netronome/nfp/bpf/offload.c
net/tipc/socket.c

index c61b602..5774dfc 100644 (file)
@@ -881,8 +881,8 @@ struct sdma_engine *sdma_select_user_engine(struct hfi1_devdata *dd,
 
        cpu_id = smp_processor_id();
        rcu_read_lock();
-       rht_node = rhashtable_lookup_fast(dd->sdma_rht, &cpu_id,
-                                         sdma_rht_params);
+       rht_node = rhashtable_lookup(dd->sdma_rht, &cpu_id,
+                                    sdma_rht_params);
 
        if (rht_node && rht_node->map[vl]) {
                struct sdma_rht_map_elem *map = rht_node->map[vl];
index 761fc35..0d5d84b 100644 (file)
@@ -3876,7 +3876,7 @@ int mlx5e_delete_flower(struct net_device *dev, struct mlx5e_priv *priv,
        int err;
 
        rcu_read_lock();
-       flow = rhashtable_lookup_fast(tc_ht, &f->cookie, tc_ht_params);
+       flow = rhashtable_lookup(tc_ht, &f->cookie, tc_ht_params);
        if (!flow || !same_flow_direction(flow, flags)) {
                err = -EINVAL;
                goto errout;
index 06927ba..95a0d39 100644 (file)
@@ -458,8 +458,8 @@ int nfp_bpf_event_output(struct nfp_app_bpf *bpf, const void *data,
                return -EINVAL;
 
        rcu_read_lock();
-       record = rhashtable_lookup_fast(&bpf->maps_neutral, &map_id,
-                                       nfp_bpf_maps_neutral_params);
+       record = rhashtable_lookup(&bpf->maps_neutral, &map_id,
+                                  nfp_bpf_maps_neutral_params);
        if (!record || map_id_full > U32_MAX) {
                rcu_read_unlock();
                cmsg_warn(bpf, "perf event: map id %lld (0x%llx) not recognized, dropping event\n",
index 5d7859a..a1c8d72 100644 (file)
@@ -2880,7 +2880,7 @@ static struct tipc_sock *tipc_sk_lookup(struct net *net, u32 portid)
        struct tipc_sock *tsk;
 
        rcu_read_lock();
-       tsk = rhashtable_lookup_fast(&tn->sk_rht, &portid, tsk_rht_params);
+       tsk = rhashtable_lookup(&tn->sk_rht, &portid, tsk_rht_params);
        if (tsk)
                sock_hold(&tsk->sk);
        rcu_read_unlock();