On Mon, 05 Jul 2021 15:42:13 +0200 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 > Ok. > #ifdef __USE_GNU > /* 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; > 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 > 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 Reviewed-by: Lukasz Majewski Best regards, Lukasz Majewski -- DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email: lukma@denx.de