From: Rich Felker Date: Wed, 16 Mar 2011 15:36:21 +0000 (-0400) Subject: cut out a syscall on thread creation in the case where guard size is 0 X-Git-Tag: v0.7.1~11 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=29fae65780f4c5ccda3758828da7a83073297ccc;p=oweals%2Fmusl.git cut out a syscall on thread creation in the case where guard size is 0 --- diff --git a/src/thread/pthread_create.c b/src/thread/pthread_create.c index 9b6385f5..7494a486 100644 --- a/src/thread/pthread_create.c +++ b/src/thread/pthread_create.c @@ -195,7 +195,7 @@ int pthread_create(pthread_t *res, const pthread_attr_t *attr, void *(*entry)(vo size += __pthread_tsd_size; map = mmap(0, size, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANON, -1, 0); if (!map) return EAGAIN; - mprotect(map, guard, PROT_NONE); + if (guard) mprotect(map, guard, PROT_NONE); tsd = map + size - __pthread_tsd_size; new = (void *)(tsd - sizeof *new - PAGE_SIZE%sizeof *new);