projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
3217d3c
)
userfaultfd: shmem: wire up shmem_mfill_zeropage_pte
author
Mike Rapoport
<
[email protected]
>
Wed, 6 Sep 2017 23:23:09 +0000
(16:23 -0700)
committer
Linus Torvalds
<
[email protected]
>
Thu, 7 Sep 2017 00:27:28 +0000
(17:27 -0700)
For shmem VMAs we can use shmem_mfill_zeropage_pte for UFFDIO_ZEROPAGE
Link:
http://lkml.kernel.org/r/
[email protected]
Signed-off-by: Mike Rapoport <
[email protected]
>
Cc: "Kirill A. Shutemov" <
[email protected]
>
Cc: Andrea Arcangeli <
[email protected]
>
Cc: Hillf Danton <
[email protected]
>
Cc: Hugh Dickins <
[email protected]
>
Cc: Pavel Emelyanov <
[email protected]
>
Signed-off-by: Andrew Morton <
[email protected]
>
Signed-off-by: Linus Torvalds <
[email protected]
>
mm/userfaultfd.c
patch
|
blob
|
history
diff --git
a/mm/userfaultfd.c
b/mm/userfaultfd.c
index 48c015c80120bf969ef33ebdfc6f232fd7613224..81192701964d36d609d015ce76cf14dbbb1a0dd9 100644
(file)
--- a/
mm/userfaultfd.c
+++ b/
mm/userfaultfd.c
@@
-389,11
+389,13
@@
static __always_inline ssize_t mfill_atomic_pte(struct mm_struct *dst_mm,
err = mfill_zeropage_pte(dst_mm, dst_pmd,
dst_vma, dst_addr);
} else {
- err = -EINVAL; /* if zeropage is true return -EINVAL */
- if (likely(!zeropage))
+ if (!zeropage)
err = shmem_mcopy_atomic_pte(dst_mm, dst_pmd,
dst_vma, dst_addr,
src_addr, page);
+ else
+ err = shmem_mfill_zeropage_pte(dst_mm, dst_pmd,
+ dst_vma, dst_addr);
}
return err;