Lines Matching refs:flow
70 void ovs_flow_stats_update(struct sw_flow *flow, __be16 tcp_flags, in ovs_flow_stats_update() argument
77 stats = rcu_dereference(flow->stats[node]); in ovs_flow_stats_update()
83 if (node == 0 && unlikely(flow->stats_last_writer != node)) in ovs_flow_stats_update()
84 flow->stats_last_writer = node; in ovs_flow_stats_update()
86 stats = rcu_dereference(flow->stats[0]); /* Pre-allocated. */ in ovs_flow_stats_update()
92 if (unlikely(flow->stats_last_writer != node)) { in ovs_flow_stats_update()
98 if (likely(flow->stats_last_writer != NUMA_NO_NODE) in ovs_flow_stats_update()
99 && likely(!rcu_access_pointer(flow->stats[node]))) { in ovs_flow_stats_update()
117 rcu_assign_pointer(flow->stats[node], in ovs_flow_stats_update()
122 flow->stats_last_writer = node; in ovs_flow_stats_update()
135 void ovs_flow_stats_get(const struct sw_flow *flow, in ovs_flow_stats_get() argument
146 struct flow_stats *stats = rcu_dereference_ovsl(flow->stats[node]); in ovs_flow_stats_get()
164 void ovs_flow_stats_clear(struct sw_flow *flow) in ovs_flow_stats_clear() argument
169 struct flow_stats *stats = ovsl_dereference(flow->stats[node]); in ovs_flow_stats_clear()