Hey, This series introduces the daxctl support for sub-dividing soft-reserved regions created by EFI/HMAT/efi_fake_mem. It's the userspace counterpart of this recent patch series [0].
These new 'dynamic' regions can be partitioned into multiple different devices which its subdivisions can consist of one or more ranges. This is in contrast to static dax regions -- created with ndctl-create-namespace -m devdax -- which can't be subdivided neither discontiguous. See also cover-letter of [0]. The daxctl changes in these patches are depicted as: * {create,destroy,disable,enable}-device: These orchestrate/manage the sub-division devices. It mimmics the same as namespaces equivalent commands. * Allow reconfigure-device to change the size of an existing *dynamic* dax device. * Add test coverage (so far tried to cover all range allocation code paths, but I am still fishing for bugs). Additionally, there are bugs so applying [0] may not make it pass the added functional test yet. I am sending the series earlier (i.e. before the kernel patches get merged) mainly to share a common unit tests, and also letting others try it out. The only TODOs left is documentation, and perhaps listing of the mappingX sysfs entries. Thoughts, comments appreciated. :) Thanks! Joao [0] "device-dax: Support sub-dividing soft-reserved ranges", https://lore.kernel.org/linux-nvdimm/158500767138.2088294.17131646259803932461.st...@dwillia2-desk3.amr.corp.intel.com/ Dan Williams (1): daxctl: Cleanup whitespace Joao Martins (9): libdaxctl: add daxctl_dev_set_size() daxctl: add resize support in reconfigure-device daxctl: add command to disable devdax device daxctl: add command to enable devdax device libdaxctl: add daxctl_region_create_dev() daxctl: add command to create device libdaxctl: add daxctl_region_destroy_dev() daxctl: add command to destroy device daxctl/test: Add tests for dynamic dax regions daxctl/builtin.h | 4 + daxctl/daxctl.c | 4 + daxctl/device.c | 310 ++++++++++++++++++++++++++++++++++++++- daxctl/lib/libdaxctl.c | 67 +++++++++ daxctl/lib/libdaxctl.sym | 7 + daxctl/libdaxctl.h | 3 + test/Makefile.am | 1 + test/daxctl-create.sh | 293 ++++++++++++++++++++++++++++++++++++ util/filter.c | 2 +- 9 files changed, 686 insertions(+), 5 deletions(-) create mode 100755 test/daxctl-create.sh -- 2.17.1 _______________________________________________ Linux-nvdimm mailing list -- linux-nvdimm@lists.01.org To unsubscribe send an email to linux-nvdimm-le...@lists.01.org