Background operations and power loss expected
Mark Evans
Mark.Evans at wdc.com
Fri Oct 7 10:06:38 PDT 2011
Formatted message: <a href="http://www.t10.org/cgi-bin/ac.pl?t=r&f=r1110072_f.htm">HTML-formatted message</a>
Hi Gerry,
Proposal 10-144 was intended to clarify the definition of the self-test
functions and was discussed at length during two CAP working group meetings.
Power loss expected is a relatively new feature developed long after
self-test, and definition of the behavior regarding that event relative to
self-test was included in the proposal to help with the clarification. I
remember that we specifically discussed what the behavior for a power loss
expected event should be during development of the proposal in a CAP, which
resulted in the sentence, "A SCSI target device shall abort a self-test
being performed in the background mode as the result of a power loss
expected event..." This sentence is clear and specific, and I think it
overrides any other ambiguity. However, as always, I would welcome a
detailed proposal from someone to clarify or correct what they see as
ambiguities or errors in a T10 standard in the manner I did with 10-144.
Please feel free to call or send an email to me with any comments or
questions that you have about this stuff.
Regards,
Mark Evans
Western Digital Corporation
5863 Rue Ferrari
San Jose, CA 95138
Email: mark.evans at wdc.com
From: owner-t10 at t10.org [mailto:owner-t10 at t10.org] On Behalf Of Gerry
Houlder
Sent: Friday, October 07, 2011 6:31 AM
To: T10 Reflector
Subject: Re: Background operations and power loss expected
It seems like there are some contradictions among SAM-5 and SPC-4. This
should become an agenda item for the November CAP meeting.
On Fri, Oct 7, 2011 at 3:09 AM, Truong Nguyen - SISA
<tru.nguyen at sisa.samsung.com> wrote:
Here is the representative text from SAM5r07 sub-clause 5.5:
"Some commands initiate background operations that are processed after the
command is no longer in the task set (i.e., status has been returned for the
command) (e.g., a SEND DIAGNOSTIC command when used to initiate a background
self-test (see SPC-4) or a write command when write cache is enabled (see
SBC-3)). Background operations may be aborted by power on, hard reset, or
logical unit reset. Background operations shall not be aborted by I_T nexus
loss or power loss expected."
The Send Diagnostic initiated background self test is described as an
example of a "background operation" as defined by SAM-5. This is distinct
|from the "device specific background function" as defined in SPC4r32, which
explicitly excludes the Send Diagnostic initiated background self test.
SAM5r07 defines "background operations" as follows:
"3.1.9 background operation: An operation started by a command that
continues processing after the command is no longer in the task set."
This definition would seem to define a background operation as those
initiated by the application client.
Here is the relevant text from SPC4r32, with the power loss expected event
handling introduced by 10-144r3:
"An application client may request that a device server abort a self-test
that is being performed in the background mode by sending a SEND DIAGNOSTIC
command with the SELF-TEST CODE field set to 100b (i.e., abort background
self-test function). A SCSI target device shall not abort a self-test being
performed in the background mode as the result of an I_T nexus loss event
(see SAM-4). A SCSI target device shall abort a self-test being performed in
the background mode as the result of a power loss expected event (see
SAM-4)."
10-144r3 introduced the notion that a power loss expected event shall not
abort the background self-test, which appears to conflict with SAM5r07 (and
SAM4).
Truong
________________________________
From: owner-t10 at t10.org [mailto:owner-t10 at t10.org] On Behalf Of Gerry
Houlder
Sent: Wednesday, October 05, 2011 11:15 AM
To: T10 Reflector
Subject: Re: Background operations and power loss expected
We tend to think of the device self-test that is kicked off via a SEND
DIAGNOSTIC command to be a host initiated background task, whereas most
other background tasks (e.g., background medium scan) are device initiated.
I think this accounts for the conflict.
Perhaps SAM-5 should change wording to "Target device initiated background
operations shall not be aborted ...". I think the SEND DIAGNOSTIC command
case is the only host initiated background operation that is defined in
SCSI.
On Wed, Oct 5, 2011 at 12:14 PM, Truong Nguyen - SISA
<tru.nguyen at sisa.samsung.com> wrote:
In 10-144r3 (SPC:4 Self-test and SEND DIAGNOSTIC command clean-up), text was
added to the Self-test operations Background mode model clause, specifying
changes regarding power loss expected handling. Specifically, in sub-clause
5.8.4.3 Background mode (SPC-4r32), the following text was added:
"A SCSI target device shall abort a self-test being performed in the
background mode as the result of a power loss expected event (see SAM-4)."
However, in SAM-4r14 (and in SAM-5r07), the following text is present in
sub-clause 5.5 Command lifetime:
"Background operations shall not be aborted by I_T nexus loss or power loss
expected."
When a power loss expected event occurs, which is the correct behaviour in
terms of the background self-test? Should it be aborted or not be aborted?
Thanks,
Truong Nguyen
Samsung Information Systems
More information about the T10
mailing list