On Sat, Jun 28, 2008 at 06:07:57PM -0400, John David Anglin wrote: > There are two reasons to expose the memory *a in the asm: > > 1) To prevent the compiler from discarding a preceeding write to *a, and > 2) to prevent it from caching *a in a register over the asm. Do either of those scenarios apply, given that every usage of this is preceded by an asm clobbering memory? I believe the correct thing to do is to take out the two mb()s in the various spin_lock routines and make the __ldcw() macro itself clobber memory. -- Intel are signing my paycheques ... these opinions are still mine "Bill, look, we understand that you're interested in selling us this operating system, but compare it to ours. We can't possibly take such a retrograde step." -- To unsubscribe from this list: send the line "unsubscribe linux-parisc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html