Re: [PATCH] mm/hugetlb: avoid unnecessary hugetlb_acct_memory() call

From: David Hildenbrand
Date: Thu Jan 14 2021 - 07:36:18 EST


On 14.01.21 12:31, Miaohe Lin wrote:
> When gbl_reserve is 0, hugetlb_acct_memory() will do nothing except holding
> and releasing hugetlb_lock.

So, what's the deal then? Adding more code?

If this is a performance improvement, we should spell it out. Otherwise
I don't see a real benefit of this patch.

>
> Signed-off-by: Miaohe Lin <linmiaohe@xxxxxxxxxx>
> ---
> mm/hugetlb.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/mm/hugetlb.c b/mm/hugetlb.c
> index 737b2dce19e6..fe2da9ad6233 100644
> --- a/mm/hugetlb.c
> +++ b/mm/hugetlb.c
> @@ -5241,7 +5241,8 @@ long hugetlb_unreserve_pages(struct inode *inode, long start, long end,
> * reservations to be released may be adjusted.
> */
> gbl_reserve = hugepage_subpool_put_pages(spool, (chg - freed));
> - hugetlb_acct_memory(h, -gbl_reserve);
> + if (gbl_reserve)
> + hugetlb_acct_memory(h, -gbl_reserve);
>
> return 0;
> }
>


--
Thanks,

David / dhildenb