On Fri, Jul 19, 2013 at 11:11 AM, Andy Zhou <az...@nicira.com> wrote: > A mega flow matches when the masked key matches and the mask applied > is the same as the mask used to create the mega flow. > > This patch adds the implementation of the second match condition > mentioned above. Without this fix, mega flow lookup may result false > match. > > Bug #18584 > > Signed-off-by: Andy Zhou <az...@nicira.com>
Looks good. Acked-by: Pravin B Shelar <pshe...@nicira.com>. > --- > datapath/flow.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/datapath/flow.c b/datapath/flow.c > index 752c8d6..d9040ce 100644 > --- a/datapath/flow.c > +++ b/datapath/flow.c > @@ -1048,7 +1048,8 @@ static struct sw_flow *ovs_masked_flow_lookup(struct > flow_table *table, > hash = ovs_flow_hash(&masked_key, key_start, key_len); > head = find_bucket(table, hash); > hlist_for_each_entry_rcu(flow, head, hash_node[table->node_ver]) { > - if (__flow_cmp_key(flow, &masked_key, key_start, key_len)) > + if (flow->mask == mask && > + __flow_cmp_key(flow, &masked_key, key_start, key_len)) > return flow; > } > return NULL; > -- > 1.7.9.5 > > _______________________________________________ > dev mailing list > dev@openvswitch.org > http://openvswitch.org/mailman/listinfo/dev _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev