commit-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[hurd, commited] htl: Destroy thread-specific data before releasing join


From: Samuel Thibault
Subject: [hurd, commited] htl: Destroy thread-specific data before releasing joins
Date: Mon, 14 Feb 2022 19:29:43 +0100

Applications may want to assume that after pthread_join() returns, all
thread-specific data has been released.
---
 htl/pt-exit.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/htl/pt-exit.c b/htl/pt-exit.c
index db1c14c520..f0759c8738 100644
--- a/htl/pt-exit.c
+++ b/htl/pt-exit.c
@@ -54,6 +54,9 @@ __pthread_exit (void *status)
     /* We are the last thread.  */
     exit (0);
 
+  /* Destroy any thread specific data.  */
+  __pthread_destroy_specific (self);
+
   /* Note that after this point the process can be terminated at any
      point if another thread calls `pthread_exit' and happens to be
      the last thread.  */
@@ -92,9 +95,6 @@ __pthread_exit (void *status)
       break;
     }
 
-  /* Destroy any thread specific data.  */
-  __pthread_destroy_specific (self);
-
   /* Destroy any signal state.  */
   __pthread_sigstate_destroy (self);
 
-- 
2.34.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]