[ovs-dev] [PATCH 8/8] ofproto-dpif: Do not add more MPLS labels to mask than the datapath can handle

Simon Horman horms at verge.net.au
Fri Jan 17 00:59:49 UTC 2014


On Thu, Jan 16, 2014 at 04:46:23PM -0800, Ben Pfaff wrote:
> On Wed, Jan 15, 2014 at 04:13:25PM +0900, Simon Horman wrote:
> > The key is sourced from the datapath so should not
> > have more labels than it can handle.
> > 
> > dpif-netdev supports as many LSEs as can fit in struct flow,
> > so it is safe to pass SIZE_MAX as the limit there.
> > 
> > This is an proposed enhancement to
> > "Implement OpenFlow support for MPLS, for up to 3 labels."
> > 
> > Signed-off-by: Simon Horman <horms at verge.net.au>
> 
> I don't think we'd ever try to install a flow that matches on more
> MPLS labels than we probed the datapath as supporting.  If we do, that
> sounds like a bug.  I think that this change would just make the bug
> harder to find, by making us suppress the error inside odp-util
> without actually fixing the bug at the higher layer.

The problem I was trying to address is as follows:

Suppose that the datapath supports one MPLS LSE and sends a that key with
one MPLS LSE which does not have the BoS bit set. I believe that the
current code would create a mask with three LSEs masked instead of one.
But perhaps this is not a problem.



More information about the dev mailing list