aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMel Gorman <mel@csn.ul.ie>2011-01-13 18:45:58 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2011-01-13 20:32:34 -0500
commit7f0f24967b0349798803260b2e4bf347cffa1990 (patch)
tree80448367dd2403f02e74f90671e1f050aea41292
parent77f1fe6b08b13a87391549c8a820ddc817b6f50e (diff)
mm: migration: cleanup migrate_pages API by matching types for offlining and sync
With the introduction of the boolean sync parameter, the API looks a little inconsistent as offlining is still an int. Convert offlining to a bool for the sake of being tidy. Signed-off-by: Mel Gorman <mel@csn.ul.ie> Cc: Andrea Arcangeli <aarcange@redhat.com> Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com> Cc: Rik van Riel <riel@redhat.com> Acked-by: Johannes Weiner <hannes@cmpxchg.org> Cc: Andy Whitcroft <apw@shadowen.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--include/linux/migrate.h8
-rw-r--r--mm/compaction.c2
-rw-r--r--mm/memory_hotplug.c2
-rw-r--r--mm/mempolicy.c6
-rw-r--r--mm/migrate.c8
5 files changed, 14 insertions, 12 deletions
diff --git a/include/linux/migrate.h b/include/linux/migrate.h
index fa31902803fd..e39aeecfe9a2 100644
--- a/include/linux/migrate.h
+++ b/include/linux/migrate.h
@@ -13,10 +13,10 @@ extern void putback_lru_pages(struct list_head *l);
13extern int migrate_page(struct address_space *, 13extern int migrate_page(struct address_space *,
14 struct page *, struct page *); 14 struct page *, struct page *);
15extern int migrate_pages(struct list_head *l, new_page_t x, 15extern int migrate_pages(struct list_head *l, new_page_t x,
16 unsigned long private, int offlining, 16 unsigned long private, bool offlining,
17 bool sync); 17 bool sync);
18extern int migrate_huge_pages(struct list_head *l, new_page_t x, 18extern int migrate_huge_pages(struct list_head *l, new_page_t x,
19 unsigned long private, int offlining, 19 unsigned long private, bool offlining,
20 bool sync); 20 bool sync);
21 21
22extern int fail_migrate_page(struct address_space *, 22extern int fail_migrate_page(struct address_space *,
@@ -35,10 +35,10 @@ extern int migrate_huge_page_move_mapping(struct address_space *mapping,
35 35
36static inline void putback_lru_pages(struct list_head *l) {} 36static inline void putback_lru_pages(struct list_head *l) {}
37static inline int migrate_pages(struct list_head *l, new_page_t x, 37static inline int migrate_pages(struct list_head *l, new_page_t x,
38 unsigned long private, int offlining, 38 unsigned long private, bool offlining,
39 bool sync) { return -ENOSYS; } 39 bool sync) { return -ENOSYS; }
40static inline int migrate_huge_pages(struct list_head *l, new_page_t x, 40static inline int migrate_huge_pages(struct list_head *l, new_page_t x,
41 unsigned long private, int offlining, 41 unsigned long private, bool offlining,
42 bool sync) { return -ENOSYS; } 42 bool sync) { return -ENOSYS; }
43 43
44static inline int migrate_prep(void) { return -ENOSYS; } 44static inline int migrate_prep(void) { return -ENOSYS; }
diff --git a/mm/compaction.c b/mm/compaction.c
index 47fca1069343..e005a30e968c 100644
--- a/mm/compaction.c
+++ b/mm/compaction.c
@@ -456,7 +456,7 @@ static int compact_zone(struct zone *zone, struct compact_control *cc)
456 456
457 nr_migrate = cc->nr_migratepages; 457 nr_migrate = cc->nr_migratepages;
458 migrate_pages(&cc->migratepages, compaction_alloc, 458 migrate_pages(&cc->migratepages, compaction_alloc,
459 (unsigned long)cc, 0, 459 (unsigned long)cc, false,
460 cc->sync); 460 cc->sync);
461 update_nr_listpages(cc); 461 update_nr_listpages(cc);
462 nr_remaining = cc->nr_migratepages; 462 nr_remaining = cc->nr_migratepages;
diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c
index 584fc5588fdd..a2832c092509 100644
--- a/mm/memory_hotplug.c
+++ b/mm/memory_hotplug.c
@@ -734,7 +734,7 @@ do_migrate_range(unsigned long start_pfn, unsigned long end_pfn)
734 } 734 }
735 /* this function returns # of failed pages */ 735 /* this function returns # of failed pages */
736 ret = migrate_pages(&source, hotremove_migrate_alloc, 0, 736 ret = migrate_pages(&source, hotremove_migrate_alloc, 0,
737 1, true); 737 true, true);
738 if (ret) 738 if (ret)
739 putback_lru_pages(&source); 739 putback_lru_pages(&source);
740 } 740 }
diff --git a/mm/mempolicy.c b/mm/mempolicy.c
index 9db274593086..7ee55af8d79c 100644
--- a/mm/mempolicy.c
+++ b/mm/mempolicy.c
@@ -935,7 +935,8 @@ static int migrate_to_node(struct mm_struct *mm, int source, int dest,
935 return PTR_ERR(vma); 935 return PTR_ERR(vma);
936 936
937 if (!list_empty(&pagelist)) { 937 if (!list_empty(&pagelist)) {
938 err = migrate_pages(&pagelist, new_node_page, dest, 0, true); 938 err = migrate_pages(&pagelist, new_node_page, dest,
939 false, true);
939 if (err) 940 if (err)
940 putback_lru_pages(&pagelist); 941 putback_lru_pages(&pagelist);
941 } 942 }
@@ -1155,7 +1156,8 @@ static long do_mbind(unsigned long start, unsigned long len,
1155 1156
1156 if (!list_empty(&pagelist)) { 1157 if (!list_empty(&pagelist)) {
1157 nr_failed = migrate_pages(&pagelist, new_vma_page, 1158 nr_failed = migrate_pages(&pagelist, new_vma_page,
1158 (unsigned long)vma, 0, true); 1159 (unsigned long)vma,
1160 false, true);
1159 if (nr_failed) 1161 if (nr_failed)
1160 putback_lru_pages(&pagelist); 1162 putback_lru_pages(&pagelist);
1161 } 1163 }
diff --git a/mm/migrate.c b/mm/migrate.c
index dc47f6c40353..690d0de993af 100644
--- a/mm/migrate.c
+++ b/mm/migrate.c
@@ -614,7 +614,7 @@ static int move_to_new_page(struct page *newpage, struct page *page,
614 * to the newly allocated page in newpage. 614 * to the newly allocated page in newpage.
615 */ 615 */
616static int unmap_and_move(new_page_t get_new_page, unsigned long private, 616static int unmap_and_move(new_page_t get_new_page, unsigned long private,
617 struct page *page, int force, int offlining, bool sync) 617 struct page *page, int force, bool offlining, bool sync)
618{ 618{
619 int rc = 0; 619 int rc = 0;
620 int *result = NULL; 620 int *result = NULL;
@@ -827,7 +827,7 @@ move_newpage:
827 */ 827 */
828static int unmap_and_move_huge_page(new_page_t get_new_page, 828static int unmap_and_move_huge_page(new_page_t get_new_page,
829 unsigned long private, struct page *hpage, 829 unsigned long private, struct page *hpage,
830 int force, int offlining, bool sync) 830 int force, bool offlining, bool sync)
831{ 831{
832 int rc = 0; 832 int rc = 0;
833 int *result = NULL; 833 int *result = NULL;
@@ -909,7 +909,7 @@ out:
909 * Return: Number of pages not migrated or error code. 909 * Return: Number of pages not migrated or error code.
910 */ 910 */
911int migrate_pages(struct list_head *from, 911int migrate_pages(struct list_head *from,
912 new_page_t get_new_page, unsigned long private, int offlining, 912 new_page_t get_new_page, unsigned long private, bool offlining,
913 bool sync) 913 bool sync)
914{ 914{
915 int retry = 1; 915 int retry = 1;
@@ -960,7 +960,7 @@ out:
960} 960}
961 961
962int migrate_huge_pages(struct list_head *from, 962int migrate_huge_pages(struct list_head *from,
963 new_page_t get_new_page, unsigned long private, int offlining, 963 new_page_t get_new_page, unsigned long private, bool offlining,
964 bool sync) 964 bool sync)
965{ 965{
966 int retry = 1; 966 int retry = 1;