Message ID | 20230919230909.530174-3-gregory.price@memverge.com |
---|---|
State | Accepted |
Commit | ec47e250628903d48d9ff490c6b532df889bcaa3 |
Headers | show |
Series | move_phys_pages syscall | expand |
On Tue, 19 Sep 2023 19:09:05 -0400 Gregory Price <gourry.memverge@gmail.com> wrote: > preparatory work to re-use do_move_pages_to_node with a physical > address instead of virtual address. This function does not actively > use the mm_struct, so it can be removed. > > Signed-off-by: Gregory Price <gregory.price@memverge.com> Indeed doesn't need to be there. FWIW Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Would be nice if these first 2 patches go upstream separately. > --- > mm/migrate.c | 13 ++++++------- > 1 file changed, 6 insertions(+), 7 deletions(-) > > diff --git a/mm/migrate.c b/mm/migrate.c > index a0b0c5a7f8a5..dbe436163d65 100644 > --- a/mm/migrate.c > +++ b/mm/migrate.c > @@ -2026,8 +2026,7 @@ static int store_status(int __user *status, int start, int value, int nr) > return 0; > } > > -static int do_move_pages_to_node(struct mm_struct *mm, > - struct list_head *pagelist, int node) > +static int do_move_pages_to_node(struct list_head *pagelist, int node) > { > int err; > struct migration_target_control mtc = { > @@ -2123,7 +2122,7 @@ static int add_page_for_migration(struct mm_struct *mm, const void __user *p, > return err; > } > > -static int move_pages_and_store_status(struct mm_struct *mm, int node, > +static int move_pages_and_store_status(int node, > struct list_head *pagelist, int __user *status, > int start, int i, unsigned long nr_pages) > { > @@ -2132,7 +2131,7 @@ static int move_pages_and_store_status(struct mm_struct *mm, int node, > if (list_empty(pagelist)) > return 0; > > - err = do_move_pages_to_node(mm, pagelist, node); > + err = do_move_pages_to_node(pagelist, node); > if (err) { > /* > * Positive err means the number of failed > @@ -2200,7 +2199,7 @@ static int do_pages_move(struct mm_struct *mm, nodemask_t task_nodes, > current_node = node; > start = i; > } else if (node != current_node) { > - err = move_pages_and_store_status(mm, current_node, > + err = move_pages_and_store_status(current_node, > &pagelist, status, start, i, nr_pages); > if (err) > goto out; > @@ -2235,7 +2234,7 @@ static int do_pages_move(struct mm_struct *mm, nodemask_t task_nodes, > if (err) > goto out_flush; > > - err = move_pages_and_store_status(mm, current_node, &pagelist, > + err = move_pages_and_store_status(current_node, &pagelist, > status, start, i, nr_pages); > if (err) { > /* We have accounted for page i */ > @@ -2247,7 +2246,7 @@ static int do_pages_move(struct mm_struct *mm, nodemask_t task_nodes, > } > out_flush: > /* Make sure we do not overwrite the existing error */ > - err1 = move_pages_and_store_status(mm, current_node, &pagelist, > + err1 = move_pages_and_store_status(current_node, &pagelist, > status, start, i, nr_pages); > if (err >= 0) > err = err1;
diff --git a/mm/migrate.c b/mm/migrate.c index a0b0c5a7f8a5..dbe436163d65 100644 --- a/mm/migrate.c +++ b/mm/migrate.c @@ -2026,8 +2026,7 @@ static int store_status(int __user *status, int start, int value, int nr) return 0; } -static int do_move_pages_to_node(struct mm_struct *mm, - struct list_head *pagelist, int node) +static int do_move_pages_to_node(struct list_head *pagelist, int node) { int err; struct migration_target_control mtc = { @@ -2123,7 +2122,7 @@ static int add_page_for_migration(struct mm_struct *mm, const void __user *p, return err; } -static int move_pages_and_store_status(struct mm_struct *mm, int node, +static int move_pages_and_store_status(int node, struct list_head *pagelist, int __user *status, int start, int i, unsigned long nr_pages) { @@ -2132,7 +2131,7 @@ static int move_pages_and_store_status(struct mm_struct *mm, int node, if (list_empty(pagelist)) return 0; - err = do_move_pages_to_node(mm, pagelist, node); + err = do_move_pages_to_node(pagelist, node); if (err) { /* * Positive err means the number of failed @@ -2200,7 +2199,7 @@ static int do_pages_move(struct mm_struct *mm, nodemask_t task_nodes, current_node = node; start = i; } else if (node != current_node) { - err = move_pages_and_store_status(mm, current_node, + err = move_pages_and_store_status(current_node, &pagelist, status, start, i, nr_pages); if (err) goto out; @@ -2235,7 +2234,7 @@ static int do_pages_move(struct mm_struct *mm, nodemask_t task_nodes, if (err) goto out_flush; - err = move_pages_and_store_status(mm, current_node, &pagelist, + err = move_pages_and_store_status(current_node, &pagelist, status, start, i, nr_pages); if (err) { /* We have accounted for page i */ @@ -2247,7 +2246,7 @@ static int do_pages_move(struct mm_struct *mm, nodemask_t task_nodes, } out_flush: /* Make sure we do not overwrite the existing error */ - err1 = move_pages_and_store_status(mm, current_node, &pagelist, + err1 = move_pages_and_store_status(current_node, &pagelist, status, start, i, nr_pages); if (err >= 0) err = err1;
preparatory work to re-use do_move_pages_to_node with a physical address instead of virtual address. This function does not actively use the mm_struct, so it can be removed. Signed-off-by: Gregory Price <gregory.price@memverge.com> --- mm/migrate.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-)