linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] mm: migrate: use thp_order instead of HPAGE_PMD_ORDER for new page allocation.
@ 2022-04-04 16:53 Zi Yan
  2022-04-04 18:28 ` Andrew Morton
  0 siblings, 1 reply; 3+ messages in thread
From: Zi Yan @ 2022-04-04 16:53 UTC (permalink / raw)
  To: linux-mm
  Cc: Matthew Wilcox, Michal Hocko, Naoya Horiguchi, Andrew Morton,
	linux-kernel, Zi Yan, Naoya Horiguchi

From: Zi Yan <ziy@nvidia.com>

With folios support, it is possible to have other than HPAGE_PMD_ORDER
THPs, in the form of folios, in the system. Use thp_order() to correctly
determine the source page order during migration.

Fixes: d68eccad3706 ("mm/filemap: Allow large folios to be added to the page cache")
Reported-by: Naoya Horiguchi <naoya.horiguchi@linux.dev>
Link: https://lore.kernel.org/linux-mm/20220404132908.GA785673@u2004/
Signed-off-by: Zi Yan <ziy@nvidia.com>
---
 mm/mempolicy.c | 2 +-
 mm/migrate.c   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/mm/mempolicy.c b/mm/mempolicy.c
index 6b34c5d5e65a..88a74bc4cba5 100644
--- a/mm/mempolicy.c
+++ b/mm/mempolicy.c
@@ -1209,7 +1209,7 @@ static struct page *new_page(struct page *page, unsigned long start)
 		struct page *thp;
 
 		thp = alloc_hugepage_vma(GFP_TRANSHUGE, vma, address,
-					 HPAGE_PMD_ORDER);
+					 thp_order(page));
 		if (!thp)
 			return NULL;
 		prep_transhuge_page(thp);
diff --git a/mm/migrate.c b/mm/migrate.c
index 4639dfc2b7ee..b58b96fdb174 100644
--- a/mm/migrate.c
+++ b/mm/migrate.c
@@ -1553,7 +1553,7 @@ struct page *alloc_migration_target(struct page *page, unsigned long private)
 		 */
 		gfp_mask &= ~__GFP_RECLAIM;
 		gfp_mask |= GFP_TRANSHUGE;
-		order = HPAGE_PMD_ORDER;
+		order = thp_order(page);
 	}
 	zidx = zone_idx(page_zone(page));
 	if (is_highmem_idx(zidx) || zidx == ZONE_MOVABLE)
-- 
2.35.1



^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] mm: migrate: use thp_order instead of HPAGE_PMD_ORDER for new page allocation.
  2022-04-04 16:53 [PATCH] mm: migrate: use thp_order instead of HPAGE_PMD_ORDER for new page allocation Zi Yan
@ 2022-04-04 18:28 ` Andrew Morton
  2022-04-04 18:37   ` Zi Yan
  0 siblings, 1 reply; 3+ messages in thread
From: Andrew Morton @ 2022-04-04 18:28 UTC (permalink / raw)
  To: Zi Yan
  Cc: Zi Yan, linux-mm, Matthew Wilcox, Michal Hocko, Naoya Horiguchi,
	linux-kernel, Naoya Horiguchi

On Mon,  4 Apr 2022 12:53:25 -0400 Zi Yan <zi.yan@sent.com> wrote:

> From: Zi Yan <ziy@nvidia.com>
> 
> With folios support, it is possible to have other than HPAGE_PMD_ORDER
> THPs, in the form of folios, in the system. Use thp_order() to correctly
> determine the source page order during migration.

Changelog doesn't describe the end user visible effects of the bug. 
And it really should, because

> Link: https://lore.kernel.org/linux-mm/20220404132908.GA785673@u2004/

it fixes a kernel crash!




^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] mm: migrate: use thp_order instead of HPAGE_PMD_ORDER for new page allocation.
  2022-04-04 18:28 ` Andrew Morton
@ 2022-04-04 18:37   ` Zi Yan
  0 siblings, 0 replies; 3+ messages in thread
From: Zi Yan @ 2022-04-04 18:37 UTC (permalink / raw)
  To: Andrew Morton
  Cc: linux-mm, Matthew Wilcox, Michal Hocko, Naoya Horiguchi,
	linux-kernel, Naoya Horiguchi

[-- Attachment #1: Type: text/plain, Size: 1025 bytes --]

On 4 Apr 2022, at 14:28, Andrew Morton wrote:

> On Mon,  4 Apr 2022 12:53:25 -0400 Zi Yan <zi.yan@sent.com> wrote:
>
>> From: Zi Yan <ziy@nvidia.com>
>>
>> With folios support, it is possible to have other than HPAGE_PMD_ORDER
>> THPs, in the form of folios, in the system. Use thp_order() to correctly
>> determine the source page order during migration.
>
> Changelog doesn't describe the end user visible effects of the bug.
> And it really should, because
>
>> Link: https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Flore.kernel.org%2Flinux-mm%2F20220404132908.GA785673%40u2004%2F&amp;data=04%7C01%7Cziy%40nvidia.com%7Cbf27ebf19d8a49a9b4b008da1668dc09%7C43083d15727340c1b7db39efd9ccc17a%7C0%7C0%7C637846936880192108%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&amp;sdata=pgvzV3wv6icqkMaWY2koB9X4VqlPMaSHeB8r7%2Fv1938%3D&amp;reserved=0
>
> it fixes a kernel crash!

Thank you for adding the information.

--
Best Regards,
Yan, Zi

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 854 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2022-04-04 18:38 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-04 16:53 [PATCH] mm: migrate: use thp_order instead of HPAGE_PMD_ORDER for new page allocation Zi Yan
2022-04-04 18:28 ` Andrew Morton
2022-04-04 18:37   ` Zi Yan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).