mirror of https://gitee.com/openkylin/linux.git
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>
This commit is contained in:
parent
77f1fe6b08
commit
7f0f24967b
|
@ -13,10 +13,10 @@ extern void putback_lru_pages(struct list_head *l);
|
|||
extern int migrate_page(struct address_space *,
|
||||
struct page *, struct page *);
|
||||
extern int migrate_pages(struct list_head *l, new_page_t x,
|
||||
unsigned long private, int offlining,
|
||||
unsigned long private, bool offlining,
|
||||
bool sync);
|
||||
extern int migrate_huge_pages(struct list_head *l, new_page_t x,
|
||||
unsigned long private, int offlining,
|
||||
unsigned long private, bool offlining,
|
||||
bool sync);
|
||||
|
||||
extern int fail_migrate_page(struct address_space *,
|
||||
|
@ -35,10 +35,10 @@ extern int migrate_huge_page_move_mapping(struct address_space *mapping,
|
|||
|
||||
static inline void putback_lru_pages(struct list_head *l) {}
|
||||
static inline int migrate_pages(struct list_head *l, new_page_t x,
|
||||
unsigned long private, int offlining,
|
||||
unsigned long private, bool offlining,
|
||||
bool sync) { return -ENOSYS; }
|
||||
static inline int migrate_huge_pages(struct list_head *l, new_page_t x,
|
||||
unsigned long private, int offlining,
|
||||
unsigned long private, bool offlining,
|
||||
bool sync) { return -ENOSYS; }
|
||||
|
||||
static inline int migrate_prep(void) { return -ENOSYS; }
|
||||
|
|
|
@ -456,7 +456,7 @@ static int compact_zone(struct zone *zone, struct compact_control *cc)
|
|||
|
||||
nr_migrate = cc->nr_migratepages;
|
||||
migrate_pages(&cc->migratepages, compaction_alloc,
|
||||
(unsigned long)cc, 0,
|
||||
(unsigned long)cc, false,
|
||||
cc->sync);
|
||||
update_nr_listpages(cc);
|
||||
nr_remaining = cc->nr_migratepages;
|
||||
|
|
|
@ -734,7 +734,7 @@ do_migrate_range(unsigned long start_pfn, unsigned long end_pfn)
|
|||
}
|
||||
/* this function returns # of failed pages */
|
||||
ret = migrate_pages(&source, hotremove_migrate_alloc, 0,
|
||||
1, true);
|
||||
true, true);
|
||||
if (ret)
|
||||
putback_lru_pages(&source);
|
||||
}
|
||||
|
|
|
@ -935,7 +935,8 @@ static int migrate_to_node(struct mm_struct *mm, int source, int dest,
|
|||
return PTR_ERR(vma);
|
||||
|
||||
if (!list_empty(&pagelist)) {
|
||||
err = migrate_pages(&pagelist, new_node_page, dest, 0, true);
|
||||
err = migrate_pages(&pagelist, new_node_page, dest,
|
||||
false, true);
|
||||
if (err)
|
||||
putback_lru_pages(&pagelist);
|
||||
}
|
||||
|
@ -1155,7 +1156,8 @@ static long do_mbind(unsigned long start, unsigned long len,
|
|||
|
||||
if (!list_empty(&pagelist)) {
|
||||
nr_failed = migrate_pages(&pagelist, new_vma_page,
|
||||
(unsigned long)vma, 0, true);
|
||||
(unsigned long)vma,
|
||||
false, true);
|
||||
if (nr_failed)
|
||||
putback_lru_pages(&pagelist);
|
||||
}
|
||||
|
|
|
@ -614,7 +614,7 @@ static int move_to_new_page(struct page *newpage, struct page *page,
|
|||
* to the newly allocated page in newpage.
|
||||
*/
|
||||
static int unmap_and_move(new_page_t get_new_page, unsigned long private,
|
||||
struct page *page, int force, int offlining, bool sync)
|
||||
struct page *page, int force, bool offlining, bool sync)
|
||||
{
|
||||
int rc = 0;
|
||||
int *result = NULL;
|
||||
|
@ -827,7 +827,7 @@ static int unmap_and_move(new_page_t get_new_page, unsigned long private,
|
|||
*/
|
||||
static int unmap_and_move_huge_page(new_page_t get_new_page,
|
||||
unsigned long private, struct page *hpage,
|
||||
int force, int offlining, bool sync)
|
||||
int force, bool offlining, bool sync)
|
||||
{
|
||||
int rc = 0;
|
||||
int *result = NULL;
|
||||
|
@ -909,7 +909,7 @@ static int unmap_and_move_huge_page(new_page_t get_new_page,
|
|||
* Return: Number of pages not migrated or error code.
|
||||
*/
|
||||
int migrate_pages(struct list_head *from,
|
||||
new_page_t get_new_page, unsigned long private, int offlining,
|
||||
new_page_t get_new_page, unsigned long private, bool offlining,
|
||||
bool sync)
|
||||
{
|
||||
int retry = 1;
|
||||
|
@ -960,7 +960,7 @@ int migrate_pages(struct list_head *from,
|
|||
}
|
||||
|
||||
int migrate_huge_pages(struct list_head *from,
|
||||
new_page_t get_new_page, unsigned long private, int offlining,
|
||||
new_page_t get_new_page, unsigned long private, bool offlining,
|
||||
bool sync)
|
||||
{
|
||||
int retry = 1;
|
||||
|
|
Loading…
Reference in New Issue