diff options
Diffstat (limited to 'mm/internal.h')
| -rw-r--r-- | mm/internal.h | 7 | 
1 files changed, 5 insertions, 2 deletions
diff --git a/mm/internal.h b/mm/internal.h index 52d1fa95719..d597f94cc20 100644 --- a/mm/internal.h +++ b/mm/internal.h @@ -217,15 +217,18 @@ static inline void mlock_migrate_page(struct page *newpage, struct page *page)  {  	if (TestClearPageMlocked(page)) {  		unsigned long flags; +		int nr_pages = hpage_nr_pages(page);  		local_irq_save(flags); -		__dec_zone_page_state(page, NR_MLOCK); +		__mod_zone_page_state(page_zone(page), NR_MLOCK, -nr_pages);  		SetPageMlocked(newpage); -		__inc_zone_page_state(newpage, NR_MLOCK); +		__mod_zone_page_state(page_zone(newpage), NR_MLOCK, nr_pages);  		local_irq_restore(flags);  	}  } +extern pmd_t maybe_pmd_mkwrite(pmd_t pmd, struct vm_area_struct *vma); +  #ifdef CONFIG_TRANSPARENT_HUGEPAGE  extern unsigned long vma_address(struct page *page,  				 struct vm_area_struct *vma);  |