Browse Source

optimize raise not to make a syscall for getting tid

assuming signals are blocked, which they are here, the tid in the
thread structure is always valid and cannot change out from under us.
Rich Felker 6 years ago
parent
commit
0b4c92b7ac
1 changed files with 1 additions and 3 deletions
  1. 1 3
      src/signal/raise.c

+ 1 - 3
src/signal/raise.c

@@ -5,11 +5,9 @@
 
 int raise(int sig)
 {
-	int tid, ret;
 	sigset_t set;
 	__block_app_sigs(&set);
-	tid = __syscall(SYS_gettid);
-	ret = syscall(SYS_tkill, tid, sig);
+	int ret = syscall(SYS_tkill, __pthread_self()->tid, sig);
 	__restore_sigs(&set);
 	return ret;
 }