X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=datapath%2Flinux%2Fcompat%2Finclude%2Flinux%2Fnetdevice.h;h=d726390ef482941ddc70ced2dcefe3563e4540d4;hb=e2f3178f0582eda302bdc5629189b6a56d9fbcdd;hp=b303f39dbfc347e2372ac7ed2b1a74e987b6446e;hpb=95986f397de7e5eb8d202c115d1dab5b67777747;p=sliver-openvswitch.git diff --git a/datapath/linux/compat/include/linux/netdevice.h b/datapath/linux/compat/include/linux/netdevice.h index b303f39db..d726390ef 100644 --- a/datapath/linux/compat/include/linux/netdevice.h +++ b/datapath/linux/compat/include/linux/netdevice.h @@ -60,12 +60,17 @@ static inline struct net_device *dev_get_by_index_rcu(struct net *net, int ifind #define NETIF_F_FSO 0 #endif +#ifndef HAVE_NETDEV_FEATURES_T +typedef u32 netdev_features_t; +#endif + #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,38) #define skb_gso_segment rpl_skb_gso_segment -struct sk_buff *rpl_skb_gso_segment(struct sk_buff *skb, u32 features); +struct sk_buff *rpl_skb_gso_segment(struct sk_buff *skb, + netdev_features_t features); #define netif_skb_features rpl_netif_skb_features -u32 rpl_netif_skb_features(struct sk_buff *skb); +netdev_features_t rpl_netif_skb_features(struct sk_buff *skb); #define netif_needs_gso rpl_netif_needs_gso static inline int rpl_netif_needs_gso(struct sk_buff *skb, int features) @@ -75,10 +80,6 @@ static inline int rpl_netif_needs_gso(struct sk_buff *skb, int features) } #endif -#if LINUX_VERSION_CODE < KERNEL_VERSION(3,3,0) -typedef u32 netdev_features_t; -#endif - #ifndef HAVE___SKB_GSO_SEGMENT static inline struct sk_buff *__skb_gso_segment(struct sk_buff *skb, netdev_features_t features, @@ -124,4 +125,17 @@ static inline struct net_device *netdev_notifier_info_to_dev(void *info) } #endif +#ifndef HAVE_PCPU_SW_NETSTATS + +#include + +struct pcpu_sw_netstats { + u64 rx_packets; + u64 rx_bytes; + u64 tx_packets; + u64 tx_bytes; + struct u64_stats_sync syncp; +}; +#endif + #endif