From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-qk1-x72a.google.com (mail-qk1-x72a.google.com [IPv6:2607:f8b0:4864:20::72a]) by sourceware.org (Postfix) with ESMTPS id 9E9B739AD060 for ; Thu, 24 Jun 2021 17:42:06 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 9E9B739AD060 Received: by mail-qk1-x72a.google.com with SMTP id 19so5881730qky.13 for ; Thu, 24 Jun 2021 10:42:06 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=Tnx+A3nKiCUj+WXQNvFA5t2NaOVp9pPpxiq4StbtGvU=; b=AeBo+H5BkyRWmmLjqpBeEhJLSiuNcOVFOMUX8RwSAAgwBxB0lpTn6sNOJg7Jq/uWoD Fr8CK8QKh673ttetOveiXVZUgiGMj0r35xye10WbYjqNN0ay7N0FskTmHCOcBAClyCgz +fwIOic1PDSkU1Cuwg5VpF0bEQvK3V6bkCU+EQWa1guO6lLPpdm5GTbzh5YN2YXiamcv yP+mdOqNgIyrTFvm3zIVCPim34Gz6h2R2FtThjwDVubhR93aXnJfWyw8FozRxxfiHjhd vDfp3S6inLzMj2BBSyeMrStkKSeSJc1U9F9Ywpx/d+jTZJMzF0NuhTE7x5S9NKcuYKAz 5cBg== X-Gm-Message-State: AOAM530dDWw8XquBR6xwhYT3GRDJPO3ZH+V8z+6gkxdjfOJDpM3O1tE+ fWM4jDG4YzwXcwR/VGiwkZKUK5sRzJ6KWQ== X-Google-Smtp-Source: ABdhPJxzb9JJs4S8hnq7mPgpW1oj/uHpExRm6k9P1U1jdelkC1lOvvOawD0Q81lvYtG6CpQezKuYhg== X-Received: by 2002:a37:2783:: with SMTP id n125mr1408954qkn.58.1624556525985; Thu, 24 Jun 2021 10:42:05 -0700 (PDT) Received: from [192.168.1.108] ([177.194.59.218]) by smtp.gmail.com with ESMTPSA id w2sm2943646qkf.88.2021.06.24.10.42.04 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 24 Jun 2021 10:42:05 -0700 (PDT) Subject: Re: [PATCH 33/34] Linux: Move timer_settime, __timer_settime64 from librt to libc To: Florian Weimer , libc-alpha@sourceware.org References: <4b9505e130a2d1f740c39b5de849aa5a79372a8c.1623956058.git.fweimer@redhat.com> From: Adhemerval Zanella Message-ID: <8f31c420-6cf4-743d-6623-3517c3ab245c@linaro.org> Date: Thu, 24 Jun 2021 14:42:02 -0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0 MIME-Version: 1.0 In-Reply-To: <4b9505e130a2d1f740c39b5de849aa5a79372a8c.1623956058.git.fweimer@redhat.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-12.3 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, KAM_SHORT, NICE_REPLY_A, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Jun 2021 17:42:13 -0000 On 17/06/2021 15:59, Florian Weimer via Libc-alpha wrote: > The symbols were moved using scripts/move-symbol-to-libc.py. > > The way the ABI intransition is implemented is changed with this > commit: the implementation is now consolidated in one file with a > TIMER_T_WAS_INT_COMPAT check. > > The shared librt is now empty, so this commit adds a placeholder > symbol at the base version, GLIBC_2.2, and potentially at the > GLIBC_2.3.3 version as well (the leftover from the int/timer_t ABI > transition). LGTM, thanks. Reviewed-by: Adhemerval Zanella > --- > include/time.h | 6 +- > rt/Makefile | 2 +- > rt/Versions | 8 +- > rt/librt-compat.c | 16 ++-- > sysdeps/unix/sysv/linux/Versions | 20 ++--- > sysdeps/unix/sysv/linux/aarch64/libc.abilist | 2 + > sysdeps/unix/sysv/linux/aarch64/librt.abilist | 2 +- > sysdeps/unix/sysv/linux/alpha/Versions | 4 - > sysdeps/unix/sysv/linux/alpha/libc.abilist | 3 + > sysdeps/unix/sysv/linux/alpha/librt-compat.c | 2 +- > sysdeps/unix/sysv/linux/alpha/librt.abilist | 4 +- > sysdeps/unix/sysv/linux/alpha/timer_settime.c | 1 - > sysdeps/unix/sysv/linux/arc/libc.abilist | 2 + > sysdeps/unix/sysv/linux/arc/librt.abilist | 2 +- > sysdeps/unix/sysv/linux/arm/be/libc.abilist | 3 + > sysdeps/unix/sysv/linux/arm/be/librt.abilist | 3 +- > sysdeps/unix/sysv/linux/arm/le/libc.abilist | 3 + > sysdeps/unix/sysv/linux/arm/le/librt.abilist | 3 +- > sysdeps/unix/sysv/linux/csky/libc.abilist | 3 + > sysdeps/unix/sysv/linux/csky/librt.abilist | 3 +- > sysdeps/unix/sysv/linux/hppa/libc.abilist | 3 + > sysdeps/unix/sysv/linux/hppa/librt.abilist | 3 +- > sysdeps/unix/sysv/linux/i386/libc.abilist | 3 + > sysdeps/unix/sysv/linux/i386/librt.abilist | 3 +- > sysdeps/unix/sysv/linux/ia64/Versions | 6 -- > sysdeps/unix/sysv/linux/ia64/libc.abilist | 3 + > sysdeps/unix/sysv/linux/ia64/librt.abilist | 4 +- > sysdeps/unix/sysv/linux/ia64/timer_settime.c | 1 - > sysdeps/unix/sysv/linux/librt-compat.c | 26 +++++++ > .../sysv/linux/m68k/coldfire/libc.abilist | 3 + > .../sysv/linux/m68k/coldfire/librt.abilist | 3 +- > .../unix/sysv/linux/m68k/m680x0/libc.abilist | 3 + > .../unix/sysv/linux/m68k/m680x0/librt.abilist | 3 +- > .../sysv/linux/microblaze/be/libc.abilist | 3 + > .../sysv/linux/microblaze/be/librt.abilist | 3 +- > .../sysv/linux/microblaze/le/libc.abilist | 3 + > .../sysv/linux/microblaze/le/librt.abilist | 3 +- > .../sysv/linux/mips/mips32/fpu/libc.abilist | 3 + > .../unix/sysv/linux/mips/mips32/librt.abilist | 3 +- > .../sysv/linux/mips/mips32/nofpu/libc.abilist | 3 + > .../sysv/linux/mips/mips64/n32/libc.abilist | 3 + > .../sysv/linux/mips/mips64/n32/librt.abilist | 3 +- > .../sysv/linux/mips/mips64/n64/libc.abilist | 2 + > .../sysv/linux/mips/mips64/n64/librt.abilist | 2 +- > sysdeps/unix/sysv/linux/nios2/libc.abilist | 3 + > sysdeps/unix/sysv/linux/nios2/librt.abilist | 3 +- > .../linux/powerpc/powerpc32/fpu/libc.abilist | 3 + > .../linux/powerpc/powerpc32/librt.abilist | 3 +- > .../powerpc/powerpc32/nofpu/libc.abilist | 3 + > .../sysv/linux/powerpc/powerpc64/Versions | 7 -- > .../linux/powerpc/powerpc64/be/libc.abilist | 3 + > .../linux/powerpc/powerpc64/be/librt.abilist | 4 +- > .../linux/powerpc/powerpc64/le/libc.abilist | 2 + > .../linux/powerpc/powerpc64/le/librt.abilist | 2 +- > .../linux/powerpc/powerpc64/timer_settime.c | 1 - > .../unix/sysv/linux/riscv/rv32/libc.abilist | 2 + > .../unix/sysv/linux/riscv/rv32/librt.abilist | 2 +- > .../unix/sysv/linux/riscv/rv64/libc.abilist | 2 + > .../unix/sysv/linux/riscv/rv64/librt.abilist | 2 +- > .../unix/sysv/linux/s390/s390-32/libc.abilist | 3 + > .../sysv/linux/s390/s390-32/librt.abilist | 3 +- > sysdeps/unix/sysv/linux/s390/s390-64/Versions | 7 -- > .../unix/sysv/linux/s390/s390-64/libc.abilist | 3 + > .../sysv/linux/s390/s390-64/librt.abilist | 4 +- > .../sysv/linux/s390/s390-64/timer_settime.c | 1 - > sysdeps/unix/sysv/linux/sh/be/libc.abilist | 3 + > sysdeps/unix/sysv/linux/sh/be/librt.abilist | 3 +- > sysdeps/unix/sysv/linux/sh/le/libc.abilist | 3 + > sysdeps/unix/sysv/linux/sh/le/librt.abilist | 3 +- > sysdeps/unix/sysv/linux/sparc/librt-compat.c | 2 +- > .../sysv/linux/sparc/sparc32/libc.abilist | 3 + > .../sysv/linux/sparc/sparc32/librt.abilist | 3 +- > .../unix/sysv/linux/sparc/sparc64/Versions | 7 -- > .../sysv/linux/sparc/sparc64/libc.abilist | 3 + > .../sysv/linux/sparc/sparc64/librt.abilist | 4 +- > .../sysv/linux/sparc/sparc64/timer_settime.c | 1 - > sysdeps/unix/sysv/linux/timer_settime.c | 73 +++++++++++++++---- > .../unix/sysv/linux/x86_64/64/libc.abilist | 3 + > .../unix/sysv/linux/x86_64/64/librt.abilist | 4 +- > sysdeps/unix/sysv/linux/x86_64/Versions | 7 -- > sysdeps/unix/sysv/linux/x86_64/compat-timer.h | 37 ---------- > .../unix/sysv/linux/x86_64/timer_settime.c | 44 ----------- > .../unix/sysv/linux/x86_64/x32/libc.abilist | 2 + > .../unix/sysv/linux/x86_64/x32/librt.abilist | 2 +- > 84 files changed, 245 insertions(+), 212 deletions(-) > delete mode 100644 sysdeps/unix/sysv/linux/alpha/timer_settime.c > delete mode 100644 sysdeps/unix/sysv/linux/ia64/timer_settime.c > create mode 100644 sysdeps/unix/sysv/linux/librt-compat.c > delete mode 100644 sysdeps/unix/sysv/linux/powerpc/powerpc64/timer_settime.c > delete mode 100644 sysdeps/unix/sysv/linux/s390/s390-64/timer_settime.c > delete mode 100644 sysdeps/unix/sysv/linux/sparc/sparc64/timer_settime.c > delete mode 100644 sysdeps/unix/sysv/linux/x86_64/compat-timer.h > delete mode 100644 sysdeps/unix/sysv/linux/x86_64/timer_settime.c > > diff --git a/include/time.h b/include/time.h > index 3f4ff44ac3..22b29ca583 100644 > --- a/include/time.h > +++ b/include/time.h > @@ -236,7 +236,11 @@ extern int __timer_settime64 (timer_t timerid, int flags, > extern int __timerfd_settime64 (int fd, int flags, > const struct __itimerspec64 *value, > struct __itimerspec64 *ovalue); > -librt_hidden_proto (__timer_settime64); > +# if PTHREAD_IN_LIBC > +libc_hidden_proto (__timer_settime64) > +#else > +librt_hidden_proto (__timer_settime64) > +#endif > libc_hidden_proto (__timerfd_settime64); > #endif > Ok. > diff --git a/rt/Makefile b/rt/Makefile > index e2ef5f4b0b..c1e989ede8 100644 > --- a/rt/Makefile > +++ b/rt/Makefile > @@ -30,7 +30,6 @@ routines = \ > > librt-routines = \ > librt-compat \ > - timer_settime \ > > librt-shared-only-routines = librt-compat > > @@ -63,6 +62,7 @@ $(librt-routines-var) += \ > timer_delete \ > timer_getoverr \ > timer_gettime \ > + timer_settime \ > > tests := tst-shm tst-timer tst-timer2 \ > tst-aio tst-aio64 tst-aio2 tst-aio3 tst-aio4 tst-aio5 tst-aio6 \ Ok. > diff --git a/rt/Versions b/rt/Versions > index d1f05af013..7e41beae06 100644 > --- a/rt/Versions > +++ b/rt/Versions > @@ -26,6 +26,7 @@ libc { > timer_delete; > timer_getoverrun; > timer_gettime; > + timer_settime; > %endif > shm_open; > shm_unlink; > @@ -89,6 +90,7 @@ libc { > timer_delete; > timer_getoverrun; > timer_gettime; > + timer_settime; > %endif > shm_open; > shm_unlink; > @@ -132,13 +134,15 @@ librt { > %endif > } > GLIBC_2.2 { > -%if !PTHREAD_IN_LIBC > +%if PTHREAD_IN_LIBC > + __librt_version_placeholder; > +%else > timer_create; > timer_delete; > timer_getoverrun; > timer_gettime; > -%endif > timer_settime; > +%endif > } > GLIBC_2.3.4 { > %if PTHREAD_IN_LIBC Ok. > diff --git a/rt/librt-compat.c b/rt/librt-compat.c > index 24c2ed9db4..84f50c82a9 100644 > --- a/rt/librt-compat.c > +++ b/rt/librt-compat.c > @@ -20,6 +20,7 @@ > # include > # include > > +# if SHLIB_COMPAT (librt, GLIBC_2_1, GLIBC_2_34) > void > attribute_compat_text_section > __attribute_used__ > @@ -27,25 +28,26 @@ __librt_version_placeholder_1 (void) > { > } > > -# if SHLIB_COMPAT (librt, GLIBC_2_1, GLIBC_2_2) > compat_symbol (librt, __librt_version_placeholder_1, > __librt_version_placeholder, GLIBC_2_1); > # endif > > -# if SHLIB_COMPAT (librt, GLIBC_2_4, GLIBC_2_34) \ > - && ABI_librt_GLIBC_2_3_4 != ABI_librt_GLIBC_2_1 > +# if SHLIB_COMPAT (librt, GLIBC_2_2, GLIBC_2_34) > +compat_symbol (librt, __librt_version_placeholder_1, > + __librt_version_placeholder, GLIBC_2_2); > +# endif > + > +# if SHLIB_COMPAT (librt, GLIBC_2_3_4, GLIBC_2_34) > compat_symbol (librt, __librt_version_placeholder_1, > __librt_version_placeholder, GLIBC_2_3_4); > # endif > > -# if SHLIB_COMPAT (librt, GLIBC_2_4, GLIBC_2_34) \ > - && ABI_librt_GLIBC_2_4 != ABI_librt_GLIBC_2_1 > +# if SHLIB_COMPAT (librt, GLIBC_2_4, GLIBC_2_34) > compat_symbol (librt, __librt_version_placeholder_1, > __librt_version_placeholder, GLIBC_2_4); > # endif > > -# if SHLIB_COMPAT (librt, GLIBC_2_7, GLIBC_2_34) \ > - && ABI_librt_GLIBC_2_7 != ABI_librt_GLIBC_2_4 > +# if SHLIB_COMPAT (librt, GLIBC_2_7, GLIBC_2_34) > compat_symbol (librt, __librt_version_placeholder_1, > __librt_version_placeholder, GLIBC_2_7); > # endif Ok. > diff --git a/sysdeps/unix/sysv/linux/Versions b/sysdeps/unix/sysv/linux/Versions > index 9bb9d955a5..578d55e7fd 100644 > --- a/sysdeps/unix/sysv/linux/Versions > +++ b/sysdeps/unix/sysv/linux/Versions > @@ -127,6 +127,7 @@ libc { > timer_delete; > timer_getoverrun; > timer_gettime; > + timer_settime; > } > GLIBC_2.3.4 { > sched_getaffinity; sched_setaffinity; > @@ -269,6 +270,7 @@ libc { > __time64; > __timegm64; > __timer_gettime64; > + __timer_settime64; > __timerfd_gettime64; > __timerfd_settime64; > __timespec_get64; > @@ -300,18 +302,18 @@ libc { > } > } > > -ld { > - GLIBC_PRIVATE { > - __nptl_change_stack_perm; > +librt { > + GLIBC_2.3.3 { > + # Leftover from the int -> timer_t transition. For ABIs that came later > + # and do not have the symbol version, this version node is merged with > + # the baseline version. > + __librt_version_placeholder; > } > } > > -librt { > - GLIBC_2.34 { > -%ifdef TIME64_NON_DEFAULT > - # 64-bit time_t support > - __timer_settime64; > -%endif > +ld { > + GLIBC_PRIVATE { > + __nptl_change_stack_perm; > } > } > Ok. > diff --git a/sysdeps/unix/sysv/linux/aarch64/libc.abilist b/sysdeps/unix/sysv/linux/aarch64/libc.abilist > index 23130c3c9e..5ff33f63e3 100644 > --- a/sysdeps/unix/sysv/linux/aarch64/libc.abilist > +++ b/sysdeps/unix/sysv/linux/aarch64/libc.abilist > @@ -2010,6 +2010,7 @@ GLIBC_2.17 timer_create F > GLIBC_2.17 timer_delete F > GLIBC_2.17 timer_getoverrun F > GLIBC_2.17 timer_gettime F > +GLIBC_2.17 timer_settime F > GLIBC_2.17 timerfd_create F > GLIBC_2.17 timerfd_gettime F > GLIBC_2.17 timerfd_settime F > @@ -2537,6 +2538,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/aarch64/librt.abilist b/sysdeps/unix/sysv/linux/aarch64/librt.abilist > index 2cb1369ddb..88d0fc382f 100644 > --- a/sysdeps/unix/sysv/linux/aarch64/librt.abilist > +++ b/sysdeps/unix/sysv/linux/aarch64/librt.abilist > @@ -1 +1 @@ > -GLIBC_2.17 timer_settime F > +GLIBC_2.17 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/alpha/Versions b/sysdeps/unix/sysv/linux/alpha/Versions > index 0359822d6d..87ef61437d 100644 > --- a/sysdeps/unix/sysv/linux/alpha/Versions > +++ b/sysdeps/unix/sysv/linux/alpha/Versions > @@ -102,8 +102,4 @@ librt { > GLIBC_2.3 { > __librt_version_placeholder; > } > - GLIBC_2.3.3 { > - # Changed timer_t. > - timer_settime; > - } > } Ok. > diff --git a/sysdeps/unix/sysv/linux/alpha/libc.abilist b/sysdeps/unix/sysv/linux/alpha/libc.abilist > index 1f2fff3443..503a96b255 100644 > --- a/sysdeps/unix/sysv/linux/alpha/libc.abilist > +++ b/sysdeps/unix/sysv/linux/alpha/libc.abilist > @@ -2097,6 +2097,7 @@ GLIBC_2.2 timer_create F > GLIBC_2.2 timer_delete F > GLIBC_2.2 timer_getoverrun F > GLIBC_2.2 timer_gettime F > +GLIBC_2.2 timer_settime F > GLIBC_2.2 ungetwc F > GLIBC_2.2 vfwprintf F > GLIBC_2.2 vfwscanf F > @@ -2361,6 +2362,7 @@ GLIBC_2.3.3 timer_create F > GLIBC_2.3.3 timer_delete F > GLIBC_2.3.3 timer_getoverrun F > GLIBC_2.3.3 timer_gettime F > +GLIBC_2.3.3 timer_settime F > GLIBC_2.3.4 _OtsAddX F > GLIBC_2.3.4 _OtsConvertFloatTX F > GLIBC_2.3.4 _OtsConvertFloatXT F > @@ -2635,6 +2637,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/alpha/librt-compat.c b/sysdeps/unix/sysv/linux/alpha/librt-compat.c > index 96e92e1637..7c699d3395 100644 > --- a/sysdeps/unix/sysv/linux/alpha/librt-compat.c > +++ b/sysdeps/unix/sysv/linux/alpha/librt-compat.c > @@ -16,7 +16,7 @@ > License along with the GNU C Library; if not, see > . */ > > -#include > +#include > > #if SHLIB_COMPAT (librt, GLIBC_2_3, GLIBC_2_34) > compat_symbol (librt, __librt_version_placeholder_1, Ok. > diff --git a/sysdeps/unix/sysv/linux/alpha/librt.abilist b/sysdeps/unix/sysv/linux/alpha/librt.abilist > index a2de1ecd94..f68e03dfde 100644 > --- a/sysdeps/unix/sysv/linux/alpha/librt.abilist > +++ b/sysdeps/unix/sysv/linux/alpha/librt.abilist > @@ -1,7 +1,7 @@ > GLIBC_2.1 __librt_version_placeholder F > -GLIBC_2.2 timer_settime F > +GLIBC_2.2 __librt_version_placeholder F > GLIBC_2.3 __librt_version_placeholder F > -GLIBC_2.3.3 timer_settime F > +GLIBC_2.3.3 __librt_version_placeholder F > GLIBC_2.3.4 __librt_version_placeholder F > GLIBC_2.4 __librt_version_placeholder F > GLIBC_2.7 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/alpha/timer_settime.c b/sysdeps/unix/sysv/linux/alpha/timer_settime.c > deleted file mode 100644 > index fa231149d5..0000000000 > --- a/sysdeps/unix/sysv/linux/alpha/timer_settime.c > +++ /dev/null > @@ -1 +0,0 @@ > -#include > diff --git a/sysdeps/unix/sysv/linux/arc/libc.abilist b/sysdeps/unix/sysv/linux/arc/libc.abilist > index 8ece5c40fb..e29bd7cd55 100644 > --- a/sysdeps/unix/sysv/linux/arc/libc.abilist > +++ b/sysdeps/unix/sysv/linux/arc/libc.abilist > @@ -1944,6 +1944,7 @@ GLIBC_2.32 timer_create F > GLIBC_2.32 timer_delete F > GLIBC_2.32 timer_getoverrun F > GLIBC_2.32 timer_gettime F > +GLIBC_2.32 timer_settime F > GLIBC_2.32 timerfd_create F > GLIBC_2.32 timerfd_gettime F > GLIBC_2.32 timerfd_settime F > @@ -2296,6 +2297,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/arc/librt.abilist b/sysdeps/unix/sysv/linux/arc/librt.abilist > index 0023244be6..f77591fa3e 100644 > --- a/sysdeps/unix/sysv/linux/arc/librt.abilist > +++ b/sysdeps/unix/sysv/linux/arc/librt.abilist > @@ -1 +1 @@ > -GLIBC_2.32 timer_settime F > +GLIBC_2.32 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/arm/be/libc.abilist b/sysdeps/unix/sysv/linux/arm/be/libc.abilist > index 515c3a224a..ac89f19c0a 100644 > --- a/sysdeps/unix/sysv/linux/arm/be/libc.abilist > +++ b/sysdeps/unix/sysv/linux/arm/be/libc.abilist > @@ -272,6 +272,7 @@ GLIBC_2.34 __thrd_sleep64 F > GLIBC_2.34 __time64 F > GLIBC_2.34 __timegm64 F > GLIBC_2.34 __timer_gettime64 F > +GLIBC_2.34 __timer_settime64 F > GLIBC_2.34 __timerfd_gettime64 F > GLIBC_2.34 __timerfd_settime64 F > GLIBC_2.34 __timespec_get64 F > @@ -439,6 +440,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > @@ -2359,6 +2361,7 @@ GLIBC_2.4 timer_create F > GLIBC_2.4 timer_delete F > GLIBC_2.4 timer_getoverrun F > GLIBC_2.4 timer_gettime F > +GLIBC_2.4 timer_settime F > GLIBC_2.4 times F > GLIBC_2.4 timezone D 0x4 > GLIBC_2.4 tmpfile F > diff --git a/sysdeps/unix/sysv/linux/arm/be/librt.abilist b/sysdeps/unix/sysv/linux/arm/be/librt.abilist > index 2f84162558..0010b34d5c 100644 > --- a/sysdeps/unix/sysv/linux/arm/be/librt.abilist > +++ b/sysdeps/unix/sysv/linux/arm/be/librt.abilist > @@ -1,3 +1,2 @@ > -GLIBC_2.34 __timer_settime64 F > -GLIBC_2.4 timer_settime F > +GLIBC_2.4 __librt_version_placeholder F > GLIBC_2.7 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/arm/le/libc.abilist b/sysdeps/unix/sysv/linux/arm/le/libc.abilist > index 7b7ca7d348..07fce73516 100644 > --- a/sysdeps/unix/sysv/linux/arm/le/libc.abilist > +++ b/sysdeps/unix/sysv/linux/arm/le/libc.abilist > @@ -269,6 +269,7 @@ GLIBC_2.34 __thrd_sleep64 F > GLIBC_2.34 __time64 F > GLIBC_2.34 __timegm64 F > GLIBC_2.34 __timer_gettime64 F > +GLIBC_2.34 __timer_settime64 F > GLIBC_2.34 __timerfd_gettime64 F > GLIBC_2.34 __timerfd_settime64 F > GLIBC_2.34 __timespec_get64 F > @@ -436,6 +437,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > @@ -2356,6 +2358,7 @@ GLIBC_2.4 timer_create F > GLIBC_2.4 timer_delete F > GLIBC_2.4 timer_getoverrun F > GLIBC_2.4 timer_gettime F > +GLIBC_2.4 timer_settime F > GLIBC_2.4 times F > GLIBC_2.4 timezone D 0x4 > GLIBC_2.4 tmpfile F > diff --git a/sysdeps/unix/sysv/linux/arm/le/librt.abilist b/sysdeps/unix/sysv/linux/arm/le/librt.abilist > index 2f84162558..0010b34d5c 100644 > --- a/sysdeps/unix/sysv/linux/arm/le/librt.abilist > +++ b/sysdeps/unix/sysv/linux/arm/le/librt.abilist > @@ -1,3 +1,2 @@ > -GLIBC_2.34 __timer_settime64 F > -GLIBC_2.4 timer_settime F > +GLIBC_2.4 __librt_version_placeholder F > GLIBC_2.7 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/csky/libc.abilist b/sysdeps/unix/sysv/linux/csky/libc.abilist > index d53acb2c08..d06f38eba0 100644 > --- a/sysdeps/unix/sysv/linux/csky/libc.abilist > +++ b/sysdeps/unix/sysv/linux/csky/libc.abilist > @@ -2034,6 +2034,7 @@ GLIBC_2.29 timer_create F > GLIBC_2.29 timer_delete F > GLIBC_2.29 timer_getoverrun F > GLIBC_2.29 timer_gettime F > +GLIBC_2.29 timer_settime F > GLIBC_2.29 timerfd_create F > GLIBC_2.29 timerfd_gettime F > GLIBC_2.29 timerfd_settime F > @@ -2393,6 +2394,7 @@ GLIBC_2.34 __thrd_sleep64 F > GLIBC_2.34 __time64 F > GLIBC_2.34 __timegm64 F > GLIBC_2.34 __timer_gettime64 F > +GLIBC_2.34 __timer_settime64 F > GLIBC_2.34 __timerfd_gettime64 F > GLIBC_2.34 __timerfd_settime64 F > GLIBC_2.34 __timespec_get64 F > @@ -2560,6 +2562,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/csky/librt.abilist b/sysdeps/unix/sysv/linux/csky/librt.abilist > index 52b2819a7d..1a55315b87 100644 > --- a/sysdeps/unix/sysv/linux/csky/librt.abilist > +++ b/sysdeps/unix/sysv/linux/csky/librt.abilist > @@ -1,2 +1 @@ > -GLIBC_2.29 timer_settime F > -GLIBC_2.34 __timer_settime64 F > +GLIBC_2.29 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/hppa/libc.abilist b/sysdeps/unix/sysv/linux/hppa/libc.abilist > index a592e3f628..2f5dfd66ad 100644 > --- a/sysdeps/unix/sysv/linux/hppa/libc.abilist > +++ b/sysdeps/unix/sysv/linux/hppa/libc.abilist > @@ -1748,6 +1748,7 @@ GLIBC_2.2 timer_create F > GLIBC_2.2 timer_delete F > GLIBC_2.2 timer_getoverrun F > GLIBC_2.2 timer_gettime F > +GLIBC_2.2 timer_settime F > GLIBC_2.2 times F > GLIBC_2.2 timezone D 0x4 > GLIBC_2.2 tmpfile F > @@ -2346,6 +2347,7 @@ GLIBC_2.34 __thrd_sleep64 F > GLIBC_2.34 __time64 F > GLIBC_2.34 __timegm64 F > GLIBC_2.34 __timer_gettime64 F > +GLIBC_2.34 __timer_settime64 F > GLIBC_2.34 __timerfd_gettime64 F > GLIBC_2.34 __timerfd_settime64 F > GLIBC_2.34 __timespec_get64 F > @@ -2513,6 +2515,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/hppa/librt.abilist b/sysdeps/unix/sysv/linux/hppa/librt.abilist > index 179d1d53da..6d24ce527d 100644 > --- a/sysdeps/unix/sysv/linux/hppa/librt.abilist > +++ b/sysdeps/unix/sysv/linux/hppa/librt.abilist > @@ -1,6 +1,5 @@ > GLIBC_2.1 __librt_version_placeholder F > -GLIBC_2.2 timer_settime F > +GLIBC_2.2 __librt_version_placeholder F > GLIBC_2.3.4 __librt_version_placeholder F > -GLIBC_2.34 __timer_settime64 F > GLIBC_2.4 __librt_version_placeholder F > GLIBC_2.7 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/i386/libc.abilist b/sysdeps/unix/sysv/linux/i386/libc.abilist > index bd3824cb88..1accf0a9c1 100644 > --- a/sysdeps/unix/sysv/linux/i386/libc.abilist > +++ b/sysdeps/unix/sysv/linux/i386/libc.abilist > @@ -2110,6 +2110,7 @@ GLIBC_2.2 timer_create F > GLIBC_2.2 timer_delete F > GLIBC_2.2 timer_getoverrun F > GLIBC_2.2 timer_gettime F > +GLIBC_2.2 timer_settime F > GLIBC_2.2 ungetwc F > GLIBC_2.2 versionsort64 F > GLIBC_2.2 vfwprintf F > @@ -2530,6 +2531,7 @@ GLIBC_2.34 __thrd_sleep64 F > GLIBC_2.34 __time64 F > GLIBC_2.34 __timegm64 F > GLIBC_2.34 __timer_gettime64 F > +GLIBC_2.34 __timer_settime64 F > GLIBC_2.34 __timerfd_gettime64 F > GLIBC_2.34 __timerfd_settime64 F > GLIBC_2.34 __timespec_get64 F > @@ -2697,6 +2699,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/i386/librt.abilist b/sysdeps/unix/sysv/linux/i386/librt.abilist > index 179d1d53da..6d24ce527d 100644 > --- a/sysdeps/unix/sysv/linux/i386/librt.abilist > +++ b/sysdeps/unix/sysv/linux/i386/librt.abilist > @@ -1,6 +1,5 @@ > GLIBC_2.1 __librt_version_placeholder F > -GLIBC_2.2 timer_settime F > +GLIBC_2.2 __librt_version_placeholder F > GLIBC_2.3.4 __librt_version_placeholder F > -GLIBC_2.34 __timer_settime64 F > GLIBC_2.4 __librt_version_placeholder F > GLIBC_2.7 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/ia64/Versions b/sysdeps/unix/sysv/linux/ia64/Versions > index 9a7faf067a..9900916a6c 100644 > --- a/sysdeps/unix/sysv/linux/ia64/Versions > +++ b/sysdeps/unix/sysv/linux/ia64/Versions > @@ -27,9 +27,3 @@ libc { > recvmsg; sendmsg; > } > } > -librt { > - GLIBC_2.3.3 { > - # Changed timer_t. > - timer_settime; > - } > -} Ok. > diff --git a/sysdeps/unix/sysv/linux/ia64/libc.abilist b/sysdeps/unix/sysv/linux/ia64/libc.abilist > index d589ce16d6..79b4153e63 100644 > --- a/sysdeps/unix/sysv/linux/ia64/libc.abilist > +++ b/sysdeps/unix/sysv/linux/ia64/libc.abilist > @@ -1769,6 +1769,7 @@ GLIBC_2.2 timer_create F > GLIBC_2.2 timer_delete F > GLIBC_2.2 timer_getoverrun F > GLIBC_2.2 timer_gettime F > +GLIBC_2.2 timer_settime F > GLIBC_2.2 times F > GLIBC_2.2 timezone D 0x8 > GLIBC_2.2 tmpfile F > @@ -2226,6 +2227,7 @@ GLIBC_2.3.3 timer_create F > GLIBC_2.3.3 timer_delete F > GLIBC_2.3.3 timer_getoverrun F > GLIBC_2.3.3 timer_gettime F > +GLIBC_2.3.3 timer_settime F > GLIBC_2.3.4 __chk_fail F > GLIBC_2.3.4 __fprintf_chk F > GLIBC_2.3.4 __gets_chk F > @@ -2473,6 +2475,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/ia64/librt.abilist b/sysdeps/unix/sysv/linux/ia64/librt.abilist > index 7d8e91b0d9..ff77c0d32e 100644 > --- a/sysdeps/unix/sysv/linux/ia64/librt.abilist > +++ b/sysdeps/unix/sysv/linux/ia64/librt.abilist > @@ -1,6 +1,6 @@ > GLIBC_2.1 __librt_version_placeholder F > -GLIBC_2.2 timer_settime F > -GLIBC_2.3.3 timer_settime F > +GLIBC_2.2 __librt_version_placeholder F > +GLIBC_2.3.3 __librt_version_placeholder F > GLIBC_2.3.4 __librt_version_placeholder F > GLIBC_2.4 __librt_version_placeholder F > GLIBC_2.7 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/ia64/timer_settime.c b/sysdeps/unix/sysv/linux/ia64/timer_settime.c > deleted file mode 100644 > index fa231149d5..0000000000 > --- a/sysdeps/unix/sysv/linux/ia64/timer_settime.c > +++ /dev/null > @@ -1 +0,0 @@ > -#include Ok. > diff --git a/sysdeps/unix/sysv/linux/librt-compat.c b/sysdeps/unix/sysv/linux/librt-compat.c > new file mode 100644 > index 0000000000..f8b09908a2 > --- /dev/null > +++ b/sysdeps/unix/sysv/linux/librt-compat.c > @@ -0,0 +1,26 @@ > +/* Placeholder definitions to pull in removed symbol versions. Linux version. > + Copyright (C) 2021 Free Software Foundation, Inc. > + This file is part of the GNU C Library. > + > + The GNU C Library is free software; you can redistribute it and/or > + modify it under the terms of the GNU Lesser General Public > + License as published by the Free Software Foundation; either > + version 2.1 of the License, or (at your option) any later version. > + > + The GNU C Library is distributed in the hope that it will be useful, > + but WITHOUT ANY WARRANTY; without even the implied warranty of > + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU > + Lesser General Public License for more details. > + > + You should have received a copy of the GNU Lesser General Public > + License along with the GNU C Library; if not, see > + . */ > + > +#include > +#include > + > +/* GLIBC_2.3.3 symbols were added for the int -> timer_t ABI transition. */ > +#if TIMER_T_WAS_INT_COMPAT > +compat_symbol (librt, __librt_version_placeholder_1, > + __librt_version_placeholder, GLIBC_2_3_3); > +#endif Ok. > diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist > index 7e986dcfd5..ddbaeb3660 100644 > --- a/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist > +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist > @@ -273,6 +273,7 @@ GLIBC_2.34 __thrd_sleep64 F > GLIBC_2.34 __time64 F > GLIBC_2.34 __timegm64 F > GLIBC_2.34 __timer_gettime64 F > +GLIBC_2.34 __timer_settime64 F > GLIBC_2.34 __timerfd_gettime64 F > GLIBC_2.34 __timerfd_settime64 F > GLIBC_2.34 __timespec_get64 F > @@ -440,6 +441,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > @@ -2339,6 +2341,7 @@ GLIBC_2.4 timer_create F > GLIBC_2.4 timer_delete F > GLIBC_2.4 timer_getoverrun F > GLIBC_2.4 timer_gettime F > +GLIBC_2.4 timer_settime F > GLIBC_2.4 times F > GLIBC_2.4 timezone D 0x4 > GLIBC_2.4 tmpfile F > diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/librt.abilist b/sysdeps/unix/sysv/linux/m68k/coldfire/librt.abilist > index 2f84162558..0010b34d5c 100644 > --- a/sysdeps/unix/sysv/linux/m68k/coldfire/librt.abilist > +++ b/sysdeps/unix/sysv/linux/m68k/coldfire/librt.abilist > @@ -1,3 +1,2 @@ > -GLIBC_2.34 __timer_settime64 F > -GLIBC_2.4 timer_settime F > +GLIBC_2.4 __librt_version_placeholder F > GLIBC_2.7 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist > index 97fe827b8d..3295de3102 100644 > --- a/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist > +++ b/sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist > @@ -2066,6 +2066,7 @@ GLIBC_2.2 timer_create F > GLIBC_2.2 timer_delete F > GLIBC_2.2 timer_getoverrun F > GLIBC_2.2 timer_gettime F > +GLIBC_2.2 timer_settime F > GLIBC_2.2 ungetwc F > GLIBC_2.2 versionsort64 F > GLIBC_2.2 vfwprintf F > @@ -2473,6 +2474,7 @@ GLIBC_2.34 __thrd_sleep64 F > GLIBC_2.34 __time64 F > GLIBC_2.34 __timegm64 F > GLIBC_2.34 __timer_gettime64 F > +GLIBC_2.34 __timer_settime64 F > GLIBC_2.34 __timerfd_gettime64 F > GLIBC_2.34 __timerfd_settime64 F > GLIBC_2.34 __timespec_get64 F > @@ -2640,6 +2642,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/m68k/m680x0/librt.abilist b/sysdeps/unix/sysv/linux/m68k/m680x0/librt.abilist > index 179d1d53da..6d24ce527d 100644 > --- a/sysdeps/unix/sysv/linux/m68k/m680x0/librt.abilist > +++ b/sysdeps/unix/sysv/linux/m68k/m680x0/librt.abilist > @@ -1,6 +1,5 @@ > GLIBC_2.1 __librt_version_placeholder F > -GLIBC_2.2 timer_settime F > +GLIBC_2.2 __librt_version_placeholder F > GLIBC_2.3.4 __librt_version_placeholder F > -GLIBC_2.34 __timer_settime64 F > GLIBC_2.4 __librt_version_placeholder F > GLIBC_2.7 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist > index 56b5f885b7..18d8e9d748 100644 > --- a/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist > +++ b/sysdeps/unix/sysv/linux/microblaze/be/libc.abilist > @@ -2014,6 +2014,7 @@ GLIBC_2.18 timer_create F > GLIBC_2.18 timer_delete F > GLIBC_2.18 timer_getoverrun F > GLIBC_2.18 timer_gettime F > +GLIBC_2.18 timer_settime F > GLIBC_2.18 timerfd_create F > GLIBC_2.18 timerfd_gettime F > GLIBC_2.18 timerfd_settime F > @@ -2444,6 +2445,7 @@ GLIBC_2.34 __thrd_sleep64 F > GLIBC_2.34 __time64 F > GLIBC_2.34 __timegm64 F > GLIBC_2.34 __timer_gettime64 F > +GLIBC_2.34 __timer_settime64 F > GLIBC_2.34 __timerfd_gettime64 F > GLIBC_2.34 __timerfd_settime64 F > GLIBC_2.34 __timespec_get64 F > @@ -2611,6 +2613,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/microblaze/be/librt.abilist b/sysdeps/unix/sysv/linux/microblaze/be/librt.abilist > index 8a4faf155c..825b445ef7 100644 > --- a/sysdeps/unix/sysv/linux/microblaze/be/librt.abilist > +++ b/sysdeps/unix/sysv/linux/microblaze/be/librt.abilist > @@ -1,2 +1 @@ > -GLIBC_2.18 timer_settime F > -GLIBC_2.34 __timer_settime64 F > +GLIBC_2.18 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist > index 8910180ff8..2de03396dd 100644 > --- a/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist > +++ b/sysdeps/unix/sysv/linux/microblaze/le/libc.abilist > @@ -2014,6 +2014,7 @@ GLIBC_2.18 timer_create F > GLIBC_2.18 timer_delete F > GLIBC_2.18 timer_getoverrun F > GLIBC_2.18 timer_gettime F > +GLIBC_2.18 timer_settime F > GLIBC_2.18 timerfd_create F > GLIBC_2.18 timerfd_gettime F > GLIBC_2.18 timerfd_settime F > @@ -2441,6 +2442,7 @@ GLIBC_2.34 __thrd_sleep64 F > GLIBC_2.34 __time64 F > GLIBC_2.34 __timegm64 F > GLIBC_2.34 __timer_gettime64 F > +GLIBC_2.34 __timer_settime64 F > GLIBC_2.34 __timerfd_gettime64 F > GLIBC_2.34 __timerfd_settime64 F > GLIBC_2.34 __timespec_get64 F > @@ -2608,6 +2610,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/microblaze/le/librt.abilist b/sysdeps/unix/sysv/linux/microblaze/le/librt.abilist > index 8a4faf155c..825b445ef7 100644 > --- a/sysdeps/unix/sysv/linux/microblaze/le/librt.abilist > +++ b/sysdeps/unix/sysv/linux/microblaze/le/librt.abilist > @@ -1,2 +1 @@ > -GLIBC_2.18 timer_settime F > -GLIBC_2.34 __timer_settime64 F > +GLIBC_2.18 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist > index e81456caf7..302af0376d 100644 > --- a/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist > +++ b/sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist > @@ -1997,6 +1997,7 @@ GLIBC_2.2 timer_create F > GLIBC_2.2 timer_delete F > GLIBC_2.2 timer_getoverrun F > GLIBC_2.2 timer_gettime F > +GLIBC_2.2 timer_settime F > GLIBC_2.2 tmpfile F > GLIBC_2.2 tmpfile64 F > GLIBC_2.2 truncate64 F > @@ -2438,6 +2439,7 @@ GLIBC_2.34 __thrd_sleep64 F > GLIBC_2.34 __time64 F > GLIBC_2.34 __timegm64 F > GLIBC_2.34 __timer_gettime64 F > +GLIBC_2.34 __timer_settime64 F > GLIBC_2.34 __timerfd_gettime64 F > GLIBC_2.34 __timerfd_settime64 F > GLIBC_2.34 __timespec_get64 F > @@ -2605,6 +2607,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/mips/mips32/librt.abilist b/sysdeps/unix/sysv/linux/mips/mips32/librt.abilist > index 211a60584c..a7f1518c0b 100644 > --- a/sysdeps/unix/sysv/linux/mips/mips32/librt.abilist > +++ b/sysdeps/unix/sysv/linux/mips/mips32/librt.abilist > @@ -1,5 +1,4 @@ > -GLIBC_2.2 timer_settime F > +GLIBC_2.2 __librt_version_placeholder F > GLIBC_2.3.4 __librt_version_placeholder F > -GLIBC_2.34 __timer_settime64 F > GLIBC_2.4 __librt_version_placeholder F > GLIBC_2.7 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist > index ecbad99217..50e51bf15d 100644 > --- a/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist > +++ b/sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist > @@ -1995,6 +1995,7 @@ GLIBC_2.2 timer_create F > GLIBC_2.2 timer_delete F > GLIBC_2.2 timer_getoverrun F > GLIBC_2.2 timer_gettime F > +GLIBC_2.2 timer_settime F > GLIBC_2.2 tmpfile F > GLIBC_2.2 tmpfile64 F > GLIBC_2.2 truncate64 F > @@ -2436,6 +2437,7 @@ GLIBC_2.34 __thrd_sleep64 F > GLIBC_2.34 __time64 F > GLIBC_2.34 __timegm64 F > GLIBC_2.34 __timer_gettime64 F > +GLIBC_2.34 __timer_settime64 F > GLIBC_2.34 __timerfd_gettime64 F > GLIBC_2.34 __timerfd_settime64 F > GLIBC_2.34 __timespec_get64 F > @@ -2603,6 +2605,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist > index 986b16ece3..99be006a91 100644 > --- a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist > +++ b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist > @@ -1993,6 +1993,7 @@ GLIBC_2.2 timer_create F > GLIBC_2.2 timer_delete F > GLIBC_2.2 timer_getoverrun F > GLIBC_2.2 timer_gettime F > +GLIBC_2.2 timer_settime F > GLIBC_2.2 tmpfile F > GLIBC_2.2 tmpfile64 F > GLIBC_2.2 truncate64 F > @@ -2444,6 +2445,7 @@ GLIBC_2.34 __thrd_sleep64 F > GLIBC_2.34 __time64 F > GLIBC_2.34 __timegm64 F > GLIBC_2.34 __timer_gettime64 F > +GLIBC_2.34 __timer_settime64 F > GLIBC_2.34 __timerfd_gettime64 F > GLIBC_2.34 __timerfd_settime64 F > GLIBC_2.34 __timespec_get64 F > @@ -2611,6 +2613,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n32/librt.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/librt.abilist > index 211a60584c..a7f1518c0b 100644 > --- a/sysdeps/unix/sysv/linux/mips/mips64/n32/librt.abilist > +++ b/sysdeps/unix/sysv/linux/mips/mips64/n32/librt.abilist > @@ -1,5 +1,4 @@ > -GLIBC_2.2 timer_settime F > +GLIBC_2.2 __librt_version_placeholder F > GLIBC_2.3.4 __librt_version_placeholder F > -GLIBC_2.34 __timer_settime64 F > GLIBC_2.4 __librt_version_placeholder F > GLIBC_2.7 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist > index 141e1b295f..f3c39841dd 100644 > --- a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist > +++ b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist > @@ -1989,6 +1989,7 @@ GLIBC_2.2 timer_create F > GLIBC_2.2 timer_delete F > GLIBC_2.2 timer_getoverrun F > GLIBC_2.2 timer_gettime F > +GLIBC_2.2 timer_settime F > GLIBC_2.2 tmpfile F > GLIBC_2.2 tmpfile64 F > GLIBC_2.2 truncate64 F > @@ -2525,6 +2526,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n64/librt.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/librt.abilist > index 406120e1d8..a7f1518c0b 100644 > --- a/sysdeps/unix/sysv/linux/mips/mips64/n64/librt.abilist > +++ b/sysdeps/unix/sysv/linux/mips/mips64/n64/librt.abilist > @@ -1,4 +1,4 @@ > -GLIBC_2.2 timer_settime F > +GLIBC_2.2 __librt_version_placeholder F > GLIBC_2.3.4 __librt_version_placeholder F > GLIBC_2.4 __librt_version_placeholder F > GLIBC_2.7 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/nios2/libc.abilist b/sysdeps/unix/sysv/linux/nios2/libc.abilist > index 71dc98ecf7..55f3102cbf 100644 > --- a/sysdeps/unix/sysv/linux/nios2/libc.abilist > +++ b/sysdeps/unix/sysv/linux/nios2/libc.abilist > @@ -2056,6 +2056,7 @@ GLIBC_2.21 timer_create F > GLIBC_2.21 timer_delete F > GLIBC_2.21 timer_getoverrun F > GLIBC_2.21 timer_gettime F > +GLIBC_2.21 timer_settime F > GLIBC_2.21 timerfd_create F > GLIBC_2.21 timerfd_gettime F > GLIBC_2.21 timerfd_settime F > @@ -2483,6 +2484,7 @@ GLIBC_2.34 __thrd_sleep64 F > GLIBC_2.34 __time64 F > GLIBC_2.34 __timegm64 F > GLIBC_2.34 __timer_gettime64 F > +GLIBC_2.34 __timer_settime64 F > GLIBC_2.34 __timerfd_gettime64 F > GLIBC_2.34 __timerfd_settime64 F > GLIBC_2.34 __timespec_get64 F > @@ -2650,6 +2652,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/nios2/librt.abilist b/sysdeps/unix/sysv/linux/nios2/librt.abilist > index c162738eae..834a4dcc7a 100644 > --- a/sysdeps/unix/sysv/linux/nios2/librt.abilist > +++ b/sysdeps/unix/sysv/linux/nios2/librt.abilist > @@ -1,2 +1 @@ > -GLIBC_2.21 timer_settime F > -GLIBC_2.34 __timer_settime64 F > +GLIBC_2.21 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist > index 03a0a0579a..82144c268e 100644 > --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist > +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist > @@ -2071,6 +2071,7 @@ GLIBC_2.2 timer_create F > GLIBC_2.2 timer_delete F > GLIBC_2.2 timer_getoverrun F > GLIBC_2.2 timer_gettime F > +GLIBC_2.2 timer_settime F > GLIBC_2.2 ungetwc F > GLIBC_2.2 vfwprintf F > GLIBC_2.2 vfwscanf F > @@ -2500,6 +2501,7 @@ GLIBC_2.34 __thrd_sleep64 F > GLIBC_2.34 __time64 F > GLIBC_2.34 __timegm64 F > GLIBC_2.34 __timer_gettime64 F > +GLIBC_2.34 __timer_settime64 F > GLIBC_2.34 __timerfd_gettime64 F > GLIBC_2.34 __timerfd_settime64 F > GLIBC_2.34 __timespec_get64 F > @@ -2667,6 +2669,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/librt.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/librt.abilist > index 179d1d53da..6d24ce527d 100644 > --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/librt.abilist > +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/librt.abilist > @@ -1,6 +1,5 @@ > GLIBC_2.1 __librt_version_placeholder F > -GLIBC_2.2 timer_settime F > +GLIBC_2.2 __librt_version_placeholder F > GLIBC_2.3.4 __librt_version_placeholder F > -GLIBC_2.34 __timer_settime64 F > GLIBC_2.4 __librt_version_placeholder F > GLIBC_2.7 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist > index 793531d9c4..4545f49cee 100644 > --- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist > +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist > @@ -2075,6 +2075,7 @@ GLIBC_2.2 timer_create F > GLIBC_2.2 timer_delete F > GLIBC_2.2 timer_getoverrun F > GLIBC_2.2 timer_gettime F > +GLIBC_2.2 timer_settime F > GLIBC_2.2 ungetwc F > GLIBC_2.2 vfwprintf F > GLIBC_2.2 vfwscanf F > @@ -2533,6 +2534,7 @@ GLIBC_2.34 __thrd_sleep64 F > GLIBC_2.34 __time64 F > GLIBC_2.34 __timegm64 F > GLIBC_2.34 __timer_gettime64 F > +GLIBC_2.34 __timer_settime64 F > GLIBC_2.34 __timerfd_gettime64 F > GLIBC_2.34 __timerfd_settime64 F > GLIBC_2.34 __timespec_get64 F > @@ -2700,6 +2702,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions b/sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions > index 8607ac1012..0cdda49402 100644 > --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions > +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions > @@ -25,10 +25,3 @@ libc { > __ppc_get_timebase_freq; > } > } > - > -librt { > - GLIBC_2.3.3 { > - # Changed timer_t. > - timer_settime; > - } > -} Ok. > diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist > index 21763f0238..d47efa98ff 100644 > --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist > +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libc.abilist > @@ -1890,6 +1890,7 @@ GLIBC_2.3 timer_create F > GLIBC_2.3 timer_delete F > GLIBC_2.3 timer_getoverrun F > GLIBC_2.3 timer_gettime F > +GLIBC_2.3 timer_settime F > GLIBC_2.3 times F > GLIBC_2.3 timezone D 0x8 > GLIBC_2.3 tmpfile F > @@ -2170,6 +2171,7 @@ GLIBC_2.3.3 timer_create F > GLIBC_2.3.3 timer_delete F > GLIBC_2.3.3 timer_getoverrun F > GLIBC_2.3.3 timer_gettime F > +GLIBC_2.3.3 timer_settime F > GLIBC_2.3.4 __chk_fail F > GLIBC_2.3.4 __fprintf_chk F > GLIBC_2.3.4 __gets_chk F > @@ -2437,6 +2439,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/librt.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/librt.abilist > index bfaae8ac0e..506870e3fd 100644 > --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/librt.abilist > +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/be/librt.abilist > @@ -1,5 +1,5 @@ > -GLIBC_2.3 timer_settime F > -GLIBC_2.3.3 timer_settime F > +GLIBC_2.3 __librt_version_placeholder F > +GLIBC_2.3.3 __librt_version_placeholder F > GLIBC_2.3.4 __librt_version_placeholder F > GLIBC_2.4 __librt_version_placeholder F > GLIBC_2.7 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist > index ec8a207385..e08cbf7b2a 100644 > --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist > +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libc.abilist > @@ -2098,6 +2098,7 @@ GLIBC_2.17 timer_create F > GLIBC_2.17 timer_delete F > GLIBC_2.17 timer_getoverrun F > GLIBC_2.17 timer_gettime F > +GLIBC_2.17 timer_settime F > GLIBC_2.17 timerfd_create F > GLIBC_2.17 timerfd_gettime F > GLIBC_2.17 timerfd_settime F > @@ -2733,6 +2734,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/librt.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/librt.abilist > index 2cb1369ddb..88d0fc382f 100644 > --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/librt.abilist > +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/le/librt.abilist > @@ -1 +1 @@ > -GLIBC_2.17 timer_settime F > +GLIBC_2.17 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/timer_settime.c b/sysdeps/unix/sysv/linux/powerpc/powerpc64/timer_settime.c > deleted file mode 100644 > index fa231149d5..0000000000 > --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/timer_settime.c > +++ /dev/null > @@ -1 +0,0 @@ > -#include Ok. > diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist > index c7b749f6a7..a8482733cd 100644 > --- a/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist > +++ b/sysdeps/unix/sysv/linux/riscv/rv32/libc.abilist > @@ -1954,6 +1954,7 @@ GLIBC_2.33 timer_create F > GLIBC_2.33 timer_delete F > GLIBC_2.33 timer_getoverrun F > GLIBC_2.33 timer_gettime F > +GLIBC_2.33 timer_settime F > GLIBC_2.33 timerfd_create F > GLIBC_2.33 timerfd_gettime F > GLIBC_2.33 timerfd_settime F > @@ -2298,6 +2299,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/riscv/rv32/librt.abilist b/sysdeps/unix/sysv/linux/riscv/rv32/librt.abilist > index c59f14490e..b8af976642 100644 > --- a/sysdeps/unix/sysv/linux/riscv/rv32/librt.abilist > +++ b/sysdeps/unix/sysv/linux/riscv/rv32/librt.abilist > @@ -1 +1 @@ > -GLIBC_2.33 timer_settime F > +GLIBC_2.33 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist > index 33e13783fc..a2448c1c74 100644 > --- a/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist > +++ b/sysdeps/unix/sysv/linux/riscv/rv64/libc.abilist > @@ -2020,6 +2020,7 @@ GLIBC_2.27 timer_create F > GLIBC_2.27 timer_delete F > GLIBC_2.27 timer_getoverrun F > GLIBC_2.27 timer_gettime F > +GLIBC_2.27 timer_settime F > GLIBC_2.27 timerfd_create F > GLIBC_2.27 timerfd_gettime F > GLIBC_2.27 timerfd_settime F > @@ -2498,6 +2499,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/librt.abilist b/sysdeps/unix/sysv/linux/riscv/rv64/librt.abilist > index 62ff23fd04..d7902a3ec7 100644 > --- a/sysdeps/unix/sysv/linux/riscv/rv64/librt.abilist > +++ b/sysdeps/unix/sysv/linux/riscv/rv64/librt.abilist > @@ -1 +1 @@ > -GLIBC_2.27 timer_settime F > +GLIBC_2.27 __librt_version_placeholder F Ok. > diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist > index 6681f84af2..5ee1e09391 100644 > --- a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist > +++ b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist > @@ -2069,6 +2069,7 @@ GLIBC_2.2 timer_create F > GLIBC_2.2 timer_delete F > GLIBC_2.2 timer_getoverrun F > GLIBC_2.2 timer_gettime F > +GLIBC_2.2 timer_settime F > GLIBC_2.2 ungetwc F > GLIBC_2.2 versionsort64 F > GLIBC_2.2 vfwprintf F > @@ -2498,6 +2499,7 @@ GLIBC_2.34 __thrd_sleep64 F > GLIBC_2.34 __time64 F > GLIBC_2.34 __timegm64 F > GLIBC_2.34 __timer_gettime64 F > +GLIBC_2.34 __timer_settime64 F > GLIBC_2.34 __timerfd_gettime64 F > GLIBC_2.34 __timerfd_settime64 F > GLIBC_2.34 __timespec_get64 F > @@ -2665,6 +2667,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/librt.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/librt.abilist > index 179d1d53da..6d24ce527d 100644 > --- a/sysdeps/unix/sysv/linux/s390/s390-32/librt.abilist > +++ b/sysdeps/unix/sysv/linux/s390/s390-32/librt.abilist > @@ -1,6 +1,5 @@ > GLIBC_2.1 __librt_version_placeholder F > -GLIBC_2.2 timer_settime F > +GLIBC_2.2 __librt_version_placeholder F > GLIBC_2.3.4 __librt_version_placeholder F > -GLIBC_2.34 __timer_settime64 F > GLIBC_2.4 __librt_version_placeholder F > GLIBC_2.7 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/Versions b/sysdeps/unix/sysv/linux/s390/s390-64/Versions > index 5c682764ad..83092db48e 100644 > --- a/sysdeps/unix/sysv/linux/s390/s390-64/Versions > +++ b/sysdeps/unix/sysv/linux/s390/s390-64/Versions > @@ -5,10 +5,3 @@ libc { > __frame_state_for; __register_frame_info_table; > } > } > - > -librt { > - GLIBC_2.3.3 { > - # Changed timer_t. > - timer_settime; > - } > -} Ok. > diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist > index e97c113408..1cd10e7e77 100644 > --- a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist > +++ b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist > @@ -1765,6 +1765,7 @@ GLIBC_2.2 timer_create F > GLIBC_2.2 timer_delete F > GLIBC_2.2 timer_getoverrun F > GLIBC_2.2 timer_gettime F > +GLIBC_2.2 timer_settime F > GLIBC_2.2 times F > GLIBC_2.2 timezone D 0x8 > GLIBC_2.2 tmpfile F > @@ -2216,6 +2217,7 @@ GLIBC_2.3.3 timer_create F > GLIBC_2.3.3 timer_delete F > GLIBC_2.3.3 timer_getoverrun F > GLIBC_2.3.3 timer_gettime F > +GLIBC_2.3.3 timer_settime F > GLIBC_2.3.4 __chk_fail F > GLIBC_2.3.4 __fprintf_chk F > GLIBC_2.3.4 __gets_chk F > @@ -2474,6 +2476,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/librt.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/librt.abilist > index f851eea81e..7dac2342ac 100644 > --- a/sysdeps/unix/sysv/linux/s390/s390-64/librt.abilist > +++ b/sysdeps/unix/sysv/linux/s390/s390-64/librt.abilist > @@ -1,5 +1,5 @@ > -GLIBC_2.2 timer_settime F > -GLIBC_2.3.3 timer_settime F > +GLIBC_2.2 __librt_version_placeholder F > +GLIBC_2.3.3 __librt_version_placeholder F > GLIBC_2.3.4 __librt_version_placeholder F > GLIBC_2.4 __librt_version_placeholder F > GLIBC_2.7 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/timer_settime.c b/sysdeps/unix/sysv/linux/s390/s390-64/timer_settime.c > deleted file mode 100644 > index fa231149d5..0000000000 > --- a/sysdeps/unix/sysv/linux/s390/s390-64/timer_settime.c > +++ /dev/null > @@ -1 +0,0 @@ > -#include Ok. > diff --git a/sysdeps/unix/sysv/linux/sh/be/libc.abilist b/sysdeps/unix/sysv/linux/sh/be/libc.abilist > index 360802cf78..c621caae80 100644 > --- a/sysdeps/unix/sysv/linux/sh/be/libc.abilist > +++ b/sysdeps/unix/sysv/linux/sh/be/libc.abilist > @@ -1752,6 +1752,7 @@ GLIBC_2.2 timer_create F > GLIBC_2.2 timer_delete F > GLIBC_2.2 timer_getoverrun F > GLIBC_2.2 timer_gettime F > +GLIBC_2.2 timer_settime F > GLIBC_2.2 times F > GLIBC_2.2 timezone D 0x4 > GLIBC_2.2 tmpfile F > @@ -2353,6 +2354,7 @@ GLIBC_2.34 __thrd_sleep64 F > GLIBC_2.34 __time64 F > GLIBC_2.34 __timegm64 F > GLIBC_2.34 __timer_gettime64 F > +GLIBC_2.34 __timer_settime64 F > GLIBC_2.34 __timerfd_gettime64 F > GLIBC_2.34 __timerfd_settime64 F > GLIBC_2.34 __timespec_get64 F > @@ -2520,6 +2522,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/sh/be/librt.abilist b/sysdeps/unix/sysv/linux/sh/be/librt.abilist > index 179d1d53da..6d24ce527d 100644 > --- a/sysdeps/unix/sysv/linux/sh/be/librt.abilist > +++ b/sysdeps/unix/sysv/linux/sh/be/librt.abilist > @@ -1,6 +1,5 @@ > GLIBC_2.1 __librt_version_placeholder F > -GLIBC_2.2 timer_settime F > +GLIBC_2.2 __librt_version_placeholder F > GLIBC_2.3.4 __librt_version_placeholder F > -GLIBC_2.34 __timer_settime64 F > GLIBC_2.4 __librt_version_placeholder F > GLIBC_2.7 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/sh/le/libc.abilist b/sysdeps/unix/sysv/linux/sh/le/libc.abilist > index e9cb3ff8f1..ba459df43a 100644 > --- a/sysdeps/unix/sysv/linux/sh/le/libc.abilist > +++ b/sysdeps/unix/sysv/linux/sh/le/libc.abilist > @@ -1752,6 +1752,7 @@ GLIBC_2.2 timer_create F > GLIBC_2.2 timer_delete F > GLIBC_2.2 timer_getoverrun F > GLIBC_2.2 timer_gettime F > +GLIBC_2.2 timer_settime F > GLIBC_2.2 times F > GLIBC_2.2 timezone D 0x4 > GLIBC_2.2 tmpfile F > @@ -2350,6 +2351,7 @@ GLIBC_2.34 __thrd_sleep64 F > GLIBC_2.34 __time64 F > GLIBC_2.34 __timegm64 F > GLIBC_2.34 __timer_gettime64 F > +GLIBC_2.34 __timer_settime64 F > GLIBC_2.34 __timerfd_gettime64 F > GLIBC_2.34 __timerfd_settime64 F > GLIBC_2.34 __timespec_get64 F > @@ -2517,6 +2519,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/sh/le/librt.abilist b/sysdeps/unix/sysv/linux/sh/le/librt.abilist > index 179d1d53da..6d24ce527d 100644 > --- a/sysdeps/unix/sysv/linux/sh/le/librt.abilist > +++ b/sysdeps/unix/sysv/linux/sh/le/librt.abilist > @@ -1,6 +1,5 @@ > GLIBC_2.1 __librt_version_placeholder F > -GLIBC_2.2 timer_settime F > +GLIBC_2.2 __librt_version_placeholder F > GLIBC_2.3.4 __librt_version_placeholder F > -GLIBC_2.34 __timer_settime64 F > GLIBC_2.4 __librt_version_placeholder F > GLIBC_2.7 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/sparc/librt-compat.c b/sysdeps/unix/sysv/linux/sparc/librt-compat.c > index a3862ba127..17a7895703 100644 > --- a/sysdeps/unix/sysv/linux/sparc/librt-compat.c > +++ b/sysdeps/unix/sysv/linux/sparc/librt-compat.c > @@ -16,7 +16,7 @@ > License along with the GNU C Library; if not, see > . */ > > -#include > +#include > > #if SHLIB_COMPAT (librt, GLIBC_2_3, GLIBC_2_34) > compat_symbol (librt, __librt_version_placeholder_1, Ok. > diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist > index 2af5948dd7..5e0eed47e3 100644 > --- a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist > +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist > @@ -2064,6 +2064,7 @@ GLIBC_2.2 timer_create F > GLIBC_2.2 timer_delete F > GLIBC_2.2 timer_getoverrun F > GLIBC_2.2 timer_gettime F > +GLIBC_2.2 timer_settime F > GLIBC_2.2 ungetwc F > GLIBC_2.2 vfwprintf F > GLIBC_2.2 vfwscanf F > @@ -2493,6 +2494,7 @@ GLIBC_2.34 __thrd_sleep64 F > GLIBC_2.34 __time64 F > GLIBC_2.34 __timegm64 F > GLIBC_2.34 __timer_gettime64 F > +GLIBC_2.34 __timer_settime64 F > GLIBC_2.34 __timerfd_gettime64 F > GLIBC_2.34 __timerfd_settime64 F > GLIBC_2.34 __timespec_get64 F > @@ -2660,6 +2662,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/librt.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/librt.abilist > index dc0a3c4dfb..7ff1ca83b1 100644 > --- a/sysdeps/unix/sysv/linux/sparc/sparc32/librt.abilist > +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/librt.abilist > @@ -1,7 +1,6 @@ > GLIBC_2.1 __librt_version_placeholder F > -GLIBC_2.2 timer_settime F > +GLIBC_2.2 __librt_version_placeholder F > GLIBC_2.3 __librt_version_placeholder F > GLIBC_2.3.4 __librt_version_placeholder F > -GLIBC_2.34 __timer_settime64 F > GLIBC_2.4 __librt_version_placeholder F > GLIBC_2.7 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/Versions b/sysdeps/unix/sysv/linux/sparc/sparc64/Versions > index 5e8f59ceae..cc152489f6 100644 > --- a/sysdeps/unix/sysv/linux/sparc/sparc64/Versions > +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/Versions > @@ -10,10 +10,3 @@ libc { > wordexp; > } > } > - > -librt { > - GLIBC_2.3.3 { > - # Changed timer_t. > - timer_settime; > - } > -} Ok. > diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist > index fde5b780a6..99e6181e24 100644 > --- a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist > +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist > @@ -1795,6 +1795,7 @@ GLIBC_2.2 timer_create F > GLIBC_2.2 timer_delete F > GLIBC_2.2 timer_getoverrun F > GLIBC_2.2 timer_gettime F > +GLIBC_2.2 timer_settime F > GLIBC_2.2 times F > GLIBC_2.2 timezone D 0x8 > GLIBC_2.2 tmpfile F > @@ -2250,6 +2251,7 @@ GLIBC_2.3.3 timer_create F > GLIBC_2.3.3 timer_delete F > GLIBC_2.3.3 timer_getoverrun F > GLIBC_2.3.3 timer_gettime F > +GLIBC_2.3.3 timer_settime F > GLIBC_2.3.4 __chk_fail F > GLIBC_2.3.4 __fprintf_chk F > GLIBC_2.3.4 __gets_chk F > @@ -2496,6 +2498,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/librt.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/librt.abilist > index a2de1ecd94..f68e03dfde 100644 > --- a/sysdeps/unix/sysv/linux/sparc/sparc64/librt.abilist > +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/librt.abilist > @@ -1,7 +1,7 @@ > GLIBC_2.1 __librt_version_placeholder F > -GLIBC_2.2 timer_settime F > +GLIBC_2.2 __librt_version_placeholder F > GLIBC_2.3 __librt_version_placeholder F > -GLIBC_2.3.3 timer_settime F > +GLIBC_2.3.3 __librt_version_placeholder F > GLIBC_2.3.4 __librt_version_placeholder F > GLIBC_2.4 __librt_version_placeholder F > GLIBC_2.7 __librt_version_placeholder F > diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/timer_settime.c b/sysdeps/unix/sysv/linux/sparc/sparc64/timer_settime.c > deleted file mode 100644 > index fa231149d5..0000000000 > --- a/sysdeps/unix/sysv/linux/sparc/sparc64/timer_settime.c > +++ /dev/null > @@ -1 +0,0 @@ > -#include Ok. > diff --git a/sysdeps/unix/sysv/linux/timer_settime.c b/sysdeps/unix/sysv/linux/timer_settime.c > index b8326e36a4..cbe430480d 100644 > --- a/sysdeps/unix/sysv/linux/timer_settime.c > +++ b/sysdeps/unix/sysv/linux/timer_settime.c > @@ -22,27 +22,29 @@ > #include > #include > #include > +#include > > +#if !TIMER_T_WAS_INT_COMPAT > int > -__timer_settime64 (timer_t timerid, int flags, > +___timer_settime64 (timer_t timerid, int flags, > const struct __itimerspec64 *value, > struct __itimerspec64 *ovalue) > { > kernel_timer_t ktimerid = timerid_to_kernel_timer (timerid); > > -#ifdef __ASSUME_TIME64_SYSCALLS > -# ifndef __NR_timer_settime64 > -# define __NR_timer_settime64 __NR_timer_settime > -# endif > +# ifdef __ASSUME_TIME64_SYSCALLS > +# ifndef __NR_timer_settime64 > +# define __NR_timer_settime64 __NR_timer_settime > +# endif > return INLINE_SYSCALL_CALL (timer_settime64, ktimerid, flags, value, > ovalue); > -#else > -# ifdef __NR_timer_settime64 > +# else > +# ifdef __NR_timer_settime64 > int ret = INLINE_SYSCALL_CALL (timer_settime64, ktimerid, flags, value, > ovalue); > if (ret == 0 || errno != ENOSYS) > return ret; > -# endif > +# endif > struct itimerspec its32, oits32; > > if (! in_time_t_range ((value->it_value).tv_sec) > @@ -64,11 +66,18 @@ __timer_settime64 (timer_t timerid, int flags, > } > > return retval; > -#endif > +# endif > } > > -#if __TIMESIZE != 64 > -librt_hidden_def (__timer_settime64) > +# if __TIMESIZE == 64 > +versioned_symbol (libc, ___timer_settime64, timer_settime, GLIBC_2_34); > +# if OTHER_SHLIB_COMPAT (librt, GLIBC_2_2, GLIBC_2_34) > +compat_symbol (librt, ___timer_settime64, timer_settime, GLIBC_2_2); > +# endif > + > +#else /* __TIMESIZE != 64 */ > +libc_hidden_ver (___timer_settime64, __timer_settime64) > +versioned_symbol (libc, ___timer_settime64, __timer_settime64, GLIBC_2_34); > > int > __timer_settime (timer_t timerid, int flags, const struct itimerspec *value, > @@ -89,5 +98,43 @@ __timer_settime (timer_t timerid, int flags, const struct itimerspec *value, > > return retval; > } > -#endif > -weak_alias (__timer_settime, timer_settime) > +versioned_symbol (libc, __timer_settime, timer_settime, GLIBC_2_34); > + > +# if OTHER_SHLIB_COMPAT (librt, GLIBC_2_2, GLIBC_2_34) > +compat_symbol (librt, __timer_settime, timer_settime, GLIBC_2_2); > +# endif > +# endif /* __TIMESIZE != 64 */ > + > +#else /* TIMER_T_WAS_INT_COMPAT */ > + > +extern __typeof (timer_settime) __timer_settime_new; > +libc_hidden_proto (__timer_settime_new) > + > +int > +___timer_settime_new (timer_t timerid, int flags, > + const struct itimerspec *value, > + struct itimerspec *ovalue) > +{ > + kernel_timer_t ktimerid = timerid_to_kernel_timer (timerid); > + > + return INLINE_SYSCALL_CALL (timer_settime, ktimerid, flags, value, ovalue); > +} > +versioned_symbol (libc, ___timer_settime_new, timer_settime, GLIBC_2_34); > +libc_hidden_ver (___timer_settime_new, __timer_settime_new) > + > +# if OTHER_SHLIB_COMPAT (librt, GLIBC_2_3_3, GLIBC_2_34) > +compat_symbol (librt, ___timer_settime_new, timer_settime, GLIBC_2_3_3); > +# endif > + > +# if OTHER_SHLIB_COMPAT (librt, GLIBC_2_2, GLIBC_2_3_3) > +int > +__timer_settime_old (int timerid, int flags, const struct itimerspec *value, > + struct itimerspec *ovalue) > +{ > + return __timer_settime_new (__timer_compat_list[timerid], flags, > + value, ovalue); > +} > +compat_symbol (librt, __timer_settime_old, timer_settime, GLIBC_2_2); > +# endif > + > +#endif /* TIMER_T_WAS_INT_COMPAT */ Ok. > diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist > index 87dc534709..2460b47dc7 100644 > --- a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist > +++ b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist > @@ -1764,6 +1764,7 @@ GLIBC_2.2.5 timer_create F > GLIBC_2.2.5 timer_delete F > GLIBC_2.2.5 timer_getoverrun F > GLIBC_2.2.5 timer_gettime F > +GLIBC_2.2.5 timer_settime F > GLIBC_2.2.5 times F > GLIBC_2.2.5 timezone D 0x8 > GLIBC_2.2.5 tmpfile F > @@ -2204,6 +2205,7 @@ GLIBC_2.3.3 timer_create F > GLIBC_2.3.3 timer_delete F > GLIBC_2.3.3 timer_getoverrun F > GLIBC_2.3.3 timer_gettime F > +GLIBC_2.3.3 timer_settime F > GLIBC_2.3.4 __chk_fail F > GLIBC_2.3.4 __fprintf_chk F > GLIBC_2.3.4 __gets_chk F > @@ -2452,6 +2454,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/x86_64/64/librt.abilist b/sysdeps/unix/sysv/linux/x86_64/64/librt.abilist > index 913835d267..752a38a6df 100644 > --- a/sysdeps/unix/sysv/linux/x86_64/64/librt.abilist > +++ b/sysdeps/unix/sysv/linux/x86_64/64/librt.abilist > @@ -1,5 +1,5 @@ > -GLIBC_2.2.5 timer_settime F > -GLIBC_2.3.3 timer_settime F > +GLIBC_2.2.5 __librt_version_placeholder F > +GLIBC_2.3.3 __librt_version_placeholder F > GLIBC_2.3.4 __librt_version_placeholder F > GLIBC_2.4 __librt_version_placeholder F > GLIBC_2.7 __librt_version_placeholder F Ok. > diff --git a/sysdeps/unix/sysv/linux/x86_64/Versions b/sysdeps/unix/sysv/linux/x86_64/Versions > index 8deeb8908a..fd1b3cc296 100644 > --- a/sysdeps/unix/sysv/linux/x86_64/Versions > +++ b/sysdeps/unix/sysv/linux/x86_64/Versions > @@ -7,10 +7,3 @@ libc { > modify_ldt; > } > } > - > -librt { > - GLIBC_2.3.3 { > - # Changed timer_t. > - timer_settime; > - } > -} > diff --git a/sysdeps/unix/sysv/linux/x86_64/compat-timer.h b/sysdeps/unix/sysv/linux/x86_64/compat-timer.h > deleted file mode 100644 > index c61eb40070..0000000000 > --- a/sysdeps/unix/sysv/linux/x86_64/compat-timer.h > +++ /dev/null > @@ -1,37 +0,0 @@ > -/* Copyright (C) 2003-2021 Free Software Foundation, Inc. > - This file is part of the GNU C Library. > - Contributed by Ulrich Drepper , 2003. > - > - The GNU C Library is free software; you can redistribute it and/or > - modify it under the terms of the GNU Lesser General Public License as > - published by the Free Software Foundation; either version 2.1 of the > - License, or (at your option) any later version. > - > - The GNU C Library is distributed in the hope that it will be useful, > - but WITHOUT ANY WARRANTY; without even the implied warranty of > - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU > - Lesser General Public License for more details. > - > - You should have received a copy of the GNU Lesser General Public > - License along with the GNU C Library; see the file COPYING.LIB. If > - not, see . */ > - > -#include > -#include > -#include > - > -extern int __timer_getoverrun_new (timer_t timerid); > -extern int __timer_gettime_new (timer_t timerid, struct itimerspec *value); > -extern int __timer_settime_new (timer_t timerid, int flags, > - const struct itimerspec *value, > - struct itimerspec *ovalue); > - > - > -extern int __timer_create_old (clockid_t clock_id, struct sigevent *evp, > - int *timerid); > -extern int __timer_delete_old (int timerid); > -extern int __timer_getoverrun_old (int timerid); > -extern int __timer_gettime_old (int timerid, struct itimerspec *value); > -extern int __timer_settime_old (int timerid, int flags, > - const struct itimerspec *value, > - struct itimerspec *ovalue); > diff --git a/sysdeps/unix/sysv/linux/x86_64/timer_settime.c b/sysdeps/unix/sysv/linux/x86_64/timer_settime.c > deleted file mode 100644 > index dd7d01e849..0000000000 > --- a/sysdeps/unix/sysv/linux/x86_64/timer_settime.c > +++ /dev/null > @@ -1,44 +0,0 @@ > -/* Copyright (C) 2003-2021 Free Software Foundation, Inc. > - This file is part of the GNU C Library. > - Contributed by Ulrich Drepper , 2003. > - > - The GNU C Library is free software; you can redistribute it and/or > - modify it under the terms of the GNU Lesser General Public License as > - published by the Free Software Foundation; either version 2.1 of the > - License, or (at your option) any later version. > - > - The GNU C Library is distributed in the hope that it will be useful, > - but WITHOUT ANY WARRANTY; without even the implied warranty of > - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU > - Lesser General Public License for more details. > - > - You should have received a copy of the GNU Lesser General Public > - License along with the GNU C Library; see the file COPYING.LIB. If > - not, see . */ > - > -#include > -#include > -#include > -#include "compat-timer.h" > - > -int > -__timer_settime_new (timer_t timerid, int flags, const struct itimerspec *value, > - struct itimerspec *ovalue) > -{ > - kernel_timer_t ktimerid = timerid_to_kernel_timer (timerid); > - > - return INLINE_SYSCALL_CALL (timer_settime, ktimerid, flags, value, ovalue); > -} > -versioned_symbol (librt, __timer_settime_new, timer_settime, GLIBC_2_3_3); > - > - > -#if SHLIB_COMPAT (librt, GLIBC_2_2, GLIBC_2_3_3) > -int > -__timer_settime_old (int timerid, int flags, const struct itimerspec *value, > - struct itimerspec *ovalue) > -{ > - return __timer_settime_new (__timer_compat_list[timerid], flags, > - value, ovalue); > -} > -compat_symbol (librt, __timer_settime_old, timer_settime, GLIBC_2_2); > -#endif Ok. > diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist > index 143b8d602c..8789b1edb2 100644 > --- a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist > +++ b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist > @@ -2015,6 +2015,7 @@ GLIBC_2.16 timer_create F > GLIBC_2.16 timer_delete F > GLIBC_2.16 timer_getoverrun F > GLIBC_2.16 timer_gettime F > +GLIBC_2.16 timer_settime F > GLIBC_2.16 timerfd_create F > GLIBC_2.16 timerfd_gettime F > GLIBC_2.16 timerfd_settime F > @@ -2552,6 +2553,7 @@ GLIBC_2.34 timer_create F > GLIBC_2.34 timer_delete F > GLIBC_2.34 timer_getoverrun F > GLIBC_2.34 timer_gettime F > +GLIBC_2.34 timer_settime F > GLIBC_2.34 timespec_getres F > GLIBC_2.34 tss_create F > GLIBC_2.34 tss_delete F > diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/librt.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/librt.abilist > index 50f2032de7..a39d5383e4 100644 > --- a/sysdeps/unix/sysv/linux/x86_64/x32/librt.abilist > +++ b/sysdeps/unix/sysv/linux/x86_64/x32/librt.abilist > @@ -1 +1 @@ > -GLIBC_2.16 timer_settime F > +GLIBC_2.16 __librt_version_placeholder F > Ok.