From: Alex Shi (tencent) Date: Thu, 11 Apr 2024 06:17:03 +0000 (+0800) Subject: mm/ksm: use folio in remove_rmap_item_from_tree X-Git-Tag: v6.10-rc1~105^2~146 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f39b6e2dc18efcc7f8d55cdf62c8c6cad47d1f06;p=thirdparty%2Fkernel%2Flinux.git mm/ksm: use folio in remove_rmap_item_from_tree To save 2 compound_head calls. Link: https://lkml.kernel.org/r/20240411061713.1847574-3-alexs@kernel.org Signed-off-by: Alex Shi (tencent) Reviewed-by: David Hildenbrand Cc: Izik Eidus Cc: Matthew Wilcox Cc: Andrea Arcangeli Cc: Hugh Dickins Cc: Chris Wright Signed-off-by: Andrew Morton --- diff --git a/mm/ksm.c b/mm/ksm.c index ac126a4c245c0..ef5c4b6d377c2 100644 --- a/mm/ksm.c +++ b/mm/ksm.c @@ -1006,16 +1006,16 @@ static void remove_rmap_item_from_tree(struct ksm_rmap_item *rmap_item) { if (rmap_item->address & STABLE_FLAG) { struct ksm_stable_node *stable_node; - struct page *page; + struct folio *folio; stable_node = rmap_item->head; - page = get_ksm_page(stable_node, GET_KSM_PAGE_LOCK); - if (!page) + folio = ksm_get_folio(stable_node, GET_KSM_PAGE_LOCK); + if (!folio) goto out; hlist_del(&rmap_item->hlist); - unlock_page(page); - put_page(page); + folio_unlock(folio); + folio_put(folio); if (!hlist_empty(&stable_node->hlist)) ksm_pages_sharing--;