X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=datapath%2Fvport-netdev.c;h=e45e22fbb870e87fa0d974c413515673aefaaa9f;hb=0a6f55420508c31af9fe41aafdd26ce8462cc1be;hp=88274732e65f673b8c70be2f662196356c50e385;hpb=055dae4f7f6d3316ca326736f7b731db1bde0f09;p=openvswitch diff --git a/datapath/vport-netdev.c b/datapath/vport-netdev.c index 88274732..e45e22fb 100644 --- a/datapath/vport-netdev.c +++ b/datapath/vport-netdev.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2010 Nicira Networks. + * Copyright (c) 2010, 2011 Nicira Networks. * Distributed under the terms of the GNU GPL version 2. * * Significant portions of this file may be copied from parts of the Linux @@ -21,8 +21,6 @@ #include "vport-internal_dev.h" #include "vport-netdev.h" -#include "compat.h" - /* If the native device stats aren't 64 bit use the vport stats tracking instead. */ #define USE_VPORT_STATS (sizeof(((struct net_device_stats *)0)->rx_bytes) < sizeof(u64)) @@ -279,16 +277,16 @@ struct vport *netdev_get_vport(struct net_device *dev) #else if (likely(rcu_access_pointer(dev->rx_handler) == netdev_frame_hook)) #endif - return (struct vport *)rcu_dereference(dev->rx_handler_data); + return (struct vport *)rcu_dereference_rtnl(dev->rx_handler_data); else return NULL; #else - return (struct vport *)rcu_dereference(dev->br_port); + return (struct vport *)rcu_dereference_rtnl(dev->br_port); #endif } const struct vport_ops netdev_vport_ops = { - .type = "netdev", + .type = ODP_VPORT_TYPE_NETDEV, .flags = (VPORT_F_REQUIRED | (USE_VPORT_STATS ? VPORT_F_GEN_STATS : 0)), .init = netdev_init,