Blob Blame History Raw
commit 79c6be6a0ad59e28cfb73ad6cae6b073e22836e3
Author: Florian Weimer <fweimer@redhat.com>
Date:   Thu Feb 4 15:00:20 2021 +0100

    nptl: Remove private futex optimization [BZ #27304]
    
    It is effectively used, unexcept for pthread_cond_destroy, where we do
    not want it; see bug 27304.  The internal locks do not support a
    process-shared mode.
    
    This fixes commit dc6cfdc934db9997c33728082d63552b9eee4563 ("nptl:
    Move pthread_cond_destroy implementation into libc").
    
    Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
    (cherry picked from commit c4ad832276f4dadfa40904109b26a521468f66bc)

diff --git a/sysdeps/nptl/lowlevellock-futex.h b/sysdeps/nptl/lowlevellock-futex.h
index ecb729da6b838773..ca96397a4a925b8b 100644
--- a/sysdeps/nptl/lowlevellock-futex.h
+++ b/sysdeps/nptl/lowlevellock-futex.h
@@ -50,20 +50,8 @@
 #define LLL_SHARED	FUTEX_PRIVATE_FLAG
 
 #ifndef __ASSEMBLER__
-
-# if IS_IN (libc) || IS_IN (rtld)
-/* In libc.so or ld.so all futexes are private.  */
-#  define __lll_private_flag(fl, private)			\
-  ({								\
-    /* Prevent warnings in callers of this macro.  */		\
-    int __lll_private_flag_priv __attribute__ ((unused));	\
-    __lll_private_flag_priv = (private);			\
-    ((fl) | FUTEX_PRIVATE_FLAG);				\
-  })
-# else
-#  define __lll_private_flag(fl, private) \
+# define __lll_private_flag(fl, private) \
   (((fl) | FUTEX_PRIVATE_FLAG) ^ (private))
-# endif
 
 # define lll_futex_syscall(nargs, futexp, op, ...)                      \
   ({                                                                    \