svn commit: r325965 - head/libexec/rtld-elf
Edward Tomasz Napierala
trasz at FreeBSD.org
Sat Nov 18 13:21:23 UTC 2017
Author: trasz
Date: Sat Nov 18 13:21:22 2017
New Revision: 325965
URL: https://svnweb.freebsd.org/changeset/base/325965
Log:
Increase rtld initial memory pool size from 32kB to 128kB.
The old value was probably fine back in 1998, when that code was imported
(although the comments still mention VAX, which was quite obsolete by then);
now, however, it's too small to handle our libc, which results in some
additional calls to munmap/mmap later on. Asking for more virtual address
space is virtually free, and syscalls are not, thus the change.
It was suggested by kib@ that this might be a symptom of a deeper problem.
It doesn't only affect libc, though - the change also improves rtld memory
management for eg KDE libraries. I guess it's just a natural bloat.
MFC after: 2 weeks
Sponsored by: DARPA, AFRL
Differential Revision: https://reviews.freebsd.org/D12834
Modified:
head/libexec/rtld-elf/malloc.c
Modified: head/libexec/rtld-elf/malloc.c
==============================================================================
--- head/libexec/rtld-elf/malloc.c Sat Nov 18 11:58:35 2017 (r325964)
+++ head/libexec/rtld-elf/malloc.c Sat Nov 18 13:21:22 2017 (r325965)
@@ -61,7 +61,7 @@ static int findbucket();
/*
* Pre-allocate mmap'ed pages
*/
-#define NPOOLPAGES (32*1024/pagesz)
+#define NPOOLPAGES (128*1024/pagesz)
static caddr_t pagepool_start, pagepool_end;
static int morepages();
More information about the svn-src-all
mailing list