mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 19:21:31 -04:00
mm: make do_mmap_pgoff return populate as a size in bytes, not as a bool
do_mmap_pgoff() rounds up the desired size to the next PAGE_SIZE multiple, however there was no equivalent code in mm_populate(), which caused issues. This could be fixed by introduced the same rounding in mm_populate(), however I think it's preferable to make do_mmap_pgoff() return populate as a size rather than as a boolean, so we don't have to duplicate the size rounding logic in mm_populate(). Signed-off-by: Michel Lespinasse <[email protected]> Acked-by: Rik van Riel <[email protected]> Tested-by: Andy Lutomirski <[email protected]> Cc: Greg Ungerer <[email protected]> Cc: David Howells <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
This commit is contained in:
parent
1869305009
commit
41badc15cb
6 changed files with 13 additions and 14 deletions
|
|
@ -355,7 +355,7 @@ unsigned long vm_mmap_pgoff(struct file *file, unsigned long addr,
|
|||
{
|
||||
unsigned long ret;
|
||||
struct mm_struct *mm = current->mm;
|
||||
bool populate;
|
||||
unsigned long populate;
|
||||
|
||||
ret = security_mmap_file(file, prot, flag);
|
||||
if (!ret) {
|
||||
|
|
@ -363,8 +363,8 @@ unsigned long vm_mmap_pgoff(struct file *file, unsigned long addr,
|
|||
ret = do_mmap_pgoff(file, addr, len, prot, flag, pgoff,
|
||||
&populate);
|
||||
up_write(&mm->mmap_sem);
|
||||
if (!IS_ERR_VALUE(ret) && populate)
|
||||
mm_populate(ret, len);
|
||||
if (populate)
|
||||
mm_populate(ret, populate);
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue