Hi, Dan, Dan Williams <dan.j.willi...@intel.com> writes:
>>From [PATCH 6/8] dax: sub-division support: > > Device-DAX is a mechanism to establish mappings of performance / feature > differentiated memory with strict fault behavior guarantees. With > sub-division support a platform owner can provision sub-allocations of a > dax-region into separate devices. The provisioning mechanism follows the > same scheme as the libnvdimm sub-system in that a 'seed' device is > created at initialization time that can be resized from zero to become > enabled. > > Unlike the nvdimm sub-system there is no on media labelling scheme > associated with this partitioning. Provisioning decisions are ephemeral > / not automatically restored after reboot. While the initial use case of > device-dax is persistent memory other uses case may be volatile, so the > device-dax core is unable to assume the underlying memory is pmem. The > task of recalling a partitioning scheme or permissions on the device(s) > is left to userspace. Can you explain this reasoning in a bit more detail, please? If you have specific use cases in mind, that would be helpful. > For persistent allocations, naming, and permissions automatically > recalled by the kernel, use filesystem-DAX. For a userspace helper I'd agree with that guidance if it wasn't for the fact that device dax was born out of the need to be able to flush dirty data in a safe manner from userspace. At best, we're giving mixed guidance to application developers. -Jeff > library and utility for manipulating device-dax instances see libdaxctl > and the daxctl utility here: https://github.com/pmem/ndctl > > --- > > Dan Williams (8): > dax: add region-available-size attribute > dax: add region 'id', 'size', and 'align' attributes > dax: register seed device > dax: use multi-order radix for resource lookup > dax: refactor locking out of size calculation routines > dax: sub-division support > dax: add / remove dax devices after provisioning > dax: add debug for region available_size > > > drivers/dax/Kconfig | 1 > drivers/dax/dax.c | 747 > ++++++++++++++++++++++++++++++++++++++++++++++++--- > 2 files changed, 698 insertions(+), 50 deletions(-) > _______________________________________________ > Linux-nvdimm mailing list > linux-nvd...@lists.01.org > https://lists.01.org/mailman/listinfo/linux-nvdimm