This is the mail archive of the
glibc-bugs@sources.redhat.com
mailing list for the glibc project.
[Bug libc/1048] New: MIPS page size support for shared objects dlopen()ed from static ones
- From: "macro at linux-mips dot org" <sourceware-bugzilla at sources dot redhat dot com>
- To: glibc-bugs at sources dot redhat dot com
- Date: 4 Jul 2005 15:35:59 -0000
- Subject: [Bug libc/1048] New: MIPS page size support for shared objects dlopen()ed from static ones
- Reply-to: sourceware-bugzilla at sources dot redhat dot com
Complementing the change to support variable page sizes for MIPS, here is
an update to make getpagesize() work correctly for shared objects pulled by
dlopen() from static executables. As the area used originally for the
auxiliary vector cannot be trusted anymore at this point, the page size is
passed from dlopen() to an auxiliary ld.so initializer explicitly. For this
to work the RELRO segment needs to be updated, which unfortunately requires
a somewhat complicated sequence of steps to turn on write permission
beforehand and turn it off again afterwards.
Here are the necessary changes.
2005-07-04 Maciej W. Rozycki <macro@linux-mips.org>
* elf/dl-reloc.c (_dl_protect_relro): Expect and handle an
additional argument specifying protection mode to use. Update
error messages accordingly.
(_dl_relocate_object): Update the call to _dl_protect_relro().
* elf/rtld.c (dl_main): Likewise.
* sysdeps/generic/ldsodefs.h (_dl_protect_relro): Update the
prototype.
* sysdeps/unix/sysv/linux/mips/dl-static.c: New file to support
variable page size for MIPS.
* sysdeps/unix/sysv/linux/mips/ldsodefs.h: Likewise.
* sysdeps/unix/sysv/linux/mips/Dist: Add dl-static.c.
* sysdeps/unix/sysv/linux/mips/Makefile: Build dl-static in elf.
* sysdeps/unix/sysv/linux/mips/Versions: Add _dl_var_init.
See: "http://sourceware.org/ml/libc-alpha/2003-12/msg00159.html" for an
additional reference.
--
Summary: MIPS page size support for shared objects dlopen()ed
from static ones
Product: glibc
Version: unspecified
Status: NEW
Severity: normal
Priority: P2
Component: libc
AssignedTo: gotom at debian dot or dot jp
ReportedBy: macro at linux-mips dot org
CC: drow at false dot org,glibc-bugs at sources dot redhat
dot com
GCC host triplet: mipsel-unknown-linux-gnu
http://sources.redhat.com/bugzilla/show_bug.cgi?id=1048
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.