[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20260112112509.94521-1-lizhe.67@bytedance.com>
Date: Mon, 12 Jan 2026 19:25:09 +0800
From: "Li Zhe" <lizhe.67@...edance.com>
To: <akpm@...ux-foundation.org>
Cc: <david@...nel.org>, <fvdl@...gle.com>, <linux-kernel@...r.kernel.org>,
<linux-mm@...ck.org>, <lizhe.67@...edance.com>, <muchun.song@...ux.dev>,
<osalvador@...e.de>, <mjguzik@...il.com>, <mhocko@...e.com>,
<joao.m.martins@...cle.com>, <ankur.a.arora@...cle.com>,
<raghavendra.kt@....com>
Subject: Re: [PATCH v2 0/8] Introduce a huge-page pre-zeroing mechanism
On Wed, 7 Jan 2026 08:19:21 -0800, akpm@...ux-foundation.org wrote:
> > In user space, we can use system calls such as epoll and write to zero
> > huge folios as they become available, and sleep when none are ready. The
> > following pseudocode illustrates this approach. The pseudocode spawns
> > eight threads (each running thread_fun()) that wait for huge pages on
> > node 0 to become eligible for zeroing; whenever such pages are available,
> > the threads clear them in parallel.
>
> This seems to be quite a lot of messing around in userspace. Perhaps
> unavoidable given the tradeoffs which are involved, and reasonable in
> the sort of environments in which this will be used.
Apologies for the delayed response. I share the same view.
> I guess there are many alternatives - let's see what others think.
Let's cc the developers who took part in the earlier discussion and
see whether any better ideas emerge.
> > fs/hugetlbfs/inode.c | 3 +-
> > include/linux/hugetlb.h | 26 +++++
> > mm/hugetlb.c | 131 ++++++++++++++++++++++---
> > mm/hugetlb_internal.h | 6 ++
> > mm/hugetlb_sysfs.c | 206 ++++++++++++++++++++++++++++++++++++----
> > 5 files changed, 337 insertions(+), 35 deletions(-)
>
> Let's find places in Documentation/ (and Documentation/ABI) to document
> the userspace interface?
I believe this userspace interface should be documented in
'Documentation/admin-guide/mm/hugetlbpage.rst', and I will include
this update in V3.
However, I noticed that no document under 'Documentation/ABI' explicitly
describe the interfaces under directory
'/sys/devices/system/node/nodeX/hugepages/hugepages-<size>/'. Instead, it
points directly to 'Documentation/admin-guide/mm/hugetlbpage.rst' (see
'Documentation/ABI/stable/sysfs-devices-node').
Given this, is it sufficient to only modify
'Documentation/admin-guide/mm/hugetlbpage.rst'?
Thanks,
Zhe
Powered by blists - more mailing lists