]> bbs.cooldavid.org Git - net-next-2.6.git/blobdiff - net/bridge/br_if.c
bridge: fix RCU races with bridge port
[net-next-2.6.git] / net / bridge / br_if.c
index 89ad25a76202924eadf9bce8aadf761dcea3e8d5..427f90a8ab7b9e457a074702ecbcd80def55846c 100644 (file)
@@ -475,11 +475,8 @@ int br_del_if(struct net_bridge *br, struct net_device *dev)
 {
        struct net_bridge_port *p;
 
-       if (!br_port_exists(dev))
-               return -EINVAL;
-
        p = br_port_get(dev);
-       if (p->br != br)
+       if (!p || p->br != br)
                return -EINVAL;
 
        del_nbp(p);