[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <49ABBDDF.4030805@trash.net>
Date: Mon, 02 Mar 2009 12:07:11 +0100
From: Patrick McHardy <kaber@...sh.net>
To: Stephen Hemminger <shemminger@...tta.com>
CC: Ben Greear <greearb@...delatech.com>,
"Eric W. Biederman" <ebiederm@...ssion.com>,
Herbert Xu <herbert@...dor.apana.org.au>,
Linux Netdev List <netdev@...r.kernel.org>,
"David S. Miller" <davem@...emloft.net>
Subject: Re: IPv4/IPv6 sysctl unregistration deadlock
Stephen Hemminger wrote:
> On Fri, 27 Feb 2009 10:26:43 -0800
> Ben Greear <greearb@...delatech.com> wrote:
>
>> Stephen Hemminger wrote:
>>
>>> Subject: [PATCH] Avoid race between network down and sysfs
>>>
>>>
>>> Signed-off-by: Stephen Hemminger <shemminger@...tta.com>
>>>
>>> --- a/net/core/net-sysfs.c 2009-02-26 08:36:18.000000000 -0800
>>> +++ b/net/core/net-sysfs.c 2009-02-26 08:37:51.000000000 -0800
>>> @@ -77,7 +77,9 @@ static ssize_t netdev_store(struct devic
>>> if (endp == buf)
>>> goto err;
>>>
>>> - rtnl_lock();
>>> + if (!rtnl_trylock())
>>> + return -ERESTARTSYS;
>>> +
>>> if (dev_isalive(net)) {
>>> if ((ret = (*set)(net, new)) == 0)
>>> ret = len;
>> I can test this to see if it fixes my problem. Are the above lines the
>> entirety of the patch?
>
> yes
We should be able to avoid the restart looping in most cases,
we only need to do this while unregistration is in progress.
--
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