diff options
author | Eric Dumazet <eric.dumazet@gmail.com> | 2010-06-23 20:55:06 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-06-29 02:24:31 -0400 |
commit | 9618e2ffd78aaa43a5815e1dd456b4dd95f9e53b (patch) | |
tree | 2d75562cd72aa8492154054b90a6d659a80ac4ee /net/8021q/vlan.h | |
parent | bc66154efe163a80f269d448572f7906756e9338 (diff) |
vlan: 64 bit rx counters
Use u64_stats_sync infrastructure to implement 64bit rx stats.
(tx stats are addressed later)
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Acked-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/8021q/vlan.h')
-rw-r--r-- | net/8021q/vlan.h | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/net/8021q/vlan.h b/net/8021q/vlan.h index 6abdcac1b2e8..8d9503ad01da 100644 --- a/net/8021q/vlan.h +++ b/net/8021q/vlan.h | |||
@@ -2,6 +2,7 @@ | |||
2 | #define __BEN_VLAN_802_1Q_INC__ | 2 | #define __BEN_VLAN_802_1Q_INC__ |
3 | 3 | ||
4 | #include <linux/if_vlan.h> | 4 | #include <linux/if_vlan.h> |
5 | #include <linux/u64_stats_sync.h> | ||
5 | 6 | ||
6 | 7 | ||
7 | /** | 8 | /** |
@@ -21,14 +22,16 @@ struct vlan_priority_tci_mapping { | |||
21 | * struct vlan_rx_stats - VLAN percpu rx stats | 22 | * struct vlan_rx_stats - VLAN percpu rx stats |
22 | * @rx_packets: number of received packets | 23 | * @rx_packets: number of received packets |
23 | * @rx_bytes: number of received bytes | 24 | * @rx_bytes: number of received bytes |
24 | * @multicast: number of received multicast packets | 25 | * @rx_multicast: number of received multicast packets |
26 | * @syncp: synchronization point for 64bit counters | ||
25 | * @rx_errors: number of errors | 27 | * @rx_errors: number of errors |
26 | */ | 28 | */ |
27 | struct vlan_rx_stats { | 29 | struct vlan_rx_stats { |
28 | unsigned long rx_packets; | 30 | u64 rx_packets; |
29 | unsigned long rx_bytes; | 31 | u64 rx_bytes; |
30 | unsigned long multicast; | 32 | u64 rx_multicast; |
31 | unsigned long rx_errors; | 33 | struct u64_stats_sync syncp; |
34 | unsigned long rx_errors; | ||
32 | }; | 35 | }; |
33 | 36 | ||
34 | /** | 37 | /** |