Index: kernel/generic/src/proc/thread.c
===================================================================
--- kernel/generic/src/proc/thread.c	(revision 05e69c59b06df4165bbd86304590e9d5f3964437)
+++ kernel/generic/src/proc/thread.c	(revision 7faabb7f6879c7279c1423c847dfaedf930cff0f)
@@ -709,5 +709,5 @@
  */
 unative_t sys_thread_create(uspace_arg_t *uspace_uarg, char *uspace_name,
-    thread_id_t *uspace_thread_id)
+    size_t name_len, thread_id_t *uspace_thread_id)
 {
 	thread_t *t;
@@ -716,7 +716,12 @@
 	int rc;
 
-	rc = copy_from_uspace(namebuf, uspace_name, THREAD_NAME_BUFLEN);
+	if (name_len >= THREAD_NAME_BUFLEN)
+		name_len = THREAD_NAME_BUFLEN - 1;
+
+	rc = copy_from_uspace(namebuf, uspace_name, name_len);
 	if (rc != 0)
 		return (unative_t) rc;
+
+	namebuf[name_len] = '\0';
 
 	/*
