diff options
Diffstat (limited to 'drivers/net/macvtap.c')
-rw-r--r-- | drivers/net/macvtap.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/drivers/net/macvtap.c b/drivers/net/macvtap.c index a38c0dac514b..070e3290aa6e 100644 --- a/drivers/net/macvtap.c +++ b/drivers/net/macvtap.c | |||
@@ -275,7 +275,6 @@ static void macvtap_put_queue(struct macvtap_queue *q) | |||
275 | rtnl_unlock(); | 275 | rtnl_unlock(); |
276 | 276 | ||
277 | synchronize_rcu(); | 277 | synchronize_rcu(); |
278 | skb_array_cleanup(&q->skb_array); | ||
279 | sock_put(&q->sk); | 278 | sock_put(&q->sk); |
280 | } | 279 | } |
281 | 280 | ||
@@ -533,10 +532,8 @@ static void macvtap_sock_write_space(struct sock *sk) | |||
533 | static void macvtap_sock_destruct(struct sock *sk) | 532 | static void macvtap_sock_destruct(struct sock *sk) |
534 | { | 533 | { |
535 | struct macvtap_queue *q = container_of(sk, struct macvtap_queue, sk); | 534 | struct macvtap_queue *q = container_of(sk, struct macvtap_queue, sk); |
536 | struct sk_buff *skb; | ||
537 | 535 | ||
538 | while ((skb = skb_array_consume(&q->skb_array)) != NULL) | 536 | skb_array_cleanup(&q->skb_array); |
539 | kfree_skb(skb); | ||
540 | } | 537 | } |
541 | 538 | ||
542 | static int macvtap_open(struct inode *inode, struct file *file) | 539 | static int macvtap_open(struct inode *inode, struct file *file) |