]> www.infradead.org Git - users/jedix/linux-maple.git/commit
libnvdimm, pfn: 'struct page' provider infrastructure
authorDan Williams <dan.j.williams@intel.com>
Thu, 30 Jul 2015 21:57:47 +0000 (17:57 -0400)
committerDan Duval <dan.duval@oracle.com>
Wed, 7 Dec 2016 17:19:30 +0000 (12:19 -0500)
commit3104c29071cd345ba837e58caa5e1e99c52b355e
tree5830bb278dc721dfeb44e94357763287f333f0b4
parentabcbb1020539416808c049f4cc63226f86fe4f16
libnvdimm, pfn: 'struct page' provider infrastructure

Orabug: 22913653

Implement the base infrastructure for libnvdimm PFN devices. Similar to
BTT devices they take a namespace as a backing device and layer
functionality on top. In this case the functionality is reserving space
for an array of 'struct page' entries to be handed out through
pfn_to_page(). For now this is just the basic libnvdimm-device-model for
configuring the base PFN device.

As the namespace claiming mechanism for PFN devices is mostly identical
to BTT devices drivers/nvdimm/claim.c is created to house the common
bits.

Cc: Ross Zwisler <ross.zwisler@linux.intel.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
(cherry picked from commit e1455744b27c9e6115c3508a7b2902157c2c4347)
Signed-off-by: Dan Duval <dan.duval@oracle.com>
13 files changed:
drivers/nvdimm/Kconfig
drivers/nvdimm/Makefile
drivers/nvdimm/btt.c
drivers/nvdimm/btt_devs.c
drivers/nvdimm/claim.c [new file with mode: 0644]
drivers/nvdimm/namespace_devs.c
drivers/nvdimm/nd-core.h
drivers/nvdimm/nd.h
drivers/nvdimm/pfn.h [new file with mode: 0644]
drivers/nvdimm/pfn_devs.c [new file with mode: 0644]
drivers/nvdimm/region.c
drivers/nvdimm/region_devs.c
tools/testing/nvdimm/Kbuild