aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/vhost/net.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2012-05-16 22:17:37 -0400
committerDavid S. Miller <davem@davemloft.net>2012-05-16 22:17:37 -0400
commit028940342a906db8da014a7603a0deddc2c323dd (patch)
tree688dbc38a3e218f2493d311b1d70a67668837347 /drivers/vhost/net.c
parentbe3eed2e96340d3c7a4d1ea1d63e7bd6095d1e34 (diff)
parent0e93b4b304ae052ba1bc73f6d34a68556fe93429 (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Diffstat (limited to 'drivers/vhost/net.c')
-rw-r--r--drivers/vhost/net.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/vhost/net.c b/drivers/vhost/net.c
index 853db7a08a26..f82a7394756e 100644
--- a/drivers/vhost/net.c
+++ b/drivers/vhost/net.c
@@ -24,6 +24,7 @@
24#include <linux/if_arp.h> 24#include <linux/if_arp.h>
25#include <linux/if_tun.h> 25#include <linux/if_tun.h>
26#include <linux/if_macvlan.h> 26#include <linux/if_macvlan.h>
27#include <linux/if_vlan.h>
27 28
28#include <net/sock.h> 29#include <net/sock.h>
29 30
@@ -286,8 +287,12 @@ static int peek_head_len(struct sock *sk)
286 287
287 spin_lock_irqsave(&sk->sk_receive_queue.lock, flags); 288 spin_lock_irqsave(&sk->sk_receive_queue.lock, flags);
288 head = skb_peek(&sk->sk_receive_queue); 289 head = skb_peek(&sk->sk_receive_queue);
289 if (likely(head)) 290 if (likely(head)) {
290 len = head->len; 291 len = head->len;
292 if (vlan_tx_tag_present(head))
293 len += VLAN_HLEN;
294 }
295
291 spin_unlock_irqrestore(&sk->sk_receive_queue.lock, flags); 296 spin_unlock_irqrestore(&sk->sk_receive_queue.lock, flags);
292 return len; 297 return len;
293} 298}