On Mon, Mar 02, 2015 at 06:06:14AM -0500, Jon Masters wrote: > 64-bit writes are /usually/ atomic but alignment or compiler emiting > 32-bit opcodes could also do it. I agree there are a few other pieces > to this we will chat about separately and come back to this thread. Looking at the asm will quickly tell you if its emitting 32bit stores or not. If it is, use WRITE_ONCE() (you should anyway I suppose) and see if that cures it, if not file a compiler bug, volatile stores should never be split. As to alignment, you can simply put a BUG_ON((unsigned long)ptep & 7); in there. Also: A: Because it messes up the order in which people normally read text. Q: Why is top-posting such a bad thing? A: Top-posting. Q: What is the most annoying thing in e-mail? -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>