From: Muchun Song <muchun.song@linux.dev>
To: Mark Bundschuh <mkbund@amazon.com>
Cc: akpm@linux-foundation.org, osalvador@suse.de,
David Hildenbrand <david@kernel.org>,
jiaqiyan@google.com, linux-mm@kvack.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2] mm/hugetlb: add htlb_dissolve vmstat event
Date: Fri, 6 Nov 2026 11:50:47 +0800 [thread overview]
Message-ID: <D6862DF6-34D8-44B9-8412-B241812F6754@linux.dev> (raw)
In-Reply-To: <20261105191508.1021974-1-mkbund@amazon.com>
> On Nov 6, 2026, at 03:15, Mark Bundschuh <mkbund@amazon.com> wrote:
>
> Memory offline and memory failure handling dissolve free hugetlb folios
> and lower nr_hugepages. Nothing records this, so when the pool shrinks
> it is hard to tell whether that or a write to nr_hugepages caused it.
Hi Mark,
I want to know why you need to distinguish these cases. Is it because,
in your scenario, there is a possibility that unexpected nr_hugepages
operations may modify things? You are not aware of such operational
actions, so you want to know whether you have experienced this kind of
operational action, is that right? Since this risk exists, why not use
auditctl to perform audit logging?
Thanks,
Muchun
>
> Add an htlb_dissolve event, counted for each free folio that
> dissolve_free_hugetlb_folio() takes out of the pool.
>
> Signed-off-by: Mark Bundschuh <mkbund@amazon.com>
> ---
> v2: say "takes out of the pool" instead of "frees" (Jiaqi)
>
> v1: https://lore.kernel.org/all/20261105020324.2011790-1-mkbund@amazon.com/
>
> include/linux/vm_event_item.h | 1 +
> mm/hugetlb.c | 1 +
> mm/vmstat.c | 1 +
> 3 files changed, 3 insertions(+)
>
> diff --git a/include/linux/vm_event_item.h b/include/linux/vm_event_item.h
> index 2628ccda076a..822fe862e5b3 100644
> --- a/include/linux/vm_event_item.h
> +++ b/include/linux/vm_event_item.h
> @@ -71,6 +71,7 @@ enum vm_event_item { PGPGIN, PGPGOUT, PSWPIN, PSWPOUT,
> #endif
> #ifdef CONFIG_HUGETLB_PAGE
> HTLB_BUDDY_PGALLOC, HTLB_BUDDY_PGALLOC_FAIL,
> + HTLB_DISSOLVE,
> #endif
> #ifdef CONFIG_CMA
> CMA_ALLOC_SUCCESS,
> diff --git a/mm/hugetlb.c b/mm/hugetlb.c
> index da5d04edf7c1..7c79523b2a3c 100644
> --- a/mm/hugetlb.c
> +++ b/mm/hugetlb.c
> @@ -2047,6 +2047,7 @@ int dissolve_free_hugetlb_folio(struct folio *folio)
> }
>
> update_and_free_hugetlb_folio(h, folio, false);
> + count_vm_event(HTLB_DISSOLVE);
> return rc;
> }
> out:
> diff --git a/mm/vmstat.c b/mm/vmstat.c
> index a3e809c57f29..6282eef7074a 100644
> --- a/mm/vmstat.c
> +++ b/mm/vmstat.c
> @@ -1397,6 +1397,7 @@ const char * const vmstat_text[] = {
> #ifdef CONFIG_HUGETLB_PAGE
> [I(HTLB_BUDDY_PGALLOC)] = "htlb_buddy_alloc_success",
> [I(HTLB_BUDDY_PGALLOC_FAIL)] = "htlb_buddy_alloc_fail",
> + [I(HTLB_DISSOLVE)] = "htlb_dissolve",
> #endif
> #ifdef CONFIG_CMA
> [I(CMA_ALLOC_SUCCESS)] = "cma_alloc_success",
>
> base-commit: 05441d697f7f9a927264f4058cbbc6a03dfcac9d
> --
> 2.50.1
>
prev parent reply other threads:[~2026-11-06 3:51 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-11-05 19:15 Mark Bundschuh
2026-11-05 23:39 ` Andrew Morton
2026-11-06 3:50 ` Muchun Song [this message]
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=D6862DF6-34D8-44B9-8412-B241812F6754@linux.dev \
--to=muchun.song@linux.dev \
--cc=akpm@linux-foundation.org \
--cc=david@kernel.org \
--cc=jiaqiyan@google.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mkbund@amazon.com \
--cc=osalvador@suse.de \
/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
all inboxes | Powered by JetHome®