[PATCH] Remove unnecessary call to pthread_mutexattr_setpshared()

Mark Seaborn mseaborn at chromium.org
Mon Jan 27 14:16:40 PST 2014


Hi chandlerc,

Remove unnecessary call to pthread_mutexattr_setpshared()

The default value of this attribute is PTHREAD_PROCESS_PRIVATE, so
there's no point in calling pthread_mutexattr_setpshared() to set
that.

See: http://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_mutexattr_getpshared.html

This removes some ifdefs that tend to need to be extended for other
platforms (e.g. for NaCl).

Note that this call was in the first implementation of Mutex, added in
r22403, so it doesn't appear to have been added in response to a
performance problem.


http://llvm-reviews.chandlerc.com/D2633

Files:
  lib/Support/Mutex.cpp

Index: lib/Support/Mutex.cpp
===================================================================
--- lib/Support/Mutex.cpp
+++ lib/Support/Mutex.cpp
@@ -59,13 +59,6 @@
   errorcode = pthread_mutexattr_settype(&attr, kind);
   assert(errorcode == 0);
 
-#if !defined(__FreeBSD__) && !defined(__OpenBSD__) && !defined(__NetBSD__) && \
-    !defined(__DragonFly__) && !defined(__Bitrig__)
-  // Make it a process local mutex
-  errorcode = pthread_mutexattr_setpshared(&attr, PTHREAD_PROCESS_PRIVATE);
-  assert(errorcode == 0);
-#endif
-
   // Initialize the mutex
   errorcode = pthread_mutex_init(mutex, &attr);
   assert(errorcode == 0);
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D2633.1.patch
Type: text/x-patch
Size: 639 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140127/a659acfd/attachment.bin>


More information about the llvm-commits mailing list