openvswitch: Per cpu flow stats.
authorPravin B Shelar <pshelar@nicira.com>
Wed, 30 Oct 2013 00:22:21 +0000 (17:22 -0700)
committerJesse Gross <jesse@nicira.com>
Mon, 6 Jan 2014 23:52:24 +0000 (15:52 -0800)
commite298e505700604c97e6a9edb21cebb080bdb91f6
treed2f4452ed7a4ec42a212690ac2633b006c1e10c0
parent795449d8b846a42d11d47d6ff2f51ab2967411c3
openvswitch: Per cpu flow stats.

With mega flow implementation ovs flow can be shared between
multiple CPUs which makes stats updates highly contended
operation. This patch uses per-CPU stats in cases where a flow
is likely to be shared (if there is a wildcard in the 5-tuple
and therefore likely to be spread by RSS). In other situations,
it uses the current strategy, saving memory and allocation time.

Signed-off-by: Pravin B Shelar <pshelar@nicira.com>
Signed-off-by: Jesse Gross <jesse@nicira.com>
net/openvswitch/datapath.c
net/openvswitch/flow.c
net/openvswitch/flow.h
net/openvswitch/flow_netlink.c
net/openvswitch/flow_netlink.h
net/openvswitch/flow_table.c
net/openvswitch/flow_table.h