[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <FCA91A92EE52B041906A0358FC28FCC38EF129DB8F@FRE1EXCH02.hq.exar.com>
Date: Sat, 5 Jun 2010 01:53:25 -0700
From: Ramkrishna Vepa <Ramkrishna.Vepa@...r.com>
To: Michal Schmidt <mschmidt@...hat.com>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>
CC: Amerigo Wang <amwang@...hat.com>,
"herbert.xu@...hat.com" <herbert.xu@...hat.com>,
"nhorman@...hat.com" <nhorman@...hat.com>,
"sgruszka@...hat.com" <sgruszka@...hat.com>,
"davem@...emloft.net" <davem@...emloft.net>
Subject: RE: [Patch 1/2] s2io: add dynamic LRO disable support
> +static int s2io_ethtool_set_flags(struct net_device *dev, u32 data)
> +{
> + struct s2io_nic *sp = netdev_priv(dev);
> + int rc = 0;
> + int changed = 0;
> +
> + if (data & ETH_FLAG_LRO) {
> + if (lro_enable) {
> + if (!(dev->features & NETIF_F_LRO)) {
> + dev->features |= NETIF_F_LRO;
> + changed = 1;
> + }
> + } else
> + rc = -EINVAL;
> + } else if (dev->features & NETIF_F_LRO) {
> + dev->features &= ~NETIF_F_LRO;
> + changed = 1;
> + }
> +
> + if (changed && netif_running(dev)) {
> + s2io_stop_all_tx_queue(sp);
> + s2io_card_down(sp);
> + sp->lro = dev->features & NETIF_F_LRO;
> + rc = s2io_card_up(sp);
In s2io_card_up, update ring->lro too as it is used in the fast path -
struct ring_info *ring = &mac_control->rings[i];
ring->mtu = dev->mtu;
+ ring->lro = sp->lro;
> + s2io_start_all_tx_queue(sp);
The following line in init_shared_mem() is redundant and can be removed.
- ring->lro = lro_enable;
Thanks,
Ram
--
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