DIF 2 SBC Spec AppTag/RefTag Checking Ambiguity Questions

scott taggart taggart at taggarts.org
Mon Feb 7 16:57:46 PST 2011

* From the T10 Reflector (t10 at t10.org), posted by:
* scott taggart <taggart at taggarts.org>
Assume: drive formatted DIF2, ATO=1
Suppose an LBA has either never been written or was written with a 
non-32 byte CDB, thus the LBA will have App & Ref Tags = 0xFFFF and 
0xFFFFFFFF respectively.
Now, suppose a read32 is issued to the that LBA (assume app_mask != 
0).  We have 4 cases for app tags in the CDB and device:
Case 1: CDB App Tag = 0xFFFF, Media App Tag = 0xFFFF
Case 2: CDB App Tag = 0xFFFF, Media App Tag != 0xFFFF
Case 3: CDB App Tag != 0xFFFF, Media App Tag = 0xFFFF
Case 4: CDB App Tag != 0xFFFF, Media App Tag != 0xFFFF
My questions concern cases 1, 2 & 3.
1) For cases 1 & 3, the media has APP=0xFFFF.  Are any protection 
tags (APP/REF) ever checked against the CDB? For a non-read 32, they 
are not but it is unclear if, for read32, the 0xFFFF media values 
disable checking CBD checking.	If they are checked, how is a 
software system supposed to "know" that an LBA may have been 
previously written by a non-32 bye write command (and thus may have a 
0xFFFF tag)?  Does any of this imply that mixing non-32 byte writes 
with 32-byte reads is not possible or is very difficult unless a 
system can track which LBAs have been written?
2) For cases 1 & 2, where the CDB app tags are 0xFFFF does this also 
disable the checking of teh CBD tags against the media values (seems 
like the spec does not imply this), regardless of the media's 
value?	If the CDB APP tag =0xFFFF is a valid test value, and yet it 
disables media checking, does this mean the CDB values are still 
compared to the media values or not.
If there are sections of the SBC that clarify this, I would 
appreciate references.
* For T10 Reflector information, send a message with
* 'info t10' (no quotes) in the message body to majordomo at t10.org

More information about the T10 mailing list