Thread (18 messages) 18 messages, 4 authors, 2016-02-10

Re: [PATCH 2/3] mm: Convert vm_insert_pfn_prot to vmf_insert_pfn_prot

From: Andy Lutomirski <luto@amacapital.net>
Date: 2016-01-25 17:35:58
Also in: lkml

On Mon, Jan 25, 2016 at 9:25 AM, Matthew Wilcox
[off-list ref] wrote:
quoted hunk ↗ jump to hunk
From: Matthew Wilcox <redacted>

Other than the name, the vmf_ version takes a pfn_t parameter, and
returns a VM_FAULT_ code suitable for returning from a fault handler.

This patch also prevents vm_insert_pfn() from returning -EBUSY.
This is a good thing as several callers handled it incorrectly (and
none intentionally treat -EBUSY as a different case from 0).

Signed-off-by: Matthew Wilcox <redacted>
---
 arch/x86/entry/vdso/vma.c |  6 +++---
 include/linux/mm.h        |  4 ++--
 mm/memory.c               | 31 ++++++++++++++++++-------------
 3 files changed, 23 insertions(+), 18 deletions(-)
diff --git a/arch/x86/entry/vdso/vma.c b/arch/x86/entry/vdso/vma.c
index 7c912fe..660bb69 100644
--- a/arch/x86/entry/vdso/vma.c
+++ b/arch/x86/entry/vdso/vma.c
@@ -9,6 +9,7 @@
 #include <linux/sched.h>
 #include <linux/slab.h>
 #include <linux/init.h>
+#include <linux/pfn_t.h>
 #include <linux/random.h>
 #include <linux/elf.h>
 #include <linux/cpu.h>
@@ -131,10 +132,9 @@ static int vvar_fault(const struct vm_special_mapping *sm,
        } else if (sym_offset == image->sym_hpet_page) {
 #ifdef CONFIG_HPET_TIMER
                if (hpet_address && vclock_was_used(VCLOCK_HPET)) {
-                       ret = vm_insert_pfn_prot(
-                               vma,
+                       return vmf_insert_pfn_prot(vma,
                                (unsigned long)vmf->virtual_address,
-                               hpet_address >> PAGE_SHIFT,
+                               phys_to_pfn_t(hpet_address, PFN_DEV),
                                pgprot_noncached(PAGE_READONLY));
                }
This would be even nicer if you added vmf_insert_pfn as well :)

--Andy

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help