diff options
author | David Woodhouse <David.Woodhouse@intel.com> | 2008-10-13 12:13:56 -0400 |
---|---|---|
committer | David Woodhouse <David.Woodhouse@intel.com> | 2008-10-13 12:13:56 -0400 |
commit | e758936e02700ff88a0b08b722a3847b95283ef2 (patch) | |
tree | 50c919bef1b459a778b85159d5929de95b6c4a01 /drivers/net/bonding/bond_main.c | |
parent | 239cfbde1f5843c4a24199f117d5f67f637d72d5 (diff) | |
parent | 4480f15b3306f43bbb0310d461142b4e897ca45b (diff) |
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Conflicts:
include/asm-x86/statfs.h
Diffstat (limited to 'drivers/net/bonding/bond_main.c')
-rw-r--r-- | drivers/net/bonding/bond_main.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c index c792138511e6..8e2be24f3fe4 100644 --- a/drivers/net/bonding/bond_main.c +++ b/drivers/net/bonding/bond_main.c | |||
@@ -3702,7 +3702,7 @@ static int bond_xmit_hash_policy_l23(struct sk_buff *skb, | |||
3702 | struct ethhdr *data = (struct ethhdr *)skb->data; | 3702 | struct ethhdr *data = (struct ethhdr *)skb->data; |
3703 | struct iphdr *iph = ip_hdr(skb); | 3703 | struct iphdr *iph = ip_hdr(skb); |
3704 | 3704 | ||
3705 | if (skb->protocol == __constant_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] ^ bond_dev->dev_addr[5])) % count; |
3708 | } | 3708 | } |
@@ -3723,8 +3723,8 @@ static int bond_xmit_hash_policy_l34(struct sk_buff *skb, | |||
3723 | __be16 *layer4hdr = (__be16 *)((u32 *)iph + iph->ihl); | 3723 | __be16 *layer4hdr = (__be16 *)((u32 *)iph + iph->ihl); |
3724 | int layer4_xor = 0; | 3724 | int layer4_xor = 0; |
3725 | 3725 | ||
3726 | if (skb->protocol == __constant_htons(ETH_P_IP)) { | 3726 | if (skb->protocol == htons(ETH_P_IP)) { |
3727 | if (!(iph->frag_off & __constant_htons(IP_MF|IP_OFFSET)) && | 3727 | if (!(iph->frag_off & htons(IP_MF|IP_OFFSET)) && |
3728 | (iph->protocol == IPPROTO_TCP || | 3728 | (iph->protocol == IPPROTO_TCP || |
3729 | iph->protocol == IPPROTO_UDP)) { | 3729 | iph->protocol == IPPROTO_UDP)) { |
3730 | layer4_xor = ntohs((*layer4hdr ^ *(layer4hdr + 1))); | 3730 | layer4_xor = ntohs((*layer4hdr ^ *(layer4hdr + 1))); |
@@ -4493,6 +4493,12 @@ static void bond_ethtool_get_drvinfo(struct net_device *bond_dev, | |||
4493 | 4493 | ||
4494 | static const struct ethtool_ops bond_ethtool_ops = { | 4494 | static const struct ethtool_ops bond_ethtool_ops = { |
4495 | .get_drvinfo = bond_ethtool_get_drvinfo, | 4495 | .get_drvinfo = bond_ethtool_get_drvinfo, |
4496 | .get_link = ethtool_op_get_link, | ||
4497 | .get_tx_csum = ethtool_op_get_tx_csum, | ||
4498 | .get_sg = ethtool_op_get_sg, | ||
4499 | .get_tso = ethtool_op_get_tso, | ||
4500 | .get_ufo = ethtool_op_get_ufo, | ||
4501 | .get_flags = ethtool_op_get_flags, | ||
4496 | }; | 4502 | }; |
4497 | 4503 | ||
4498 | /* | 4504 | /* |