On Tue, Mar 17, 2015 at 03:06:37PM -0700, Jarno Rajahalme wrote: > > > On Mar 17, 2015, at 2:43 PM, Ben Pfaff <b...@nicira.com> wrote: > > > > On Fri, Mar 13, 2015 at 04:52:00PM -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 <jrajaha...@nicira.com> > > > > Clang says: > > > > ../ofproto/ofproto-dpif-rid.c:147:29: error: cast from 'const struct > > ofpact *' > > to 'const uint64_t *' (aka 'const unsigned long long *') increases > > required alignment from 2 to 4 [-Werror,-Wcast-align] > > hash = hash_words64((const uint64_t *)ofpacts, > > ^~~~~~~~~~~~~~~~~~~~~~~~~ > > This is due to reverting the ofpact alignment patch in master after I sent > this series. > I have already fixed this on my source code with an ALIGNED_CAST(const > uint64_t *, ofpacts).
Oh, that makes sense, thanks. _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev