Thread (3 messages) flat view 3 messages, 3 authors, 2011-06-16

Re: [PATCH 001/001] forcedeth: Don't enable hardware vlan support on hardware that doesn't support it

From: Stephen Hemminger <hidden>
Date: 2011-06-15 20:53:04

quoted hunk
In the forcedeth driver hardware vlan support is used even on hardware
that doesn't support it leading to incorrect tagging of some packets
when using vlan.

Signed-off-by: Antoine Reversat <redacted>
---
--- linux-2.6.39/drivers/net/forcedeth.c 2011-05-19 00:06:34.000000000
-0400 +++ linux-2.6.39-fixed/drivers/net/forcedeth.c 2011-06-15
15:57:45.331158001 -0400
@@ -4915,6 +4915,10 @@ static void nv_vlan_rx_register(struct n
{ struct fe_priv *np = get_nvpriv(dev);

+ /* Don't do anything if device doesn't support VLAN */
+ if (!(np->driver_data & DEV_HAS_VLAN))
+ return;
+ spin_lock_irq(&np->lock);

/* save vlan group */
This shouldn't be necessary. rx_register should not be called
unless NETIF_F_HW_VLAN_RX is set; and device should not be setting
NETIF_F_HW_VLAN_RX unless DEV_HAS_VLAN is set.

The real problem is vlan_dev.c, and applies to all devices.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help