datapath: Take a rcu_dereference() in netdev_get_vport()
[openvswitch] / datapath / vport-netdev.c
index 39e963e019a2f77e5a35336971002784b8a08a66..e60453544e70e03856eb127ca426efd18aa56ee8 100644 (file)
@@ -304,7 +304,7 @@ static int netdev_send(struct vport *vport, struct sk_buff *skb)
 /* Returns null if this device is not attached to a datapath. */
 struct vport *netdev_get_vport(struct net_device *dev)
 {
-       return (struct vport *)dev->br_port;
+       return (struct vport *)rcu_dereference(dev->br_port);
 }
 
 struct vport_ops netdev_vport_ops = {