Message ID | 20200406142045.32522-3-levonshe@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Prevent write to read-only pages (text, PLT/GOT | expand |
diff --git a/arch/unicore32/include/asm/mmu_context.h b/arch/unicore32/include/asm/mmu_context.h index 388c0c811c68..caf240b8a748 100644 --- a/arch/unicore32/include/asm/mmu_context.h +++ b/arch/unicore32/include/asm/mmu_context.h @@ -92,7 +92,12 @@ static inline void arch_unmap(struct mm_struct *mm, static inline bool arch_vma_access_permitted(struct vm_area_struct *vma, bool write, bool execute, bool foreign) { +#ifdef CONFIG_PROTECT_READONLY_USER_MEMORY + /* Forbid write to PROT_READ pages of foreign process */ + if (write && foreign && (!(vma->vm_flags & VM_WRITE))) + return false; +#endif /* by default, allow everything */ return true; } -#endif +#endif /*__UNICORE_MMU_CONTEXT_H__*/
Signed-off-by: Lev Olshvang <levonshe@gmail.com> --- arch/unicore32/include/asm/mmu_context.h | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) -- 2.17.1