With the comment below, Acked-by: Jarno Rajahalme <ja...@ovn.org>
> On Dec 9, 2015, at 6:27 PM, Daniele Di Proietto <diproiet...@vmware.com> > wrote: > > When converting between ODP attributes and struct flow_wildcards, we > check that all the prerequisites are exact matched on the mask. > > For ND(ICMPv6) attributes, an exact match on tp_src and tp_dst > (which in this context are the icmp type and code) shold look like > htons(0xff), not htons(0xffff). Fix this in two places. > > The consequences were that the datapath wouldn't match on the ND > attributes, and the flow would get revalidated away. > You mean that the datapath mask would not match the generated mask? Also, adding a reference to the big comment in xlate_wc_finish() would be informative. Jarno > Signed-off-by: Daniele Di Proietto <diproiet...@vmware.com> > --- > lib/odp-util.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/lib/odp-util.c b/lib/odp-util.c > index 3717aee..fbc0788 100644 > --- a/lib/odp-util.c > +++ b/lib/odp-util.c > @@ -4358,8 +4358,8 @@ odp_flow_key_from_flow__(const struct > odp_flow_key_parms *parms, > if (flow->tp_dst == htons(0) > && (flow->tp_src == htons(ND_NEIGHBOR_SOLICIT) > || flow->tp_src == htons(ND_NEIGHBOR_ADVERT)) > - && (!export_mask || (data->tp_src == htons(0xffff) > - && data->tp_dst == htons(0xffff)))) { > + && (!export_mask || (data->tp_src == htons(0xff) > + && data->tp_dst == htons(0xff)))) { > > struct ovs_key_nd *nd_key; > > @@ -4905,8 +4905,8 @@ parse_l2_5_onward(const struct nlattr > *attrs[OVS_KEY_ATTR_MAX + 1], > flow->arp_tha = nd_key->nd_tll; > if (is_mask) { > if (!is_all_zeros(nd_key, sizeof *nd_key) && > - (flow->tp_src != htons(0xffff) || > - flow->tp_dst != htons(0xffff))) { > + (flow->tp_src != htons(0xff) || > + flow->tp_dst != htons(0xff))) { > return ODP_FIT_ERROR; > } else { > expected_attrs |= UINT64_C(1) << OVS_KEY_ATTR_ND; > -- > 2.1.4 > > _______________________________________________ > dev mailing list > dev@openvswitch.org > http://openvswitch.org/mailman/listinfo/dev _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev