On Wed, Jun 24, 2020 at 03:49:47PM -0700, Andrew Morton wrote: > On Wed, 24 Jun 2020 22:36:18 +0000 HORIGUCHI NAOYA(堀口 直也) <naoya.horiguchi@xxxxxxx> wrote: > > > On Wed, Jun 24, 2020 at 12:17:42PM -0700, Andrew Morton wrote: > > > On Wed, 24 Jun 2020 15:01:22 +0000 nao.horiguchi@xxxxxxxxx wrote: > > > > > > > I rebased soft-offline rework patchset [1][2] onto the latest mmotm. The > > > > rebasing required some non-trivial changes to adjust, but mainly that was > > > > straightforward. I confirmed that the reported problem doesn't reproduce on > > > > compaction after soft offline. For more precise description of the problem > > > > and the motivation of this patchset, please see [2]. > > > > > > > > I think that the following two patches in v2 are better to be done with > > > > separate work of hard-offline rework, so it's not included in this series. > > > > > > > > - mm,hwpoison: Take pages off the buddy when hard-offlining > > > > - mm/hwpoison-inject: Rip off duplicated checks > > > > > > > > These two are not directly related to the reported problem, so they seems > > > > not urgent. And the first one breaks num_poisoned_pages counting in some > > > > testcases, and The second patch needs more consideration about commented point. > > > > > > > > > > It would be nice to have some sort of overview of the patch series in > > > this [0/n] email. > > > > > > > [1] v1: https://lore.kernel.org/linux-mm/1541746035-13408-1-git-send-email-n-horiguchi@xxxxxxxxxxxxx/ > > > > [2] v2: https://lore.kernel.org/linux-mm/20191017142123.24245-1-osalvador@xxxxxxx/ > > > > > > The above have such, but are they up to date? > > > > The description of the problem doesn't change, but there're some new patches > > and some patches are postponed, so I should've added an overview of this series: > > > > - patch 1, 2 are cleanups. > > - patch 3, 4, 5 change the precondition when calling memory_failure(). Previously > > we sometimes call it with holding refcount of the target page and somtimes call > > without holding it, and we passed a flag of whether refcount was taken out of > > memory_failure(). It was confusing and caused code more complex than needed. > > - patch 6-10 are cleanups. > > - patch 11 introduces new logic to remove the error page from buddy allocator, > > which is also applied to the path of soft-offling in-use pages in patch 12. > > - patch 13 is basically a refactoring but I added some adjustment to make sure > > that the freed page is surely sent back to buddy instead of being kept in pcplist, > > which is based on discussion in v2. > > - patch 14 fixes the inconsistency of return values between injection interfaces. > > - patch 15 is a new patch to complement missing code found in code review for > > previous version. > > > > Core change is in patch 11 and 12, and the others are kind of cleanup/refactoring. > > And all the other words in > https://lore.kernel.org/linux-mm/1541746035-13408-1-git-send-email-n-horiguchi@xxxxxxxxxxxxx/ > are still accurate and complete? Yes, they are. - Naoya