diff options
author | Eric Dumazet <edumazet@google.com> | 2012-04-19 07:07:40 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-04-19 14:23:56 -0400 |
commit | daa86548281ec9364eac2925bdf907f861204a5b (patch) | |
tree | a62cd3cb7df31f0fe26d8c51a4f917b474a4e648 /net/core/dev.c | |
parent | 85bb2a60fab28a338870faec222a1f2232b01caa (diff) | |
download | lwn-daa86548281ec9364eac2925bdf907f861204a5b.tar.gz lwn-daa86548281ec9364eac2925bdf907f861204a5b.zip |
net: gro: GRO_MERGED_FREE consumes packets
As part of GRO processing, merged skbs should be consumed, not freed, to
not confuse dropwatch/drop_monitor.
Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/core/dev.c')
-rw-r--r-- | net/core/dev.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/net/core/dev.c b/net/core/dev.c index c93812733f1d..501f3cc703dd 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -3542,10 +3542,13 @@ gro_result_t napi_skb_finish(gro_result_t ret, struct sk_buff *skb) break; case GRO_DROP: - case GRO_MERGED_FREE: kfree_skb(skb); break; + case GRO_MERGED_FREE: + consume_skb(skb); + break; + case GRO_HELD: case GRO_MERGED: break; |