* [PATCH] libata: Signal that our SATL supports WRITE SAME(16) with UNMAP
@ 2010-09-10 5:23 Martin K. Petersen
2010-09-17 6:13 ` Jeff Garzik
0 siblings, 1 reply; 2+ messages in thread
From: Martin K. Petersen @ 2010-09-10 5:23 UTC (permalink / raw)
To: Jeff Garzik, linux-ide, linux-scsi
Until now identifying that a device supports WRITE SAME(16) with the
UNMAP bit set has been black magic. Implement support for the SBC-3
Thin Provisioning VPD page and set the TPWS bit.
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
---
diff --git a/drivers/ata/libata-scsi.c b/drivers/ata/libata-scsi.c
index a54273d..eea9935 100644
--- a/drivers/ata/libata-scsi.c
+++ b/drivers/ata/libata-scsi.c
@@ -2001,6 +2001,7 @@ static unsigned int ata_scsiop_inq_00(struct ata_scsi_args *args, u8 *rbuf)
0x89, /* page 0x89, ata info page */
0xb0, /* page 0xb0, block limits page */
0xb1, /* page 0xb1, block device characteristics page */
+ 0xb2, /* page 0xb2, thin provisioning page */
};
rbuf[3] = sizeof(pages); /* number of supported VPD pages */
@@ -2172,6 +2173,16 @@ static unsigned int ata_scsiop_inq_b1(struct ata_scsi_args *args, u8 *rbuf)
return 0;
}
+static unsigned int ata_scsiop_inq_b2(struct ata_scsi_args *args, u8 *rbuf)
+{
+ /* SCSI Thin Provisioning VPD page: SBC-3 rev 22 or later */
+ rbuf[1] = 0xb2;
+ rbuf[3] = 0x4;
+ rbuf[5] = 1 << 6; /* TPWS */
+
+ return 0;
+}
+
/**
* ata_scsiop_noop - Command handler that simply returns success.
* @args: device IDENTIFY data / SCSI command of interest.
@@ -3250,6 +3261,9 @@ void ata_scsi_simulate(struct ata_device *dev, struct scsi_cmnd *cmd,
case 0xb1:
ata_scsi_rbuf_fill(&args, ata_scsiop_inq_b1);
break;
+ case 0xb2:
+ ata_scsi_rbuf_fill(&args, ata_scsiop_inq_b2);
+ break;
default:
ata_scsi_invalid_field(cmd, done);
break;
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] libata: Signal that our SATL supports WRITE SAME(16) with UNMAP
2010-09-10 5:23 [PATCH] libata: Signal that our SATL supports WRITE SAME(16) with UNMAP Martin K. Petersen
@ 2010-09-17 6:13 ` Jeff Garzik
0 siblings, 0 replies; 2+ messages in thread
From: Jeff Garzik @ 2010-09-17 6:13 UTC (permalink / raw)
To: Martin K. Petersen; +Cc: linux-ide, linux-scsi
On 09/10/2010 01:23 AM, Martin K. Petersen wrote:
>
> Until now identifying that a device supports WRITE SAME(16) with the
> UNMAP bit set has been black magic. Implement support for the SBC-3
> Thin Provisioning VPD page and set the TPWS bit.
>
> Signed-off-by: Martin K. Petersen<martin.petersen@oracle.com>
applied
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2010-09-17 6:13 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-09-10 5:23 [PATCH] libata: Signal that our SATL supports WRITE SAME(16) with UNMAP Martin K. Petersen
2010-09-17 6:13 ` Jeff Garzik
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.