Re: [PATCH net] Fix the VLAN_TAG_PRESENT in netvsc_recv_callback()

2013-06-17 Thread David Miller
From: Haiyang Zhang 
Date: Mon, 17 Jun 2013 15:36:49 -0700

> We should call __vlan_hwaccel_put_tag() only if the packet
> comes from vlan, otherwise VLAN_TAG_PRESENT will always be
> added.
> 
> Reported-by: Olaf Hering 
> Signed-off-by: Haiyang Zhang 
> Reviewed-by: K. Y. Srinivasan 

Applied, thanks.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH net] Fix the VLAN_TAG_PRESENT in netvsc_recv_callback()

2013-06-17 Thread Haiyang Zhang
We should call __vlan_hwaccel_put_tag() only if the packet
comes from vlan, otherwise VLAN_TAG_PRESENT will always be
added.

Reported-by: Olaf Hering 
Signed-off-by: Haiyang Zhang 
Reviewed-by: K. Y. Srinivasan 

---
 drivers/net/hyperv/netvsc_drv.c |4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
index ab2307b..4dccead 100644
--- a/drivers/net/hyperv/netvsc_drv.c
+++ b/drivers/net/hyperv/netvsc_drv.c
@@ -285,7 +285,9 @@ int netvsc_recv_callback(struct hv_device *device_obj,
 
skb->protocol = eth_type_trans(skb, net);
skb->ip_summed = CHECKSUM_NONE;
-   __vlan_hwaccel_put_tag(skb, htons(ETH_P_8021Q), packet->vlan_tci);
+   if (packet->vlan_tci & VLAN_TAG_PRESENT)
+   __vlan_hwaccel_put_tag(skb, htons(ETH_P_8021Q),
+  packet->vlan_tci);
 
net->stats.rx_packets++;
net->stats.rx_bytes += packet->total_data_buflen;
-- 
1.7.4.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH net] Fix the VLAN_TAG_PRESENT in netvsc_recv_callback()

2013-06-17 Thread Haiyang Zhang
We should call __vlan_hwaccel_put_tag() only if the packet
comes from vlan, otherwise VLAN_TAG_PRESENT will always be
added.

Reported-by: Olaf Hering o...@aepfle.de
Signed-off-by: Haiyang Zhang haiya...@microsoft.com
Reviewed-by: K. Y. Srinivasan k...@microsoft.com

---
 drivers/net/hyperv/netvsc_drv.c |4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
index ab2307b..4dccead 100644
--- a/drivers/net/hyperv/netvsc_drv.c
+++ b/drivers/net/hyperv/netvsc_drv.c
@@ -285,7 +285,9 @@ int netvsc_recv_callback(struct hv_device *device_obj,
 
skb-protocol = eth_type_trans(skb, net);
skb-ip_summed = CHECKSUM_NONE;
-   __vlan_hwaccel_put_tag(skb, htons(ETH_P_8021Q), packet-vlan_tci);
+   if (packet-vlan_tci  VLAN_TAG_PRESENT)
+   __vlan_hwaccel_put_tag(skb, htons(ETH_P_8021Q),
+  packet-vlan_tci);
 
net-stats.rx_packets++;
net-stats.rx_bytes += packet-total_data_buflen;
-- 
1.7.4.1

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH net] Fix the VLAN_TAG_PRESENT in netvsc_recv_callback()

2013-06-17 Thread David Miller
From: Haiyang Zhang haiya...@microsoft.com
Date: Mon, 17 Jun 2013 15:36:49 -0700

 We should call __vlan_hwaccel_put_tag() only if the packet
 comes from vlan, otherwise VLAN_TAG_PRESENT will always be
 added.
 
 Reported-by: Olaf Hering o...@aepfle.de
 Signed-off-by: Haiyang Zhang haiya...@microsoft.com
 Reviewed-by: K. Y. Srinivasan k...@microsoft.com

Applied, thanks.
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/