Question about UNMAP command
Neil.Wanamaker at pmcs.com
Wed Jan 28 10:10:22 PST 2015
Formatted message: <a href="http://www.t10.org/cgi-bin/ac.pl?t=r&f=r1501284_f.htm">HTML-formatted message</a>
Actually, I thought that ATA devices that advertise support of DATA SET
MANAGEMENT âTrimâ were assumed to be resource-provisioned, and ones that
did not were fully provisioned (and would reject the DSM).
From: owner-t10 at t10.org [mailto:owner-t10 at t10.org] On Behalf Of James C
Sent: Wednesday, January 28, 2015 9:49 AM
Cc: T10 Reflector
Subject: Re: Question about UNMAP command
ATA devices are assumed to be fully provisioned, and have no restriction on
support for the DATA SET MANAGEMENT 'Trim' command.
So, by extension, fully provisioned SCSI devices should be able to support
UNMAP as well. (Yes: I know "SCSI rules don't apply to ATA", but a precedent
has been set.)
Thank You !!!
Seagate Technology LLC
e-mail: James.C.Hatfield at seagate.com
s-mail: 389 Disc Drive; Longmont, CO 80503 USA
On Wed, Jan 28, 2015 at 8:45 AM, Gerry Houlder
<gerry.houlder at seagate.com> wrote:
Some questions have come up about whether a fully provisioned logical unit
may support the UNMAP command. SBC-4 r4 has a table (table 5) in the Logical
Block Provisioning Model that states that fully provisioned logical units are
prohibited from supporting anchored or deallocated states. The wording in
4.7.2 says a fully provisioned logical unit may support GET LBA STATUS
command but says nothing about whether UNMAP may be supported. This suggests
that a fully provisioned logical unit may support UNMAP as long as no LBAs
are anchored or deallocated. Does the group agree with this interpretation?
A reason to do this is that more host systems are using UNMAP to indicate
files they are deleting. These systems often send the UNMAP based solely on
the fact that the file is being deleted, not on the type of logical unit that
is in use. These systems would rather have a fully provisioned logical unit
act like a provisioned logical unit (i.e., accept the UNMAP command, do
nothing, and return GOOD status) than to reject the command as unsupported.
This should not be prohibited by the standard.
Another situation where this can come up is with a Host Aware ZBC device.
These devices are required to return a default initialization pattern for any
unwritten LBAs. To a host system, this looks just like those LBAs have been
unmapped by the device. Does this mean that a Host Aware device has to call
itself a resource provisioned device or can it still be a fully provisioned
device even though it appears to implement anchoring? What if that device
also accepts UNMAP commands but doesn't do anything except return GOOD status
on that command?
More information about the T10