From: Chas Williams Date: Thu, 6 Sep 2018 15:09:10 +0000 (-0400) Subject: Fixes: Commit 2aa6d036b716 ("mm: numa: avoid waiting on freed migrated pages") X-Git-Tag: v4.9.127~12 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=77d1a435f8c635038198ff0b962bfde83dd88764;p=platform%2Fkernel%2Flinux-amlogic.git Fixes: Commit 2aa6d036b716 ("mm: numa: avoid waiting on freed migrated pages") Commit 2aa6d036b716 ("mm: numa: avoid waiting on freed migrated pages") was an incomplete backport of the upstream commit. It is necessary to always reset page_nid before attempting any early exit. The original commit conflicted due to lack of commit 82b0f8c39a38 ("mm: join struct fault_env and vm_fault") in 4.9 so it wasn't a clean application, and the change must have just gotten lost in the noise. Signed-off-by: Chas Williams Signed-off-by: Greg Kroah-Hartman --- diff --git a/mm/huge_memory.c b/mm/huge_memory.c index 9efe88e..e4c6c3e 100644 --- a/mm/huge_memory.c +++ b/mm/huge_memory.c @@ -1259,12 +1259,12 @@ int do_huge_pmd_numa_page(struct fault_env *fe, pmd_t pmd) /* Migration could have started since the pmd_trans_migrating check */ if (!page_locked) { + page_nid = -1; if (!get_page_unless_zero(page)) goto out_unlock; spin_unlock(fe->ptl); wait_on_page_locked(page); put_page(page); - page_nid = -1; goto out; }