blob: fdc625b7b632eef2e91dffaa10b2b91e980a4551 [file] [log] [blame]
From mgorman@suse.de Tue Jan 7 09:51:39 2014
From: Mel Gorman <mgorman@suse.de>
Date: Tue, 7 Jan 2014 14:00:42 +0000
Subject: mm: numa: avoid unnecessary work on the failure path
To: gregkh@linuxfoundation.org
Cc: athorlton@sgi.com, riel@redhat.com, chegu_vinod@hp.com, Mel Gorman <mgorman@suse.de>, stable@vger.kernel.org
Message-ID: <1389103248-17617-8-git-send-email-mgorman@suse.de>
From: Mel Gorman <mgorman@suse.de>
commit eb4489f69f224356193364dc2762aa009738ca7f upstream.
If a PMD changes during a THP migration then migration aborts but the
failure path is doing more work than is necessary.
Signed-off-by: Mel Gorman <mgorman@suse.de>
Reviewed-by: Rik van Riel <riel@redhat.com>
Cc: Alex Thorlton <athorlton@sgi.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
mm/migrate.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
--- a/mm/migrate.c
+++ b/mm/migrate.c
@@ -1726,7 +1726,8 @@ fail_putback:
putback_lru_page(page);
mod_zone_page_state(page_zone(page),
NR_ISOLATED_ANON + page_lru, -HPAGE_PMD_NR);
- goto out_fail;
+
+ goto out_unlock;
}
/*
@@ -1800,6 +1801,7 @@ out_dropref:
}
spin_unlock(&mm->page_table_lock);
+out_unlock:
unlock_page(page);
put_page(page);
return 0;