|
@@ -2,6 +2,7 @@
|
|
|
#define _LINUX_IF_MACVLAN_H
|
|
|
|
|
|
#include <linux/if_link.h>
|
|
|
+#include <linux/if_vlan.h>
|
|
|
#include <linux/list.h>
|
|
|
#include <linux/netdevice.h>
|
|
|
#include <linux/netlink.h>
|
|
@@ -24,28 +25,6 @@ static inline struct socket *macvtap_get_socket(struct file *f)
|
|
|
struct macvlan_port;
|
|
|
struct macvtap_queue;
|
|
|
|
|
|
-/**
|
|
|
- * struct macvlan_pcpu_stats - MACVLAN percpu stats
|
|
|
- * @rx_packets: number of received packets
|
|
|
- * @rx_bytes: number of received bytes
|
|
|
- * @rx_multicast: number of received multicast packets
|
|
|
- * @tx_packets: number of transmitted packets
|
|
|
- * @tx_bytes: number of transmitted bytes
|
|
|
- * @syncp: synchronization point for 64bit counters
|
|
|
- * @rx_errors: number of rx errors
|
|
|
- * @tx_dropped: number of tx dropped packets
|
|
|
- */
|
|
|
-struct macvlan_pcpu_stats {
|
|
|
- u64 rx_packets;
|
|
|
- u64 rx_bytes;
|
|
|
- u64 rx_multicast;
|
|
|
- u64 tx_packets;
|
|
|
- u64 tx_bytes;
|
|
|
- struct u64_stats_sync syncp;
|
|
|
- u32 rx_errors;
|
|
|
- u32 tx_dropped;
|
|
|
-};
|
|
|
-
|
|
|
/*
|
|
|
* Maximum times a macvtap device can be opened. This can be used to
|
|
|
* configure the number of receive queue, e.g. for multiqueue virtio.
|
|
@@ -62,7 +41,7 @@ struct macvlan_dev {
|
|
|
struct macvlan_port *port;
|
|
|
struct net_device *lowerdev;
|
|
|
void *fwd_priv;
|
|
|
- struct macvlan_pcpu_stats __percpu *pcpu_stats;
|
|
|
+ struct vlan_pcpu_stats __percpu *pcpu_stats;
|
|
|
|
|
|
DECLARE_BITMAP(mc_filter, MACVLAN_MC_FILTER_SZ);
|
|
|
|
|
@@ -84,7 +63,7 @@ static inline void macvlan_count_rx(const struct macvlan_dev *vlan,
|
|
|
bool multicast)
|
|
|
{
|
|
|
if (likely(success)) {
|
|
|
- struct macvlan_pcpu_stats *pcpu_stats;
|
|
|
+ struct vlan_pcpu_stats *pcpu_stats;
|
|
|
|
|
|
pcpu_stats = this_cpu_ptr(vlan->pcpu_stats);
|
|
|
u64_stats_update_begin(&pcpu_stats->syncp);
|