For the ending vma, there is a check to make sure the end is huge page aligned. The *if* check makes sure vm_start < end <= vm_end. While the first half is not necessary, because the *for* clause makes sure vm_start < end. This patch just removes it. Signed-off-by: Wei Yang <richardw.yang@xxxxxxxxxxxxxxx> --- fs/userfaultfd.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/fs/userfaultfd.c b/fs/userfaultfd.c index 653d8f7c453c..9ce09ac619a2 100644 --- a/fs/userfaultfd.c +++ b/fs/userfaultfd.c @@ -1402,8 +1402,7 @@ static int userfaultfd_register(struct userfaultfd_ctx *ctx, * If this vma contains ending address, and huge pages * check alignment. */ - if (is_vm_hugetlb_page(cur) && end <= cur->vm_end && - end > cur->vm_start) { + if (is_vm_hugetlb_page(cur) && end <= cur->vm_end) { unsigned long vma_hpagesize = vma_kernel_pagesize(cur); ret = -EINVAL; -- 2.17.1