diff --git a/executer/kernel/mcctrl/syscall.c b/executer/kernel/mcctrl/syscall.c index a0a464bf..b7e974f7 100644 --- a/executer/kernel/mcctrl/syscall.c +++ b/executer/kernel/mcctrl/syscall.c @@ -692,14 +692,20 @@ static int rus_vm_fault(struct vm_area_struct *vma, struct vm_fault *vmf) vma->vm_start, vma->vm_end, pgsize, pix); } } - else + else { #if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 18, 0) error = vmf_insert_pfn(vma, rva+(pix*PAGE_SIZE), pfn+pix); + if (error == VM_FAULT_NOPAGE) { + dprintk("%s: vmf_insert_pfn returned %d\n", + __func__, error); + error = 0; + } #else error = vm_insert_pfn(vma, rva+(pix*PAGE_SIZE), pfn+pix); #endif + } if (error) { pr_err("%s: vm_insert_pfn returned %d\n", __func__, error);