about summary refs log tree commit diff stats
path: root/src/libtools/threads.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libtools/threads.c')
-rwxr-xr-xsrc/libtools/threads.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/libtools/threads.c b/src/libtools/threads.c
index 3293edbd..b3e208fd 100755
--- a/src/libtools/threads.c
+++ b/src/libtools/threads.c
@@ -258,6 +258,14 @@ EXPORT int my_pthread_attr_setstack(x64emu_t* emu, void* attr, void* stackaddr,
 	return pthread_attr_setstacksize(attr, stacksize);
 }
 
+EXPORT int my_pthread_attr_setstacksize(x64emu_t* emu, void* attr, size_t stacksize)
+{
+	//aarch64 have an PTHREAD_STACK_MIN of 131072 instead of 16384 on x86_64!
+	if(stacksize<PTHREAD_STACK_MIN)
+		stacksize = PTHREAD_STACK_MIN;
+	return pthread_attr_setstacksize(attr, stacksize);
+}
+
 EXPORT int my_pthread_create(x64emu_t *emu, void* t, void* attr, void* start_routine, void* arg)
 {
 	int stacksize = 2*1024*1024;	//default stack size is 2Mo