]> git.baikalelectronics.ru Git - kernel.git/commitdiff
mm/migrate.c: no need to check for i > start in do_pages_move()
authorWei Yang <richardw.yang@linux.intel.com>
Tue, 7 Apr 2020 03:04:09 +0000 (20:04 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 7 Apr 2020 17:43:38 +0000 (10:43 -0700)
Patch series "cleanup on do_pages_move()", v5.

The logic in do_pages_move() is a little mess for audience to read and has
some potential error on handling the return value. Especially there are
three calls on do_move_pages_to_node() and store_status() with almost the
same form.

This patch set tries to make the code a little friendly for audience by
consolidate the calls.

This patch (of 4):

At this point, we always have i >= start.  If i == start, store_status()
will return 0.  So we can drop the check for i > start.

[david@redhat.com rephrase changelog]

Signed-off-by: Wei Yang <richardw.yang@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Reviewed-by: David Hildenbrand <david@redhat.com>
Acked-by: Michal Hocko <mhocko@suse.com>
Link: http://lkml.kernel.org/r/20200214003017.25558-2-richardw.yang@linux.intel.com
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
mm/migrate.c

index 7ded07081be9a22153ba218f593a9504e1c092bd..20bc562f499e1a028248dba0414ee8d70618a154 100644 (file)
@@ -1694,11 +1694,9 @@ static int do_pages_move(struct mm_struct *mm, nodemask_t task_nodes,
                                err += nr_pages - i - 1;
                        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: