Module: xenomai-head Branch: master Commit: 8686392248f34fbc3a6ee8e9b5a93964cdeaa580 URL: http://git.xenomai.org/?p=xenomai-head.git;a=commit;h=8686392248f34fbc3a6ee8e9b5a93964cdeaa580
Author: Gilles Chanteperdrix <gilles.chanteperd...@xenomai.org> Date: Thu Aug 25 21:44:10 2011 +0200 arm: do not simulate write fault when faulting a PROT_NONE, or PROT_READ only mapping. --- ksrc/arch/arm/hal.c | 8 ++++++-- 1 files changed, 6 insertions(+), 2 deletions(-) diff --git a/ksrc/arch/arm/hal.c b/ksrc/arch/arm/hal.c index 4794c4c..6b2c30a 100644 --- a/ksrc/arch/arm/hal.c +++ b/ksrc/arch/arm/hal.c @@ -430,8 +430,12 @@ int rthal_irq_end(unsigned int irq) void __rthal_arm_fault_range(struct vm_area_struct *vma) { unsigned long addr; - for (addr = vma->vm_start; addr != vma->vm_end; addr += PAGE_SIZE) - handle_mm_fault(vma->vm_mm, vma, addr, 1); + + if ((vma->vm_flags & VM_MAYREAD)) + for (addr = vma->vm_start; + addr != vma->vm_end; addr += PAGE_SIZE) + handle_mm_fault(vma->vm_mm, vma, addr, + vma->vm_flags & VM_MAYWRITE); } static inline int do_exception_event(unsigned event, unsigned domid, void *data) _______________________________________________ Xenomai-git mailing list Xenomai-git@gna.org https://mail.gna.org/listinfo/xenomai-git