#ifndef _LINUX_T10_PI_H #define _LINUX_T10_PI_H #include <linux/types.h> #include <linux/blkdev.h> /* * A T10 PI-capable target device can be formatted with different * protection schemes. Currently 0 through 3 are defined: * * Type 0 is regular (unprotected) I/O * * Type 1 defines the contents of the guard and reference tags * * Type 2 defines the contents of the guard and reference tags and * uses 32-byte commands to seed the latter * * Type 3 defines the contents of the guard tag only */ enum t10_dif_type { T10_PI_TYPE0_PROTECTION = 0x0, T10_PI_TYPE1_PROTECTION = 0x1, T10_PI_TYPE2_PROTECTION = 0x2, T10_PI_TYPE3_PROTECTION = 0x3, }; /* * T10 Protection Information tuple. */ struct t10_pi_tuple { __be16 guard_tag; /* Checksum */ __be16 app_tag; /* Opaque storage */ __be32 ref_tag; /* Target LBA or indirect LBA */ }; extern const struct blk_integrity_profile t10_pi_type1_crc; extern const struct blk_integrity_profile t10_pi_type1_ip; extern const struct blk_integrity_profile t10_pi_type3_crc; extern const struct blk_integrity_profile t10_pi_type3_ip; #endifOverall Contributors
Person | Tokens | Prop | Commits | CommitProp |
Martin K. Petersen | 52 | 67.53% | 2 | 50.00% |
Christoph Hellwig | 21 | 27.27% | 1 | 25.00% |
Eric Biggers | 4 | 5.19% | 1 | 25.00% |
Total | 77 | 100.00% | 4 | 100.00% |