bonding: use rlb_client_info->vlan_id instead of ->tag
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>
This commit is contained in:
parent
6f477d4201
commit
d3ab3ffd1d
|
@ -512,7 +512,7 @@ static void rlb_update_client(struct rlb_client_info *client_info)
|
||||||
|
|
||||||
skb->dev = client_info->slave->dev;
|
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);
|
skb = vlan_put_tag(skb, htons(ETH_P_8021Q), client_info->vlan_id);
|
||||||
if (!skb) {
|
if (!skb) {
|
||||||
pr_err("%s: Error: failed to insert VLAN tag\n",
|
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))
|
if (!vlan_get_tag(skb, &client_info->vlan_id))
|
||||||
client_info->tag = 1;
|
client_info->vlan_id = 0;
|
||||||
|
|
||||||
if (!client_info->assigned) {
|
if (!client_info->assigned) {
|
||||||
u32 prev_tbl_head = bond_info->rx_hashtbl_used_head;
|
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->used_prev = RLB_NULL_INDEX;
|
||||||
entry->assigned = 0;
|
entry->assigned = 0;
|
||||||
entry->slave = NULL;
|
entry->slave = NULL;
|
||||||
entry->tag = 0;
|
entry->vlan_id = 0;
|
||||||
}
|
}
|
||||||
static void rlb_init_table_entry_src(struct rlb_client_info *entry)
|
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]);
|
struct rlb_client_info *curr = &(bond_info->rx_hashtbl[curr_index]);
|
||||||
u32 next_index = bond_info->rx_hashtbl[curr_index].used_next;
|
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);
|
rlb_delete_table_entry(bond, curr_index);
|
||||||
|
|
||||||
curr_index = next_index;
|
curr_index = next_index;
|
||||||
|
|
|
@ -125,7 +125,6 @@ struct rlb_client_info {
|
||||||
u8 assigned; /* checking whether this entry is assigned */
|
u8 assigned; /* checking whether this entry is assigned */
|
||||||
u8 ntt; /* flag - need to transmit client info */
|
u8 ntt; /* flag - need to transmit client info */
|
||||||
struct slave *slave; /* the slave assigned to this client */
|
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 */
|
unsigned short vlan_id; /* VLAN tag associated with IP address */
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue