Using mmap(2) with a hint address

Ganael LAPLANCHE ganael.laplanche at martymac.org
Tue Dec 20 14:31:49 UTC 2011


On Tue, 20 Dec 2011 15:02:01 +0100 (CET), Ganael LAPLANCHE wrote

> But there is still something I don't understand : on the Linux 
> machine where I ran my test program, the current RLIMIT_DATA 
> is set to 0xffffffff/0xffffffff and I can manage to mmap at 
> address 0x20000000. If I set the same limit on FreeBSD, I 
> won't get the mapping at 0x20000000. So, there *is* a 
> difference of behaviour between the two systems, but I don't 
> understand why.

Well, in fact, two things remain not very clear for me :

- Why are mmap()s performed *after* data segment ?
  => It seems they can go within, on GNU/Linux and NetBSD.

- Why do we have such a default value for datasize (8.2, amd64) :

$ limits
Resource limits (current):
  cputime              infinity secs
  filesize             infinity kB
  datasize             33554432 kB

this is HUGE !

--
Ganael LAPLANCHE <ganael.laplanche at martymac.org>
http://www.martymac.org | http://contribs.martymac.org
FreeBSD: martymac <martymac at FreeBSD.org>, http://www.FreeBSD.org


More information about the freebsd-stable mailing list