[PATCH 5/8] socket: Add time64 alias for recvmsg

Adhemerval Zanella adhemerval.zanella@linaro.org
Tue Jul 20 19:56:21 GMT 2021


LGTM, thanks.

Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>

On 05/07/2021 10:42, Florian Weimer via Libc-alpha wrote:
> ---
>  socket/sys/socket.h                                   | 11 +++++++++++
>  sysdeps/unix/sysv/linux/Versions                      |  1 +
>  sysdeps/unix/sysv/linux/arm/be/libc.abilist           |  1 +
>  sysdeps/unix/sysv/linux/arm/le/libc.abilist           |  1 +
>  sysdeps/unix/sysv/linux/csky/libc.abilist             |  1 +
>  sysdeps/unix/sysv/linux/hppa/libc.abilist             |  1 +
>  sysdeps/unix/sysv/linux/i386/libc.abilist             |  1 +
>  sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist    |  1 +
>  sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist      |  1 +
>  sysdeps/unix/sysv/linux/microblaze/be/libc.abilist    |  1 +
>  sysdeps/unix/sysv/linux/microblaze/le/libc.abilist    |  1 +
>  sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist  |  1 +
>  .../unix/sysv/linux/mips/mips32/nofpu/libc.abilist    |  1 +
>  sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist  |  1 +
>  sysdeps/unix/sysv/linux/nios2/libc.abilist            |  1 +
>  .../sysv/linux/powerpc/powerpc32/fpu/libc.abilist     |  1 +
>  .../sysv/linux/powerpc/powerpc32/nofpu/libc.abilist   |  1 +
>  sysdeps/unix/sysv/linux/recvmsg.c                     |  3 +++
>  sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist     |  1 +
>  sysdeps/unix/sysv/linux/sh/be/libc.abilist            |  1 +
>  sysdeps/unix/sysv/linux/sh/le/libc.abilist            |  1 +
>  sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist    |  1 +
>  22 files changed, 34 insertions(+)
> 
> diff --git a/socket/sys/socket.h b/socket/sys/socket.h
> index d02d976bb5..b70ba58ba6 100644
> --- a/socket/sys/socket.h
> +++ b/socket/sys/socket.h
> @@ -200,7 +200,18 @@ extern int __sendmmsg64 (int __fd, struct mmsghdr *__vmessages,
>  
>     This function is a cancellation point and therefore not marked with
>     __THROW.  */
> +#ifndef __USE_TIME_BITS64
>  extern ssize_t recvmsg (int __fd, struct msghdr *__message, int __flags);
> +#else
> +# ifdef __REDIRECT
> +extern ssize_t __REDIRECT (recvmsg,
> +			   (int __fd, struct msghdr *__message, int __flags),
> +			   __recvmsg64);
> +# else
> +extern ssize_t __recvmsg64 (int __fd, struct msghdr *__message, int __flags);
> +#  define recvmsg __recvmsg64
> +# endif
> +#endif
>  
>  #ifdef __USE_GNU

Ok.

>  /* Receive up to VLEN messages as described by VMESSAGES from socket FD.
> diff --git a/sysdeps/unix/sysv/linux/Versions b/sysdeps/unix/sysv/linux/Versions
> index 0fc5d59608..cb6fdd0624 100644
> --- a/sysdeps/unix/sysv/linux/Versions
> +++ b/sysdeps/unix/sysv/linux/Versions
> @@ -259,6 +259,7 @@ libc {
>      __pthread_rwlock_timedwrlock64;
>      __pthread_timedjoin_np64;
>      __recvmmsg64;
> +    __recvmsg64;
>      __sched_rr_get_interval64;
>      __select64;
>      __sem_clockwait64;

Ok.

> diff --git a/sysdeps/unix/sysv/linux/arm/be/libc.abilist b/sysdeps/unix/sysv/linux/arm/be/libc.abilist
> index 6654462ff2..8a31fb4daf 100644
> --- a/sysdeps/unix/sysv/linux/arm/be/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/arm/be/libc.abilist
> @@ -262,6 +262,7 @@ GLIBC_2.34 __pthread_unregister_cancel F
>  GLIBC_2.34 __pthread_unregister_cancel_restore F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 __recvmmsg64 F
> +GLIBC_2.34 __recvmsg64 F
>  GLIBC_2.34 __sched_rr_get_interval64 F
>  GLIBC_2.34 __select64 F
>  GLIBC_2.34 __sem_clockwait64 F
> diff --git a/sysdeps/unix/sysv/linux/arm/le/libc.abilist b/sysdeps/unix/sysv/linux/arm/le/libc.abilist
> index e4f66ebad8..19e1339ad6 100644
> --- a/sysdeps/unix/sysv/linux/arm/le/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/arm/le/libc.abilist
> @@ -259,6 +259,7 @@ GLIBC_2.34 __pthread_unregister_cancel F
>  GLIBC_2.34 __pthread_unregister_cancel_restore F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 __recvmmsg64 F
> +GLIBC_2.34 __recvmsg64 F
>  GLIBC_2.34 __sched_rr_get_interval64 F
>  GLIBC_2.34 __select64 F
>  GLIBC_2.34 __sem_clockwait64 F
> diff --git a/sysdeps/unix/sysv/linux/csky/libc.abilist b/sysdeps/unix/sysv/linux/csky/libc.abilist
> index b145b90667..0b3c41a4a7 100644
> --- a/sysdeps/unix/sysv/linux/csky/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/csky/libc.abilist
> @@ -2394,6 +2394,7 @@ GLIBC_2.34 __pthread_unregister_cancel F
>  GLIBC_2.34 __pthread_unregister_cancel_restore F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 __recvmmsg64 F
> +GLIBC_2.34 __recvmsg64 F
>  GLIBC_2.34 __sched_rr_get_interval64 F
>  GLIBC_2.34 __select64 F
>  GLIBC_2.34 __sem_clockwait64 F
> diff --git a/sysdeps/unix/sysv/linux/hppa/libc.abilist b/sysdeps/unix/sysv/linux/hppa/libc.abilist
> index 2fcd2408ee..cc7a5fd871 100644
> --- a/sysdeps/unix/sysv/linux/hppa/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/hppa/libc.abilist
> @@ -2347,6 +2347,7 @@ GLIBC_2.34 __pthread_unregister_cancel F
>  GLIBC_2.34 __pthread_unregister_cancel_restore F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 __recvmmsg64 F
> +GLIBC_2.34 __recvmsg64 F
>  GLIBC_2.34 __sched_rr_get_interval64 F
>  GLIBC_2.34 __select64 F
>  GLIBC_2.34 __sem_clockwait64 F
> diff --git a/sysdeps/unix/sysv/linux/i386/libc.abilist b/sysdeps/unix/sysv/linux/i386/libc.abilist
> index 9876c4fccc..ab12ec459c 100644
> --- a/sysdeps/unix/sysv/linux/i386/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/i386/libc.abilist
> @@ -2531,6 +2531,7 @@ GLIBC_2.34 __pthread_unregister_cancel F
>  GLIBC_2.34 __pthread_unregister_cancel_restore F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 __recvmmsg64 F
> +GLIBC_2.34 __recvmsg64 F
>  GLIBC_2.34 __sched_rr_get_interval64 F
>  GLIBC_2.34 __select64 F
>  GLIBC_2.34 __sem_clockwait64 F
> diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
> index 1db5f6ac97..149503b582 100644
> --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist
> @@ -263,6 +263,7 @@ GLIBC_2.34 __pthread_unregister_cancel F
>  GLIBC_2.34 __pthread_unregister_cancel_restore F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 __recvmmsg64 F
> +GLIBC_2.34 __recvmsg64 F
>  GLIBC_2.34 __sched_rr_get_interval64 F
>  GLIBC_2.34 __select64 F
>  GLIBC_2.34 __sem_clockwait64 F
> diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
> index 9ff084727a..3080c5905a 100644
> --- a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist
> @@ -2474,6 +2474,7 @@ GLIBC_2.34 __pthread_unregister_cancel F
>  GLIBC_2.34 __pthread_unregister_cancel_restore F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 __recvmmsg64 F
> +GLIBC_2.34 __recvmsg64 F
>  GLIBC_2.34 __sched_rr_get_interval64 F
>  GLIBC_2.34 __select64 F
>  GLIBC_2.34 __sem_clockwait64 F
> diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
> index 9bf0dc86d3..c4f3779806 100644
> --- a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist
> @@ -2445,6 +2445,7 @@ GLIBC_2.34 __pthread_unregister_cancel F
>  GLIBC_2.34 __pthread_unregister_cancel_restore F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 __recvmmsg64 F
> +GLIBC_2.34 __recvmsg64 F
>  GLIBC_2.34 __sched_rr_get_interval64 F
>  GLIBC_2.34 __select64 F
>  GLIBC_2.34 __sem_clockwait64 F
> diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
> index 6eca8d3e65..676a26dd32 100644
> --- a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist
> @@ -2442,6 +2442,7 @@ GLIBC_2.34 __pthread_unregister_cancel F
>  GLIBC_2.34 __pthread_unregister_cancel_restore F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 __recvmmsg64 F
> +GLIBC_2.34 __recvmsg64 F
>  GLIBC_2.34 __sched_rr_get_interval64 F
>  GLIBC_2.34 __select64 F
>  GLIBC_2.34 __sem_clockwait64 F
> diff --git a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
> index 3e10357c37..007b0f181a 100644
> --- a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist
> @@ -2439,6 +2439,7 @@ GLIBC_2.34 __pthread_unregister_cancel F
>  GLIBC_2.34 __pthread_unregister_cancel_restore F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 __recvmmsg64 F
> +GLIBC_2.34 __recvmsg64 F
>  GLIBC_2.34 __sched_rr_get_interval64 F
>  GLIBC_2.34 __select64 F
>  GLIBC_2.34 __sem_clockwait64 F
> diff --git a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
> index 40def98ca7..aa7da8a7dd 100644
> --- a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist
> @@ -2437,6 +2437,7 @@ GLIBC_2.34 __pthread_unregister_cancel F
>  GLIBC_2.34 __pthread_unregister_cancel_restore F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 __recvmmsg64 F
> +GLIBC_2.34 __recvmsg64 F
>  GLIBC_2.34 __sched_rr_get_interval64 F
>  GLIBC_2.34 __select64 F
>  GLIBC_2.34 __sem_clockwait64 F
> diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
> index 21decc1ba4..73e3f01a22 100644
> --- a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
> @@ -2445,6 +2445,7 @@ GLIBC_2.34 __pthread_unregister_cancel F
>  GLIBC_2.34 __pthread_unregister_cancel_restore F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 __recvmmsg64 F
> +GLIBC_2.34 __recvmsg64 F
>  GLIBC_2.34 __sched_rr_get_interval64 F
>  GLIBC_2.34 __select64 F
>  GLIBC_2.34 __sem_clockwait64 F
> diff --git a/sysdeps/unix/sysv/linux/nios2/libc.abilist b/sysdeps/unix/sysv/linux/nios2/libc.abilist
> index c4a1d8f8dd..66fc50179c 100644
> --- a/sysdeps/unix/sysv/linux/nios2/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/nios2/libc.abilist
> @@ -2484,6 +2484,7 @@ GLIBC_2.34 __pthread_unregister_cancel F
>  GLIBC_2.34 __pthread_unregister_cancel_restore F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 __recvmmsg64 F
> +GLIBC_2.34 __recvmsg64 F
>  GLIBC_2.34 __sched_rr_get_interval64 F
>  GLIBC_2.34 __select64 F
>  GLIBC_2.34 __sem_clockwait64 F
> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
> index 3afedd33c3..3a0754ca08 100644
> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist
> @@ -2501,6 +2501,7 @@ GLIBC_2.34 __pthread_unregister_cancel F
>  GLIBC_2.34 __pthread_unregister_cancel_restore F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 __recvmmsg64 F
> +GLIBC_2.34 __recvmsg64 F
>  GLIBC_2.34 __sched_rr_get_interval64 F
>  GLIBC_2.34 __select64 F
>  GLIBC_2.34 __sem_clockwait64 F
> diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
> index 3d0366c7d5..f2a4bc6fb1 100644
> --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist
> @@ -2534,6 +2534,7 @@ GLIBC_2.34 __pthread_unregister_cancel F
>  GLIBC_2.34 __pthread_unregister_cancel_restore F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 __recvmmsg64 F
> +GLIBC_2.34 __recvmsg64 F
>  GLIBC_2.34 __sched_rr_get_interval64 F
>  GLIBC_2.34 __select64 F
>  GLIBC_2.34 __sem_clockwait64 F
> diff --git a/sysdeps/unix/sysv/linux/recvmsg.c b/sysdeps/unix/sysv/linux/recvmsg.c
> index a2a600228b..5d5fa3d851 100644
> --- a/sysdeps/unix/sysv/linux/recvmsg.c
> +++ b/sysdeps/unix/sysv/linux/recvmsg.c
> @@ -43,3 +43,6 @@ __libc_recvmsg (int fd, struct msghdr *msg, int flags)
>  }
>  weak_alias (__libc_recvmsg, recvmsg)
>  weak_alias (__libc_recvmsg, __recvmsg)
> +#if __TIMESIZE != 64
> +weak_alias (__recvmsg, __recvmsg64)
> +#endif

Ok.

> diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
> index 1323f731dd..9f7da52f44 100644
> --- a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
> @@ -2499,6 +2499,7 @@ GLIBC_2.34 __pthread_unregister_cancel F
>  GLIBC_2.34 __pthread_unregister_cancel_restore F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 __recvmmsg64 F
> +GLIBC_2.34 __recvmsg64 F
>  GLIBC_2.34 __sched_rr_get_interval64 F
>  GLIBC_2.34 __select64 F
>  GLIBC_2.34 __sem_clockwait64 F
> diff --git a/sysdeps/unix/sysv/linux/sh/be/libc.abilist b/sysdeps/unix/sysv/linux/sh/be/libc.abilist
> index af375af8d1..8e9fb98464 100644
> --- a/sysdeps/unix/sysv/linux/sh/be/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/sh/be/libc.abilist
> @@ -2354,6 +2354,7 @@ GLIBC_2.34 __pthread_unregister_cancel F
>  GLIBC_2.34 __pthread_unregister_cancel_restore F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 __recvmmsg64 F
> +GLIBC_2.34 __recvmsg64 F
>  GLIBC_2.34 __sched_rr_get_interval64 F
>  GLIBC_2.34 __select64 F
>  GLIBC_2.34 __sem_clockwait64 F
> diff --git a/sysdeps/unix/sysv/linux/sh/le/libc.abilist b/sysdeps/unix/sysv/linux/sh/le/libc.abilist
> index e151761455..61b023f584 100644
> --- a/sysdeps/unix/sysv/linux/sh/le/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/sh/le/libc.abilist
> @@ -2351,6 +2351,7 @@ GLIBC_2.34 __pthread_unregister_cancel F
>  GLIBC_2.34 __pthread_unregister_cancel_restore F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 __recvmmsg64 F
> +GLIBC_2.34 __recvmsg64 F
>  GLIBC_2.34 __sched_rr_get_interval64 F
>  GLIBC_2.34 __select64 F
>  GLIBC_2.34 __sem_clockwait64 F
> diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
> index ca186834b4..ba3c659c88 100644
> --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
> +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
> @@ -2494,6 +2494,7 @@ GLIBC_2.34 __pthread_unregister_cancel F
>  GLIBC_2.34 __pthread_unregister_cancel_restore F
>  GLIBC_2.34 __pthread_unwind_next F
>  GLIBC_2.34 __recvmmsg64 F
> +GLIBC_2.34 __recvmsg64 F
>  GLIBC_2.34 __sched_rr_get_interval64 F
>  GLIBC_2.34 __select64 F
>  GLIBC_2.34 __sem_clockwait64 F
> 


More information about the Libc-alpha mailing list