]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
nvdimm: allow exposing RAM carveouts as NVDIMM DIMM devices
authorMike Rapoport (Microsoft) <rppt@kernel.org>
Sun, 26 Oct 2025 15:38:41 +0000 (17:38 +0200)
committerIra Weiny <ira.weiny@intel.com>
Mon, 3 Nov 2025 20:50:42 +0000 (14:50 -0600)
commit43bc0aa19a2174d8eec711d9f3bf941a7b81373c
treebb95dd25c8585f9f8c2172af42736fcc6e0203c9
parent6146a0f1dfae5d37442a9ddcba012add260bceb0
nvdimm: allow exposing RAM carveouts as NVDIMM DIMM devices

There are use cases, for example virtual machine hosts, that create
"persistent" memory regions using memmap= option on x86 or dummy
pmem-region device tree nodes on DT based systems.

Both these options are inflexible because they create static regions and
the layout of the "persistent" memory cannot be adjusted without reboot
and sometimes they even require firmware update.

Add a ramdax driver that allows creation of DIMM devices on top of
E820_TYPE_PRAM regions and devicetree pmem-region nodes.

The DIMMs support label space management on the "device" and provide a
flexible way to access RAM using fsdax and devdax.

Signed-off-by: Mike Rapoport (Microsoft) <rppt@kernel.org>
Reviewed-by: Dan Williams <dan.j.williams@intel.com>
Link: https://patch.msgid.link/20251026153841.752061-2-rppt@kernel.org
Signed-off-by: Ira Weiny <ira.weiny@intel.com>
drivers/nvdimm/Kconfig
drivers/nvdimm/Makefile
drivers/nvdimm/ramdax.c [new file with mode: 0644]