On Tue, 23 Mar 2010, Andrew Morton wrote: > > You should be able to simply set CONFIG_RWSEM_GENERIC_SPINLOCK=n, > CONFIG_RWSEM_XCHGADD_ALGORITHM=y by hand, as I mentioned earlier? No. Doesn't work. The XADD code simply never worked on x86-64, which is why those three commits I pointed at are required. Oh, and you need one more commit (at least) in addition to the three I already mentioned - the one that actually adds the x86-64 wrappers and Kconfig option: bafaecd x86-64: support native xadd rwsem implementation so the minimal list of commits (on top of 2.6.33) is at least 59c33fa x86-32: clean up rwsem inline asm statements 5d0b723 x86: clean up rwsem type system bafaecd x86-64: support native xadd rwsem implementation 1838ef1 x86-64, rwsem: 64-bit xadd rwsem implementation and I just verified that they at least cherry-pick cleanly (in that order). I _think_ it would be good to also do 0d1622d x86-64, rwsem: Avoid store forwarding hazard in __downgrade_write but that one is a small detail, not anything fundamentally important. Linus -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>