aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mm/memory.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/mm/memory.c b/mm/memory.c
index 1ecca56e0a48..858829d06a92 100644
--- a/mm/memory.c
+++ b/mm/memory.c
@@ -2006,11 +2006,10 @@ int apply_to_page_range(struct mm_struct *mm, unsigned long addr,
2006{ 2006{
2007 pgd_t *pgd; 2007 pgd_t *pgd;
2008 unsigned long next; 2008 unsigned long next;
2009 unsigned long start = addr, end = addr + size; 2009 unsigned long end = addr + size;
2010 int err; 2010 int err;
2011 2011
2012 BUG_ON(addr >= end); 2012 BUG_ON(addr >= end);
2013 mmu_notifier_invalidate_range_start(mm, start, end);
2014 pgd = pgd_offset(mm, addr); 2013 pgd = pgd_offset(mm, addr);
2015 do { 2014 do {
2016 next = pgd_addr_end(addr, end); 2015 next = pgd_addr_end(addr, end);
@@ -2018,7 +2017,7 @@ int apply_to_page_range(struct mm_struct *mm, unsigned long addr,
2018 if (err) 2017 if (err)
2019 break; 2018 break;
2020 } while (pgd++, addr = next, addr != end); 2019 } while (pgd++, addr = next, addr != end);
2021 mmu_notifier_invalidate_range_end(mm, start, end); 2020
2022 return err; 2021 return err;
2023} 2022}
2024EXPORT_SYMBOL_GPL(apply_to_page_range); 2023EXPORT_SYMBOL_GPL(apply_to_page_range);