ChangeSet 1.2326, 2005/03/31 20:38:15-08:00, [EMAIL PROTECTED]
[BONDING]: Do not drop non-VLAN traffic
Change the bonding driver to not drop non-VLAN traffic when a
VLAN is configured above it. Originally fixed by Olaf Kirch
<[EMAIL PROTECTED]>; I changed his patch slightly to update comments.
Signed-off-by: Jay Vosburgh <[EMAIL PROTECTED]>
Signed-off-by: David S. Miller <[EMAIL PROTECTED]>
bond_main.c | 15 +++------------
1 files changed, 3 insertions(+), 12 deletions(-)
diff -Nru a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c
--- a/drivers/net/bonding/bond_main.c 2005-04-01 09:09:29 -08:00
+++ b/drivers/net/bonding/bond_main.c 2005-04-01 09:09:29 -08:00
@@ -793,29 +793,20 @@
* @skb: hw accel VLAN tagged skb to transmit
* @slave_dev: slave that is supposed to xmit this skbuff
*
- * When the bond gets an skb to tarnsmit that is
+ * When the bond gets an skb to transmit that is
* already hardware accelerated VLAN tagged, and it
* needs to relay this skb to a slave that is not
* hw accel capable, the skb needs to be "unaccelerated",
* i.e. strip the hwaccel tag and re-insert it as part
* of the payload.
- *
- * Assumption - once a VLAN device is created over the bond device, all
- * packets are going to be hardware accelerated VLAN tagged since the IP
- * binding is done over the VLAN device
*/
int bond_dev_queue_xmit(struct bonding *bond, struct sk_buff *skb, struct
net_device *slave_dev)
{
unsigned short vlan_id;
- int res;
if (!list_empty(&bond->vlan_list) &&
- !(slave_dev->features & NETIF_F_HW_VLAN_TX)) {
- res = vlan_get_tag(skb, &vlan_id);
- if (res) {
- return -EINVAL;
- }
-
+ !(slave_dev->features & NETIF_F_HW_VLAN_TX) &&
+ vlan_get_tag(skb, &vlan_id) == 0) {
skb->dev = slave_dev;
skb = vlan_put_tag(skb, vlan_id);
if (!skb) {
-
To unsubscribe from this list: send the line "unsubscribe bk-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html