fix pthread_create regression from stack/guard size simplification

commit 33ce920857405d4f4b342c85b74588a15e2702e5 broke pthread_create
in the case where a null attribute pointer is passed; rather than
using the default sizes, sizes of 0 (plus the remainder of one page
after TLS/TCB use) were used.
diff --git a/src/thread/pthread_create.c b/src/thread/pthread_create.c
index db9e575..e8d4a63 100644
--- a/src/thread/pthread_create.c
+++ b/src/thread/pthread_create.c
@@ -186,7 +186,10 @@
 		| CLONE_THREAD | CLONE_SYSVSEM | CLONE_SETTLS
 		| CLONE_PARENT_SETTID | CLONE_CHILD_CLEARTID | CLONE_DETACHED;
 	int do_sched = 0;
-	pthread_attr_t attr = {0};
+	pthread_attr_t attr = {
+		._a_stacksize = DEFAULT_STACK_SIZE,
+		._a_guardsize = DEFAULT_GUARD_SIZE,
+	};
 
 	if (!libc.can_do_threads) return ENOSYS;
 	self = __pthread_self();