From: David Hildenbrand <david@redhat.com>
To: Gregory Price <gourry@gourry.net>, dan.j.williams@intel.com
Cc: nvdimm@lists.linux.dev, linux-kernel@vger.kernel.org,
kernel-team@meta.com, vishal.l.verma@intel.com,
dave.jiang@intel.com, linux-cxl@vger.kernel.org
Subject: Re: [PATCH] DAX: warn when kmem regions are truncated for memory block alignment.
Date: Tue, 1 Apr 2025 11:33:59 +0200 [thread overview]
Message-ID: <3e3115c0-c3a2-4ec2-8aea-ee1b40057dd6@redhat.com> (raw)
In-Reply-To: <Z-remBNWEej6KX3-@gourry-fedora-PF4VCD3F>
On 31.03.25 20:27, Gregory Price wrote:
> On Fri, Mar 21, 2025 at 02:07:31PM -0400, Gregory Price wrote:
>> Device capacity intended for use as system ram should be aligned to the
>> architecture-defined memory block size or that capacity will be silently
>> truncated and capacity stranded.
>>
>> As hotplug dax memory becomes more prevelant, the memory block size
>> alignment becomes more important for platform and device vendors to
>> pay attention to - so this truncation should not be silent.
>>
>> This issue is particularly relevant for CXL Dynamic Capacity devices,
>> whose capacity may arrive in spec-aligned but block-misaligned chunks.
>>
>> Example:
>> [...] kmem dax0.0: dax region truncated 2684354560 bytes - alignment
>> [...] kmem dax1.0: dax region truncated 1610612736 bytes - alignment
>>
>> Signed-off-by: Gregory Price <gourry@gourry.net>
>
> Gentle pokes. There were a couple questions last week whether we should
> warn here or actually fix something in memory-hotplug.
>
> Notes from CXL Boot to Bash session discussions:
>
>
> We discussed [1] how this auto-sizing can cause 1GB huge page
> allocation failures (assuming you online as ZONE_NORMAL). That means
> ACPI-informed sizing by default would potentially be harmful to existing
> systems and adding yet-another-boot-option just seems nasty.
>
> I've since dropped acpi-informed block size patch[2]. If there are opinions
> otherwise, I can continue pushing it.
Oh, I thought we would be going forward with that. What's the reason we
would not want to do that?
>
>
> We also discussed[3] variable-sized blocks having some nasty corner cases.
> Not unsolvable, but doesn't help users in the short term.
>
>
> There was some brief discussion about whether a hotplug memblock with a
> portion as offline pages would be possible. This seems hacky? There
> was another patch set discussing this, but I can't seem to find it.
Yeah, I proposed something like that as well when I started working on
virtio-mem and did not really understand the whole hot(un)plug model in
Linux properly. Someone else proposed it again a couple of years ago,
but it's just wrong and should not be done that way.
One could implement something like virtio-mem, whereby parts of a Linux
memory block can be added/removed independently ("fake offlined"). But
the whole idea of virtio-mem is that all memory in the Linux memory
block range belongs to it. So it doesn't quite apply to DAX where parts
of a Linux memory block might be from something completely different
(e.g., boot memory etc).
--
Cheers,
David / dhildenb
next prev parent reply other threads:[~2025-04-01 9:34 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-03-21 18:07 [PATCH] DAX: warn when kmem regions are truncated for memory block alignment Gregory Price
2025-03-31 18:27 ` Gregory Price
2025-04-01 9:33 ` David Hildenbrand [this message]
2025-04-01 14:43 ` Gregory Price
2025-04-01 14:50 ` David Hildenbrand
2025-04-01 15:16 ` Gregory Price
2025-04-01 15:19 ` David Hildenbrand
2025-04-01 15:26 ` Gregory Price
2025-04-01 15:29 ` David Hildenbrand
2025-04-01 9:47 ` David Hildenbrand
2025-04-01 14:44 ` Gregory Price
2025-04-01 17:47 ` Dan Williams
2025-04-01 18:27 ` Gregory Price
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=3e3115c0-c3a2-4ec2-8aea-ee1b40057dd6@redhat.com \
--to=david@redhat.com \
--cc=dan.j.williams@intel.com \
--cc=dave.jiang@intel.com \
--cc=gourry@gourry.net \
--cc=kernel-team@meta.com \
--cc=linux-cxl@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=nvdimm@lists.linux.dev \
--cc=vishal.l.verma@intel.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.