public inbox for glibc-cvs@sourceware.org
help / color / mirror / Atom feed
From: Adhemerval Zanella <azanella@sourceware.org>
To: glibc-cvs@sourceware.org
Subject: [glibc/azanella/clang] linux: Adequate tst-clone3 to c11 atomics
Date: Fri, 13 May 2022 14:23:40 +0000 (GMT)	[thread overview]
Message-ID: <20220513142340.1BFBF396E03B@sourceware.org> (raw)

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=dbc3cb0cd5555307666254a6b2898ac4f052b191

commit dbc3cb0cd5555307666254a6b2898ac4f052b191
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date:   Fri Mar 25 11:27:46 2022 -0300

    linux: Adequate tst-clone3 to c11 atomics

Diff:
---
 sysdeps/unix/sysv/linux/tst-clone3-internal.c | 8 +++-----
 sysdeps/unix/sysv/linux/tst-clone3.c          | 8 +++-----
 2 files changed, 6 insertions(+), 10 deletions(-)

diff --git a/sysdeps/unix/sysv/linux/tst-clone3-internal.c b/sysdeps/unix/sysv/linux/tst-clone3-internal.c
index a5002a8fcc..d010011033 100644
--- a/sysdeps/unix/sysv/linux/tst-clone3-internal.c
+++ b/sysdeps/unix/sysv/linux/tst-clone3-internal.c
@@ -45,16 +45,14 @@ f (void *a)
    implementation.  */
 #define wait_tid(ctid_ptr, ctid_val)					\
   do {									\
-    __typeof (*(ctid_ptr)) __tid;					\
     /* We need acquire MO here so that we synchronize with the		\
        kernel's store to 0 when the clone terminates.  */		\
-    while ((__tid = atomic_load_explicit (ctid_ptr,			\
-					  memory_order_acquire)) != 0)	\
+    while (atomic_load_explicit (ctid_ptr, memory_order_acquire) != 0)	\
       futex_wait (ctid_ptr, ctid_val);					\
   } while (0)
 
 static inline int
-futex_wait (int *futexp, int val)
+futex_wait (_Atomic pid_t *futexp, int val)
 {
 #ifdef __NR_futex
   return syscall (__NR_futex, futexp, FUTEX_WAIT, val);
@@ -75,7 +73,7 @@ do_test (void)
   /* Initialize with a known value.  ctid is set to zero by the kernel after the
      cloned thread has exited.  */
 #define CTID_INIT_VAL 1
-  pid_t ctid = CTID_INIT_VAL;
+  _Atomic pid_t ctid = CTID_INIT_VAL;
   pid_t tid;
 
   struct clone_args clone_args =
diff --git a/sysdeps/unix/sysv/linux/tst-clone3.c b/sysdeps/unix/sysv/linux/tst-clone3.c
index 6390fe26e8..392fd19795 100644
--- a/sysdeps/unix/sysv/linux/tst-clone3.c
+++ b/sysdeps/unix/sysv/linux/tst-clone3.c
@@ -45,16 +45,14 @@ f (void *a)
    implementation.  */
 #define wait_tid(ctid_ptr, ctid_val)					\
   do {									\
-    __typeof (*(ctid_ptr)) __tid;					\
     /* We need acquire MO here so that we synchronize with the		\
        kernel's store to 0 when the clone terminates.  */		\
-    while ((__tid = atomic_load_explicit (ctid_ptr,			\
-					  memory_order_acquire)) != 0)	\
+    while (atomic_load_explicit (ctid_ptr, memory_order_acquire) != 0)	\
       futex_wait (ctid_ptr, ctid_val);					\
   } while (0)
 
 static inline int
-futex_wait (int *futexp, int val)
+futex_wait (_Atomic pid_t *futexp, int val)
 {
 #ifdef __NR_futex
   return syscall (__NR_futex, futexp, FUTEX_WAIT, val);
@@ -75,7 +73,7 @@ do_test (void)
   /* Initialize with a known value.  ctid is set to zero by the kernel after the
      cloned thread has exited.  */
 #define CTID_INIT_VAL 1
-  pid_t ctid = CTID_INIT_VAL;
+  _Atomic pid_t ctid = CTID_INIT_VAL;
   pid_t tid;
 
 #ifdef __ia64__


             reply	other threads:[~2022-05-13 14:23 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-13 14:23 Adhemerval Zanella [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-04-17 20:10 Adhemerval Zanella
2024-04-02 15:56 Adhemerval Zanella
2024-02-09 17:35 Adhemerval Zanella
2024-02-07 14:10 Adhemerval Zanella
2024-01-29 18:00 Adhemerval Zanella
2023-12-21 18:57 Adhemerval Zanella
2023-09-28 17:55 Adhemerval Zanella
2023-08-30 12:39 Adhemerval Zanella
2023-02-09 19:51 Adhemerval Zanella
2022-10-28 17:44 Adhemerval Zanella
2022-10-04 13:02 Adhemerval Zanella
2022-06-09 21:23 Adhemerval Zanella
2022-06-09 13:20 Adhemerval Zanella
2022-06-03 14:09 Adhemerval Zanella
2022-05-12 19:37 Adhemerval Zanella
2022-05-10 18:27 Adhemerval Zanella
2022-04-29 14:07 Adhemerval Zanella
2022-04-04 12:58 Adhemerval Zanella
2022-03-31 19:10 Adhemerval Zanella
2022-03-29 20:34 Adhemerval Zanella

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220513142340.1BFBF396E03B@sourceware.org \
    --to=azanella@sourceware.org \
    --cc=glibc-cvs@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).