diff options
Diffstat (limited to 'mm/mprotect.c')
| -rw-r--r-- | mm/mprotect.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/mm/mprotect.c b/mm/mprotect.c index 955f9d0e38aa..3b8f3c0c63f3 100644 --- a/mm/mprotect.c +++ b/mm/mprotect.c | |||
| @@ -34,6 +34,7 @@ static void change_pte_range(struct mm_struct *mm, pmd_t *pmd, | |||
| 34 | spinlock_t *ptl; | 34 | spinlock_t *ptl; |
| 35 | 35 | ||
| 36 | pte = pte_offset_map_lock(mm, pmd, addr, &ptl); | 36 | pte = pte_offset_map_lock(mm, pmd, addr, &ptl); |
| 37 | arch_enter_lazy_mmu_mode(); | ||
| 37 | do { | 38 | do { |
| 38 | oldpte = *pte; | 39 | oldpte = *pte; |
| 39 | if (pte_present(oldpte)) { | 40 | if (pte_present(oldpte)) { |
| @@ -70,6 +71,7 @@ static void change_pte_range(struct mm_struct *mm, pmd_t *pmd, | |||
| 70 | } | 71 | } |
| 71 | 72 | ||
| 72 | } while (pte++, addr += PAGE_SIZE, addr != end); | 73 | } while (pte++, addr += PAGE_SIZE, addr != end); |
| 74 | arch_leave_lazy_mmu_mode(); | ||
| 73 | pte_unmap_unlock(pte - 1, ptl); | 75 | pte_unmap_unlock(pte - 1, ptl); |
| 74 | } | 76 | } |
| 75 | 77 | ||
