From: Cui Chao <cuichao1753@phytium.com.cn>
To: dan.j.williams@intel.com, Andrew Morton <akpm@linux-foundation.org>
Cc: Jonathan Cameron <Jonathan.Cameron@huawei.com>,
Mike Rapoport <rppt@kernel.org>,
Wang Yinfeng <wangyinfeng@phytium.com.cn>,
linux-cxl@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-mm@kvack.org
Subject: Re: [PATCH v2 1/1] mm: numa_memblks: Identify the accurate NUMA ID of CFMW
Date: Thu, 22 Jan 2026 16:03:49 +0800 [thread overview]
Message-ID: <2d1e23ad-7ec1-483b-88b3-70ce19b69106@phytium.com.cn> (raw)
In-Reply-To: <696944eca1837_34d2a10056@dwillia2-mobl4.notmuch>
On 1/16/2026 3:50 AM, dan.j.williams@intel.com wrote:
> Andrew Morton wrote:
>> On Thu, 15 Jan 2026 17:43:02 +0800 Cui Chao <cuichao1753@phytium.com.cn> wrote:
>>
>>> When a CXL RAM region is created in userspace, the memory capacity of
>>> the newly created region is not added to the CFMW-dedicated NUMA node.
>>> Instead, it is accumulated into an existing NUMA node (e.g., NUMA0
>>> containing RAM). This makes it impossible to clearly distinguish between
>>> the two types of memory, which may affect memory-tiering applications.
>>>
>> OK, thanks, I added this to the changelog. Please retain it when
>> sending v3.
>>
>> What I'm actually looking for here are answers to the questions
>>
>> Should we backport this into -stable kernels and if so, why?
>> And if not, why not?
>>
>> So a very complete description of the runtime effects really helps
>> myself and others to decide which kernels to patch. And it helps
>> people to understand *why* we made that decision.
>>
>> And sorry, but "may affect memory-tiering applications" isn't very
>> complete!
>>
>> So please, tell us how much our users are hurting from this and please
>> make a recommendation on the backporting decision.
>>
> To add on here, Cui, please describe which shipping hardware platforms
> in the wild create physical address maps like this. For example, if this
> is something that only occurs in QEMU configurations or similar, then
> the urgency is low and it is debatable if Linux should even worry about
> fixing it.
>
> I know that x86 platforms typically do not do this. It is also
> within the realm of possibility for platform firmware to fix. So in
> addition to platform impact please also clarify why folks can not just
> ask for a firmware update to get this fixed without updating their
> kernel.
Andrew, Dan, thank you for your review.
1.Issue Impact and Backport Recommendation:
This patch fixes an issue on hardware platforms (not QEMU emulation)
where, during the dynamic creation of a CXL RAM region, the memory
capacity is not assigned to the correct CFMW-dedicated NUMA node. This
issue leads to:
*
Failure of the memory tiering mechanism: The system is designed to
treat System RAM as fast memory and CXL memory as slow memory. For
performance optimization, hot pages may be migrated to fast memory
while cold pages are migrated to slow memory. The system uses NUMA
IDs as an index to identify different tiers of memory. If the NUMA
ID for CXL memory is calculated incorrectly and its capacity is
aggregated into the NUMA node containing System RAM (i.e., the node
for fast memory), the CXL memory cannot be correctly identified. It
may be misjudged as fast memory, thereby affecting performance
optimization strategies.
*
Inability to distinguish between System RAM and CXL memory even for
simple manual binding: Tools like |numactl|and other NUMA policy
utilities cannot differentiate between System RAM and CXL memory,
making it impossible to perform reasonable memory binding.
*
Inaccurate system reporting: Tools like |numactl -H|would display
memory capacities that do not match the actual physical hardware
layout, impacting operations and monitoring.
This issue affects all users utilizing the CXL RAM functionality who
rely on memory tiering or NUMA-aware scheduling. Such configurations are
becoming increasingly common in data centers, cloud computing, and
high-performance computing scenarios.
Therefore, I recommend backporting this patch to all stable kernel
series that support dynamic CXL region creation.
2.Why a Kernel Update is Recommended Over a Firmware Update:
In the scenario of dynamic CXL region creation, the association between
the memory's HPA range and its corresponding NUMA node is established
when the kernel driver performs the commit operation. This is a runtime,
OS-managed operation where the platform firmware cannot intervene to
provide a fix.
Considering factors like hardware platform architecture, memory
resources, and others, such a physical address layout can indeed occur.
This patch does not introduce risk; it simply correctly handles the NUMA
node assignment for CXL RAM regions within such a physical address layout.
Thus, I believe a kernel fix is necessary.
--
Best regards,
Cui Chao.
next prev parent reply other threads:[~2026-01-22 8:04 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-01-06 3:10 [PATCH v2 0/1] " Cui Chao
2026-01-06 3:10 ` [PATCH v2 1/1] mm: numa_memblks: " Cui Chao
2026-01-08 16:19 ` Jonathan Cameron
2026-01-08 17:48 ` Andrew Morton
2026-01-15 9:43 ` Cui Chao
2026-01-15 18:18 ` Andrew Morton
2026-01-15 19:50 ` dan.j.williams
2026-01-22 8:03 ` Cui Chao [this message]
2026-01-22 21:28 ` Andrew Morton
2026-01-23 8:59 ` Cui Chao
2026-01-23 16:46 ` Gregory Price
2026-01-26 9:06 ` Cui Chao
2026-02-05 22:58 ` Andrew Morton
2026-02-05 23:10 ` Gregory Price
2026-02-06 11:03 ` Jonathan Cameron
2026-02-06 13:31 ` Gregory Price
2026-02-06 15:09 ` Jonathan Cameron
2026-02-06 15:53 ` Gregory Price
2026-02-06 16:26 ` Jonathan Cameron
2026-02-06 16:32 ` Gregory Price
2026-02-19 14:19 ` Jonathan Cameron
2026-02-06 15:57 ` Andrew Morton
2026-02-06 16:23 ` Jonathan Cameron
2026-01-09 9:35 ` Pratyush Brahma
2026-01-15 10:06 ` Cui Chao
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=2d1e23ad-7ec1-483b-88b3-70ce19b69106@phytium.com.cn \
--to=cuichao1753@phytium.com.cn \
--cc=Jonathan.Cameron@huawei.com \
--cc=akpm@linux-foundation.org \
--cc=dan.j.williams@intel.com \
--cc=linux-cxl@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=rppt@kernel.org \
--cc=wangyinfeng@phytium.com.cn \
/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