PI application tag
A protection-information application tag is an opaque field used for configured comparisons and protocol-defined checking escapes.
Linux v6.12's eight-byte t10_pi_tuple assigns 16 bits to this field and describes it as opaque storage. It is separate from the checksum and address fields. [1]
In NVM Command Set 1.0e, zero mask bits exclude corresponding application-tag bits from comparison. A protocol-defined escape can instead disable all PI checks. Masking and escaping are different mechanisms. [2]
Hesela inference: an application tag is not inherently an application identifier or a committed-generation counter. Any such interpretation needs an explicit producer/consumer contract. Automatic metadata generation below an application also limits what an end-to-end claim establishes. [3]
Relations
Citations
- Linux v6.12: T10 PI tuple and protection-type comments (GPL-2.0)
- NVM Express NVM Command Set Specification 1.0e, sections 5.2.1 and 5.2.3, pp. 78-84 and 94-95; copyright 2008 to 2024 NVM Express, Inc. ALL RIGHTS RESERVED.
- Linux v6.12 Data Integrity documentation, sections 2 and 3 (historical design context)
Sources & caveats
- Source synthesis scoped to Linux v6.12 and NVM Command Set 1.0e; not a device test, support matrix or extension of the existing CRC experiment.