aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>1998-06-27 15:18:16 +0000
committerRichard Henderson <rth@redhat.com>1998-06-27 15:18:16 +0000
commit549046b742aa29475e083025ed45f4b2a3f45996 (patch)
tree249fd4a8bfe380aad4fcdfe370a81f4bda9a2e52
parentb7e6f7bf5794c24be2688c6cde00c4bc32424005 (diff)
downloadglibc-549046b742aa29475e083025ed45f4b2a3f45996.tar
glibc-549046b742aa29475e083025ed45f4b2a3f45996.tar.gz
glibc-549046b742aa29475e083025ed45f4b2a3f45996.tar.bz2
glibc-549046b742aa29475e083025ed45f4b2a3f45996.zip
Update.
1998-06-27 David S. Miller <davem@pierdol.cobaltmicro.com> * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_matches_host): Cleanup weak_extern usage for _dl_hwcap and _dl_hwcap_mask. (elf_machine_fixup_plt): Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c: When _dl_pagesize not set, use system call to always get correct answer. * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list (__syscall_getpagesize): Add
-rw-r--r--ChangeLog10
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c8
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list1
3 files changed, 16 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index ee88fccdcb..5708db8bd2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+1998-06-27 David S. Miller <davem@pierdol.cobaltmicro.com>
+
+ * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_matches_host):
+ Cleanup weak_extern usage for _dl_hwcap and _dl_hwcap_mask.
+ (elf_machine_fixup_plt): Likewise.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c: When
+ _dl_pagesize not set, use system call to always get correct answer.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
+ (__syscall_getpagesize): Add
+
1998-06-27 Ulrich Drepper <drepper@cygnus.com>
* resolv/res_send.c (res_send): Fix typo.
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c b/sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c
index e04e926644..6d44be7821 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c
@@ -24,15 +24,17 @@
/* If we are not a static program, this value is collected from the system
via the AT_PAGESZ auxiliary argument. If we are a static program, we
- have to guess. We should _really_ get Linux a proper sysconf()... */
+ use the getpagesize system call. */
-extern size_t _dl_pagesize;
+size_t _dl_pagesize;
+
+extern size_t __syscall_getpagesize(void);
int
__getpagesize ()
{
if (_dl_pagesize == 0)
- _dl_pagesize = EXEC_PAGESIZE;
+ _dl_pagesize = __syscall_getpagesize();
return _dl_pagesize;
}
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list b/sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
index 9a3e4d0e58..14c4691896 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
@@ -3,3 +3,4 @@
s_getgroups getgroups getgroups 2 __syscall_getgroups
s_llseek llseek _llseek 5 __sys_llseek
s_setgroups setgroups setgroups 2 __syscall_setgroups
+s_getpagesize getpagesize getpagesize 0 __syscall_getpagesize