[v2,4/7] mm: huge_memory: use more folio api in __split_huge_page_tail()
Commit Message
Use more folio APIs to save six compound_head() calls in
__split_huge_page_tail().
Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
---
mm/huge_memory.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
Comments
On Fri, Nov 10, 2023 at 11:33:21AM +0800, Kefeng Wang wrote:
> Use more folio APIs to save six compound_head() calls in
> __split_huge_page_tail().
>
> Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
Reviewed-by: Matthew Wilcox (Oracle) <willy@infradead.org>
On 2023/11/11 2:20, Matthew Wilcox wrote:
> On Fri, Nov 10, 2023 at 11:33:21AM +0800, Kefeng Wang wrote:
>> Use more folio APIs to save six compound_head() calls in
>> __split_huge_page_tail().
>>
>> Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
>
> Reviewed-by: Matthew Wilcox (Oracle) <willy@infradead.org>
>
Thanks, Hi Andrew, please consider only take this one,
I will think more about other part as Matthew suggested.
@@ -2509,13 +2509,13 @@ static void __split_huge_page_tail(struct folio *folio, int tail,
clear_compound_head(page_tail);
/* Finally unfreeze refcount. Additional reference from page cache. */
- page_ref_unfreeze(page_tail, 1 + (!PageAnon(head) ||
- PageSwapCache(head)));
+ page_ref_unfreeze(page_tail, 1 + (!folio_test_anon(folio) ||
+ folio_test_swapcache(folio)));
- if (page_is_young(head))
- set_page_young(page_tail);
- if (page_is_idle(head))
- set_page_idle(page_tail);
+ if (folio_test_young(folio))
+ folio_set_young(new_folio);
+ if (folio_test_idle(folio))
+ folio_set_idle(new_folio);
folio_xchg_last_cpupid(new_folio, folio_last_cpupid(folio));