> Maybe. There is no guarantee that write(2) from an invalid address
> wouldn't cause a SIGSEGV instead of returning EFAULT. I could be mistaken,
> but I believe Linux has actually behaved that way before. msync(2) seems
> to be more tolerant in general.
I'm really curious why you think this. It seems totally bogus to me: the kernel is the one doing the address space checking, not userspace. You would need to add extra code to get the weird and (I think) non-POSIX behavior of delivering a signal to userspace. What gave you the idea that a signal might be delivered?