mm: thp: simplify split_huge_pages_pid()
authorNanyong Sun <sunnanyong@huawei.com>
Thu, 5 Sep 2024 15:30:28 +0000 (23:30 +0800)
committerAndrew Morton <akpm@linux-foundation.org>
Mon, 9 Sep 2024 23:39:15 +0000 (16:39 -0700)
The helper find_get_task_by_vpid() can totally replace the task_struct
find logic in split_huge_pages_pid(), so use it to simplify the code.
Also delete the needless comments for the helper function name already
explains what it's doing here.

Link: https://lkml.kernel.org/r/20240905153028.1205128-1-sunnanyong@huawei.com
Signed-off-by: Nanyong Sun <sunnanyong@huawei.com>
Cc: Kefeng Wang <wangkefeng.wang@huawei.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
mm/huge_memory.c

index 77092581f90da18d5254f4467455ae1208a929a5..f15f7faf2a632c88c25bb1f01b6e70b88e3456f6 100644 (file)
@@ -3819,16 +3819,11 @@ static int split_huge_pages_pid(int pid, unsigned long vaddr_start,
        vaddr_start &= PAGE_MASK;
        vaddr_end &= PAGE_MASK;
 
-       /* Find the task_struct from pid */
-       rcu_read_lock();
-       task = find_task_by_vpid(pid);
+       task = find_get_task_by_vpid(pid);
        if (!task) {
-               rcu_read_unlock();
                ret = -ESRCH;
                goto out;
        }
-       get_task_struct(task);
-       rcu_read_unlock();
 
        /* Find the mm_struct */
        mm = get_task_mm(task);