On Sun, 19 Jan 2020, Wei Yang wrote: > diff --git a/mm/migrate.c b/mm/migrate.c > index ba7cf4fa43a0..c3ef70de5876 100644 > --- a/mm/migrate.c > +++ b/mm/migrate.c > @@ -1664,11 +1664,9 @@ static int do_pages_move(struct mm_struct *mm, nodemask_t task_nodes, > err = do_move_pages_to_node(mm, &pagelist, current_node); > if (err) > goto out; > - if (i > start) { > - err = store_status(status, start, current_node, i - start); > - if (err) > - goto out; > - } > + err = store_status(status, start, current_node, i - start); > + if (err) > + goto out; > current_node = NUMA_NO_NODE; > } > out_flush: Not sure this is useful, it relies on the implementation of store_status() when i == start and the overhead of the function call should actually be slower than the simple conditional to avoid it in that case?