diff options
author | Dan Williams <dan.j.williams@intel.com> | 2015-12-13 20:41:36 +0100 |
---|---|---|
committer | Dan Williams <dan.j.williams@intel.com> | 2015-12-13 20:41:36 +0100 |
commit | 2dc43331e34fa992a67f42ed44e5111cafafd6f3 (patch) | |
tree | 2889839d23244dee5e2b52a42fa9d9d845cb8165 /drivers/nvdimm/namespace_devs.c | |
parent | libnvdimm, pfn: add parent uuid validation (diff) | |
download | linux-2dc43331e34fa992a67f42ed44e5111cafafd6f3.tar.xz linux-2dc43331e34fa992a67f42ed44e5111cafafd6f3.zip |
libnvdimm, pfn: fix pfn seed creation
Similar to btt, plant a new pfn seed when the existing one is activated.
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Diffstat (limited to 'drivers/nvdimm/namespace_devs.c')
-rw-r--r-- | drivers/nvdimm/namespace_devs.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/nvdimm/namespace_devs.c b/drivers/nvdimm/namespace_devs.c index f981177524a1..ea8dd0cb28ca 100644 --- a/drivers/nvdimm/namespace_devs.c +++ b/drivers/nvdimm/namespace_devs.c @@ -1707,6 +1707,18 @@ void nd_region_create_blk_seed(struct nd_region *nd_region) nd_device_register(nd_region->ns_seed); } +void nd_region_create_pfn_seed(struct nd_region *nd_region) +{ + WARN_ON(!is_nvdimm_bus_locked(&nd_region->dev)); + nd_region->pfn_seed = nd_pfn_create(nd_region); + /* + * Seed creation failures are not fatal, provisioning is simply + * disabled until memory becomes available + */ + if (!nd_region->pfn_seed) + dev_err(&nd_region->dev, "failed to create pfn namespace\n"); +} + void nd_region_create_btt_seed(struct nd_region *nd_region) { WARN_ON(!is_nvdimm_bus_locked(&nd_region->dev)); |