diff options
author | Shaun Tancheff <shaun@tancheff.com> | 2016-08-22 07:23:21 +0300 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2016-08-25 18:26:48 +0300 |
commit | 7d36dd00ab8d57134cce86ad4febc2f5bbdf3e72 (patch) | |
tree | cd177a7b3259b9cf61a230ecf030d91770e131b7 /drivers/ata | |
parent | ef2d7392c4ece5c3cd12a6c7ca9366cd8f189aff (diff) | |
download | linux-7d36dd00ab8d57134cce86ad4febc2f5bbdf3e72.tar.xz |
libata: SCT Write Same handle ATA_DFLAG_PIO
Use non DMA write log when ATA_DFLAG_PIO is set.
Signed-off-by: Shaun Tancheff <shaun.tancheff@seagate.com>
Reviewed-by: Hannes Reinecke <hare@suse.com>
Acked-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'drivers/ata')
-rw-r--r-- | drivers/ata/libata-scsi.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/ata/libata-scsi.c b/drivers/ata/libata-scsi.c index 35b1f9e475cc..2f5487f02de1 100644 --- a/drivers/ata/libata-scsi.c +++ b/drivers/ata/libata-scsi.c @@ -3485,6 +3485,8 @@ static unsigned int ata_scsi_write_same_xlat(struct ata_queued_cmd *qc) tf->device = ATA_CMD_STANDBYNOW1; tf->protocol = ATA_PROT_DMA; tf->command = ATA_CMD_WRITE_LOG_DMA_EXT; + if (unlikely(dev->flags & ATA_DFLAG_PIO)) + tf->command = ATA_CMD_WRITE_LOG_EXT; } tf->flags |= ATA_TFLAG_ISADDR | ATA_TFLAG_DEVICE | ATA_TFLAG_LBA48 | |