From 70d0dda0c160cb1f9000a4da50baf27c63db51c8 Mon Sep 17 00:00:00 2001 From: Sergey Bugaev Date: Sat, 20 May 2023 14:55:30 +0300 Subject: [PATCH] htl: Use __hurd_fail () instead of assigning errno Signed-off-by: Sergey Bugaev Message-Id: <20230520115531.3911877-2-bugaevc@gmail.com> --- sysdeps/htl/sem-destroy.c | 6 ++---- sysdeps/htl/sem-init.c | 6 ++---- sysdeps/htl/sem-post.c | 11 +++-------- sysdeps/htl/sem-trywait.c | 4 ++-- 4 files changed, 9 insertions(+), 18 deletions(-) diff --git a/sysdeps/htl/sem-destroy.c b/sysdeps/htl/sem-destroy.c index 3e40151..84a35ed 100644 --- a/sysdeps/htl/sem-destroy.c +++ b/sysdeps/htl/sem-destroy.c @@ -19,6 +19,7 @@ #include #include +#include #include int @@ -34,10 +35,7 @@ __sem_destroy (sem_t *sem) #endif ) /* There are threads waiting on *SEM. */ - { - errno = EBUSY; - return -1; - } + return __hurd_fail (EBUSY); return 0; } diff --git a/sysdeps/htl/sem-init.c b/sysdeps/htl/sem-init.c index f04bbfd..f2954ac 100644 --- a/sysdeps/htl/sem-init.c +++ b/sysdeps/htl/sem-init.c @@ -19,6 +19,7 @@ #include #include +#include #include int @@ -26,10 +27,7 @@ __sem_init (sem_t *sem, int pshared, unsigned value) { #ifdef SEM_VALUE_MAX if (value > SEM_VALUE_MAX) - { - errno = EINVAL; - return -1; - } + return __hurd_fail (EINVAL); #endif struct new_sem *isem = (struct new_sem *) sem; diff --git a/sysdeps/htl/sem-post.c b/sysdeps/htl/sem-post.c index e283161..c57458c 100644 --- a/sysdeps/htl/sem-post.c +++ b/sysdeps/htl/sem-post.c @@ -20,6 +20,7 @@ #include #include +#include #include @@ -35,10 +36,7 @@ __sem_post (sem_t *sem) do { if ((d & SEM_VALUE_MASK) == SEM_VALUE_MAX) - { - errno = EOVERFLOW; - return -1; - } + return __hurd_fail (EOVERFLOW); } while (!atomic_compare_exchange_weak_release (&isem->data, &d, d + 1)); @@ -51,10 +49,7 @@ __sem_post (sem_t *sem) do { if ((v >> SEM_VALUE_SHIFT) == SEM_VALUE_MAX) - { - errno = EOVERFLOW; - return -1; - } + return __hurd_fail (EOVERFLOW); } while (!atomic_compare_exchange_weak_release (&isem->value, &v, v + (1 << SEM_VALUE_SHIFT))); diff --git a/sysdeps/htl/sem-trywait.c b/sysdeps/htl/sem-trywait.c index 0959092..43aa185 100644 --- a/sysdeps/htl/sem-trywait.c +++ b/sysdeps/htl/sem-trywait.c @@ -19,6 +19,7 @@ #include #include +#include #include int @@ -29,8 +30,7 @@ __sem_trywait (sem_t *sem) if (__sem_waitfast (isem, 1) == 0) return 0; - errno = EAGAIN; - return -1; + return __hurd_fail (EAGAIN); } weak_alias (__sem_trywait, sem_trywait); -- 2.7.4