diff options
author | Matthew Wilcox (Oracle) <willy@infradead.org> | 2024-10-02 16:25:29 +0100 |
---|---|---|
committer | Andrew Morton <akpm@linux-foundation.org> | 2024-11-06 20:11:08 -0800 |
commit | 76f1a8261188dfbc46d2957e2bb98dd5f007da7c (patch) | |
tree | 848f5a441aed8fe3e3b5e9f24c9e25c26cc21565 /mm/ksm.c | |
parent | 98c3ca0015b8a5af7f98109261bd9a471097135b (diff) | |
download | lwn-76f1a8261188dfbc46d2957e2bb98dd5f007da7c.tar.gz lwn-76f1a8261188dfbc46d2957e2bb98dd5f007da7c.zip |
ksm: convert should_skip_rmap_item() to take a folio
Remove a call to PageKSM() by passing the folio containing tmp_page to
should_skip_rmap_item. Removes a hidden call to compound_head().
Link: https://lkml.kernel.org/r/20241002152533.1350629-4-willy@infradead.org
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Acked-by: David Hildenbrand <david@redhat.com>
Cc: Alex Shi <alexs@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Diffstat (limited to 'mm/ksm.c')
-rw-r--r-- | mm/ksm.c | 8 |
1 files changed, 4 insertions, 4 deletions
@@ -2402,10 +2402,10 @@ static unsigned int skip_age(rmap_age_t age) /* * Determines if a page should be skipped for the current scan. * - * @page: page to check + * @folio: folio containing the page to check * @rmap_item: associated rmap_item of page */ -static bool should_skip_rmap_item(struct page *page, +static bool should_skip_rmap_item(struct folio *folio, struct ksm_rmap_item *rmap_item) { rmap_age_t age; @@ -2418,7 +2418,7 @@ static bool should_skip_rmap_item(struct page *page, * will essentially ignore them, but we still have to process them * properly. */ - if (PageKsm(page)) + if (folio_test_ksm(folio)) return false; age = rmap_item->age; @@ -2561,7 +2561,7 @@ next_mm: ksm_scan.rmap_list = &rmap_item->rmap_list; - if (should_skip_rmap_item(tmp_page, rmap_item)) { + if (should_skip_rmap_item(folio, rmap_item)) { folio_put(folio); goto next_page; } |