On Mon, 26 Jan 2009, Andrew Morton wrote: > > + write = error_code & PF_WRITE; > > What's going on here? We set `error_code' to PF_WRITE, which is some > x86-specific thing. No. We set "write" to non-zero if it was a write fault. > > fault = handle_mm_fault(mm, vma, address, write); > > and then pass it into handle_mm_fault(), which is expecting a bunch of > flags in the FAULT_FLAG_foo domain. No. "handle_mm_fault()" takes an integer that is non-zero if it's a write, zero if it's a read. That's how it has _always_ worked. I don't see where you find that FAULT_FLAG_foo thing. That's much deeper down, when people do things like unsigned int flags = FAULT_FLAG_NONLINEAR | (write_access ? FAULT_FLAG_WRITE : 0); based on that whole "write_access" flag. Linus -- To unsubscribe from this list: send the line "unsubscribe linux-arch" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html