From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.1 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 503 invoked from network); 27 Dec 2020 18:56:37 -0000 Received: from mother.openwall.net (195.42.179.200) by inbox.vuxu.org with ESMTPUTF8; 27 Dec 2020 18:56:37 -0000 Received: (qmail 19878 invoked by uid 550); 27 Dec 2020 18:56:24 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Reply-To: musl@lists.openwall.com Received: (qmail 5652 invoked from network); 27 Dec 2020 18:42:05 -0000 Date: Sun, 27 Dec 2020 18:41:47 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pm.me; s=protonmail; t=1609094514; bh=mQcO62LhJLUYlOtjz1XJRTXKY20EkZWEZlnldgyAmEA=; h=Date:To:From:Cc:Reply-To:Subject:In-Reply-To:References:From; b=DAmmum1ccvppNmtC0IWZZ22Z6QkHA2eim/WAtfBO8+GqVfmNYpg/9KixxHKZKvEkg cH8eflToqCwHxWXSawTJoBGGdEyT6xG/ayaOpVcQjgRFDMYQ59mHEIxKYxH8hshwxQ SlzhBlVFbIyvUc5if09XHg4lbngFMdBPztElIJsRgtDxm1RdBEG2srpTk18mZU53SO Nxsxj7GYbI7qL99syxNLYG6/Xmy7RXfvPB4QoRnvELveyoiOhV2sjWmIeMQIzzxg2q bAyLKREwKmuQDXs0HbS9CymCP48/e8VuXUUwmy0ATY0O+xsGx1ttecaLWQVZBGCgFB P1kL+eF1QewGw== To: Rich Felker , musl@lists.openwall.com From: Alexander Lobakin Cc: Alexander Lobakin Message-ID: <20201227184032.22413-9-alobakin@pm.me> In-Reply-To: <20201227184032.22413-1-alobakin@pm.me> References: <20201227183842.22030-1-alobakin@pm.me> <20201227184032.22413-1-alobakin@pm.me> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Subject: [musl] [PATCH 09/18] timerfd_settime: prefer time64 variant if available Instead of using time64 variant "only when needed", use it as a default and fallback to time32 only on -ENOSYS. Signed-off-by: Alexander Lobakin --- src/linux/timerfd.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/src/linux/timerfd.c b/src/linux/timerfd.c index d26371cc1182..bfaae1daf675 100644 --- a/src/linux/timerfd.c +++ b/src/linux/timerfd.c @@ -14,11 +14,8 @@ int timerfd_settime(int fd, int flags, const struct itim= erspec *new, struct itim #ifdef SYS_timerfd_settime64 =09time_t is =3D new->it_interval.tv_sec, vs =3D new->it_value.tv_sec; =09long ins =3D new->it_interval.tv_nsec, vns =3D new->it_value.tv_nsec; -=09int r =3D -ENOSYS; -=09if (SYS_timerfd_settime =3D=3D SYS_timerfd_settime64 -=09 || !IS32BIT(is) || !IS32BIT(vs) || (sizeof(time_t)>4 && old)) -=09=09r =3D __syscall(SYS_timerfd_settime64, fd, flags, -=09=09=09((long long[]){is, ins, vs, vns}), old); +=09int r =3D __syscall(SYS_timerfd_settime64, fd, flags, +=09=09((long long[]){is, ins, vs, vns}), old); =09if (SYS_timerfd_settime =3D=3D SYS_timerfd_settime64 || r!=3D-ENOSYS) =09=09return __syscall_ret(r); =09if (!IS32BIT(is) || !IS32BIT(vs)) --=20 2.29.2