diff --git a/net/atm/clip.c b/net/atm/clip.c index 7ce7bfe3fbad3a3908b5a551b3bc8ea37acd9c22..7af2c411da82031f1f62599b5050fe30296f0622 100644 --- a/net/atm/clip.c +++ b/net/atm/clip.c @@ -500,9 +500,11 @@ static int clip_mkip(struct atm_vcc *vcc, int timeout) } else { unsigned int len = skb->len; + skb_get(skb); clip_push(vcc, skb); PRIV(skb->dev)->stats.rx_packets--; PRIV(skb->dev)->stats.rx_bytes -= len; + kfree_skb(skb); } return 0; }