diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | elf/dl-load.c | 4 | ||||
-rw-r--r-- | linuxthreads/ChangeLog | 4 | ||||
-rw-r--r-- | linuxthreads/internals.h | 1 |
4 files changed, 13 insertions, 2 deletions
@@ -1,3 +1,9 @@ +2004-12-12 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-load.c (_dl_map_object_from_fd): Fix computation of + mapping start. It must take the actual pagesize into account, not + the alignment in the file. + 2004-12-11 Ulrich Drepper <drepper@redhat.com> * malloc/malloc.c (_int_realloc): Add checks for corrupted memory. diff --git a/elf/dl-load.c b/elf/dl-load.c index ea287cddcc..eb1a7919fb 100644 --- a/elf/dl-load.c +++ b/elf/dl-load.c @@ -987,12 +987,12 @@ _dl_map_object_from_fd (const char *name, int fd, struct filebuf *fbp, } c = &loadcmds[nloadcmds++]; - c->mapstart = ph->p_vaddr & ~(ph->p_align - 1); + c->mapstart = ph->p_vaddr & ~(GLRO(dl_pagesize) - 1); c->mapend = ((ph->p_vaddr + ph->p_filesz + GLRO(dl_pagesize) - 1) & ~(GLRO(dl_pagesize) - 1)); c->dataend = ph->p_vaddr + ph->p_filesz; c->allocend = ph->p_vaddr + ph->p_memsz; - c->mapoff = ph->p_offset & ~(ph->p_align - 1); + c->mapoff = ph->p_offset & ~(GLRO(dl_pagesize) - 1); /* Determine whether there is a gap between the last segment and this one. */ diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog index 261b5db6a2..beaad8c6c5 100644 --- a/linuxthreads/ChangeLog +++ b/linuxthreads/ChangeLog @@ -1,3 +1,7 @@ +2004-12-12 Ulrich Drepper <drepper@redhat.com> + + * internals.h: Include <stdbool.h> to match includes used in nptl. + 2004-12-01 Jakub Jelinek <jakub@redhat.coM. * sysdeps/unix/sysv/linux/bits/posix_opt.h (_POSIX_CPUTIME, diff --git a/linuxthreads/internals.h b/linuxthreads/internals.h index b35a430c69..605021766c 100644 --- a/linuxthreads/internals.h +++ b/linuxthreads/internals.h @@ -21,6 +21,7 @@ #include <limits.h> #include <signal.h> +#include <stdbool.h> #include <unistd.h> #include <stackinfo.h> #include <sigcontextinfo.h> |