From: Tom Yan <tom.ty89@xxxxxxxxx> According to its own comment, the discard granularity should fixed to the logical block size. However, the actual code has it hardcoded as 1 byte. Changing it to logical_block_size. Signed-off-by: Tom Yan <tom.ty89@xxxxxxxxx> diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c index d749da7..5a5457a 100644 --- a/drivers/scsi/sd.c +++ b/drivers/scsi/sd.c @@ -648,7 +648,7 @@ static void sd_config_discard(struct scsi_disk *sdkp, unsigned int mode) */ if (sdkp->lbprz) { q->limits.discard_alignment = 0; - q->limits.discard_granularity = 1; + q->limits.discard_granularity = logical_block_size; } else { q->limits.discard_alignment = sdkp->unmap_alignment * logical_block_size; -- 2.7.2 -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html