about summary refs log tree commit diff
path: root/sysdeps/unix/sysv/linux/i386
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2003-08-17 00:37:19 +0000
committerUlrich Drepper <drepper@redhat.com>2003-08-17 00:37:19 +0000
commit137ffcdc6effa6b3a750b1d0c228dae61b96adbc (patch)
treefcccdc24bd598da4d8c6dcf8ceb34abf4d7b6da0 /sysdeps/unix/sysv/linux/i386
parent36a8cf1e48eda7d925454c3882dfc34ff0b887f3 (diff)
downloadglibc-137ffcdc6effa6b3a750b1d0c228dae61b96adbc.tar.gz
glibc-137ffcdc6effa6b3a750b1d0c228dae61b96adbc.tar.xz
glibc-137ffcdc6effa6b3a750b1d0c228dae61b96adbc.zip
Update.
2003-08-16  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_ERRVAL,
	PSEUDO_RET_ERRVAL, ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
	* sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_ERRVAL,
	PSEUDO_RET_ERRVAL, ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
	* sysdeps/unix/alpha/sysdep.h (PSEUDO_ERRVAL,
	ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
	* sysdeps/unix/mips/sysdep.h (PSEUDO_ERRVAL,
	ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
	* sysdeps/unix/sparc/sysdep.h (PSEUDO_ERRVAL,
	ret_ERRVAL): Define.
	* sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO_ERRVAL,
	PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
	* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (PSEUDO_ERRVAL,
	PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
	* sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h (PSEUDO_ERRVAL):
	Define.
	* sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PSEUDO_ERRVAL,
	PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
	* sysdeps/unix/sysdep.h (PSEUDO_END_ERRVAL): Define.

	* sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64,
	posix_fadvise64_64): Remove.
	* sysdeps/unix/sysv/linux/alpha/syscalls.list (posix_fadvise64): Add
	V flag.
	* sysdeps/unix/sysv/linux/ia64/syscalls.list (posix_fadvise64):
	Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list
	(posix_fadvise64): Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list
	(posix_fadvise64): Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list
	(posix_fadvise64): Likewise.
	* sysdeps/unix/sysv/linux/x86_64/syscalls.list (posix_fadvise64):
	Likewise.
	* sysdeps/unix/sysv/linux/i386/posix_fadvise64_64.S: Moved to...
	* sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: ...here.
	(__posix_fadvise64_l64): Fix a typo in fadvise64 syscall invocation.
	(__posix_fadvise64_l32): New function.
	* sysdeps/unix/sysv/linux/i386/Makefile: Revert last change.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions (libc): Export
	posix_fadvise64@@GLIBC_2.3.3.
	* sysdeps/unix/sysv/linux/s390/s390-32/Versions (libc): Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/Versions (libc): Likewise.
	* sysdeps/unix/sysv/linux/posix_fadvise.c (posix_fadvise): Return
	error value.
	* sysdeps/unix/sysv/linux/posix_fadvise64.c: New file.

	* sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
	(SYSCALL_ERROR_HANDLER): Use TLS errno/__libc_errno if USE___THREAD.

2003-08-15  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/sparc/sparc32/dl-machine.h (WEAKADDR): Remove.
	(elf_machine_matches_host): Remove weak extern stuff.
	Use GL(dl_hwcap) unconditionally and GL(dl_hwcap_mask) if SHARED.
	(elf_machine_runtime_setup, sparc_fixup_plt): Remove weak extern
	stuff.  Use GL(dl_hwcap) unconditionally.
Diffstat (limited to 'sysdeps/unix/sysv/linux/i386')
-rw-r--r--sysdeps/unix/sysv/linux/i386/Makefile4
-rw-r--r--sysdeps/unix/sysv/linux/i386/posix_fadvise64.S (renamed from sysdeps/unix/sysv/linux/i386/posix_fadvise64_64.S)16
2 files changed, 14 insertions, 6 deletions
diff --git a/sysdeps/unix/sysv/linux/i386/Makefile b/sysdeps/unix/sysv/linux/i386/Makefile
index 6aa5ce30ad..1ae69407ff 100644
--- a/sysdeps/unix/sysv/linux/i386/Makefile
+++ b/sysdeps/unix/sysv/linux/i386/Makefile
@@ -12,7 +12,3 @@ endif
 ifeq ($(subdir),resource)
 sysdep_routines += oldgetrlimit64
 endif
-
-ifeq ($(subdir),io)
-sysdep_routines += posix_fadvise64_64
-endif
diff --git a/sysdeps/unix/sysv/linux/i386/posix_fadvise64_64.S b/sysdeps/unix/sysv/linux/i386/posix_fadvise64.S
index c1ee9b99dd..8d7219f12b 100644
--- a/sysdeps/unix/sysv/linux/i386/posix_fadvise64_64.S
+++ b/sysdeps/unix/sysv/linux/i386/posix_fadvise64.S
@@ -93,7 +93,7 @@ ENTRY (BP_SYM (__posix_fadvise64_l64))
 	movl	LENLO(%esp), %esi
 	movl	FLAGS(%esp), %edi
 
-	movl	$SYS_ify(fadvise64_64), %eax
+	movl	$SYS_ify(fadvise64), %eax
 	ENTER_KERNEL
 
 	/* Restore registers.  */
@@ -115,6 +115,18 @@ L(overflow):
 	ret
 #endif
 
-PSEUDO_END_NOERRNO (BP_SYM (__posix_fadvise64_l64))
+END (BP_SYM (__posix_fadvise64_l64))
+
+#ifdef __NR_fadvise64
+PSEUDO_ERRVAL (__posix_fadvise64_l32, posix_fadvise64, 5)
+	ret
+PSEUDO_END_ERRVAL (__posix_fadvise64_l32)
+#else
+ENTRY (BP_SYM (__posix_fadvise64_l32))
+	movl	$ENOSYS, %eax
+	ret
+END (BP_SYM (__posix_fadvise64_l32))
+#endif
 
 default_symbol_version (__posix_fadvise64_l64, posix_fadvise64, GLIBC_2.3.3)
+symbol_version (__posix_fadvise64_l32, posix_fadvise64, GLIBC_2.2)