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 <[email protected]>
> ---
>  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 <[email protected]>

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

Reply via email to