diff options
author | Dan Williams <dan.j.williams@intel.com> | 2015-10-21 20:20:29 +0300 |
---|---|---|
committer | Jens Axboe <axboe@fb.com> | 2015-10-21 23:43:45 +0300 |
commit | 4125a09b0a0d579ebace17f0e62b03ab9d5ab2f4 (patch) | |
tree | d2e073b3985850b1ea2a8e7ba9a414a6427f463f /drivers/nvdimm | |
parent | 5a48fc147d7f2718a5c7e73bc8c4067235791fc1 (diff) | |
download | linux-4125a09b0a0d579ebace17f0e62b03ab9d5ab2f4.tar.xz |
block, libnvdimm, nvme: provide a built-in blk_integrity nop profile
The libnvidmm-btt and nvme drivers use blk_integrity to reserve space
for per-sector metadata, but sometimes without protection checksums.
This property is generically useful, so teach the block core to
internally specify a nop profile if one is not provided at registration
time.
Cc: Keith Busch <keith.busch@intel.com>
Cc: Matthew Wilcox <willy@linux.intel.com>
Suggested-by: Christoph Hellwig <hch@lst.de>
[hch: kill the local nvme nop profile as well]
Acked-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
Diffstat (limited to 'drivers/nvdimm')
-rw-r--r-- | drivers/nvdimm/core.c | 12 |
1 files changed, 1 insertions, 11 deletions
diff --git a/drivers/nvdimm/core.c b/drivers/nvdimm/core.c index e85848caf8d2..82c49bb87055 100644 --- a/drivers/nvdimm/core.c +++ b/drivers/nvdimm/core.c @@ -392,24 +392,14 @@ void nvdimm_bus_unregister(struct nvdimm_bus *nvdimm_bus) EXPORT_SYMBOL_GPL(nvdimm_bus_unregister); #ifdef CONFIG_BLK_DEV_INTEGRITY -static int nd_pi_nop_generate_verify(struct blk_integrity_iter *iter) -{ - return 0; -} - int nd_integrity_init(struct gendisk *disk, unsigned long meta_size) { struct blk_integrity bi; - static struct blk_integrity_profile profile = { - .name = "ND-PI-NOP", - .generate_fn = nd_pi_nop_generate_verify, - .verify_fn = nd_pi_nop_generate_verify, - }; if (meta_size == 0) return 0; - bi.profile = &profile; + bi.profile = NULL; bi.tuple_size = meta_size; bi.tag_size = meta_size; |