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.