diff --git a/drivers/net/macvtap.c b/drivers/net/macvtap.c
index 2311e1f2c2c3b4c69b4567d04ac7c5e0e35e00e9..44d740290b404a896e5044e6f231966db7761fcc 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;