[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <c4afa795-c679-420b-a228-d7f08cf49d02@oracle.com>
Date: Wed, 13 Jan 2021 16:18:20 -0800
From: Mike Kravetz <mike.kravetz@...cle.com>
To: Muchun Song <songmuchun@...edance.com>, corbet@....net,
tglx@...utronix.de, mingo@...hat.com, bp@...en8.de, x86@...nel.org,
hpa@...or.com, dave.hansen@...ux.intel.com, luto@...nel.org,
peterz@...radead.org, viro@...iv.linux.org.uk,
akpm@...ux-foundation.org, paulmck@...nel.org,
mchehab+huawei@...nel.org, pawan.kumar.gupta@...ux.intel.com,
rdunlap@...radead.org, oneukum@...e.com, anshuman.khandual@....com,
jroedel@...e.de, almasrymina@...gle.com, rientjes@...gle.com,
willy@...radead.org, osalvador@...e.de, mhocko@...e.com,
song.bao.hua@...ilicon.com, david@...hat.com,
naoya.horiguchi@....com
Cc: duanxiongchun@...edance.com, linux-doc@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-mm@...ck.org,
linux-fsdevel@...r.kernel.org
Subject: Re: [PATCH v12 12/13] mm/hugetlb: Gather discrete indexes of tail
page
On 1/6/21 6:19 AM, Muchun Song wrote:
> For HugeTLB page, there are more metadata to save in the struct page.
> But the head struct page cannot meet our needs, so we have to abuse
> other tail struct page to store the metadata. In order to avoid
> conflicts caused by subsequent use of more tail struct pages, we can
> gather these discrete indexes of tail struct page. In this case, it
> will be easier to add a new tail page index later.
>
> There are only (RESERVE_VMEMMAP_SIZE / sizeof(struct page)) struct
> page structs that can be used when CONFIG_HUGETLB_PAGE_FREE_VMEMMAP,
> so add a BUILD_BUG_ON to catch invalid usage of the tail struct page.
>
> Signed-off-by: Muchun Song <songmuchun@...edance.com>
> Reviewed-by: Oscar Salvador <osalvador@...e.de>
> ---
> include/linux/hugetlb.h | 14 ++++++++++++++
> include/linux/hugetlb_cgroup.h | 15 +++++++++------
> mm/hugetlb.c | 25 ++++++++++++-------------
> mm/hugetlb_vmemmap.c | 8 ++++++++
> 4 files changed, 43 insertions(+), 19 deletions(-)
My apologies! I did not get to this patch in previous versions of the
series. My "RFC create hugetlb flags to consolidate state" was done
before I even noticed your efforts here.
At least we agree the metadata could be better organized. :)
IMO, using page.private of the head page to consolidate flags will be
easier to manage. So, I would like to use that.
The BUILD_BUG_ON in this patch makes sense.
--
Mike Kravetz
Powered by blists - more mailing lists