summaryrefslogtreecommitdiffstats
path: root/drivers/nvdimm/label.h
diff options
context:
space:
mode:
authorAlexander Duyck <alexander.h.duyck@linux.intel.com>2018-10-11 01:39:35 +0200
committerDan Williams <dan.j.williams@intel.com>2018-10-12 17:39:31 +0200
commit7d47aad4570e5e6e9a8162bb417ca9b74132f27c (patch)
treed3ced75bf26076e6be01c513f7fdfe22de5a6f1f /drivers/nvdimm/label.h
parentnvdimm: Split label init out from the logic for getting config data (diff)
downloadlinux-7d47aad4570e5e6e9a8162bb417ca9b74132f27c.tar.xz
linux-7d47aad4570e5e6e9a8162bb417ca9b74132f27c.zip
nvdimm: Use namespace index data to reduce number of label reads needed
This patch adds logic that is meant to make use of the namespace index data to reduce the number of reads that are needed to initialize a given namespace. The general idea is that once we have enough data to validate the namespace index we do so and then proceed to fetch only those labels that are not listed as being "free". By doing this I am seeing a total time reduction from about 4-5 seconds to 2-3 seconds for 24 NVDIMM modules each with 128K of label config area. Reviewed-by: Toshi Kani <toshi.kani@hpe.com> Signed-off-by: Alexander Duyck <alexander.h.duyck@linux.intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Diffstat (limited to 'drivers/nvdimm/label.h')
-rw-r--r--drivers/nvdimm/label.h3
1 files changed, 0 insertions, 3 deletions
diff --git a/drivers/nvdimm/label.h b/drivers/nvdimm/label.h
index 685afb3de0fe..e9a2ad3c2150 100644
--- a/drivers/nvdimm/label.h
+++ b/drivers/nvdimm/label.h
@@ -138,9 +138,6 @@ static inline int nd_label_next_nsindex(int index)
}
struct nvdimm_drvdata;
-int nd_label_validate(struct nvdimm_drvdata *ndd);
-void nd_label_copy(struct nvdimm_drvdata *ndd, struct nd_namespace_index *dst,
- struct nd_namespace_index *src);
int nd_label_data_init(struct nvdimm_drvdata *ndd);
size_t sizeof_namespace_index(struct nvdimm_drvdata *ndd);
int nd_label_active_count(struct nvdimm_drvdata *ndd);