diff --git a/[refs] b/[refs] index bc2c84e5e46d..b520e43e3f3c 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: c7f905f0f6d49ed8c1aa4566c31f0383a0ba0c9d +refs/heads/master: 4d78b6c78ae6d87e4c1c8072f42efa716f04afb9 diff --git a/trunk/net/ipv4/udp.c b/trunk/net/ipv4/udp.c index 6baddfbedca3..8a213238f287 100644 --- a/trunk/net/ipv4/udp.c +++ b/trunk/net/ipv4/udp.c @@ -955,6 +955,8 @@ static int udp_encap_rcv(struct sock * sk, struct sk_buff *skb) * header and optional ESP marker bytes) and then modify the * protocol to ESP, and then call into the transform receiver. */ + if (skb_cloned(skb) && pskb_expand_head(skb, 0, 0, GFP_ATOMIC)) + return 0; /* Now we can update and verify the packet length... */ iph = skb->nh.iph;