diff options
author | Eric Dumazet <edumazet@google.com> | 2012-04-19 06:10:26 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-04-19 14:25:51 -0400 |
commit | cbf8f7bb200f5dbdc9ce11243431440720db03dc (patch) | |
tree | b201bbf2310041bef68118552a7d05edcdb45e9a /net/ipv4/ip_fragment.c | |
parent | daa86548281ec9364eac2925bdf907f861204a5b (diff) | |
download | linux-cbf8f7bb200f5dbdc9ce11243431440720db03dc.tar.gz linux-cbf8f7bb200f5dbdc9ce11243431440720db03dc.tar.bz2 linux-cbf8f7bb200f5dbdc9ce11243431440720db03dc.zip |
ipv4: dont drop packet in defrag but consume it
When defragmentation is finalized, we clone a packet and kfree_skb() it.
Call consume_skb() to not confuse dropwatch, since its not a drop.
Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/ip_fragment.c')
-rw-r--r-- | net/ipv4/ip_fragment.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv4/ip_fragment.c b/net/ipv4/ip_fragment.c index 3727e234c884..631f596d5d70 100644 --- a/net/ipv4/ip_fragment.c +++ b/net/ipv4/ip_fragment.c @@ -569,7 +569,7 @@ static int ip_frag_reasm(struct ipq *qp, struct sk_buff *prev, skb_morph(head, qp->q.fragments); head->next = qp->q.fragments->next; - kfree_skb(qp->q.fragments); + consume_skb(qp->q.fragments); qp->q.fragments = head; } |