mm/khugepaged: introduce release_pte_folio() to replace release_pte_page()
release_pte_page() is converted to be a wrapper for release_pte_folio() to help facilitate the khugepaged conversion to folios. This replaces 3 calls to compound_head() with 1, and saves 85 bytes of kernel text. Link: https://lkml.kernel.org/r/20230114001556.43795-1-vishal.moola@gmail.com Signed-off-by: Vishal Moola (Oracle) <vishal.moola@gmail.com> Cc: Matthew Wilcox <willy@infradead.org> Cc: Mike Kravetz <mike.kravetz@oracle.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
Родитель
62a9bbf2e9
Коммит
92644f583d
|
@ -490,13 +490,18 @@ void __khugepaged_exit(struct mm_struct *mm)
|
|||
}
|
||||
}
|
||||
|
||||
static void release_pte_folio(struct folio *folio)
|
||||
{
|
||||
node_stat_mod_folio(folio,
|
||||
NR_ISOLATED_ANON + folio_is_file_lru(folio),
|
||||
-folio_nr_pages(folio));
|
||||
folio_unlock(folio);
|
||||
folio_putback_lru(folio);
|
||||
}
|
||||
|
||||
static void release_pte_page(struct page *page)
|
||||
{
|
||||
mod_node_page_state(page_pgdat(page),
|
||||
NR_ISOLATED_ANON + page_is_file_lru(page),
|
||||
-compound_nr(page));
|
||||
unlock_page(page);
|
||||
putback_lru_page(page);
|
||||
release_pte_folio(page_folio(page));
|
||||
}
|
||||
|
||||
static void release_pte_pages(pte_t *pte, pte_t *_pte,
|
||||
|
|
Загрузка…
Ссылка в новой задаче