git://git.onelab.eu
/
sliver-openvswitch.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
datapath: Use generic struct pcpu_tstats.
[sliver-openvswitch.git]
/
datapath
/
vport.c
diff --git
a/datapath/vport.c
b/datapath/vport.c
index
42a1258
..
03446da
100644
(file)
--- a/
datapath/vport.c
+++ b/
datapath/vport.c
@@
-181,7
+181,7
@@
struct vport *ovs_vport_alloc(int priv_size, const struct vport_ops *ops,
vport->ops = ops;
INIT_HLIST_NODE(&vport->dp_hash_node);
vport->ops = ops;
INIT_HLIST_NODE(&vport->dp_hash_node);
- vport->percpu_stats = alloc_percpu(struct
vport_percpu_
stats);
+ vport->percpu_stats = alloc_percpu(struct
pcpu_t
stats);
if (!vport->percpu_stats) {
kfree(vport);
return ERR_PTR(-ENOMEM);
if (!vport->percpu_stats) {
kfree(vport);
return ERR_PTR(-ENOMEM);
@@
-334,16
+334,16
@@
void ovs_vport_get_stats(struct vport *vport, struct ovs_vport_stats *stats)
spin_unlock_bh(&vport->stats_lock);
for_each_possible_cpu(i) {
spin_unlock_bh(&vport->stats_lock);
for_each_possible_cpu(i) {
- const struct
vport_percpu_
stats *percpu_stats;
- struct
vport_percpu_
stats local_stats;
+ const struct
pcpu_t
stats *percpu_stats;
+ struct
pcpu_t
stats local_stats;
unsigned int start;
percpu_stats = per_cpu_ptr(vport->percpu_stats, i);
do {
unsigned int start;
percpu_stats = per_cpu_ptr(vport->percpu_stats, i);
do {
- start = u64_stats_fetch_begin_bh(&percpu_stats->sync);
+ start = u64_stats_fetch_begin_bh(&percpu_stats->sync
p
);
local_stats = *percpu_stats;
local_stats = *percpu_stats;
- } while (u64_stats_fetch_retry_bh(&percpu_stats->sync, start));
+ } while (u64_stats_fetch_retry_bh(&percpu_stats->sync
p
, start));
stats->rx_bytes += local_stats.rx_bytes;
stats->rx_packets += local_stats.rx_packets;
stats->rx_bytes += local_stats.rx_bytes;
stats->rx_packets += local_stats.rx_packets;
@@
-402,13
+402,13
@@
int ovs_vport_get_options(const struct vport *vport, struct sk_buff *skb)
*/
void ovs_vport_receive(struct vport *vport, struct sk_buff *skb)
{
*/
void ovs_vport_receive(struct vport *vport, struct sk_buff *skb)
{
- struct
vport_percpu_
stats *stats;
+ struct
pcpu_t
stats *stats;
stats = this_cpu_ptr(vport->percpu_stats);
stats = this_cpu_ptr(vport->percpu_stats);
- u64_stats_update_begin(&stats->sync);
+ u64_stats_update_begin(&stats->sync
p
);
stats->rx_packets++;
stats->rx_bytes += skb->len;
stats->rx_packets++;
stats->rx_bytes += skb->len;
- u64_stats_update_end(&stats->sync);
+ u64_stats_update_end(&stats->sync
p
);
if (!(vport->ops->flags & VPORT_F_TUN_ID))
OVS_CB(skb)->tun_key = NULL;
if (!(vport->ops->flags & VPORT_F_TUN_ID))
OVS_CB(skb)->tun_key = NULL;
@@
-430,14
+430,14
@@
int ovs_vport_send(struct vport *vport, struct sk_buff *skb)
int sent = vport->ops->send(vport, skb);
if (likely(sent)) {
int sent = vport->ops->send(vport, skb);
if (likely(sent)) {
- struct
vport_percpu_
stats *stats;
+ struct
pcpu_t
stats *stats;
stats = this_cpu_ptr(vport->percpu_stats);
stats = this_cpu_ptr(vport->percpu_stats);
- u64_stats_update_begin(&stats->sync);
+ u64_stats_update_begin(&stats->sync
p
);
stats->tx_packets++;
stats->tx_bytes += sent;
stats->tx_packets++;
stats->tx_bytes += sent;
- u64_stats_update_end(&stats->sync);
+ u64_stats_update_end(&stats->sync
p
);
}
return sent;
}
}
return sent;
}