ipv6: fix illegal mac_header comparison on 32bit
authorHannes Frederic Sowa <hannes@stressinduktion.org>
Fri, 13 Dec 2013 14:12:27 +0000 (15:12 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 15 Jan 2014 23:31:35 +0000 (15:31 -0800)
Signed-off-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
net/ipv6/udp_offload.c

index 34c6fff..06556d6 100644 (file)
@@ -88,7 +88,7 @@ static struct sk_buff *udp6_ufo_fragment(struct sk_buff *skb,
 
                /* Check if there is enough headroom to insert fragment header. */
                tnl_hlen = skb_tnl_header_len(skb);
-               if (skb->mac_header < (tnl_hlen + frag_hdr_sz)) {
+               if (skb_mac_header(skb) < skb->head + tnl_hlen + frag_hdr_sz) {
                        if (gso_pskb_expand_head(skb, tnl_hlen + frag_hdr_sz))
                                goto out;
                }