On Monday 20 September 2010 23:37:28 Chris Robinson wrote:
On Monday, September 20, 2010 2:20:00 pm Tijl Coosemans wrote:
I've attached a patch that takes a different approach. I still need to test it more extensively, but is this patch acceptable in principle?
It adds an mmap symbol to the loader thereby overriding the libc symbol.
I've actually been working on a patch recently that does this, and will probably be RFC'ing it here soon. It overrides the mmap/munmap calls and redirects them to use the process heap when possible. You have to be careful, though, because 'mmap' uses off_t. On 32-bit systems this is by default a 32-bit type, but with _FILE_OFFSET_BITS=64, off_t becomes a 64-bit type and mmap is redirected to mmap64.
On FreeBSD off_t is always 64 bit.