public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [RFC PATCH 0/5] Priority Sifting Reader-Writer Lock v13
@ 2008-09-09  0:34 Mathieu Desnoyers
  2008-09-09  0:34 ` [RFC PATCH 1/5] " Mathieu Desnoyers
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Mathieu Desnoyers @ 2008-09-09  0:34 UTC (permalink / raw)
  To: Linus Torvalds, H. Peter Anvin, Jeremy Fitzhardinge,
	Andrew Morton, Ingo Molnar, Paul E. McKenney, Peter Zijlstra,
	Joe Perches, Wei Weng, linux-kernel

Hi,

Here is the reworked version of what was initially called "Fair rwlock", then
"writer-biased rwlock". Hopefully the naming should now better represent the
innovation in this reader-writer locking scheme.

Thanks to Linus' patient explanations, it uses a single atomic op on a 32 bit
variable in the fast path. The bright side of this is instruction-wise
compactness of the fast path and that there is practically no limitation on the
number of readers or writers. The downside is added memory ordering complexity
between fast and slow path variables in the slow path.

Mathieu

-- 
Mathieu Desnoyers
Computer Engineering Ph.D. Student, Ecole Polytechnique de Montreal
OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F  BA06 3F25 A8FE 3BAE 9A68

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2008-09-09  1:21 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-09-09  0:34 [RFC PATCH 0/5] Priority Sifting Reader-Writer Lock v13 Mathieu Desnoyers
2008-09-09  0:34 ` [RFC PATCH 1/5] " Mathieu Desnoyers
2008-09-09  0:34 ` [RFC PATCH 2/5] Priority Sifting Reader-Writer Lock Documentation Mathieu Desnoyers
2008-09-09  0:34 ` [RFC PATCH 3/5] Priority Sifting Reader-Writer Lock x86_64 Optimised Call Mathieu Desnoyers
2008-09-09  0:34 ` [RFC PATCH 4/5] Priority Sifting Reader-Writer Lock Sample Mathieu Desnoyers
2008-09-09  0:34 ` [RFC PATCH 5/5] Priority Sifting Reader-Writer Lock Latency Trace Mathieu Desnoyers

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox