Procházet zdrojové kódy

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 před 6 roky
rodič
revize
0b4c92b7ac
1 změnil soubory, kde provedl 1 přidání a 3 odebrání
  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;
 }