Re: [PATCH] mm: shmem: enable thp migration (Re: [PATCH v1] mm: consider non-anonymous thp as unmovable page)
From: Naoya Horiguchi <hidden>
Date: 2018-04-09 07:15:45
Also in:
lkml
On Fri, Apr 06, 2018 at 09:08:15AM +0200, Michal Hocko wrote:
On Fri 06-04-18 05:14:53, Naoya Horiguchi wrote:quoted
On Fri, Apr 06, 2018 at 03:07:11AM +0000, Horiguchi Naoya(堀口 直也) wrote: ...quoted
----- From e31ec037701d1cc76b26226e4b66d8c783d40889 Mon Sep 17 00:00:00 2001 From: Naoya Horiguchi <redacted> Date: Fri, 6 Apr 2018 10:58:35 +0900 Subject: [PATCH] mm: enable thp migration for shmem thp My testing for the latest kernel supporting thp migration showed an infinite loop in offlining the memory block that is filled with shmem thps. We can get out of the loop with a signal, but kernel should return with failure in this case. What happens in the loop is that scan_movable_pages() repeats returning the same pfn without any progress. That's because page migration always fails for shmem thps. In memory offline code, memory blocks containing unmovable pages should be prevented from being offline targets by has_unmovable_pages() inside start_isolate_page_range(). So it's possible to change migratability for non-anonymous thps to avoid the issue, but it introduces more complex and thp-specific handling in migration code, so it might not good. So this patch is suggesting to fix the issue by enabling thp migration for shmem thp. Both of anon/shmem thp are migratable so we don't need precheck about the type of thps. Fixes: commit 72b39cfc4d75 ("mm, memory_hotplug: do not fail offlining too early") Signed-off-by: Naoya Horiguchi <redacted> Cc: stable@vger.kernel.org # v4.15+... oh, I don't think this is suitable for stable. Michal's fix in another email can come first with "CC: stable", then this one. Anyway I want to get some feedback on the change of this patch.My patch is indeed much simpler but it depends on [1] and that doesn't sound like a stable material as well because it depends on onether 2 patches. Maybe we need some other hack for 4.15 if we really care enough. [1] http://lkml.kernel.org/r/20180103082555.14592-4-mhocko@kernel.org
OK, so I like just giving up sending to stable.