aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefano Stabellini <stefano.stabellini@eu.citrix.com>2012-04-03 13:05:47 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-04-27 12:51:05 -0400
commit7e2ec6cfa0c831986c602f136b5c88ed4d252dfe (patch)
tree770f2c8a0f96ea2277c078b3a3c2067722f231a1
parentd9d0d9edd528ea9a30b6b469b230a45accd4f4ba (diff)
xen/gntdev: do not set VM_PFNMAP
commit e8e937be971d706061dc56220ff3605ab77622a7 upstream. Since we are using the m2p_override we do have struct pages corresponding to the user vma mmap'ed by gntdev. Removing the VM_PFNMAP flag makes get_user_pages work on that vma. An example test case would be using a Xen userspace block backend (QDISK) on a file on NFS using O_DIRECT. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/xen/gntdev.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/xen/gntdev.c b/drivers/xen/gntdev.c
index f914b26cf0c..b4e830eb3f2 100644
--- a/drivers/xen/gntdev.c
+++ b/drivers/xen/gntdev.c
@@ -664,7 +664,7 @@ static int gntdev_mmap(struct file *flip, struct vm_area_struct *vma)
664 vma->vm_flags |= VM_RESERVED|VM_DONTEXPAND; 664 vma->vm_flags |= VM_RESERVED|VM_DONTEXPAND;
665 665
666 if (use_ptemod) 666 if (use_ptemod)
667 vma->vm_flags |= VM_DONTCOPY|VM_PFNMAP; 667 vma->vm_flags |= VM_DONTCOPY;
668 668
669 vma->vm_private_data = map; 669 vma->vm_private_data = map;
670 670