[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <4C1AE3A7.6010004@redhat.com>
Date: Fri, 18 Jun 2010 11:10:31 +0800
From: Cong Wang <amwang@...hat.com>
To: Stanislaw Gruszka <sgruszka@...hat.com>
CC: Ben Hutchings <bhutchings@...arflare.com>, netdev@...r.kernel.org,
herbert.xu@...hat.com, nhorman@...hat.com, davem@...emloft.net
Subject: Re: [Patch 2/2] mlx4: add dynamic LRO disable support
On 06/17/10 20:03, Stanislaw Gruszka wrote:
> On Thu, Jun 17, 2010 at 06:54:28PM +0800, Cong Wang wrote:
>>>> I don't think mdev->state_lock is used to protect dev->feature.
>>>> rtnl_lock is. I think switching to mlx4_ethtool_op_set_flags()
>>>> from the default one has already solved this.
>>>
>>> Ahh, you have right, may intention was use it to stop and start
>>> port. Code rather should look like below:
>>>
>>> if (netdev_running(dev)) {
>>> mutex_lock(&mdev->state_lock);
>>> mlx4_en_stop_port(dev);
>>> }
>>>
>>> dev->features ^= NETIF_F_LRO;
>>>
>>> if (netdev_running(dev)) {
>>> rc = mlx4_en_start_port(dev);
>>> mutex_unlock(&mdev->state_lock);
>>> if (rc)
>>> en_err(priv, "Failed to restart port\n");
>>> }
>>>
>>
>> Hmm, you mean ->features should be changed after port is stopped?
>
> Actually not ->features variable, but NETIF_F_LRO bit, as only this
> bit is used in rx path.
>
Yeah, this is what I meant.
>> Why?
>
> For reasons you talked before in this thread :) to do not change
> LRO in the middle of receiving packages.
>
Ohh... I missed this, seems reasonable, will fix this in the next update.
Thanks.
--
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