You don't get off that easy. EFAULT is optional.
Syscalls are not required to report EFAULT, or do anything else, as invalid
input is completely undefined. Naturally it is a quality-of-implementation
issue that invalid inputs be reported in some manor.
SIGSEGV is an appropriate response.
And something that I'd like to see as an option in the kernel. You'll
flush out more errors putting the signalling code there than doing it in
user space. Plus we'd be better able to accurately report the faulting
address, which is extremely useful information.
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to firstname.lastname@example.org
Please read the FAQ at http://www.altern.org/andrebalsa/doc/lkml-faq.html