]> git.proxmox.com Git - ovs.git/commit
ofproto-dpif-xlate: Fix MPLS recirculation.
authorJarno Rajahalme <jrajahalme@nicira.com>
Thu, 26 Mar 2015 18:18:17 +0000 (11:18 -0700)
committerJarno Rajahalme <jrajahalme@nicira.com>
Thu, 26 Mar 2015 18:34:42 +0000 (11:34 -0700)
commit1d741d6dfce5752b8a04568e18da15a2788b70b0
tree8d3b2fa83523b4d94a3c7e9792b2c2a19ee7a0a4
parente672ff9b4d224f4d7ef12b289811b0759a333e48
ofproto-dpif-xlate: Fix MPLS recirculation.

Prior to this patch MPLS recirculation was not performed on a table
lookup following an MPLS_POP action.  This patch refactors MPLS
recirculation triggering so that a table action can be re-done after
recirculation if that table action follows an MPLS_POP action.

Recirculation for a patch port traversal (which also does a table
lookup) after an MPLS_POP action does not need to store the output
action, as recirculation without any post-recirculation actions causes
the table lookup to happen anyway.

Furthermore, the stack actions now have the same post-MPLS_POP
optimization as the SET_FIELD and MOVE actions had already:
recirculation is triggered only if the register in the action is L3 or
higher.

Signed-off-by: Jarno Rajahalme <jrajahalme@nicira.com>
Acked-by: Ben Pfaff <blp@nicira.com>
ofproto/ofproto-dpif-xlate.c