MADV_FREE and wait4 EFAULT
RW
rwmaillists at googlemail.com
Tue Apr 16 23:28:34 UTC 2013
On Tue, 16 Apr 2013 14:12:54 -0700
Carl Shapiro wrote:
> I am seeing wait4 system calls failing with an EFAULT and I am trying
> to understand what might be going wrong.
>
> An inspection of the wait4 implementation suggests the opportunity
> for EFAULT is within its invocations of copyout. In my situation,
> the status and rusage pointer arguments contain addresses to mmaped
> pages which have been madvised as MADV_FREE.
>
> Is it permissible to pass pages which have been madvised MADV_FREE to
> wait4 or any other system call for that matter? Might there be
> another opportunity for a wait4 to EFAULT?
IIRC MADV_FREE pages are marked clean and placed on the end of the
inactive queue as "low hanging fruit" for the page daemon. AFAIK they're
no different to any other clean page. Malloc'ed memory pages are
commonly in that state.
More information about the freebsd-hackers
mailing list