diff options
author | Eric Dumazet <edumazet@google.com> | 2016-05-06 05:58:21 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-05-08 23:43:44 -0400 |
commit | be0bd3160165e42783d8215f426e41c07179c08a (patch) | |
tree | fd236e0766625e6cf4e1fc41fd74b0d1151b50a4 /drivers/net/macvtap.c | |
parent | 25a54342fde903b6abc2680594cf3e4864686339 (diff) | |
download | lwn-be0bd3160165e42783d8215f426e41c07179c08a.tar.gz lwn-be0bd3160165e42783d8215f426e41c07179c08a.zip |
macvtap: segmented packet is consumed
If GSO packet is segmented and its segments are properly queued,
we call consume_skb() instead of kfree_skb() to be drop monitor
friendly.
Fixes: 3e4f8b7873709 ("macvtap: Perform GSO on forwarding path.")
Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Vlad Yasevich <vyasevic@redhat.com>
Reviewed-by: Shmulik Ladkani <shmulik.ladkani@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/macvtap.c')
-rw-r--r-- | drivers/net/macvtap.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/macvtap.c b/drivers/net/macvtap.c index 95394edd1ed5..9a35aa462314 100644 --- a/drivers/net/macvtap.c +++ b/drivers/net/macvtap.c @@ -373,7 +373,7 @@ static rx_handler_result_t macvtap_handle_frame(struct sk_buff **pskb) goto wake_up; } - kfree_skb(skb); + consume_skb(skb); while (segs) { struct sk_buff *nskb = segs->next; |