From af6de62c2f70182d1eadcdbc5001e15c845365fb Mon Sep 17 00:00:00 2001 From: Indira Biruduraju Date: Tue, 11 Aug 2020 15:24:16 +0530 Subject: [PATCH] msm: kgsl: Remove VM_MAYWRITE flag to restrict mprotect When VM_MAYWRITE flag is used during mmap(), mprotect() can be used later to change the protection of memstore to allow write. Make sure this does not happen by removing VM_MAYWRITE from the vm_flags of vma. Change-Id: I6f69f05858ea40611d512cfa796caabeaa88cdb5 Signed-off-by: Indira Biruduraju --- drivers/gpu/msm/kgsl.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/gpu/msm/kgsl.c b/drivers/gpu/msm/kgsl.c index f31e6bf6fb84..700336f6180d 100644 --- a/drivers/gpu/msm/kgsl.c +++ b/drivers/gpu/msm/kgsl.c @@ -4301,6 +4301,8 @@ kgsl_mmap_memstore(struct file *file, struct kgsl_device *device, if (vma->vm_flags & VM_WRITE) return -EPERM; + vma->vm_flags &= ~VM_MAYWRITE; + if (memdesc->size != vma_size) { dev_err(device->dev, "Cannot partially map the memstore\n"); return -EINVAL;