4.15 specs for read operation are unacceptable in SBC-3 r35j

Elliott, Robert (Server Storage) Elliott at hp.com
Mon Sep 30 08:04:07 PDT 2013


Formatted message: <a href="http://www.t10.org/cgi-bin/ac.pl?t=r&f=r1309300_f.htm">HTML-formatted message</a>

From: owner-t10 at t10.org [mailto:owner-t10 at t10.org] On Behalf Of Ralph Weber
Sent: Friday, 27 September, 2013 3:54 PM
To: t10 at t10.org
Subject: 4.15 specs for read operation are unacceptable in SBC-3 r35j
Based on a preliminary review, Western Digital engineers have concerns about
the two paragraphs in 4.15 of SBC-3 r35j that begin as follows:
  *   For each LBA accessed by a read operation that is not a verify
operation:
  *   For each LBA accessed by read operation that is a verify operation:
The initial concern was that some interpretations of the 'read operation that
is a verify operation' case prohibit the use of read-ahead for verify
operations.
At a minimum, the cited paragraphs need to be revised as follows to maintain
consistency throughout 4.15 (note, the write operation definition is included
to demonstrate the need for consistency).
For each LBA accessed by a write operation:
1) if a cache contains more recent logical block data for that LBA than the
medium, then the device server shall:
A) perform a write cache operation to that LBA to update the logical block
data in the cache;
B) invalidate that LBA in the cache and perform a write medium operation to
that LBA; or
C) perform a write cache operation to that LBA to update the logical block
data in the cache and perform a write medium operation to that LBA.
For each LBA accessed by a read operation that is not a verify operation:
1) if a cache contains more recent logical block data for that LBA than the
medium, then the device server shall perform:
A) a read cache operation from that LBA; or
B) 2) the device server shall perform a read medium operation from that LBA.
RE: That wording for 1) B) would mean to read from medium even though there
is more recent data in cache, which is not correct. If there is more recent 
data in cache, it must be used.
For each LBA accessed by read operation that is a verify operation:
1) if a cache contains more recent logical block data for the LBA than the
medium, then the device server:
A) shall perform a write medium operation to that LBA;
B) 2) the device server may invalidate that LBA in the cache; and
C) 3) the device server shall perform a verify medium operation from that
LBA.
Unless the second level of list is applied to all three paragraphs, the use
of 'that LBA' is ambiguous vis a vis the if clause that establishes the
operative conditions.
RE: For 1)B), Step 2) is not prefaced by "if ... more recent" because step 1)
made the cache and medium identical. For step 1)C), the verify medium
operation is always eventually performed; it's not just if there was a cache
hit. The order is also very important here: 1) write to medium, 2) invalidate
if desired, 3) verify.	Running the verify before the data from cache has
made it to the medium would not be correct. "that LBA" refers to "For each
LBA" introducing the list.
Western Digital also is obliged to note that none of the three cited
paragraphs cover the case where the cache fails to contain more recent
logical block data for 'that LBA' despite the fact that the presence of a
list based on this condition implies that such coverage ought to be present
(i.e., the if clause could equally well be folded into the list introduction
statement).
RE: That is not a problem unless the "if a cache contains more recent"
preface applies to more list items than it should.
To push the envelope a bit farther, some Western Digital reviewers suggested
that the specific case of a 'read operation that is a verify operation' could
be more fully stated as follows.
For each LBA accessed by a read operation that is a verify operation, the
device server shall perform a read cache operation only if:
a) the logical block data in the cache for that LBA is the result of a read
medium operation; and
b) no subsequent write operation has been processed for that LBA.
RE: It doesn't matter how the cache got the data.  If there is more recent
data in the cache, all verify operations need to force that data to media
before performing the verify medium operation.
Warning: This comment is the result of a very preliminary review by Western
Digital engineers. The Western Digital review of SBC-3 r35j is ongoing, and
more issues seem likely to be unearthed. Due to the gravity of this issue
Western Digital concluded that prompt disclosure would best serve the
interests of T10 and the industry.
All the best,
.Ralph



More information about the T10 mailing list