mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-28 00:21:52 +03:00
Simplify sendmmsg code.
Now we can assume a kernel with sendmmsg support, this patch simplifies the implementation to be similar to that for accept4: either using socketcall or the syscall according to whether the syscall is known to be available, without further fallback implementations. The __ASSUME_SENDMMSG macro is kept (now defined unconditionally), since it's used in resolv/res_send.c. Tested for x86_64 and x86. * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_SENDMMSG_SYSCALL): Define unconditionally. (__ASSUME_SENDMMSG): Likewise. (__ASSUME_SENDMMSG_SOCKETCALL): Remove macro. * sysdeps/unix/sysv/linux/sendmmsg.c (__sendmmsg): Define using sendmmsg syscall if that can be assumed to be present, socketcall otherwise, with no fallback for runtime failure.
This commit is contained in:
@ -99,13 +99,8 @@
|
||||
|
||||
/* Support for sendmmsg functionality was added in 3.0. The macros
|
||||
defined correspond to those for accept4 and recvmmsg. */
|
||||
#if __LINUX_KERNEL_VERSION >= 0x030000
|
||||
# ifdef __ASSUME_SOCKETCALL
|
||||
# define __ASSUME_SENDMMSG_SOCKETCALL 1
|
||||
# endif
|
||||
# define __ASSUME_SENDMMSG_SYSCALL 1
|
||||
# define __ASSUME_SENDMMSG 1
|
||||
#endif
|
||||
#define __ASSUME_SENDMMSG_SYSCALL 1
|
||||
#define __ASSUME_SENDMMSG 1
|
||||
|
||||
/* On most architectures, most socket syscalls are supported for all
|
||||
supported kernel versions, but on some socketcall architectures
|
||||
|
Reference in New Issue
Block a user