Index: kernel/generic/src/syscall/copy.c
===================================================================
--- kernel/generic/src/syscall/copy.c	(revision 1433ecda9b732f3f185f902feb26826ec2496e03)
+++ kernel/generic/src/syscall/copy.c	(revision 86b70c6fa1a6e0fc138e6294cb6cfe8bda4535d3)
@@ -90,10 +90,10 @@
 	THREAD->in_copy_from_uspace = true;
 
-	rc = memcpy_from_uspace(dst, uspace_src, size);
+	rc = !memcpy_from_uspace(dst, uspace_src, size) ? EPERM : EOK;
 
 	THREAD->in_copy_from_uspace = false;
 
 	interrupts_restore(ipl);
-	return !rc ? EPERM : EOK;
+	return rc;
 }
 
@@ -141,10 +141,10 @@
 	THREAD->in_copy_to_uspace = true;
 
-	rc = memcpy_to_uspace(uspace_dst, src, size);
+	rc = !memcpy_to_uspace(uspace_dst, src, size) ? EPERM : EOK;
 
 	THREAD->in_copy_to_uspace = false;
 
 	interrupts_restore(ipl);
-	return !rc ? EPERM : 0;
+	return rc;
 }
 
