aboutsummaryrefslogtreecommitdiffstats
path: root/mm/mempolicy.c
diff options
context:
space:
mode:
authorChristoph Lameter <clameter@sgi.com>2006-06-23 05:03:52 -0400
committerLinus Torvalds <torvalds@g5.osdl.org>2006-06-23 10:42:53 -0400
commitaaa994b300a172afafab47938804836b923e5ef7 (patch)
treeccc1acf72e9d1dfbd25fa5f8e067a195f93b0319 /mm/mempolicy.c
parente24f0b8f76cc3dd96f36f5b6a9f020f6c3fce198 (diff)
[PATCH] page migration: handle freeing of pages in migrate_pages()
Do not leave pages on the lists passed to migrate_pages(). Seems that we will not need any postprocessing of pages. This will simplify the handling of pages by the callers of migrate_pages(). Signed-off-by: Christoph Lameter <clameter@sgi.com> Cc: Hugh Dickins <hugh@veritas.com> Cc: Jes Sorensen <jes@trained-monkey.org> Cc: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> Cc: Lee Schermerhorn <lee.schermerhorn@hp.com> Cc: Andi Kleen <ak@muc.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'mm/mempolicy.c')
-rw-r--r--mm/mempolicy.c8
1 files changed, 1 insertions, 7 deletions
diff --git a/mm/mempolicy.c b/mm/mempolicy.c
index 8778f58880c4..244f3f130e4a 100644
--- a/mm/mempolicy.c
+++ b/mm/mempolicy.c
@@ -603,11 +603,8 @@ int migrate_to_node(struct mm_struct *mm, int source, int dest, int flags)
603 check_range(mm, mm->mmap->vm_start, TASK_SIZE, &nmask, 603 check_range(mm, mm->mmap->vm_start, TASK_SIZE, &nmask,
604 flags | MPOL_MF_DISCONTIG_OK, &pagelist); 604 flags | MPOL_MF_DISCONTIG_OK, &pagelist);
605 605
606 if (!list_empty(&pagelist)) { 606 if (!list_empty(&pagelist))
607 err = migrate_pages_to(&pagelist, NULL, dest); 607 err = migrate_pages_to(&pagelist, NULL, dest);
608 if (!list_empty(&pagelist))
609 putback_lru_pages(&pagelist);
610 }
611 return err; 608 return err;
612} 609}
613 610
@@ -773,9 +770,6 @@ long do_mbind(unsigned long start, unsigned long len,
773 err = -EIO; 770 err = -EIO;
774 } 771 }
775 772
776 if (!list_empty(&pagelist))
777 putback_lru_pages(&pagelist);
778
779 up_write(&mm->mmap_sem); 773 up_write(&mm->mmap_sem);
780 mpol_free(new); 774 mpol_free(new);
781 return err; 775 return err;