[uClibc-cvs] svn commit: trunk/uClibc/libc/sysdeps/linux/mips

mjn3 at uclibc.org mjn3 at uclibc.org
Sat Jul 23 14:02:58 UTC 2005


Author: mjn3
Date: 2005-07-23 08:02:57 -0600 (Sat, 23 Jul 2005)
New Revision: 10902

Log:
Since __syscall_error is a C func, we need to store the syscall return value
in the appropriate register.  Otherwise, errno is set to random garbage.


Modified:
   trunk/uClibc/libc/sysdeps/linux/mips/clone.S


Changeset:
Modified: trunk/uClibc/libc/sysdeps/linux/mips/clone.S
===================================================================
--- trunk/uClibc/libc/sysdeps/linux/mips/clone.S	2005-07-22 19:58:32 UTC (rev 10901)
+++ trunk/uClibc/libc/sysdeps/linux/mips/clone.S	2005-07-23 14:02:57 UTC (rev 10902)
@@ -72,6 +72,11 @@
 	/* Something bad happened -- no child created */
 error:
 	addiu		sp,32
+
+	/* uClibc change -- start */
+	move		a0,v0		/* Pass return val to C function. */
+	/* uClibc change -- stop */
+
 #ifdef __PIC__
 	la		t9,__syscall_error
 	jr		t9




More information about the uClibc-cvs mailing list