tail head cat sleep
QR code linking to this page

Manual Pages  — NVDIMM

NAME

nvdimm – ACPI NVDIMM driver

CONTENTS

SYNOPSIS

To load the driver as a module at boot, place the following line in loader.conf(5):
nvdimm_load="YES"

DESCRIPTION

Note: The nvdimm driver is under development and has some important limitations described below.

The nvdimm driver provides access to Non-Volatile DIMM (NVDIMM) persistent memory devices, which are ACPI-enumerated under the root NVDIMM device with a _HID of ACPI0012 and in the NFIT table.

For each System Physical Address (SPA) Range described by NFIT, a device node /dev/nvdimm_spaNNN is created, where NNN is the SPA position in the table. The node can be used to read(2), write(2), or mmap(2) the device.

Also, for each SPA, the geom provider spaNNN is created, which can be used to create a conventional filesystem (e.g., by newfs(8)) and mount(8) it as any storage volume. Content accessible by /dev/nvdimm_spaNNN and /dev/spaNNN is coherent.

The nvdimm driver has support for reading NVDIMM namespaces (if supported by your hardware and already configured by some other mechanism, e.g., a BIOS configuration screen). The driver will provide a /dev/nvdimm_spaNNNnsMMM device node and spaNNNnsMMM geom provider for each namespace in a SPA, which behave analogously to their full-SPA cousins described above.

SEE ALSO

ACPI(4), GEOM(4), geom(8), mount(8), newfs(8), disk(9)

HISTORY

The nvdimm driver first appeared in FreeBSD 12.0 .

AUTHORS

The nvdimm driver was originally written by Konstantin Belousov <Mt kib@FreeBSD.org>, and then updated by D. Scott Phillips <Mt scottph@FreeBSD.org>.

BUGS

The nvdimm driver does not utilize the Block Window interface, so if a write to an NVDIMM is interrupted due to a system crash or power outage, the corresponding page might be left in a partially updated state.

There is no support for Device-Specific Methods (DSM), used to report and control device health and wearing.

The driver depends on the pmap_largemap(9) pmap interface, which is currently only implemented on amd64. The interface can be only reasonable implemented on 64bit architectures.


NVDIMM (4) September 5, 2019

tail head cat sleep
QR code linking to this page


Please direct any comments about this manual page service to Ben Bullock. Privacy policy.

With features like these, who needs bugs?
— Henry Spencer