support: Fix support_set_small_thread_stack_size to build on Hurd

PTHREAD_STACK_MIN comes from <limits.h>, so include it explicitly.
However, it is not defined on Hurd, so compensate for that as well.

Built on x86_64-linux-gnu, i686-linux-gnu, i686-gnu.

Change-Id: Ifacc888ef86731c2639721b0932ae59583bd6b3e
Reviewed-by: Christian Brauner <christian.brauner@ubuntu.com>
This commit is contained in:
Florian Weimer 2019-11-12 20:04:36 +01:00
parent d4625a19fe
commit 02132c0f4c

View File

@ -16,9 +16,9 @@
License along with the GNU C Library; if not, see License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */ <https://www.gnu.org/licenses/>. */
#include <limits.h>
#include <pthread.h> #include <pthread.h>
#include <support/xthread.h> #include <support/xthread.h>
#include <sys/param.h>
void void
support_set_small_thread_stack_size (pthread_attr_t *attr) support_set_small_thread_stack_size (pthread_attr_t *attr)
@ -26,5 +26,10 @@ support_set_small_thread_stack_size (pthread_attr_t *attr)
/* Some architectures have too small values for PTHREAD_STACK_MIN /* Some architectures have too small values for PTHREAD_STACK_MIN
which cannot be used for creating threads. Ensure that the stack which cannot be used for creating threads. Ensure that the stack
size is at least 256 KiB. */ size is at least 256 KiB. */
xpthread_attr_setstacksize (attr, MAX (256 * 1024, PTHREAD_STACK_MIN)); size_t stack_size = 256 * 1024;
#ifdef PTHREAD_STACK_MIN
if (stack_size < PTHREAD_STACK_MIN)
stack_size = PTHREAD_STACK_MIN;
#endif
xpthread_attr_setstacksize (attr, stack_size);
} }