[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <97949e3e0705300816v782b20edsf366bbe5de6a6d36@mail.gmail.com>
Date: Wed, 30 May 2007 08:16:00 -0700
From: "Laurent Chavey" <chavey@...gle.com>
To: "Michael Buesch" <mb@...sch.de>
Cc: netdev@...r.kernel.org
Subject: Re: bond_compute_features() does not handle devices with different CSUM
features = features & (dev_features & BOND_INTERSECT_FEATURES);
On 5/30/07, Michael Buesch <mb@...sch.de> wrote:
> 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