[dm-devel] SCSI's heuristics for enabling WRITE SAME still need work [was: dm mpath: disable WRITE SAME if it fails]
Martin K. Petersen
martin.petersen at oracle.com
Thu Sep 26 14:42:00 UTC 2013
>>>>> "Bernd" == Bernd Schubert <bernd.schubert at fastmail.fm> writes:
Bernd,
Bernd> Both types of systems we have in-house neither block limits vpd
Bernd> nor READ_CAP16 return anything that would indicate discard is
Bernd> supported. But UNMAP and WRITE SAME unmap(*) just work fine.
I have a collection of different SSDs in a tray connected to an LSI
SAS2008 ASIC. The 510 is the only drive that does not have LBPME=1.
Chances are it's because DRAT and RZAT are not set but it could also be
that the 510 is blacklisted.
Bernd> I certainly don't want to cause any more write-same trouble, but
Bernd> as all layers initially have to assume write same is supported
Bernd> anyway and need to dynamically disable it if it fails, can't we
Bernd> also enable discard by default with WRITE SAME16 unmap?
No thanks :)
But you can force discards on by doing a:
# echo -n unmap > /sys/class/scsi_disk/x:y:z:n/provisioning_mode
or
# echo -n writesame_16 > /sys/class/scsi_disk/x:y:z:n/provisioning_mode
Create a udev rule if you like.
In any case I wouldn't recommend using TRIM on that drive...
Bernd> PS: LSI SATL with FWv17 seems to have an unmap bug - I cannot
Bernd> unmap the last sector:
Yes, it appears there's an off-by-one bug in the UNMAP translation.
Sumit, is this something you guys can look into?
--
Martin K. Petersen Oracle Linux Engineering
More information about the dm-devel
mailing list