diff options
author | Brooks Moses <bmoses@google.com> | 2014-03-13 16:21:31 -0700 |
---|---|---|
committer | Brooks Moses <bmoses@google.com> | 2014-03-13 16:21:31 -0700 |
commit | e2172e072db0e19e942048111881794d8444c174 (patch) | |
tree | 862fba9cbdae5bcd2e5ef0f29a77c874e30af16e | |
parent | 17c46147bc21f7e62dddfee4e03493ec484193b9 (diff) | |
download | glibc-e2172e072db0e19e942048111881794d8444c174.zip glibc-e2172e072db0e19e942048111881794d8444c174.tar.gz glibc-e2172e072db0e19e942048111881794d8444c174.tar.bz2 |
For b/5732800, expose calls from malloc to mmap,munmap, etc. (Forward-ported from cl/42670015)
-rw-r--r-- | README.google | 9 | ||||
-rw-r--r-- | malloc/malloc.c | 9 | ||||
-rw-r--r-- | ports/sysdeps/unix/sysv/linux/aarch64/nptl/localplt.data | 5 | ||||
-rw-r--r-- | sysdeps/generic/localplt.data | 5 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/i386/nptl/localplt.data | 5 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/localplt.data | 5 |
6 files changed, 38 insertions, 0 deletions
diff --git a/README.google b/README.google index ded2578..5ac5b4a 100644 --- a/README.google +++ b/README.google @@ -278,3 +278,12 @@ sysdeps/generic/ldsodefs.h For Google b/8315591, experimental implementation of dlopen_with_offset. Forward-ported from cl/59286541, cl/59438930 (ppluzhnikov, google-local) + +malloc/malloc.c +ports/sysdeps/unix/sysv/linux/aarch64/nptl/localplt.data +sysdeps/generic/localplt.data +sysdeps/unix/sysv/linux/i386/nptl/localplt.data +sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/localplt.data + For b/5732800, expose calls from malloc to mmap, munmap, and sbrk. + Forward ported from cl/42670015, with changes. + (ppluzhnikov, google-local) diff --git a/malloc/malloc.c b/malloc/malloc.c index 813e94e..b9335ea 100644 --- a/malloc/malloc.c +++ b/malloc/malloc.c @@ -398,8 +398,17 @@ __malloc_assert (const char *assertion, const char *file, unsigned int line, /* Definition for getting more memory from the OS. */ +#if 0 /* Google-local: b/5732800: make calls go through PLT instead. */ #define MORECORE (*__morecore) #define MORECORE_FAILURE 0 +#else +#define __mmap mmap +#define __munmap munmap +#define __mremap mremap +#define __mprotect mprotect +#define MORECORE sbrk +#define MORECORE_FAILURE -1 +#endif void * __default_morecore (ptrdiff_t); void *(*__morecore)(ptrdiff_t) = __default_morecore; diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/localplt.data b/ports/sysdeps/unix/sysv/linux/aarch64/nptl/localplt.data index 84af95d..396cce2 100644 --- a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/localplt.data +++ b/ports/sysdeps/unix/sysv/linux/aarch64/nptl/localplt.data @@ -5,7 +5,12 @@ libc.so: calloc libc.so: free libc.so: malloc libc.so: memalign +libc.so: mmap +libc.so: mprotect +libc.so: mremap +libc.so: munmap libc.so: realloc +libc.so: sbrk libc.so: __signbit libc.so: __signbitl libm.so: matherr diff --git a/sysdeps/generic/localplt.data b/sysdeps/generic/localplt.data index d296519..5a2be90 100644 --- a/sysdeps/generic/localplt.data +++ b/sysdeps/generic/localplt.data @@ -5,5 +5,10 @@ libc.so: calloc libc.so: free libc.so: malloc libc.so: memalign +libc.so: mmap +libc.so: mprotect +libc.so: mremap +libc.so: munmap libc.so: realloc +libc.so: sbrk libm.so: matherr diff --git a/sysdeps/unix/sysv/linux/i386/nptl/localplt.data b/sysdeps/unix/sysv/linux/i386/nptl/localplt.data index 8fb56b6..6e798b3 100644 --- a/sysdeps/unix/sysv/linux/i386/nptl/localplt.data +++ b/sysdeps/unix/sysv/linux/i386/nptl/localplt.data @@ -3,5 +3,10 @@ libc.so: calloc libc.so: free libc.so: malloc libc.so: memalign +libc.so: mmap +libc.so: mprotect +libc.so: mremap +libc.so: munmap libc.so: realloc +libc.so: sbrk libm.so: matherr diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/localplt.data b/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/localplt.data index 2219aa9..67bf289 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/localplt.data +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/localplt.data @@ -2,5 +2,10 @@ libc.so: calloc libc.so: free libc.so: malloc libc.so: memalign +libc.so: mmap +libc.so: mprotect +libc.so: mremap +libc.so: munmap libc.so: realloc +libc.so: sbrk libm.so: matherr |