aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux/writev.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/unix/sysv/linux/writev.c')
-rw-r--r--sysdeps/unix/sysv/linux/writev.c24
1 files changed, 1 insertions, 23 deletions
diff --git a/sysdeps/unix/sysv/linux/writev.c b/sysdeps/unix/sysv/linux/writev.c
index 06c4c9c192..f19221f529 100644
--- a/sysdeps/unix/sysv/linux/writev.c
+++ b/sysdeps/unix/sysv/linux/writev.c
@@ -23,19 +23,9 @@
#include <sysdep-cancel.h>
#include <sys/syscall.h>
-#include <kernel-features.h>
-#ifndef __ASSUME_COMPLETE_READV_WRITEV
-static ssize_t __atomic_writev_replacement (int, const struct iovec *,
- int) internal_function;
-#endif
-
-
-/* Not all versions of the kernel support the large number of records. */
-#ifndef UIO_FASTIOV
-# define UIO_FASTIOV 8 /* 8 is a safe number. */
-#endif
+/* Consider moving to syscalls.list. */
ssize_t
__libc_writev (fd, vector, count)
@@ -56,19 +46,7 @@ __libc_writev (fd, vector, count)
LIBC_CANCEL_RESET (oldtype);
}
-#ifdef __ASSUME_COMPLETE_READV_WRITEV
return result;
-#else
- if (result >= 0 || errno != EINVAL || count <= UIO_FASTIOV)
- return result;
-
- return __atomic_writev_replacement (fd, vector, count);
-#endif
}
strong_alias (__libc_writev, __writev)
weak_alias (__libc_writev, writev)
-
-#ifndef __ASSUME_COMPLETE_READV_WRITEV
-# define __libc_writev static internal_function __atomic_writev_replacement
-# include <sysdeps/posix/writev.c>
-#endif