Messages in this thread | | | From | "Rustad, Mark D" <> | Subject | Re: [PATCH net 3/7] openvswitch: Fix skb leak in ovs_fragment() | Date | Tue, 29 Sep 2015 22:48:56 +0000 |
| |
> On Sep 29, 2015, at 3:39 PM, Joe Stringer <joestringer@nicira.com> wrote: > > @@ -728,8 +727,14 @@ static void ovs_fragment(struct vport *vport, struct sk_buff *skb, u16 mru, > WARN_ONCE(1, "Failed fragment ->%s: eth=%04x, MRU=%d, MTU=%d.", > ovs_vport_name(vport), ntohs(ethertype), mru, > vport->dev->mtu); > - kfree_skb(skb); > + goto out; > } > + > + skb = NULL; > + > +out: > + if (skb) > + kfree_skb(skb); > } > > static void do_output(struct datapath *dp, struct sk_buff *skb, int out_port,
Wouldn't that hunk be better as:
@@ -728,8 +727,13 @@ static void ovs_fragment(struct vport *vport, struct sk_buff *skb, u16 mru, WARN_ONCE(1, "Failed fragment ->%s: eth=%04x, MRU=%d, MTU=%d.", ovs_vport_name(vport), ntohs(ethertype), mru, vport->dev->mtu); - kfree_skb(skb); + goto out; } + + return; + +out: + kfree_skb(skb); }
static void do_output(struct datapath *dp, struct sk_buff *skb, int out_port,
-- Mark Rustad, Networking Division, Intel Corporation
[unhandled content-type:application/pgp-signature] | |