summaryrefslogtreecommitdiff
path: root/drivers/ptp/ptp_vmclock.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/ptp/ptp_vmclock.c')
-rw-r--r--drivers/ptp/ptp_vmclock.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/ptp/ptp_vmclock.c b/drivers/ptp/ptp_vmclock.c
index 83114695dbb5..8edc2880c609 100644
--- a/drivers/ptp/ptp_vmclock.c
+++ b/drivers/ptp/ptp_vmclock.c
@@ -371,6 +371,12 @@ static int vmclock_miscdev_mmap(struct file *fp, struct vm_area_struct *vma)
*/
vm_flags_clear(vma, VM_MAYWRITE);
+ /*
+ * Restrict the read-only mapping so it cannot be upgraded to
+ * writable later with mprotect().
+ */
+ vm_flags_clear(vma, VM_MAYWRITE);
+
if (vma->vm_end - vma->vm_start != PAGE_SIZE || vma->vm_pgoff)
return -EINVAL;