]> bbs.cooldavid.org Git - net-next-2.6.git/blobdiff - drivers/infiniband/core/addr.c
infiniband: remove dev_base_lock use
[net-next-2.6.git] / drivers / infiniband / core / addr.c
index c15fd2ea56c1ae169946bd6a7323f6e625add339..8aba0ba57de50ff6fdc2dd3bdce24f0266f67cc6 100644 (file)
@@ -130,8 +130,8 @@ int rdma_translate_ip(struct sockaddr *addr, struct rdma_dev_addr *dev_addr)
 
 #if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE)
        case AF_INET6:
-               read_lock(&dev_base_lock);
-               for_each_netdev(&init_net, dev) {
+               rcu_read_lock();
+               for_each_netdev_rcu(&init_net, dev) {
                        if (ipv6_chk_addr(&init_net,
                                          &((struct sockaddr_in6 *) addr)->sin6_addr,
                                          dev, 1)) {
@@ -139,7 +139,7 @@ int rdma_translate_ip(struct sockaddr *addr, struct rdma_dev_addr *dev_addr)
                                break;
                        }
                }
-               read_unlock(&dev_base_lock);
+               rcu_read_unlock();
                break;
 #endif
        }