Re: [PATCH 1/5] mm: migrate: Add mode parameter to support additional page copy routines.

From: Anshuman Khandual
Date: Tue Nov 29 2016 - 00:10:37 EST


On 11/28/2016 08:43 PM, Zi Yan wrote:
> On 24 Nov 2016, at 18:56, Balbir Singh wrote:
>
>> > On 23/11/16 03:25, Zi Yan wrote:
>>> >> From: Zi Yan <zi.yan@xxxxxxxxxxxxxx>
>>> >>
>>> >> From: Zi Yan <ziy@xxxxxxxxxx>
>>> >>
>>> >> migrate_page_copy() and copy_huge_page() are affected.
>>> >>
>>> >> Signed-off-by: Zi Yan <ziy@xxxxxxxxxx>
>>> >> Signed-off-by: Zi Yan <zi.yan@xxxxxxxxxxxxxx>
>>> >> ---
>>> >> fs/aio.c | 2 +-
>>> >> fs/hugetlbfs/inode.c | 2 +-
>>> >> fs/ubifs/file.c | 2 +-
>>> >> include/linux/migrate.h | 6 ++++--
>>> >> mm/migrate.c | 14 ++++++++------
>>> >> 5 files changed, 15 insertions(+), 11 deletions(-)
>>> >>
>>> >> diff --git a/fs/aio.c b/fs/aio.c
>>> >> index 428484f..a67c764 100644
>>> >> --- a/fs/aio.c
>>> >> +++ b/fs/aio.c
>>> >> @@ -418,7 +418,7 @@ static int aio_migratepage(struct address_space *mapping, struct page *new,
>>> >> * events from being lost.
>>> >> */
>>> >> spin_lock_irqsave(&ctx->completion_lock, flags);
>>> >> - migrate_page_copy(new, old);
>>> >> + migrate_page_copy(new, old, 0);
>> >
>> > Can we have a useful enum instead of 0, its harder to read and understand
>> > 0
> How about MIGRATE_SINGLETHREAD = 0 ?

Right, should be an enum declaration for all kind of single page
copy process. Now we have just two. We dont have to mention
number of threads in the multi threaded one.

MIGRATE_SINGLETHREAD
MIGRATE_MULTITHREAD