diff --git a/mm/maccess.c b/mm/maccess.c
index 1b13638d238d514ad7760ca680507dc8469010be..d159b1c96e484d902f6edb34ebb5a83a3977bd57 100644
--- a/mm/maccess.c
+++ b/mm/maccess.c
@@ -104,5 +104,5 @@ long strncpy_from_unsafe(char *dst, const void *unsafe_addr, long count)
 	pagefault_enable();
 	set_fs(old_fs);
 
-	return ret < 0 ? ret : src - unsafe_addr;
+	return ret ? -EFAULT : src - unsafe_addr;
 }