diff options
author | Pravin Shelar <pshelar@nicira.com> | 2014-04-01 20:55:21 -0700 |
---|---|---|
committer | Pravin B Shelar <pshelar@nicira.com> | 2014-03-31 07:38:38 -0700 |
commit | cb25142c50cd3a92e779ca1ce6f61380ffc75927 (patch) | |
tree | c3e6178d835bc8eff27c7da986b861f80c37ca6c /datapath/vport.c | |
parent | 1839c35676b5c3a2a70e83477a6ce3d3c7d0d245 (diff) | |
download | openvswitch-cb25142c50cd3a92e779ca1ce6f61380ffc75927.tar.gz |
datapath: Add support for kernels 3.13
Add support for building the in-tree kernel datapath for
Linux kernels up to 3.13. There were some changes in the
netlink area which required adding new compatibility code
for this layer. Also, some new per-cpu stats initialization
code was added.
Based on patch from Kyle Mestery.
Signed-off-by: Kyle Mestery <mestery@noironetworks.com>
Signed-off-by: Pravin B Shelar <pshelar@nicira.com>
Acked-by: Kyle Mestery <mestery@noironetworks.com>
Diffstat (limited to 'datapath/vport.c')
-rw-r--r-- | datapath/vport.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/datapath/vport.c b/datapath/vport.c index 7f12acccb..2673b8178 100644 --- a/datapath/vport.c +++ b/datapath/vport.c @@ -122,6 +122,7 @@ struct vport *ovs_vport_alloc(int priv_size, const struct vport_ops *ops, { struct vport *vport; size_t alloc_size; + int i; alloc_size = sizeof(struct vport); if (priv_size) { @@ -145,6 +146,12 @@ struct vport *ovs_vport_alloc(int priv_size, const struct vport_ops *ops, return ERR_PTR(-ENOMEM); } + for_each_possible_cpu(i) { + struct pcpu_tstats *vport_stats; + vport_stats = per_cpu_ptr(vport->percpu_stats, i); + u64_stats_init(&vport_stats->syncp); + } + spin_lock_init(&vport->stats_lock); return vport; |