diff options
author | Alexander Duyck <alexander.h.duyck@linux.intel.com> | 2018-10-11 01:39:35 +0200 |
---|---|---|
committer | Dan Williams <dan.j.williams@intel.com> | 2018-10-12 17:39:31 +0200 |
commit | 7d47aad4570e5e6e9a8162bb417ca9b74132f27c (patch) | |
tree | d3ced75bf26076e6be01c513f7fdfe22de5a6f1f /drivers/nvdimm/label.h | |
parent | nvdimm: Split label init out from the logic for getting config data (diff) | |
download | linux-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.h | 3 |
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); |