Question about UNMAP command

Gerry Houlder gerry.houlder at seagate.com
Wed Jan 28 07:45:46 PST 2015


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

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 mailing list