Thread (105 messages) 105 messages, 13 authors, 2008-11-24

Re: [PATCH 4/3] rcu: documents rculist_nulls

From: David Miller <davem@davemloft.net>
Date: 2008-11-17 03:37:00

From: Peter Zijlstra <redacted>
Date: Fri, 14 Nov 2008 16:16:38 +0100
On Thu, 2008-11-13 at 17:02 +0100, Eric Dumazet wrote:
quoted
Eric Dumazet a écrit :
quoted
quoted
Peter Zijlstra a écrit :
quoted
So by not using some memory barriers (would be nice to have it
illustrated which ones), we can race and end up on the wrong chain, in
case that happens we detect this by using this per-chain terminator and
try again.

It would be really good to have it explained in the rculist_nulls.h
comments what memory barriers are missing, what races they open, and how
the this special terminator trick closes that race.
OK, maybe I should add a Documentation/RCU/rculist_nulls.txt file with
appropriate examples and documentation.

(Say the lookup/insert algorithms, with standard hlist and memory barriers,
and with hlist_nulls without those two memory barriers.
[PATCH 4/3] rcu: documents rculist_nulls

Adds Documentation/RCU/rculist_nulls.txt file to describe how 'nulls'
end-of-list can help in some RCU algos.


Signed-off-by: Eric Dumazet <redacted>
Acked-by: Peter Zijlstra <redacted>
Since there seems to be consensus for these changes I'm going to merge this
stuff into net-next-2.6 so that I can add in the users that Eric has written.

Thanks everyone for the review and feedback.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help