diff --git a/[refs] b/[refs] index 9d3a30017e0f..96ecd6fa8ae4 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 441c7416b55d3d48b4aaafc5bdd804092387d877 +refs/heads/master: f31fdf510531333dea95f0a92e6eaa1c3a7541e2 diff --git a/trunk/drivers/xen/xenfs/privcmd.c b/trunk/drivers/xen/xenfs/privcmd.c index 6b602f505363..80526afd3063 100644 --- a/trunk/drivers/xen/xenfs/privcmd.c +++ b/trunk/drivers/xen/xenfs/privcmd.c @@ -310,6 +310,8 @@ static int mmap_return_errors(void *data, void *state) return 0; } +static struct vm_operations_struct privcmd_vm_ops; + static long privcmd_ioctl_mmap_batch(void __user *udata) { int ret; @@ -341,6 +343,7 @@ static long privcmd_ioctl_mmap_batch(void __user *udata) vma = find_vma(mm, m.addr); ret = -EINVAL; if (!vma || + vma->vm_ops != &privcmd_vm_ops || (m.addr != vma->vm_start) || ((m.addr + (nr_pages << PAGE_SHIFT)) != vma->vm_end) || !privcmd_enforce_singleshot_mapping(vma)) {