Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/klassert/ipsec...
authorDavid S. Miller <davem@davemloft.net>
Sat, 2 Nov 2013 06:13:48 +0000 (02:13 -0400)
committerDavid S. Miller <davem@davemloft.net>
Sat, 2 Nov 2013 06:13:48 +0000 (02:13 -0400)
Conflicts:
net/xfrm/xfrm_policy.c

Minor merge conflict in xfrm_policy.c, consisting of overlapping
changes which were trivial to resolve.

Signed-off-by: David S. Miller <davem@davemloft.net>
1  2 
net/ipv6/esp6.c
net/xfrm/xfrm_policy.c

diff --cc net/ipv6/esp6.c
Simple merge
index 76e1873811d4cac098cd4d563e865e847997a4a4,e09edfcf1b796e982e06f0e96e080f7bc0893ec9..9a91f7431c411b706810a40bccc3167617c74aec
@@@ -1842,8 -1831,14 +1842,15 @@@ static int xdst_queue_output(struct sk_
        unsigned long sched_next;
        struct dst_entry *dst = skb_dst(skb);
        struct xfrm_dst *xdst = (struct xfrm_dst *) dst;
 -      struct xfrm_policy_queue *pq = &xdst->pols[0]->polq;
 +      struct xfrm_policy *pol = xdst->pols[0];
 +      struct xfrm_policy_queue *pq = &pol->polq;
+       const struct sk_buff *fclone = skb + 1;
+       if (unlikely(skb->fclone == SKB_FCLONE_ORIG &&
+                    fclone->fclone == SKB_FCLONE_CLONE)) {
+               kfree_skb(skb);
+               return 0;
+       }
  
        if (pq->hold_queue.qlen > XFRM_MAX_QUEUE_LEN) {
                kfree_skb(skb);