summaryrefslogtreecommitdiff
path: root/toolchain/uClibc/patches/xxx-n32-pread_pwrite.patch
blob: a4571f27d24ea8f1dc8b4ca30d51a003f4f4d827 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
Uclibc is not building for MIPS N64 because pread is trying to use the
pread/pwrite system calls instead of pread64/pwrite64.  This patch fixes
the problem and was tested with LFS enabled and disabled.

Signed-off-by: Steve Ellcey <sellcey@mips.com>
---
 libc/sysdeps/linux/mips/pread_write.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libc/sysdeps/linux/mips/pread_write.c b/libc/sysdeps/linux/mips/pread_write.c
index 3dc97c9..1220fec 100644
--- a/libc/sysdeps/linux/mips/pread_write.c
+++ b/libc/sysdeps/linux/mips/pread_write.c
@@ -13,14 +13,14 @@
 /* We should generalize this for 32bit userlands w/64bit regs.  This applies
  * to the x86_64 x32 and the mips n32 ABIs.  */
 #if _MIPS_SIM == _MIPS_SIM_NABI32
-# define __NR___syscall_pread __NR_pread
+# define __NR___syscall_pread __NR_pread64
 static _syscall4(ssize_t, __syscall_pread, int, fd, void *, buf, size_t, count, off_t, offset)
 # define MY_PREAD(fd, buf, count, offset) \
 	__syscall_pread(fd, buf, count, offset)
 # define MY_PREAD64(fd, buf, count, offset) \
 	__syscall_pread(fd, buf, count, offset)
 
-# define __NR___syscall_pwrite __NR_pwrite
+# define __NR___syscall_pwrite __NR_pwrite64
 static _syscall4(ssize_t, __syscall_pwrite, int, fd, const void *, buf, size_t, count, off_t, offset)
 # define MY_PWRITE(fd, buf, count, offset) \
 	__syscall_pwrite(fd, buf, count, offset)
-- 
1.7.9.5