Re: [PATCH v3 14/17] cxl: docs/allocation/page-allocator

Gregory Price
2025-05-12T18:09:58Z

On Mon, May 12, 2025 at 06:52:31PM +0100, Matthew Wilcox wrote:
> >
> > Feel free to submit patches that deletes the existing code if you want
> > it removed from the documentation.
>
> Who sneaked that in when?

The ACPI and EFI folks when they allowed for CXL memory to be marked
EFI_CONVENTIONAL_MEMORY - which means Linux can't actually differentiate
between DRAM and CXL during __init and brings it online in the page
allocator as SystemRAM in ZONE_NORMAL (attached to the NUMA node that
maps to the Proximity Domain in the SRAT).

Not sure there's anything you can do about that.

And for DAX:

09d09e04d2 (cxl/dax: Create dax devices for CXL RAM regions)

Which allows for EFI_MEMORY_SP / Soft Reserved CXL regions to be brought
up as a DAX devices (which can be bound to SystemRAM via DAX kmem).

Wasn't much sneaking going on here - DAX kmem has been around and hacked
on since 2019, and probably some years before that.

~Gregory