Merge pull request #6946 from hkuno/intercept_mmap_fix
v4.0.x: Fix mmap infinite recurse in memory patcher
Этот коммит содержится в:
Коммит
c6fe859c28
@ -40,10 +40,6 @@ AC_DEFUN([MCA_opal_memory_patcher_CONFIG],[
|
||||
|
||||
AC_CHECK_HEADERS([linux/mman.h sys/syscall.h])
|
||||
|
||||
AC_CHECK_DECLS([__mmap], [], [], [#include <sys/mman.h>])
|
||||
|
||||
AC_CHECK_FUNCS([__mmap])
|
||||
|
||||
AC_CHECK_DECLS([__syscall], [], [], [#include <sys/syscall.h>])
|
||||
|
||||
AC_CHECK_FUNCS([__syscall])
|
||||
|
@ -125,12 +125,7 @@ static void *_intercept_mmap(void *start, size_t length, int prot, int flags, in
|
||||
}
|
||||
|
||||
if (!original_mmap) {
|
||||
#ifdef HAVE___MMAP
|
||||
/* the darwin syscall returns an int not a long so call the underlying __mmap function */
|
||||
result = __mmap (start, length, prot, flags, fd, offset);
|
||||
#else
|
||||
result = (void*)(intptr_t) memory_patcher_syscall(SYS_mmap, start, length, prot, flags, fd, offset);
|
||||
#endif
|
||||
} else {
|
||||
result = original_mmap (start, length, prot, flags, fd, offset);
|
||||
}
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user