aboutsummaryrefslogtreecommitdiffstats
path: root/net/xfrm/xfrm_policy.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/xfrm/xfrm_policy.c')
-rw-r--r--net/xfrm/xfrm_policy.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/net/xfrm/xfrm_policy.c b/net/xfrm/xfrm_policy.c
index f623dca6ce30..4c4e457e7888 100644
--- a/net/xfrm/xfrm_policy.c
+++ b/net/xfrm/xfrm_policy.c
@@ -1961,10 +1961,8 @@ static int xdst_queue_output(struct sock *sk, struct sk_buff *skb)
1961 struct xfrm_dst *xdst = (struct xfrm_dst *) dst; 1961 struct xfrm_dst *xdst = (struct xfrm_dst *) dst;
1962 struct xfrm_policy *pol = xdst->pols[0]; 1962 struct xfrm_policy *pol = xdst->pols[0];
1963 struct xfrm_policy_queue *pq = &pol->polq; 1963 struct xfrm_policy_queue *pq = &pol->polq;
1964 const struct sk_buff *fclone = skb + 1;
1965 1964
1966 if (unlikely(skb->fclone == SKB_FCLONE_ORIG && 1965 if (unlikely(skb_fclone_busy(skb))) {
1967 fclone->fclone == SKB_FCLONE_CLONE)) {
1968 kfree_skb(skb); 1966 kfree_skb(skb);
1969 return 0; 1967 return 0;
1970 } 1968 }