[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20101210.124339.242120993.davem@davemloft.net>
Date: Fri, 10 Dec 2010 12:43:39 -0800 (PST)
From: David Miller <davem@...emloft.net>
To: shemminger@...tta.com
Cc: lorenzo@...gle.com, netdev@...r.kernel.org
Subject: Re: [PATCH] ipv6: slightly simplify keeping IPv6 addresses on link
down
From: Stephen Hemminger <shemminger@...tta.com>
Date: Wed, 1 Dec 2010 13:04:21 -0800
> On Wed, 1 Dec 2010 12:52:42 -0800
> Lorenzo Colitti <lorenzo@...gle.com> wrote:
>
>> No, wait... The loop is protected by idev->lock, and the code just
>> before it that clears the temporary address list is essentially
>> identical (except it looks over tempaddr_list instead). Wouldn't that
>> blow up as well?
>
> The old code walked the list until it was empty. New code could
> get confused if list changed by other changes during the
> period when idev->lock is dropped and notifier is called.
I think Stephen has a point here.
You can't use a "_safe" list traversal if you are dropping the
lock in the middle of that traversal, which is what you code
will be doing.
Lorenzo you've already added serious bugs to this code with your
previous address handling changes (which had reference counting bugs),
so I'm going to heavily scrutinize any "cleanup" or other kind of
change you try to make here.
In fact I really wish you would just leave this code as-is instead
of trying to make such pointless tweaks to it.
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