Ping, any thoughts on this one? I think it makes sense to enable unmap in this case. Cheers, David On Tue, 19 Dec 2017 14:45:17 +0100, David Disseldorp wrote: > The initial commit of LIO (v4.0.0-rc6) came with support for SCSI UNMAP > disabled. This was justified in the LIO wiki with: > Many SATA SSDs have issues handling UNMAP properly, so it is disabled > per default in LIO. > Since this time, some critical discard bugs have been fixed, e.g. > f3f5da624e0a ("block: Do a full clone when splitting discard bios"). > > Block layer backed logical units are capable of deferring to the block > layer when determining UNMAP attributes, but this logic currently leaves > the emulate_tpu (UNMAP) and emulate_tpws (WRITE_SAME with UNMAP=1) flags > disabled. > With this change, emulate_tpu and emulate_tpws are set for block layer > backed logical units based on underlying block device discard support. > > Signed-off-by: David Disseldorp <ddiss@xxxxxxx> > --- > drivers/target/target_core_device.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/target/target_core_device.c b/drivers/target/target_core_device.c > index e8dd6da164b2..65dab7c2460a 100644 > --- a/drivers/target/target_core_device.c > +++ b/drivers/target/target_core_device.c > @@ -856,6 +856,8 @@ bool target_configure_unmap_from_queue(struct se_dev_attrib *attrib, > attrib->unmap_granularity_alignment = q->limits.discard_alignment / > block_size; > attrib->unmap_zeroes_data = (q->limits.max_write_zeroes_sectors); > + attrib->emulate_tpu = 1; > + attrib->emulate_tpws = 1; > return true; > } > EXPORT_SYMBOL(target_configure_unmap_from_queue); -- To unsubscribe from this list: send the line "unsubscribe target-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html