From: Baolin Wang <baolin.wang@linux.alibaba.com>
To: Kefeng Wang <wangkefeng.wang@huawei.com>,
akpm@linux-foundation.org, hughd@google.com
Cc: willy@infradead.org, david@redhat.com, 21cnbao@gmail.com,
ryan.roberts@arm.com, ying.huang@intel.com, shy828301@gmail.com,
ziy@nvidia.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org
Subject: Re: [RFC PATCH 2/5] mm: shmem: add an 'order' parameter for shmem_alloc_hugefolio()
Date: Wed, 24 Apr 2024 14:55:59 +0800 [thread overview]
Message-ID: <5b663fcc-cace-4091-aa56-e88b00ec1d1c@linux.alibaba.com> (raw)
In-Reply-To: <c51d8d04-e108-4a0c-9f0b-7c47b619a76c@huawei.com>
On 2024/4/24 14:28, Kefeng Wang wrote:
>
>
> On 2024/4/22 15:02, Baolin Wang wrote:
>> Add a new parameter to specify the huge page order for
>> shmem_alloc_hugefolio(),
>> as a preparation to supoort mTHP.
>>
>> Signed-off-by: Baolin Wang <baolin.wang@linux.alibaba.com>
>> ---
>> mm/shmem.c | 11 ++++++-----
>> 1 file changed, 6 insertions(+), 5 deletions(-)
>>
>> diff --git a/mm/shmem.c b/mm/shmem.c
>> index fa2a0ed97507..893c88efc45f 100644
>> --- a/mm/shmem.c
>> +++ b/mm/shmem.c
>> @@ -1604,14 +1604,14 @@ static gfp_t limit_gfp_mask(gfp_t huge_gfp,
>> gfp_t limit_gfp)
>> }
>> static struct folio *shmem_alloc_hugefolio(gfp_t gfp,
>> - struct shmem_inode_info *info, pgoff_t index)
>> + struct shmem_inode_info *info, pgoff_t index, int order)
>> {
>> struct mempolicy *mpol;
>> pgoff_t ilx;
>> struct page *page;
>> - mpol = shmem_get_pgoff_policy(info, index, HPAGE_PMD_ORDER, &ilx);
>> - page = alloc_pages_mpol(gfp, HPAGE_PMD_ORDER, mpol, ilx,
>> numa_node_id());
>> + mpol = shmem_get_pgoff_policy(info, index, order, &ilx);
>> + page = alloc_pages_mpol(gfp, order, mpol, ilx, numa_node_id());
>> mpol_cond_put(mpol);
>> return page_rmappable_folio(page);
>> @@ -1639,13 +1639,14 @@ static struct folio
>> *shmem_alloc_and_add_folio(gfp_t gfp,
>> struct shmem_inode_info *info = SHMEM_I(inode);
>> struct folio *folio;
>> long pages;
>> - int error;
>> + int error, order;
>> if (!IS_ENABLED(CONFIG_TRANSPARENT_HUGEPAGE))
>> huge = false;
>> if (huge) {
>> pages = HPAGE_PMD_NR;
>> + order = HPAGE_PMD_ORDER;
>> index = round_down(index, HPAGE_PMD_NR);
>> /*
>> @@ -1660,7 +1661,7 @@ static struct folio
>> *shmem_alloc_and_add_folio(gfp_t gfp,
>> index + HPAGE_PMD_NR - 1, XA_PRESENT))
>> return ERR_PTR(-E2BIG);
>> - folio = shmem_alloc_hugefolio(gfp, info, index);
>> + folio = shmem_alloc_hugefolio(gfp, info, index, order);
>
> Avoid order variable, we can directly use HPAGE_PMD_NR here.
Yes, sure. Thanks.
next prev parent reply other threads:[~2024-04-24 6:56 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-04-22 7:02 [RFC PATCH 0/5] add mTHP support for anonymous share pages Baolin Wang
2024-04-22 7:02 ` [RFC PATCH 1/5] mm: memory: extend finish_fault() to support large folio Baolin Wang
2024-04-23 8:39 ` Lance Yang
2024-04-25 7:04 ` Baolin Wang
2024-04-23 11:03 ` Ryan Roberts
2024-04-24 3:23 ` Baolin Wang
2024-04-24 8:07 ` Ryan Roberts
2024-04-24 9:26 ` Baolin Wang
2024-04-24 9:57 ` Ryan Roberts
2024-04-22 7:02 ` [RFC PATCH 2/5] mm: shmem: add an 'order' parameter for shmem_alloc_hugefolio() Baolin Wang
2024-04-24 6:28 ` Kefeng Wang
2024-04-24 6:55 ` Baolin Wang [this message]
2024-04-22 7:02 ` [RFC PATCH 3/5] mm: shmem: add THP validation for PMD-mapped THP related statistics Baolin Wang
2024-04-23 1:13 ` Barry Song
2024-04-22 7:02 ` [RFC PATCH 4/5] mm: shmem: add mTHP support for anonymous share pages Baolin Wang
2024-04-22 7:02 ` [RFC PATCH 5/5] mm: shmem: add anonymous share mTHP counters Baolin Wang
2024-04-23 1:17 ` Barry Song
2024-04-23 1:46 ` Baolin Wang
2024-04-23 11:39 ` Ryan Roberts
2024-04-24 3:48 ` Baolin Wang
2024-04-23 9:45 ` Lance Yang
2024-04-23 11:22 ` Lance Yang
2024-04-24 3:49 ` Baolin Wang
2024-04-23 11:37 ` David Hildenbrand
2024-04-24 6:10 ` Baolin Wang
2024-04-24 7:11 ` David Hildenbrand
2024-04-24 8:15 ` Ryan Roberts
2024-04-24 9:31 ` Baolin Wang
2024-04-23 10:41 ` [RFC PATCH 0/5] add mTHP support for anonymous share pages Ryan Roberts
2024-04-23 11:05 ` David Hildenbrand
2024-04-24 6:55 ` Baolin Wang
2024-04-24 8:26 ` Ryan Roberts
2024-04-24 9:55 ` Baolin Wang
2024-04-24 10:01 ` Ryan Roberts
2024-04-24 13:49 ` Baolin Wang
2024-04-24 14:20 ` Ryan Roberts
2024-04-25 6:20 ` Baolin Wang
2024-04-25 8:17 ` Ryan Roberts
2024-04-25 8:26 ` David Hildenbrand
2024-04-25 8:46 ` Ryan Roberts
2024-04-25 8:57 ` David Hildenbrand
2024-04-25 9:05 ` Baolin Wang
2024-04-25 9:20 ` David Hildenbrand
2024-04-25 9:50 ` Baolin Wang
2024-04-25 10:17 ` Ryan Roberts
2024-04-25 10:19 ` David Hildenbrand
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5b663fcc-cace-4091-aa56-e88b00ec1d1c@linux.alibaba.com \
--to=baolin.wang@linux.alibaba.com \
--cc=21cnbao@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=david@redhat.com \
--cc=hughd@google.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=ryan.roberts@arm.com \
--cc=shy828301@gmail.com \
--cc=wangkefeng.wang@huawei.com \
--cc=willy@infradead.org \
--cc=ying.huang@intel.com \
--cc=ziy@nvidia.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.