From 8b48f745be1e086d6e486bbb8167e770f3d1fbc5 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 30 Jun 2010 04:10:37 -0700 Subject: mips/syscall-error: Choose the correct version for setting up errno. * Current function is a C protype and PSEUDO macro does not transfer syscall return parameters to correct argument registers for a C function. This causes problem with syscalls setting wrong value for errno when they encounter an error. * Fixes PR/2089 for mips/nptl Signed-off-by: Khem Raj --- libc/sysdeps/linux/mips/Makefile.arch | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'libc/sysdeps/linux/mips/Makefile.arch') diff --git a/libc/sysdeps/linux/mips/Makefile.arch b/libc/sysdeps/linux/mips/Makefile.arch index e8925e438..8bbc0bc19 100644 --- a/libc/sysdeps/linux/mips/Makefile.arch +++ b/libc/sysdeps/linux/mips/Makefile.arch @@ -6,11 +6,11 @@ # CSRC := \ - __longjmp.c brk.c setjmp_aux.c mmap.c __syscall_error.c \ + __longjmp.c brk.c setjmp_aux.c mmap.c \ cacheflush.c pread_write.c sysmips.c _test_and_set.c \ readahead.c -SSRC := bsd-_setjmp.S bsd-setjmp.S setjmp.S syscall.S pipe.S +SSRC := bsd-_setjmp.S bsd-setjmp.S setjmp.S syscall.S pipe.S syscall_error.S ifeq ($(UCLIBC_HAS_ADVANCED_REALTIME),y) CSRC += posix_fadvise.c posix_fadvise64.c @@ -21,6 +21,7 @@ CSRC += sigaction.c SSRC += vfork.S clone.S endif +ASFLAGS-syscall_error.S += -D_LIBC_REENTRANT ARCH_HEADERS := sgidefs.h # regdef.h -- cgit v1.2.3