On 15 March 2017 at 16:01, Joe Stringer <[email protected]> wrote:
> Commit 04f48a68c428 ("ofp-actions: Fix variable length meta-flow OXMs."), on
> branch-2.7 as 9554b03d6ab7, attempted to address incorrect encode and decode 
> of
> variable length metaflow fields where the OXM/NXM encoding of the variable
> length fields would incorrectly serialize the length. The patch addresses this
> by introducing a new per-bridge structure that adds additional metaflow fields
> for the variable-length fields on demand when the TLVs are configured by a
> controller.
>
> Unfortunately, in the original patch there was nothing ensuring that flows
> referring to variable length fields would retain valid field references when
> controllers reconfigure the TLVs. In practice, this could lead to a crash of
> ovs-vswitchd by configuring a TLV field, adding a flow which refers to it,
> removing the TLV field, then running some traffic that hit the configured 
> flow.
>
> This series looks to remedy the situation by reference counting the variable
> length fields and preventing a controller from reconfiguring TLV fields when
> there are active flows whose match or actions refer to the field.
>
> This series was applied to master, but given the size of the change and the
> minor changes necessary to apply to branch-2.7, I would feel more confident in
> backporting it if there was an extra round of review to ensure that nothing 
> was
> missed when this series was first applied to master.

One further concern I have with this series is that while it allows us
to fix bugs in OVS 2.7, it would change some files in
include/openvswitch/, which I believe indirectly implies that it could
break the libopenvswitch ABI, which we try not to do within a release
series:

http://docs.openvswitch.org/en/latest/internals/contributing/libopenvswitch-abi/
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to