[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5567BF28.6050900@windriver.com>
Date: Fri, 29 May 2015 09:21:44 +0800
From: Ying Xue <ying.xue@...driver.com>
To: Eric Dumazet <eric.dumazet@...il.com>
CC: <netdev@...r.kernel.org>, <herbert@...dor.apana.org.au>
Subject: Re: [PATCH net-next] neigh: Add missing rcu_assign_pointer
On 05/28/2015 06:13 PM, Eric Dumazet wrote:
> This patch is not needed.
>
> You really should read Documentation/RCU , because it looks like you are
> quite confused.
>
> When we remove an element from a RCU protected list, all the objects in
> the chain are already ready to be caught by rcu readers.
>
> Therefore, no additional memory barrier is needed before doing *np =
> n->next;
>
> Please do not add spurious memory barriers. Like atomic operations, we
> want all of them being required and possibly documented.
Yes, you are right, thanks for your clear explanation :)
However, there are still three places where we use rcu_assign_pointer() to
remove a neigh entry from a RCU-protected list, and the three places are
neigh_forced_gc(), neigh_flush_dev(), and __neigh_for_each_release()
respectively. This means it's redundant for us to use rcu_assign_pointer() in
the three places, right?
Regards,
Ying
--
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