Message ID | 20091023115834.GA2216@spaans.fox.local |
---|---|
State | Superseded, archived |
Delegated to: | David Miller |
Headers | show |
Jasper Spaans a écrit : > Modify bonding hash transmit policies to use the psource MAC address of > the packet instead of the MAC address configured for the bonding device. > > The old sitation conflicts with the documentation. > --- > drivers/net/bonding/bond_main.c | 6 +++--- > 1 files changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c > index 69c5b15..b140b52 100644 > --- a/drivers/net/bonding/bond_main.c > +++ b/drivers/net/bonding/bond_main.c > @@ -3668,7 +3668,7 @@ static int bond_xmit_hash_policy_l23(struct sk_buff *skb, > (data->h_dest[5] ^ bond_dev->dev_addr[5])) % count; You forgot one bond_dev->dev_addr[5] occurrence here > } > > - return (data->h_dest[5] ^ bond_dev->dev_addr[5]) % count; > + return (data->h_dest[5] ^ data->h_source[5]) % count; > } Could you check if bond->xmit_hash_policy(skb, bond_dev, bond->slave_cnt); could be replaced by bond->xmit_hash_policy(skb, bond->slave_cnt), now that various implementations dont need bond_dev anymore ? static int bond_xmit_hash_policy_l23(struct sk_buff *skb, int count) ... Dont forget your "Signed-off-by: Jasper Spaans <spaans@fox-it.com>", copied to "David S. Miller" <davem@davemloft.net> and "Jay Vosburgh" <fubar@us.ibm.com> (respectively network and bonding maintainers) Thanks -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c index 69c5b15..b140b52 100644 --- a/drivers/net/bonding/bond_main.c +++ b/drivers/net/bonding/bond_main.c @@ -3668,7 +3668,7 @@ static int bond_xmit_hash_policy_l23(struct sk_buff *skb, (data->h_dest[5] ^ bond_dev->dev_addr[5])) % count; } - return (data->h_dest[5] ^ bond_dev->dev_addr[5]) % count; + return (data->h_dest[5] ^ data->h_source[5]) % count; } /* @@ -3695,7 +3695,7 @@ static int bond_xmit_hash_policy_l34(struct sk_buff *skb, } - return (data->h_dest[5] ^ bond_dev->dev_addr[5]) % count; + return (data->h_dest[5] ^ data->h_source[5]) % count; } /* @@ -3706,7 +3706,7 @@ static int bond_xmit_hash_policy_l2(struct sk_buff *skb, { struct ethhdr *data = (struct ethhdr *)skb->data; - return (data->h_dest[5] ^ bond_dev->dev_addr[5]) % count; + return (data->h_dest[5] ^ data->h_source[5]) % count; } /*-------------------------- Device entry points ----------------------------*/