diff options
Diffstat (limited to 'mm/mlock.c')
| -rw-r--r-- | mm/mlock.c | 11 | 
1 files changed, 5 insertions, 6 deletions
diff --git a/mm/mlock.c b/mm/mlock.c index 1c5e33fce63..79b7cf7d1bc 100644 --- a/mm/mlock.c +++ b/mm/mlock.c @@ -358,7 +358,7 @@ static int do_mlock(unsigned long start, size_t len, int on)  		newflags = vma->vm_flags & ~VM_LOCKED;  		if (on) -			newflags |= VM_LOCKED | VM_POPULATE; +			newflags |= VM_LOCKED;  		tmp = vma->vm_end;  		if (tmp > end) @@ -418,8 +418,7 @@ int __mm_populate(unsigned long start, unsigned long len, int ignore_errors)  		 * range with the first VMA. Also, skip undesirable VMA types.  		 */  		nend = min(end, vma->vm_end); -		if ((vma->vm_flags & (VM_IO | VM_PFNMAP | VM_POPULATE)) != -		    VM_POPULATE) +		if (vma->vm_flags & (VM_IO | VM_PFNMAP))  			continue;  		if (nstart < vma->vm_start)  			nstart = vma->vm_start; @@ -492,9 +491,9 @@ static int do_mlockall(int flags)  	struct vm_area_struct * vma, * prev = NULL;  	if (flags & MCL_FUTURE) -		current->mm->def_flags |= VM_LOCKED | VM_POPULATE; +		current->mm->def_flags |= VM_LOCKED;  	else -		current->mm->def_flags &= ~(VM_LOCKED | VM_POPULATE); +		current->mm->def_flags &= ~VM_LOCKED;  	if (flags == MCL_FUTURE)  		goto out; @@ -503,7 +502,7 @@ static int do_mlockall(int flags)  		newflags = vma->vm_flags & ~VM_LOCKED;  		if (flags & MCL_CURRENT) -			newflags |= VM_LOCKED | VM_POPULATE; +			newflags |= VM_LOCKED;  		/* Ignore errors */  		mlock_fixup(vma, &prev, vma->vm_start, vma->vm_end, newflags);  |