public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/1] mm/migrate: do not call prep_transhuge_page if !thp_migration_supported
@ 2017-11-20 16:17 Andrea Reale
  2017-11-20 16:17 ` [PATCH 1/1] " Andrea Reale
  0 siblings, 1 reply; 4+ messages in thread
From: Andrea Reale @ 2017-11-20 16:17 UTC (permalink / raw)
  To: linux-kernel, zi.yan, n-horiguchi; +Cc: akpm, jglisse, realean2

Hi all,

While working on a second round of patches to introduce memory hotplug /
hot remove to arm64 (original attempt at [1]), and trying to rebase them
on 4.14, I stumbled in some problematic behaviour during page migration
when offlining for hot remove, whereas target pages for migration where
found in a bad state.

I believe that this behaviour may be originating from commit 8135d8926c08
("mm: memory_hotplug: memory hotremove supports thp migration")
and it is triggered when migrating pages for builds that have no
ARCH_ENABLE_THP_MIGRATION but have thp support on (arm64, in my case).
Specifically, my understanding is that prep_transhuge_page should not be
called in linux/migrate.h:new_page_nodemask if !thp_migration_supported
because, in that case, new_page would not be a thp.

A tiny patch follows, showing what I mean. Please, let me know if my
understanding is bogus.

Best regards,
Andrea

[1] https://lkml.org/lkml/2017/4/11/536

Andrea Reale (1):
  mm/migrate: do not call prep_transhuge_page if
    !thp_migration_supported

 include/linux/migrate.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

-- 
2.7.4

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

end of thread, other threads:[~2017-11-20 17:07 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-11-20 16:17 [PATCH 0/1] mm/migrate: do not call prep_transhuge_page if !thp_migration_supported Andrea Reale
2017-11-20 16:17 ` [PATCH 1/1] " Andrea Reale
2017-11-20 16:33   ` Zi Yan
2017-11-20 17:07     ` Andrea Reale

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox