[ovs-dev] [PATCH v4 4/5] ofproto-dpif: Restore metadata and registers on recirculation.

Ben Pfaff blp at nicira.com
Tue Mar 24 16:56:38 UTC 2015


On Thu, Mar 19, 2015 at 06:03:28PM -0700, Jarno Rajahalme wrote:
> xlate_actions() now considers an optional recirculation context (via
> 'xin') and restores OpenFlow pipeline metadata (registers, 'metadata',
> etc.) based on it.  The recirculation context may contain an action
> set and stack to be restored and further actions to be executed upon
> recirculation.  It also contains a table_id number to be used for rule
> lookup in cases where no post-recirculation actions are used.
> 
> The translation context internal metadata is restored using a new
> internal action: UNROLL_XLATE action stores the translation context
> data visible to OpenFlow controllers via PACKET_IN messages.  This
> includes the current table number and the current rule cookie.
> UNROLL_XLATE actions are inserted only when the remaining actions may
> generate PACKET_IN messages.
> 
> These changes allow the post-MPLS recirculation to properly continue
> with the pipeline metadata that existed at the time of recirculation.
> 
> The internal table is still consulted for bonds.
> 
> Signed-off-by: Jarno Rajahalme <jrajahalme at nicira.com>

I've read this a few times before and I feel like I can't properly
re-review it.  I did a quick scroll-through this time and nothing jumped
out.  If you want a thorough review, you should ask someone with fresh
eyes, but short of that:

Acked-by: Ben Pfaff <blp at nicira.com>

Thanks so much for persisting with this big job!



More information about the dev mailing list