Revert "Clean up our alternate signal stacks."

This reverts commit 5cf87951abd23b0b3ebf159e8aa06b02e39527ca.

Change-Id: Idd6ca7d80a018755da3bd315d91193723ce7f3bf
This commit is contained in:
Guang Zhu 2013-07-17 03:16:04 +00:00
parent 5cf87951ab
commit eb1b07469f
3 changed files with 0 additions and 16 deletions

View File

@ -31,7 +31,6 @@
#include <errno.h>
#include <limits.h>
#include <sys/atomics.h>
#include <sys/mman.h>
#include <unistd.h>
#include "bionic_atomic_inline.h"
@ -103,18 +102,6 @@ void pthread_exit(void * retval)
// space (see pthread_key_delete)
pthread_key_clean_all();
if (thread->alternate_signal_stack != NULL) {
// Tell the kernel to stop using the alternate signal stack.
stack_t ss;
ss.ss_sp = NULL;
ss.ss_flags = SS_DISABLE;
sigaltstack(&ss, NULL);
// Free it.
munmap(thread->alternate_signal_stack, SIGSTKSZ);
thread->alternate_signal_stack = NULL;
}
// if the thread is detached, destroy the pthread_internal_t
// otherwise, keep it in memory and signal any joiners.
pthread_mutex_lock(&gThreadListLock);

View File

@ -69,7 +69,6 @@ void __init_tls(pthread_internal_t* thread) {
ss.ss_size = SIGSTKSZ;
ss.ss_flags = 0;
sigaltstack(&ss, NULL);
thread->alternate_signal_stack = ss.ss_sp;
}
// Slot 0 must point to itself. The x86 Linux kernel reads the TLS from %fs:0.

View File

@ -47,8 +47,6 @@ typedef struct pthread_internal_t
__pthread_cleanup_t* cleanup_stack;
void** tls; /* thread-local storage area */
void* alternate_signal_stack;
/*
* The dynamic linker implements dlerror(3), which makes it hard for us to implement this
* per-thread buffer by simply using malloc(3) and free(3).