The patch titled Subject: mm-wrap-__find_buddy_pfn-with-a-necessary-buddy-page-validation-v4 has been added to the -mm tree. Its filename is mm-wrap-__find_buddy_pfn-with-a-necessary-buddy-page-validation-v4.patch This patch should soon appear at https://ozlabs.org/~akpm/mmots/broken-out/mm-wrap-__find_buddy_pfn-with-a-necessary-buddy-page-validation-v4.patch and later at https://ozlabs.org/~akpm/mmotm/broken-out/mm-wrap-__find_buddy_pfn-with-a-necessary-buddy-page-validation-v4.patch Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next and is updated there every 3-4 working days ------------------------------------------------------ From: Zi Yan <ziy@xxxxxxxxxx> Subject: mm-wrap-__find_buddy_pfn-with-a-necessary-buddy-page-validation-v4 updates per David Link: https://lkml.kernel.org/r/20220401230804.1658207-2-zi.yan@xxxxxxxx Link: https://lore.kernel.org/linux-mm/CAHk-=3Dwji_AmYygZMTsPMdJ7XksMt7kO= ur8oDfDdniBRMjm4VkQ@xxxxxxxxxxxxxx/ Link: https://lkml.kernel.org/r/7236E7CA-B5F1-4C04-AB85-E86FA3E9A54B@xxxxxxxxxx Suggested-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> Signed-off-by: Zi Yan <ziy@xxxxxxxxxx> Acked-by: Vlastimil Babka <vbabka@xxxxxxx> Acked-by: David Hildenbrand <david@xxxxxxxxxx> Cc: Steven Rostedt (Google) <rostedt@xxxxxxxxxxx> Cc: Mel Gorman <mgorman@xxxxxxxxxxxxxxxxxxx> Cc: Mike Rapoport <rppt@xxxxxxxxxx> Cc: Oscar Salvador <osalvador@xxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- mm/internal.h | 4 ++-- mm/page_alloc.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) --- a/mm/internal.h~mm-wrap-__find_buddy_pfn-with-a-necessary-buddy-page-validation-v4 +++ a/mm/internal.h @@ -252,7 +252,7 @@ static inline unsigned int buddy_order(s * For recording page's order, we use page_private(page). */ static inline bool page_is_buddy(struct page *page, struct page *buddy, - unsigned int order) + unsigned int order) { if (!page_is_guard(buddy) && !PageBuddy(buddy)) return false; @@ -312,8 +312,8 @@ __find_buddy_pfn(unsigned long page_pfn, static inline struct page *find_buddy_page_pfn(struct page *page, unsigned long pfn, unsigned int order, unsigned long *buddy_pfn) { - struct page *buddy; unsigned long __buddy_pfn = __find_buddy_pfn(pfn, order); + struct page *buddy; buddy = page + (__buddy_pfn - pfn); if (buddy_pfn) --- a/mm/page_alloc.c~mm-wrap-__find_buddy_pfn-with-a-necessary-buddy-page-validation-v4 +++ a/mm/page_alloc.c @@ -976,8 +976,8 @@ static inline bool buddy_merge_likely(unsigned long pfn, unsigned long buddy_pfn, struct page *page, unsigned int order) { - struct page *higher_page; unsigned long higher_page_pfn; + struct page *higher_page; if (order >= MAX_ORDER - 2) return false; _ Patches currently in -mm which might be from ziy@xxxxxxxxxx are mm-migrate-use-thp_order-instead-of-hpage_pmd_order-for-new-page-allocation.patch mm-page_alloc-simplify-pageblock-migratetype-check-in-__free_one_page.patch mm-wrap-__find_buddy_pfn-with-a-necessary-buddy-page-validation.patch mm-wrap-__find_buddy_pfn-with-a-necessary-buddy-page-validation-v4.patch