Fix mmap syscall on s390
mmap arguments must be passed in an array on s390. Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
This commit is contained in:
parent
b7607ee7d4
commit
e40c7f231a
|
@ -61,7 +61,13 @@
|
||||||
static inline void* do_mmap64(void *start, size_t length,
|
static inline void* do_mmap64(void *start, size_t length,
|
||||||
int prot, int flags,
|
int prot, int flags,
|
||||||
int fd, off64_t offset) __THROW {
|
int fd, off64_t offset) __THROW {
|
||||||
|
#if defined(__s390__)
|
||||||
|
long args[6] = { (long)start, (long)length, (long)prot, (long)flags,
|
||||||
|
(long)fd, (long)offset };
|
||||||
|
return (void*)syscall(SYS_mmap, args);
|
||||||
|
#else
|
||||||
return (void*)syscall(SYS_mmap, start, length, prot, flags, fd, offset);
|
return (void*)syscall(SYS_mmap, start, length, prot, flags, fd, offset);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#define MALLOC_HOOK_HAVE_DO_MMAP64 1
|
#define MALLOC_HOOK_HAVE_DO_MMAP64 1
|
||||||
|
|
Loading…
Reference in New Issue