Messages in this thread |  | | | Date | Fri, 22 Feb 2008 08:46:16 -0500 (EST) | | From | Steven Rostedt <> | | Subject | Re: [PATCH [RT] 05/14] rearrange rt_spin_lock sleep | |
Gregory,
I guess we should have just read Documentation/memory-barriers.text
Here's the snippet:
Any atomic operation that modifies some state in memory and returns
information
about the state (old or new) implies an SMP-conditional general memory
barrier
(smp_mb()) on each side of the actual operation (with the exception of
explicit lock operations, described later). These include:
xchg();
cmpxchg();
atomic_cmpxchg();
atomic_inc_return();
atomic_dec_return();
atomic_add_return();
atomic_sub_return();
atomic_inc_and_test();
atomic_dec_and_test();
atomic_sub_and_test();
atomic_add_negative();
atomic_add_unless();
test_and_set_bit();
test_and_clear_bit();
test_and_change_bit();
-- Steve
|  |