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

Reply via email to