diff mbox series

docs: update THP admin guide about non-tmpfs filesystem support

Message ID 20250403103805.173761-1-kernel@pankajraghav.com (mailing list archive)
State New
Headers show
Series docs: update THP admin guide about non-tmpfs filesystem support | expand

Commit Message

Pankaj Raghav (Samsung) April 3, 2025, 10:38 a.m. UTC
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.

Signed-off-by: Pankaj Raghav <p.raghav@samsung.com>
---
 Documentation/admin-guide/mm/transhuge.rst | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)


base-commit: f0a16f5363325cc8d9382471cdc7b654c53254c9

Comments

Bagas Sanjaya April 3, 2025, 10:50 a.m. UTC | #1
On Thu, Apr 03, 2025 at 12:38:05PM +0200, Pankaj Raghav (Samsung) wrote:
> diff --git a/Documentation/admin-guide/mm/transhuge.rst b/Documentation/admin-guide/mm/transhuge.rst
> index dff8d5985f0f..01b7ce90d693 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.
>  
>  .. note::
>     in the examples below we presume that the basic page size is 4K and
> @@ -463,6 +463,10 @@ fields for each mapping. (Note that AnonHugePages only applies to traditional
>  PMD-sized THP for historical reasons and should have been called
>  AnonHugePmdMapped).
>  
> +The number of PMD-sized transparent huge pages currently used by
> +filesystem data (page cache) is available by reading the FileHugePages field
> +in ``/proc/meminfo``.
> +
>  The number of file transparent huge pages mapped to userspace is available
>  by reading ShmemPmdMapped and ShmemHugePages fields in ``/proc/meminfo``.
>  To identify what applications are mapping file transparent huge pages, it
> 
> base-commit: f0a16f5363325cc8d9382471cdc7b654c53254c9

The wording looks good, thanks!

Reviewed-by: Bagas Sanjaya <bagasdotme@gmail.com>
David Hildenbrand April 3, 2025, 1:49 p.m. UTC | #2
On 03.04.25 12:38, 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.
> 
> Signed-off-by: Pankaj Raghav <p.raghav@samsung.com>
> ---
>   Documentation/admin-guide/mm/transhuge.rst | 8 ++++++--
>   1 file changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/Documentation/admin-guide/mm/transhuge.rst b/Documentation/admin-guide/mm/transhuge.rst
> index dff8d5985f0f..01b7ce90d693 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.
>   
>   .. note::
>      in the examples below we presume that the basic page size is 4K and
> @@ -463,6 +463,10 @@ fields for each mapping. (Note that AnonHugePages only applies to traditional
>   PMD-sized THP for historical reasons and should have been called
>   AnonHugePmdMapped).
>   
> +The number of PMD-sized transparent huge pages currently used by
> +filesystem data (page cache) is available by reading the FileHugePages field
> +in ``/proc/meminfo``.
> +

These changed look good. Do we also want to talk about FilePmdMapped? 
(PMD-sized THPs in the page cache that are mapped in to user space using 
a PMD ?)

Do we have to distinguish it from below? (shmem also uses the page cache)

>   The number of file transparent huge pages mapped to userspace is available
>   by reading ShmemPmdMapped and ShmemHugePages fields in ``/proc/meminfo``.
>   To identify what applications are mapping file transparent huge pages, it

Previously here, but: this reads rather odd. "file transparent huge 
pages". "PMD-sized THPs specific to shmem are tracked separately ..." ?
Pankaj Raghav (Samsung) April 3, 2025, 6:21 p.m. UTC | #3
> >      in the examples below we presume that the basic page size is 4K and
> > @@ -463,6 +463,10 @@ fields for each mapping. (Note that AnonHugePages only applies to traditional
> >   PMD-sized THP for historical reasons and should have been called
> >   AnonHugePmdMapped).
> > +The number of PMD-sized transparent huge pages currently used by
> > +filesystem data (page cache) is available by reading the FileHugePages field
> > +in ``/proc/meminfo``.
> > +
> 
> These changed look good. Do we also want to talk about FilePmdMapped?
> (PMD-sized THPs in the page cache that are mapped in to user space using a
> PMD ?)

I am a bit new to this subsystem, and it took some time to wrap around all
the different terminology used :)

But sure, I will add a new commit to talk about FilePmdMapped. I can
give it a shot with what I understand about FilePmdMapped, but please feel
free to add your input.

> 
> Do we have to distinguish it from below? (shmem also uses the page cache)
> 
> >   The number of file transparent huge pages mapped to userspace is available
> >   by reading ShmemPmdMapped and ShmemHugePages fields in ``/proc/meminfo``.
> >   To identify what applications are mapping file transparent huge pages, it
> 
> Previously here, but: this reads rather odd. "file transparent huge pages".
> "PMD-sized THPs specific to shmem are tracked separately ..." ?
> 

I totally agree. Reading "file transparent huge pages" confused me even
more. I will fold these changes as well.

Thanks, David.

--
Pankaj
diff mbox series

Patch

diff --git a/Documentation/admin-guide/mm/transhuge.rst b/Documentation/admin-guide/mm/transhuge.rst
index dff8d5985f0f..01b7ce90d693 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.
 
 .. note::
    in the examples below we presume that the basic page size is 4K and
@@ -463,6 +463,10 @@  fields for each mapping. (Note that AnonHugePages only applies to traditional
 PMD-sized THP for historical reasons and should have been called
 AnonHugePmdMapped).
 
+The number of PMD-sized transparent huge pages currently used by
+filesystem data (page cache) is available by reading the FileHugePages field
+in ``/proc/meminfo``.
+
 The number of file transparent huge pages mapped to userspace is available
 by reading ShmemPmdMapped and ShmemHugePages fields in ``/proc/meminfo``.
 To identify what applications are mapping file transparent huge pages, it