[PATCH 0 of 3] Block Layer Data Integrity

Martin K. Petersen
2008-06-16T04:13:30Z

These patches allow data integrity information (checksum and more) to
be attached to I/Os at the block/filesystem layers and transferred
through the entire I/O stack all the way to the physical storage
device.

The integrity metadata can be generated in close proximity to the
original data. Capable host adapters, RAID arrays and physical disks
can verify the data integrity and abort I/Os in case of a mismatch.

Changes:

- Fix sector calculation for DIF Type 3 devices

- Use DIV_ROUND_UP()

- Create bio_integrity_mark_{head,tail} helpers and use them when
adjusting integrity vectors

- Consolidate bio_integrity_{set,get} tag

- sysfs ABI doc

15 files changed, 1732 insertions(+), 31 deletions(-)
Documentation/ABI/testing/sysfs-block | 34 +
Documentation/block/data-integrity.txt | 327 ++++++++++++++
block/Kconfig | 12
block/Makefile | 1
block/blk-core.c | 7
block/blk-integrity.c | 385 +++++++++++++++++
block/blk-merge.c | 3
block/blk.h | 8
block/elevator.c | 6
fs/Makefile | 1
fs/bio-integrity.c | 700 ++++++++++++++++++++++++++++++++
fs/bio.c | 62 +-
include/linux/bio.h | 115 +++++
include/linux/blkdev.h | 99 ++++
include/linux/genhd.h | 3