[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <200705301303.25119.mb@bu3sch.de>
Date: Wed, 30 May 2007 13:03:24 +0200
From: Michael Buesch <mb@...sch.de>
To: "Laurent Chavey" <chavey@...gle.com>
Cc: netdev@...r.kernel.org
Subject: Re: bond_compute_features() does not handle devices with different CSUM
On Wednesday 30 May 2007 04:47:09 Laurent Chavey wrote:
> proposed change.
>
> --- 2.6.20/drivers/net/bonding/bond_main.c 2007-05-29
> 19:43:39.010565000 -0700
> +++ 2.6.20.fix/drivers/net/bonding/bond_main.c 2007-05-29
> 19:46:12.376980000 -0700
> @@ -1227,7 +1227,14 @@
> int i;
>
> bond_for_each_slave(bond, slave, i) {
> - features &= (slave->dev->features & BOND_INTERSECT_FEATURES);
> + /* NETIF_F_HW_CSUM includes support for NET_IF_IP_CSUM
> + * as such when looking for the intersection we need to
> + * add it to the device supported features
> + */
> + unsigned long dev_features = slave->dev->features;
> + if (slave->dev->features & NETIF_F_HW_CSUM)
> + dev_features |= NETIF_F_IP_CSUM;
> + features &= (features & BOND_INTERSECT_FEATURES);
Is this statement correct?
It's the same as
features = features & (features & BOND_INTERSECT_FEATURES);
which looks strange to me.
Did you mean something like
features |= (dev_features & BOND_INTERSECT_FEATURES);
?
--
Greetings Michael.
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists