diff options
| author | Indira Biruduraju <ibirudur@codeaurora.org> | 2020-08-11 15:24:16 +0530 |
|---|---|---|
| committer | Indira Biruduraju <ibirudur@codeaurora.org> | 2020-08-24 12:38:48 +0530 |
| commit | cbc3c21971dfb3b5322e080df458ad9d2d477633 (patch) | |
| tree | 3138f26124f6aab69b08baadbf28ae191ee45d4b /drivers/gpu | |
| parent | 45d0ff3112465a5172b4c802ffe021311a5d352b (diff) | |
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 <ibirudur@codeaurora.org>
Diffstat (limited to 'drivers/gpu')
| -rw-r--r-- | drivers/gpu/msm/kgsl.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/msm/kgsl.c b/drivers/gpu/msm/kgsl.c index 44522cac7c42..1e30cd9e3524 100644 --- a/drivers/gpu/msm/kgsl.c +++ b/drivers/gpu/msm/kgsl.c @@ -4202,6 +4202,8 @@ kgsl_mmap_memstore(struct kgsl_device *device, struct vm_area_struct *vma) if (vma->vm_flags & VM_WRITE) return -EPERM; + vma->vm_flags &= ~VM_MAYWRITE; + if (memdesc->size != vma_size) { KGSL_MEM_ERR(device, "memstore bad size: %d should be %llu\n", vma_size, memdesc->size); |
