[ovs-discuss] [ovn] non-maskable OVS meta-flow fields not correctly handled

Ben Pfaff blp at ovn.org
Fri Nov 13 21:20:19 UTC 2020


On Thu, Nov 12, 2020 at 09:45:42AM +0000, ythomas1.ext at orange.com wrote:
> As shown in the following traces, we can see that mpls_label and
> mpls_bos fields are ignored in mf_set(). Their mask not being NULL or
> all-1-bits or all-0-bits, we are falling in the switch case where they
> are not handled
> (https://github.com/openvswitch/ovs/blob/master/lib/meta-flow.c#L2328).

[...]

> So what should be the fix ? Should OVN ensure that the mask be set to
> all zeroes or all ones when calling mf_mask_subfield, or should mf_set
> be adjusted (e.g. treat mpls fields as 'a nontrivial mask' (to quote
> https://github.com/openvswitch/ovs/blob/master/lib/meta-flow.c#L2324 )
> after introducing suitable
> match_set_mpls_label_masked/match_set_mpls_bos_masked/match_set_mpls_tc_masked/match_set_mpls_ttl_masked
> functions) ?

I think that it would probably be better to improve mf_set() to
gracefully handle this case.


More information about the discuss mailing list