valid VMA ranges and mincore()
Bruno Haible
bruno at clisp.org
Wed Jun 14 12:05:48 UTC 2006
Hello Konstantin,
Thanks for reacting on this issue.
> Please, evaluate the patch. If it does what you need
- It doesn't change the manual page mincore.2.
- For unmapped areas, it appears to be filling in values of -1 into
the array. This is not what Linux, Solaris, NetBSD do: They return
-1 from the system call and set errno to ENOMEM. See
Linux: http://linux.about.com/library/cmd/blcmdl2_mincore.htm
Solaris: http://docs.sun.com/app/docs/doc/816-5167/6mbb2jaib?a=view
NetBSD: http://cvsweb.netbsd.org/bsdweb.cgi/src/lib/libc/sys/mincore.2?rev=1.19&content-type=text/plain
- Filling in values of -1 into the array will confuse existing applications,
because -1 is all bits set, i.e. the nonexistent pages will appear to
be in-core, modified, referenced.
- Filling in values of -1 into the array could be done more easily by
changing the statements in sys/vm/vm_mmap.c lines 861 and 902.
Thanks.
Bruno
More information about the freebsd-hackers
mailing list