From 435e2bdeb478ef679041b226f1f3ede3ab2deace Mon Sep 17 00:00:00 2001 From: Balazs Gerofi Date: Tue, 24 May 2016 09:39:04 +0900 Subject: [PATCH] support for Linux 4.6: use get_user_pages_remote() --- executer/kernel/mcctrl/binfmt_mcexec.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/executer/kernel/mcctrl/binfmt_mcexec.c b/executer/kernel/mcctrl/binfmt_mcexec.c index 99ac20d5..56efae0f 100644 --- a/executer/kernel/mcctrl/binfmt_mcexec.c +++ b/executer/kernel/mcctrl/binfmt_mcexec.c @@ -120,9 +120,15 @@ static int load_elf(struct linux_binprm *bprm for(i = 0, st = 0; mode != 2;){ if(st == 0){ off = p & ~PAGE_MASK; +#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,6,0) + rc = get_user_pages_remote(current, bprm->mm, + bprm->p, 1, 0, 1, + &page, NULL); +#else rc = get_user_pages(current, bprm->mm, bprm->p, 1, 0, 1, &page, NULL); +#endif if(rc <= 0) return -EFAULT; addr = kmap_atomic(page