summary refs log tree commit diff
path: root/nptl
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2020-02-09 16:38:33 +0100
committerFlorian Weimer <fweimer@redhat.com>2020-03-03 12:49:44 +0100
commitb03604b1b8c92d9af2d61d09654b06fccdeac8d5 (patch)
treed5daaddb97a467e429942e28f0470c26df21c427 /nptl
parent75376039be338702ed8904800fdcd3f1bc103ca7 (diff)
downloadglibc-b03604b1b8c92d9af2d61d09654b06fccdeac8d5.tar.gz
glibc-b03604b1b8c92d9af2d61d09654b06fccdeac8d5.tar.xz
glibc-b03604b1b8c92d9af2d61d09654b06fccdeac8d5.zip
Linux: set_robust_list syscall number is always available
Due to the built-in tables, __NR_set_robust_list is always defined
(although it may not be available at run time).

Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Diffstat (limited to 'nptl')
-rw-r--r--nptl/nptl-init.c4
-rw-r--r--nptl/pthread_create.c6
2 files changed, 2 insertions, 8 deletions
diff --git a/nptl/nptl-init.c b/nptl/nptl-init.c
index 95ac91df15..96b1444a01 100644
--- a/nptl/nptl-init.c
+++ b/nptl/nptl-init.c
@@ -117,10 +117,8 @@ static
 void
 __nptl_set_robust (struct pthread *self)
 {
-#ifdef __NR_set_robust_list
   INTERNAL_SYSCALL_CALL (set_robust_list, &self->robust_head,
 			 sizeof (struct robust_list_head));
-#endif
 }
 
 
@@ -240,14 +238,12 @@ __pthread_initialize_minimal_internal (void)
     pd->robust_prev = &pd->robust_head;
 #endif
     pd->robust_head.list = &pd->robust_head;
-#ifdef __NR_set_robust_list
     pd->robust_head.futex_offset = (offsetof (pthread_mutex_t, __data.__lock)
 				    - offsetof (pthread_mutex_t,
 						__data.__list.__next));
     int res = INTERNAL_SYSCALL_CALL (set_robust_list, &pd->robust_head,
 				     sizeof (struct robust_list_head));
     if (INTERNAL_SYSCALL_ERROR_P (res))
-#endif
       set_robust_list_not_avail ();
   }
 
diff --git a/nptl/pthread_create.c b/nptl/pthread_create.c
index 8614ec63f8..7c752d0f99 100644
--- a/nptl/pthread_create.c
+++ b/nptl/pthread_create.c
@@ -389,17 +389,15 @@ START_THREAD_DEFN
   if (__glibc_unlikely (atomic_exchange_acq (&pd->setxid_futex, 0) == -2))
     futex_wake (&pd->setxid_futex, 1, FUTEX_PRIVATE);
 
-#ifdef __NR_set_robust_list
-# ifndef __ASSUME_SET_ROBUST_LIST
+#ifndef __ASSUME_SET_ROBUST_LIST
   if (__set_robust_list_avail >= 0)
-# endif
+#endif
     {
       /* This call should never fail because the initial call in init.c
 	 succeeded.  */
       INTERNAL_SYSCALL_CALL (set_robust_list, &pd->robust_head,
 			     sizeof (struct robust_list_head));
     }
-#endif
 
   /* If the parent was running cancellation handlers while creating
      the thread the new thread inherited the signal mask.  Reset the