diff options
author | K. Y. Srinivasan <kys@microsoft.com> | 2014-12-16 16:21:45 -0500 |
---|---|---|
committer | Christoph Hellwig <hch@lst.de> | 2015-01-09 09:44:27 -0500 |
commit | b0a93d96b2814c725161f91a4e35d0c29ec0f95b (patch) | |
tree | 23c6b6c240200b09738bb6ebeae65c6e8be2a114 | |
parent | 0fb8db29f2a02e8451e4e56d364c706f70a9ef00 (diff) |
storvsc: force SPC-3 compliance on win8 and win8 r2 hosts
On win8 and win8 r2 hosts force SPC-3 compliance for MSFT virtual disks.
Ubuntu has been carrying a similar patch outside the tree for a while now.
Starting with win10, the host will support SPC-3 compliance. Based on all
the testing that has been done on win8 and win8 r2 hosts, we are comfortable
claiming SPC-3 compliance on these hosts as well. This will enable TRIM
support on these hosts.
Suggested by: James Bottomley <James.Bottomley@HansenPartnership.com>
Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Reviewed-by: Long Li <longli@microsoft.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
-rw-r--r-- | drivers/scsi/storvsc_drv.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/drivers/scsi/storvsc_drv.c b/drivers/scsi/storvsc_drv.c index caa9f0ea217c..efc6e446b6c8 100644 --- a/drivers/scsi/storvsc_drv.c +++ b/drivers/scsi/storvsc_drv.c | |||
@@ -1394,6 +1394,19 @@ static int storvsc_device_configure(struct scsi_device *sdevice) | |||
1394 | */ | 1394 | */ |
1395 | sdevice->sdev_bflags |= msft_blist_flags; | 1395 | sdevice->sdev_bflags |= msft_blist_flags; |
1396 | 1396 | ||
1397 | /* | ||
1398 | * If the host is WIN8 or WIN8 R2, claim conformance to SPC-3 | ||
1399 | * if the device is a MSFT virtual device. | ||
1400 | */ | ||
1401 | if (!strncmp(sdevice->vendor, "Msft", 4)) { | ||
1402 | switch (vmbus_proto_version) { | ||
1403 | case VERSION_WIN8: | ||
1404 | case VERSION_WIN8_1: | ||
1405 | sdevice->scsi_level = SCSI_SPC_3; | ||
1406 | break; | ||
1407 | } | ||
1408 | } | ||
1409 | |||
1397 | return 0; | 1410 | return 0; |
1398 | } | 1411 | } |
1399 | 1412 | ||