Lines Matching defs:flow
42 #include "flow.h"
61 void ovs_flow_stats_update(struct sw_flow *flow, __be16 tcp_flags,
68 stats = rcu_dereference(flow->stats[cpu]);
74 if (cpu == 0 && unlikely(flow->stats_last_writer != cpu))
75 flow->stats_last_writer = cpu;
77 stats = rcu_dereference(flow->stats[0]); /* Pre-allocated. */
83 if (unlikely(flow->stats_last_writer != cpu)) {
89 if (likely(flow->stats_last_writer != -1) &&
90 likely(!rcu_access_pointer(flow->stats[cpu]))) {
108 rcu_assign_pointer(flow->stats[cpu],
111 flow->cpu_used_mask);
115 flow->stats_last_writer = cpu;
128 void ovs_flow_stats_get(const struct sw_flow *flow,
140 cpu = cpumask_next(cpu, flow->cpu_used_mask)) {
141 struct sw_flow_stats *stats = rcu_dereference_ovsl(flow->stats[cpu]);
159 void ovs_flow_stats_clear(struct sw_flow *flow)
165 cpu = cpumask_next(cpu, flow->cpu_used_mask)) {
166 struct sw_flow_stats *stats = ovsl_dereference(flow->stats[cpu]);
679 * @key: output flow key
891 * key_extract - extracts a flow key from an Ethernet frame.
894 * @key: output flow key