2003-08-15 Ulrich Drepper <drepper@redhat.com>
- * io/Versions [GLIBC_2.3.3]: Add posix_fadvise64.
* io/fcntl.h (posix_fadvise64): Change type of third parameter to
off_t.
* sysdeps/unix/sysv/linux/posix_fadvise.c: Adjust definition.
* sysdeps/unix/make-syscalls.sh: Recognize V prefix to the parameter
description indicating the error value is returned, not -1.
- * sysdeps/unix/sysv/linux/Makefile [subdir=io] (subdir_routines): Add
- posix_fadvise64_64.
* sysdeps/unix/sysv/linux/kernel-features.h: Add definition of
__ASSUME_FADVISE64_64_SYSCALL.
* sysdeps/unix/sysv/linux/syscalls.list: Don't define madvise and
value returned.
Define posix_fadvise64_64 entry. Add version info to posix_fadvise64
entry.
- * sysdeps/unix/sysv/linux/alpha/syscalls.list: Define
- posix_fadvise64_64 entry. Add version info to posix_fadvise64 entry.
- * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
- * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
* sysdeps/unix/sysv/linux/i386/posix_fadvise.S: New file.
* sysdeps/unix/sysv/linux/i386/sysdep.h: Define PSEUDO_ERRVAL,
PSEUDO_END_ERRVAL, and ret_ERRVAL.
* sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
+ * sysdeps/unix/sysv/linux/i386/Versions [GLIBC_2.3.3]: Add
+ posix_fadvise64.
* posix/Makefile (routines): Add posix_madvise.
* sysdeps/generic/madvise.c: Don't define posix_madvise.
* sysdeps/generic/posix_madvise.c: New file.
* sysdeps/unix/sysv/aix/posix_madvise.c: New file.
+ * sysdeps/unix/sysv/linux/i386/Makefile [subdir=io] (subdir_routines):
+ Add posix_fadvise64_64.
2003-08-15 Jakub Jelinek <jakub@redhat.com>
# l*
lchmod;
}
- GLIBC_2.3.3 {
- posix_fadvise64;
- }
GLIBC_PRIVATE {
# functions which have an additional interface since they are
# cancelable.
/* Advice the system about the expected behaviour of the application with
respect to the file associated with FD. */
# ifndef __USE_FILE_OFFSET64
-extern int posix_fadvise (int __fd, __off_t __offset, off_t __len,
+extern int posix_fadvise (int __fd, __off_t __offset, __off_t __len,
int __advise) __THROW;
# else
# ifdef __REDIRECT
extern int __REDIRECT (posix_fadvise, (int __fd, __off64_t __offset,
- off64_t __len, int __advise) __THROW,
+ __off64_t __len, int __advise) __THROW,
posix_fadvise64);
# else
# define posix_fadvise posix_fadvise64
# endif
# endif
# ifdef __USE_LARGEFILE64
-extern int posix_fadvise64 (int __fd, __off64_t __offset, off64_t __len,
+extern int posix_fadvise64 (int __fd, __off64_t __offset, __off64_t __len,
int __advise) __THROW;
# endif
endif
ifeq ($(subdir),io)
-sysdep_routines += xstatconv posix_fadvise64_64
+sysdep_routines += xstatconv
endif
ifeq ($(subdir),elf)
mmap - mmap b:aniiii __mmap mmap __mmap64 mmap64
llseek EXTRA lseek C:3 __libc_lseek __lseek lseek __libc_lseek64 __llseek llseek __lseek64 lseek64
lseek llseek -
-posix_fadvise64 - fadvise64 4 posix_fadvise64 posix_fadvise@GLIBC_2.2
-posix_fadvise64_64 - fadvise64 4 posix_fadvise64 posix_fadvise@GLIBC_2.3.3
+posix_fadvise64 - fadvise64 4 posix_fadvise64 posix_fadvise
pread - pread64 C:4 __libc_pread __libc_pread64 __pread pread __pread64 pread64
pwrite - pwrite64 C:4 __libc_pwrite __libc_pwrite64 __pwrite pwrite __pwrite64 pwrite64
fstatfs - fstatfs i:ip __fstatfs fstatfs __fstatfs64 fstatfs64
ifeq ($(subdir),resource)
sysdep_routines += oldgetrlimit64
endif
+
+ifeq ($(subdir),io)
+sysdep_routines += posix_fadvise64_64
+endif
# v*
versionsort64;
}
+ GLIBC_2.3.3 {
+ posix_fadvise64;
+ }
GLIBC_PRIVATE {
__modify_ldt;
}
#endif
PSEUDO_END_NOERRNO (BP_SYM (__posix_fadvise64_l64))
+
+default_symbol_version (__posix_fadvise64_l64, posix_fadvise64, GLIBC_2.3.3)
# Whee! 64-bit systems naturally implement llseek.
llseek EXTRA lseek C:3 __libc_lseek __lseek lseek __libc_lseek64 __llseek llseek __lseek64 lseek64
lseek llseek -
-posix_fadvise64 - fadvise64 4 posix_fadvise64 posix_fadvise@GLIBC_2.2
-posix_fadvise64_64 - fadvise64 4 posix_fadvise64 posix_fadvise@GLIBC_2.3.3
+posix_fadvise64 - fadvise64 4 posix_fadvise64 posix_fadvise
pread - pread C:4 __libc_pread __libc_pread64 __pread pread __pread64 pread64
pwrite - pwrite C:4 __libc_pwrite __libc_pwrite64 __pwrite pwrite __pwrite64 pwrite64
fstatfs - fstatfs i:ip __fstatfs fstatfs fstatfs64 __fstatfs64
#define ret br.ret.sptk.few b0
#define ret_NOERRNO ret
+#define ret_ERRVAL ret
#else /* not __ASSEMBLER__ */
mmap - mmap b:aniiii __mmap mmap __mmap64 mmap64
modify_ldt EXTRA modify_ldt i:ipi __modify_ldt modify_ldt
llseek EXTRA lseek Ci:iii __libc_lseek64 __llseek llseek __lseek64 lseek64
-posix_fadvise64 - fadvise64 i:iiii posix_fadvise64 posix_fadvise@GLIBC_2.2.5
-posix_fadvise64_64 - fadvise64_64 i:iiii posix_fadvise64 posix_fadvise@GLIBC_2.3.3
+posix_fadvise64 - fadvise64 i:iiii posix_fadvise64 posix_fadvise
pread - pread Ci:ibni __libc_pread __libc_pread64 __pread pread __pread64 pread64
pwrite - pwrite Ci:ibni __libc_pwrite __libc_pwrite64 __pwrite pwrite __pwrite64 pwrite64
fstatfs - fstatfs i:ip __fstatfs fstatfs __fstatfs64 fstatfs64
#define PSEUDO_END_NOERRNO(name) \
END (name)
+#define ret_NOERRNO ret
+
#undef PSEUDO_ERRVAL
#define PSEUDO_ERRVAL(name, syscall_name, args) \
.text; \
ENTRY (name) \
DO_CALL (syscall_name, args); \
- negl %rax
+ negq %rax
#undef PSEUDO_END_ERRVAL
#define PSEUDO_END_ERRVAL(name) \
END (name)
-#define ret_NOERRNO ret
+#define ret_ERRVAL ret
#ifndef PIC
#define SYSCALL_ERROR_HANDLER /* Nothing here; code in sysdep.S is used. */