To support DIF, bdev will need to expose the following information: - Metadata format - Block size - Metadata size - Metadata setting (interleave or separate) - DIF settings - DIF type 1, 2, or 3 - DIF location - DIF check types - Guard check - Reference tag check - Application tag check This patch is for the metadata format. Subsequent patches will do for the DIF setting and DIF check types. Add fields, md_len and md_interleave, to struct spdk_bdev and add APIs, spdk_bdev_get_md_size and spdk_bdev_is_md_interleaved, to bdev APIs. The fields, md_len and md_interleave, are added to the bdev JSON infomation dump. DIF will be used only in the NVMe bdev module and the upcoming virtual DIF bdev module first. But additional required storage by md_len and md_interleave will be very small and they are simple. Hence add them to struct spdk_bdev simply. Change-Id: I4109f6a63e6f0576efe424feb0305a9a17b9b2e8 Signed-off-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Reviewed-on: https://review.gerrithub.io/c/443183 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> |
||
---|---|---|
.. | ||
bdev_rpc.c | ||
Makefile |