ACK: [Precise][PATCH] bonding: Bonding driver does not consider the gso_max_size/gso_max_segs setting of slave devices.
Ben Hutchings
ben at decadent.org.uk
Sun Dec 2 03:32:08 UTC 2012
On Thu, 2012-11-22 at 14:24 +0100, Stefan Bader wrote:
> On 22.11.2012 07:19, Jesse Sung wrote:
> > From: Sarveshwar Bandi <sarveshwar.bandi at emulex.com>
> >
> > BugLink: https://launchpad.net/bugs/1078184
> >
> > Patch sets the lowest gso_max_size and gso_max_segs values of the slave devices during enslave and detach.
> >
> > Signed-off-by: Sarveshwar Bandi <sarveshwar.bandi at emulex.com>
> > Acked-by: Eric Dumazet <edumazet at google.com>
> > Signed-off-by: David S. Miller <davem at davemloft.net>
> > (cherry picked from commit 0e376bd0b791ac6ac6bdb051492df0769c840848)
> >
> > Signed-off-by: Wen-chien Jesse Sung <jesse.sung at canonical.com>
> > ---
> > drivers/net/bonding/bond_main.c | 7 +++++++
> > 1 file changed, 7 insertions(+)
> >
> > diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c
> > index 6c284d1..202ae34 100644
> > --- a/drivers/net/bonding/bond_main.c
> > +++ b/drivers/net/bonding/bond_main.c
> > @@ -1366,6 +1366,8 @@ static void bond_compute_features(struct bonding *bond)
> > struct net_device *bond_dev = bond->dev;
> > u32 vlan_features = BOND_VLAN_FEATURES;
> > unsigned short max_hard_header_len = ETH_HLEN;
> > + unsigned int gso_max_size = GSO_MAX_SIZE;
> > + u16 gso_max_segs = GSO_MAX_SEGS;
> > int i;
> >
> > read_lock(&bond->lock);
> > @@ -1379,11 +1381,16 @@ static void bond_compute_features(struct bonding *bond)
> >
> > if (slave->dev->hard_header_len > max_hard_header_len)
> > max_hard_header_len = slave->dev->hard_header_len;
> > +
> > + gso_max_size = min(gso_max_size, slave->dev->gso_max_size);
> > + gso_max_segs = min(gso_max_segs, slave->dev->gso_max_segs);
> > }
> >
> > done:
> > bond_dev->vlan_features = vlan_features;
> > bond_dev->hard_header_len = max_hard_header_len;
> > + bond_dev->gso_max_segs = gso_max_segs;
> > + netif_set_gso_max_size(bond_dev, gso_max_size);
> >
> > read_unlock(&bond->lock);
> >
> >
>
> Ben, might be of interest for 3.2. Not sure you already got it.
Thanks, but David Miller generally takes care of picking the networking
fixes for stable.
Ben.
--
Ben Hutchings
It is easier to change the specification to fit the program than vice versa.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 828 bytes
Desc: This is a digitally signed message part
URL: <https://lists.ubuntu.com/archives/kernel-team/attachments/20121202/1600c65a/attachment.sig>
More information about the kernel-team
mailing list