John Baldwin wrote:
On Monday 13 July 2009 3:33:51 pm Tijl Coosemans wrote:
On Monday 13 July 2009 20:28:08 John Baldwin wrote:
On Sunday 05 July 2009 3:32:25 am Alexander Best wrote:
so mmap differs from the POSIX recommendation right. the malloc.conf
option seems more like a workaround/hack. imo it's confusing to have
mmap und munmap deal differently with len=0. being able to
succesfully alocate memory which cannot be removed doesn't seem
logical to me.
This should fix it:

--- //depot/user/jhb/acpipci/vm/vm_mmap.c
+++ /home/jhb/work/p4/acpipci/vm/vm_mmap.c
@@ -229,7 +229,7 @@

        fp = NULL;
        /* make sure mapping fits into numeric range etc */
-       if ((ssize_t) uap->len < 0 ||
+       if ((ssize_t) uap->len <= 0 ||
            ((flags & MAP_ANON) && uap->fd != -1))
                return (EINVAL);
Why not "uap->len == 0"? Sizes of 2GiB and more (32bit) shouldn't cause
an error.

I don't actually disagree and know of locally modified versions of FreeBSD that remove this check for precisely that reason.


I have no objections to "uap->len == 0" (without the cast).

Alan

_______________________________________________
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"

Reply via email to