linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: "Pankaj Raghav (Samsung)" <kernel@pankajraghav.com>
To: Luis Chamberlain <mcgrof@kernel.org>
Cc: Andrew Morton <akpm@linux-foundation.org>,
	 Jonathan Corbet <corbet@lwn.net>,
	linux-kernel@vger.kernel.org, willy@infradead.org,
	 linux-mm@kvack.org, Bagas Sanjaya <bagasdotme@gmail.com>,
	 David Hildenbrand <david@redhat.com>,
	da.gomez@kernel.org, gost.dev@samsung.com,
	 linux-doc@vger.kernel.org, Pankaj Raghav <p.raghav@samsung.com>
Subject: Re: [PATCH v3] docs: update THP admin guide about non-tmpfs filesystem support
Date: Fri, 4 Apr 2025 18:31:16 +0200	[thread overview]
Message-ID: <qy52tvn6atrlt5rhgzbtueyqbs56ik3rfg2b7yopynhhoipvtj@qph743k6m7kg> (raw)
In-Reply-To: <Z-_7fzU02OU1hVOT@bombadil.infradead.org>

On Fri, Apr 04, 2025 at 08:32:15AM -0700, Luis Chamberlain wrote:
> On Fri, Apr 04, 2025 at 04:06:57PM +0200, Pankaj Raghav (Samsung) wrote:
> > From: Pankaj Raghav <p.raghav@samsung.com>
> > 
> > THP support for non-tmpfs filesystem has been around for some time now.
> > Update the admin guide to reflect it.
> > 
> > While we are at it, move FilePmdMapped to previous paragraph for clarity,
> > and clarify ShmemPmdMapped & ShmemHugePage.
> > 
> > Signed-off-by: Pankaj Raghav <p.raghav@samsung.com>
> > Acked-by: David Hildenbrand <david@redhat.com>
> > ---
> > 
> > Changes since v2:
> > - Address comment from Bagas Sanjaya
> > - Squash commits and Ack from David
> > 
> >  Documentation/admin-guide/mm/transhuge.rst | 22 +++++++++++++++-------
> >  1 file changed, 15 insertions(+), 7 deletions(-)
> > 
> > diff --git a/Documentation/admin-guide/mm/transhuge.rst b/Documentation/admin-guide/mm/transhuge.rst
> > index dff8d5985f0f..f8aae64e38d0 100644
> > --- a/Documentation/admin-guide/mm/transhuge.rst
> > +++ b/Documentation/admin-guide/mm/transhuge.rst
> > @@ -12,8 +12,8 @@ using huge pages for the backing of virtual memory with huge pages
> >  that supports the automatic promotion and demotion of page sizes and
> >  without the shortcomings of hugetlbfs.
> >  
> > -Currently THP only works for anonymous memory mappings and tmpfs/shmem.
> > -But in the future it can expand to other filesystems.
> > +Currently, THP only works for anonymous memory mappings, tmpfs/shmem and
> > +filesystems that support large folios.
> 
> That seems to allude that THP can be supported on filesystems
> that suppor large folios. I don't think we want to call that THP

But we do allocate a THP in the page cache if we support large folios.

See [1] where THP was supported through page cache. From what I
understand, THP support was added first to the page cache and then large
folios (orders in between) support came later.

For example, you can mount XFS and do a simple dd as follows:

$ dd if=/dev/random of=/mnt/hello bs=1G count=2

And if you monitor `FileHugePages` after dd is done, it would have filled
up if THP is enabled.

> and that can confuse folks. Leaving "currently" also seems to
> indicate that there is more work to be done for THP for filesystems
> but that's not true as well. So how about something like:

There is more work to be done in the filesystems right? Adding large
folio support is the prerequisite here to get the THP support.

> 
> THP only works for anonymous memory mappings, and the tmpfs/shmem is the only
> filesystem to support it. The alternative to THP for other filesystems is to
> support large folios and with it you can end up using huge pages
> opportunistically.
> 
>   Luis

[1] https://lore.kernel.org/linux-mm/20201029193405.29125-1-willy@infradead.org/

--
Pankaj



  parent reply	other threads:[~2025-04-04 16:31 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-04-04 14:06 Pankaj Raghav (Samsung)
2025-04-04 15:32 ` Luis Chamberlain
2025-04-04 16:18   ` David Hildenbrand
2025-04-04 17:58     ` Luis Chamberlain
2025-04-04 19:07       ` David Hildenbrand
2025-04-04 19:44         ` Daniel Gomez
2025-04-04 20:01           ` David Hildenbrand
2025-04-04 16:31   ` Pankaj Raghav (Samsung) [this message]
2025-04-04 18:02     ` Luis Chamberlain
2025-04-10  9:31       ` Daniel Gomez
2025-04-04 19:16 ` David Hildenbrand
2025-04-08  9:44   ` Pankaj Raghav (Samsung)
2025-04-04 23:55 ` Bagas Sanjaya

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=qy52tvn6atrlt5rhgzbtueyqbs56ik3rfg2b7yopynhhoipvtj@qph743k6m7kg \
    --to=kernel@pankajraghav.com \
    --cc=akpm@linux-foundation.org \
    --cc=bagasdotme@gmail.com \
    --cc=corbet@lwn.net \
    --cc=da.gomez@kernel.org \
    --cc=david@redhat.com \
    --cc=gost.dev@samsung.com \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mcgrof@kernel.org \
    --cc=p.raghav@samsung.com \
    --cc=willy@infradead.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox