]> Pileus Git - ~andy/linux/commitdiff
bonding: use rlb_client_info->vlan_id instead of ->tag
authorVeaceslav Falico <vfalico@redhat.com>
Thu, 29 Aug 2013 21:38:57 +0000 (23:38 +0200)
committerDavid S. Miller <davem@davemloft.net>
Wed, 4 Sep 2013 02:02:32 +0000 (22:02 -0400)
Store VID in ->vlan_id (if any), and remove the useless ->tag.

CC: Jay Vosburgh <fubar@us.ibm.com>
CC: Andy Gospodarek <andy@greyhouse.net>
Signed-off-by: Veaceslav Falico <vfalico@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/bonding/bond_alb.c
drivers/net/bonding/bond_alb.h

index 27b03fab60eb36b63311c9616a220e31f855fdbd..91f179d5135c7542f7bbf4dfb36ea75e23dac4e7 100644 (file)
@@ -512,7 +512,7 @@ static void rlb_update_client(struct rlb_client_info *client_info)
 
                skb->dev = client_info->slave->dev;
 
-               if (client_info->tag) {
+               if (client_info->vlan_id) {
                        skb = vlan_put_tag(skb, htons(ETH_P_8021Q), client_info->vlan_id);
                        if (!skb) {
                                pr_err("%s: Error: failed to insert VLAN tag\n",
@@ -695,7 +695,7 @@ static struct slave *rlb_choose_channel(struct sk_buff *skb, struct bonding *bon
                }
 
                if (!vlan_get_tag(skb, &client_info->vlan_id))
-                       client_info->tag = 1;
+                       client_info->vlan_id = 0;
 
                if (!client_info->assigned) {
                        u32 prev_tbl_head = bond_info->rx_hashtbl_used_head;
@@ -801,7 +801,7 @@ static void rlb_init_table_entry_dst(struct rlb_client_info *entry)
        entry->used_prev = RLB_NULL_INDEX;
        entry->assigned = 0;
        entry->slave = NULL;
-       entry->tag = 0;
+       entry->vlan_id = 0;
 }
 static void rlb_init_table_entry_src(struct rlb_client_info *entry)
 {
@@ -958,7 +958,7 @@ static void rlb_clear_vlan(struct bonding *bond, unsigned short vlan_id)
                struct rlb_client_info *curr = &(bond_info->rx_hashtbl[curr_index]);
                u32 next_index = bond_info->rx_hashtbl[curr_index].used_next;
 
-               if (curr->tag && (curr->vlan_id == vlan_id))
+               if (curr->vlan_id == vlan_id)
                        rlb_delete_table_entry(bond, curr_index);
 
                curr_index = next_index;
index e02c9c558c414d8372b0f92db3a8a1ed614b4754..28d8e4c7dc06d07e2aa396943adf6b391c7d7a61 100644 (file)
@@ -125,7 +125,6 @@ struct rlb_client_info {
        u8  assigned;           /* checking whether this entry is assigned */
        u8  ntt;                /* flag - need to transmit client info */
        struct slave *slave;    /* the slave assigned to this client */
-       u8 tag;                 /* flag - need to tag skb */
        unsigned short vlan_id; /* VLAN tag associated with IP address */
 };