On Tue, Oct 1, 2013 at 5:40 PM, Simon Horman <ho...@verge.net.au> wrote: > On Tue, Oct 01, 2013 at 04:02:17PM -0700, Jesse Gross wrote: >> On Mon, Sep 30, 2013 at 11:47 PM, Simon Horman <ho...@verge.net.au> wrote: >> > @@ -545,6 +662,14 @@ static int do_execute_actions(struct datapath *dp, >> > struct sk_buff *skb, >> > output_userspace(dp, skb, a); >> > break; >> > >> > + case OVS_ACTION_ATTR_PUSH_MPLS: >> > + err = push_mpls(skb, nla_data(a)); >> > + break; >> > + >> > + case OVS_ACTION_ATTR_POP_MPLS: >> > + err = pop_mpls(skb, nla_get_be16(a)); >> > + break; >> >> I think we need something similar to POP_VLAN here - in the event of >> an error the skb will have already been freed. > > Thanks, though I think you mean that PUSH_MPLS should be similar to > PUSH_VLAN. I don't think that either pop_mpls() or pop_vlan() free the > skb on error.
Yes, sorry, that's what I meant. _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev