Linux VM_UFFD_缺少什么语义?
我正在阅读Linux内核的页面错误处理程序(Linux VM_UFFD_缺少什么语义?,linux,linux-kernel,page-fault,Linux,Linux Kernel,Page Fault,我正在阅读Linux内核的页面错误处理程序(Linux-4.14.198),并注意到以下代码块: /* Deliver the page fault to userland, check inside PT lock */ if (userfaultfd_missing(vma)) { pte_unmap_unlock(vmf->pte, vmf->ptl); return handle_userfaul
Linux-4.14.198
),并注意到以下代码块:
/* Deliver the page fault to userland, check inside PT lock */
if (userfaultfd_missing(vma)) {
pte_unmap_unlock(vmf->pte, vmf->ptl);
return handle_userfault(vmf, VM_UFFD_MISSING);
}
userfaultfd\u missing
的定义是vm\u标志
包括vm\u UFFD\u missing
。但是,此标志上的唯一注释是宏定义上的晦涩的缺少页面跟踪
注释
这个标志意味着什么,以及“userfault”处理到底是什么?现在,内核可以像以前一样自行处理页面错误,或者使用用户空间助手。这似乎对虚拟机非常有用。