Thread (16 messages) 16 messages, 6 authors, 2012-11-19

Re: [PATCH 3/3] target/iblock: Add WRITE_SAME w/ UNMAP=0 emulation support

From: Paolo Bonzini <pbonzini@redhat.com>
Date: 2012-11-19 11:38:28
Also in: lkml

Il 15/11/2012 21:01, Elliott, Robert (Server Storage) ha scritto:
WRITE SAME always has a payload, regardless of the UNMAP bit value.

For WRITE SAME with UNMAP=0, it's extremely important; that's how
what to write is specified.

For WRITE SAME with UNMAP=1, the device server is required to check
that the payload matches the data that is returned for unmapped LBAs.
lf LBPRZ=1 (read zeros for unmapped LBAs), that means checking that
the payload has all zeros.  In sbc3r33, this rule is tucked away in
model section 4.7.3.4.3, not the command section 5.41.
Does that mean that LBPRZ=0, LPBWS=1 is practically an invalid
combination?  Because there's no real way for the device server to
perform the check successfully.

Paolo
I would like to change that rule (it's a nuisance and a performance
burden), but that's the current rule going into SBC-3 letter ballot.

Changing WRITE SAME with UNMAP=1 to ignore the payload would provide
essentially the same functionality as changing the UNMAP command to
be mandatory, not just a hint; both approaches have been discussed.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help