Re: [PATCH 01/10] mm/hugetlb: not necessary to coalesce regions recursively

From: Baoquan He
Date: Fri Aug 07 2020 - 08:47:10 EST


On 08/07/20 at 05:12pm, Wei Yang wrote:
> Per my understanding, we keep the regions ordered and would always
> coalesce regions properly. So the task to keep this property is just
> to coalesce its neighbour.
>
> Let's simplify this.
>
> Signed-off-by: Wei Yang <richard.weiyang@xxxxxxxxxxxxxxxxx>
> ---
> mm/hugetlb.c | 6 +-----
> 1 file changed, 1 insertion(+), 5 deletions(-)
>
> diff --git a/mm/hugetlb.c b/mm/hugetlb.c
> index 590111ea6975..62ec74f6d03f 100644
> --- a/mm/hugetlb.c
> +++ b/mm/hugetlb.c
> @@ -307,8 +307,7 @@ static void coalesce_file_region(struct resv_map *resv, struct file_region *rg)
> list_del(&rg->link);
> kfree(rg);
>
> - coalesce_file_region(resv, prg);
> - return;
> + rg = prg;
> }
>
> nrg = list_next_entry(rg, link);
> @@ -318,9 +317,6 @@ static void coalesce_file_region(struct resv_map *resv, struct file_region *rg)
>
> list_del(&rg->link);
> kfree(rg);
> -
> - coalesce_file_region(resv, nrg);

I agree with the change. But this change the original behaviour of
coalesce_file_region, not sure if there's any reason we need to do that,
maybe Mike can give a judgement. Personally,

Reviewed-by: Baoquan He <bhe@xxxxxxxxxx>

> - return;
> }
> }
>
> --
> 2.20.1 (Apple Git-117)
>
>