From: Pankaj Raghav <p.raghav@xxxxxxxxxxx> Add largest_zero_folio() routine so that huge_zero_folio can be used directly when CONFIG_STATIC_HUGE_ZERO_FOLIO is enabled. This will return ZERO_PAGE folio if CONFIG_STATIC_HUGE_ZERO_FOLIO is disabled or if we failed to allocate a huge_zero_folio. Co-Developed-by: David Hildenbrand <david@xxxxxxxxxx> Signed-off-by: Pankaj Raghav <p.raghav@xxxxxxxxxxx> --- include/linux/huge_mm.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/include/linux/huge_mm.h b/include/linux/huge_mm.h index 0ddd9c78f9f4..a34c5427aaf6 100644 --- a/include/linux/huge_mm.h +++ b/include/linux/huge_mm.h @@ -714,4 +714,12 @@ static inline int split_folio_to_order(struct folio *folio, int new_order) return split_folio_to_list_to_order(folio, NULL, new_order); } +static inline struct folio *largest_zero_folio(void) +{ + struct folio *folio = get_static_huge_zero_folio(); + + if (folio) + return folio; + return page_folio(ZERO_PAGE(0)); +} #endif /* _LINUX_HUGE_MM_H */ -- 2.49.0