link(2) and EFAULT

Michael Galassi nerd at
Thu Jul 26 12:44:09 PDT 2007

>Under what conditions does link() return EFAULT? The man
>page says:
>  [EFAULT]  One of the pathnames specified is outside the
>            process's allocated address space.
>However I would think that if I had a (char *) pointing
>outside the address space that I would get a segfault
>somewhere before getting this error. How would you even
>handle this error, should your code get it?

copyin() is called by the system call code and returns efault after
validating the address, before actually touching it.


More information about the Kernel mailing list