|
@@ -237,7 +237,7 @@ long mlock_vma_pages_range(struct vm_area_struct *vma,
|
|
|
|
|
|
if (!((vma->vm_flags & (VM_DONTEXPAND | VM_RESERVED)) ||
|
|
if (!((vma->vm_flags & (VM_DONTEXPAND | VM_RESERVED)) ||
|
|
is_vm_hugetlb_page(vma) ||
|
|
is_vm_hugetlb_page(vma) ||
|
|
- vma == get_gate_vma(current))) {
|
|
|
|
|
|
+ vma == get_gate_vma(current->mm))) {
|
|
|
|
|
|
__mlock_vma_pages_range(vma, start, end, NULL);
|
|
__mlock_vma_pages_range(vma, start, end, NULL);
|
|
|
|
|
|
@@ -332,7 +332,7 @@ static int mlock_fixup(struct vm_area_struct *vma, struct vm_area_struct **prev,
|
|
int lock = newflags & VM_LOCKED;
|
|
int lock = newflags & VM_LOCKED;
|
|
|
|
|
|
if (newflags == vma->vm_flags || (vma->vm_flags & VM_SPECIAL) ||
|
|
if (newflags == vma->vm_flags || (vma->vm_flags & VM_SPECIAL) ||
|
|
- is_vm_hugetlb_page(vma) || vma == get_gate_vma(current))
|
|
|
|
|
|
+ is_vm_hugetlb_page(vma) || vma == get_gate_vma(current->mm))
|
|
goto out; /* don't set VM_LOCKED, don't count */
|
|
goto out; /* don't set VM_LOCKED, don't count */
|
|
|
|
|
|
pgoff = vma->vm_pgoff + ((start - vma->vm_start) >> PAGE_SHIFT);
|
|
pgoff = vma->vm_pgoff + ((start - vma->vm_start) >> PAGE_SHIFT);
|