fix compile regression in exit on archs without SYS_pause
commit 8cca79a72c added use of SYS_pause
to exit() without accounting for newer archs omitting the syscall.
use the newly-added __sys_pause abstraction instead, which uses
SYS_ppoll when SYS_pause is missing.
This commit is contained in:
+1
-1
@@ -38,7 +38,7 @@ _Noreturn void exit(int code)
|
||||
int tid = __pthread_self()->tid;
|
||||
int prev = a_cas(exit_lock, 0, tid);
|
||||
if (prev == tid) a_crash();
|
||||
else if (prev) for (;;) __syscall(SYS_pause);
|
||||
else if (prev) for (;;) __sys_pause();
|
||||
|
||||
__funcs_on_exit();
|
||||
__libc_exit_fini();
|
||||
|
||||
Reference in New Issue
Block a user