aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/bonding/bond_main.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/bonding/bond_main.c')
-rw-r--r--drivers/net/bonding/bond_main.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c
index feb03ad0d803..3adbeed2c057 100644
--- a/drivers/net/bonding/bond_main.c
+++ b/drivers/net/bonding/bond_main.c
@@ -3704,10 +3704,10 @@ static int bond_xmit_hash_policy_l23(struct sk_buff *skb,
3704 3704
3705 if (skb->protocol == htons(ETH_P_IP)) { 3705 if (skb->protocol == htons(ETH_P_IP)) {
3706 return ((ntohl(iph->saddr ^ iph->daddr) & 0xffff) ^ 3706 return ((ntohl(iph->saddr ^ iph->daddr) & 0xffff) ^
3707 (data->h_dest[5] ^ bond_dev->dev_addr[5])) % count; 3707 (data->h_dest[5] ^ data->h_source[5])) % count;
3708 } 3708 }
3709 3709
3710 return (data->h_dest[5] ^ bond_dev->dev_addr[5]) % count; 3710 return (data->h_dest[5] ^ data->h_source[5]) % count;
3711} 3711}
3712 3712
3713/* 3713/*
@@ -3734,7 +3734,7 @@ static int bond_xmit_hash_policy_l34(struct sk_buff *skb,
3734 3734
3735 } 3735 }
3736 3736
3737 return (data->h_dest[5] ^ bond_dev->dev_addr[5]) % count; 3737 return (data->h_dest[5] ^ data->h_source[5]) % count;
3738} 3738}
3739 3739
3740/* 3740/*
@@ -3745,7 +3745,7 @@ static int bond_xmit_hash_policy_l2(struct sk_buff *skb,
3745{ 3745{
3746 struct ethhdr *data = (struct ethhdr *)skb->data; 3746 struct ethhdr *data = (struct ethhdr *)skb->data;
3747 3747
3748 return (data->h_dest[5] ^ bond_dev->dev_addr[5]) % count; 3748 return (data->h_dest[5] ^ data->h_source[5]) % count;
3749} 3749}
3750 3750
3751/*-------------------------- Device entry points ----------------------------*/ 3751/*-------------------------- Device entry points ----------------------------*/