From 2cdfb7ca26f46f151afbc23d5d94fc68597137f5 Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Sun, 13 Feb 2011 22:45:42 -0500 Subject: cleaning up syscalls in preparation for x86_64 port - hide all the legacy xxxxxx32 name cruft in syscall.h so the actual source files can be clean and uniform across all archs. - cleanup llseek/lseek and mmap2/mmap handling for 32/64 bit systems - alternate implementation for nice if the target lacks nice syscall --- src/mman/mmap.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/mman/mmap.c') diff --git a/src/mman/mmap.c b/src/mman/mmap.c index 93c76582..5be6e12d 100644 --- a/src/mman/mmap.c +++ b/src/mman/mmap.c @@ -10,7 +10,11 @@ void *__mmap(void *start, size_t len, int prot, int flags, int fd, off_t off) if (sizeof(off_t) > sizeof(long)) if (((long)off & 0xfff) | ((long)((unsigned long long)off>>(12 + 8*(sizeof(off_t)-sizeof(long)))))) start = (void *)-1; +#ifdef __NR_mmap2 return (void *)syscall6(__NR_mmap2, (long)start, len, prot, flags, fd, off>>12); +#else + return (void *)syscall6(__NR_mmap, (long)start, len, prot, flags, fd, off); +#endif } weak_alias(__mmap, mmap); -- cgit v1.2.1