Lines Matching +full:spin +full:- +full:up

4 Locking is well-known and the common use cases are straightforward: Any
9 However, developers who would like to also access lock-protected shared
14 --------------------------
51 -------------------------------
86 Double-Checked Locking
87 ----------------------
90 double-checked locking work correctly, This litmus test illustrates
93 /* See Documentation/litmus-tests/locking/DCL-broken.litmus. */
118 /* See Documentation/litmus-tests/locking/DCL-fixed.litmus. */
143 In short, if you access a lock-protected variable without holding the
149 ---------------------------------------------------------
178 Counter-intuitive though it might be, it is quite possible to have
213 acquisition sufficiently to rule out the counter-intuitive outcome.
215 the counter-intuitive result where the final value of r0 is 1, the final
219 No Roach-Motel Locking!
220 -----------------------
223 please read up on that topic in litmus-tests.txt.
225 It is tempting to allow memory-reference instructions to be pulled
227 For example, consider a spin loop preceding a lock-based critical section.
228 Now, herd7 does not model spin loops, but we can emulate one with two
232 /* See Documentation/litmus-tests/locking/RM-fixed.litmus. */
253 The variable "x" is the control variable for the emulated spin loop.
255 spin loop by reading it twice, first into "1:r0" (which should get the
266 But suppose that the compiler was permitted to reorder the spin loop
269 /* See Documentation/litmus-tests/locking/RM-broken.litmus. */
296 And this is why Linux-kernel lock and unlock primitives must prevent