diff options
author | Ulrich Drepper <drepper@redhat.com> | 2009-04-03 17:23:13 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2009-04-03 17:23:13 +0000 |
commit | 2dbe6afe7c13af9790f2d37d3be3c8fa3262bd27 (patch) | |
tree | 6080f12475eef12e39f1df2cfd6be163fa5c82db /sysdeps/unix/sysv/linux/kernel-features.h | |
parent | a065c0076a1b76b9eb375ae051176e9bf518816a (diff) | |
download | glibc-2dbe6afe7c13af9790f2d37d3be3c8fa3262bd27.tar glibc-2dbe6afe7c13af9790f2d37d3be3c8fa3262bd27.tar.gz glibc-2dbe6afe7c13af9790f2d37d3be3c8fa3262bd27.tar.bz2 glibc-2dbe6afe7c13af9790f2d37d3be3c8fa3262bd27.zip |
* sysdeps/unix/sysv/linux/kernel-features.h: Define
__ASSUME_COMPLETE_READV_WRITEV.
* sysdeps/unix/sysv/linux/readv.c: No need for userlevel fallback
with modern kernels.
* sysdeps/unix/sysv/linux/writev.c: Likewise.
* sysdeps/posix/readv.c: Since read is a cancellation point we have
to free a possible malloced buffer in case of cancellation.
* sysdeps/posix/writev.c: Likewise for write.
c2009-04-01 Ulrich Drepper <drepper@redhat.com>
Diffstat (limited to 'sysdeps/unix/sysv/linux/kernel-features.h')
-rw-r--r-- | sysdeps/unix/sysv/linux/kernel-features.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/sysdeps/unix/sysv/linux/kernel-features.h b/sysdeps/unix/sysv/linux/kernel-features.h index 29afe27711..9053df1789 100644 --- a/sysdeps/unix/sysv/linux/kernel-features.h +++ b/sysdeps/unix/sysv/linux/kernel-features.h @@ -462,6 +462,13 @@ # define __ASSUME_SET_ROBUST_LIST 1 #endif +/* Pessimistically assume that 2.6.18 introduced real handling of + large numbers of requests to readv and writev and that we don't + need a fallback. It likely worked for much longer. */ +#if __LINUX_KERNEL_VERSION >= 0x020612 +# define __ASSUME_COMPLETE_READV_WRITEV 1 +#endif + /* Support for PI futexes was added in 2.6.18. */ #if __LINUX_KERNEL_VERSION >= 0x020612 # define __ASSUME_FUTEX_LOCK_PI 1 |