From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sitsofe Wheeler Subject: Re: [PATCH 0/3] scsi: Add Hyper-V logical block provisioning quirks Date: Tue, 21 Oct 2014 05:45:50 +0100 Message-ID: <20141021044550.GC11691@sucs.org> References: <20141010074901.GA32028@sucs.org> <20141011173902.GA1946@infradead.org> <1413049313.2068.48.camel@jarvis.lan> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: driverdev-devel-bounces@linuxdriverproject.org Sender: "devel" To: KY Srinivasan Cc: Jeff Leung , Christoph Hellwig , "linux-scsi@vger.kernel.org" , Haiyang Zhang , "linux-kernel@vger.kernel.org" , James Bottomley , Hannes Reinecke , "devel@linuxdriverproject.org" , Christoph Hellwig List-Id: linux-scsi@vger.kernel.org T24gU3VuLCBPY3QgMTIsIDIwMTQgYXQgMDE6MjE6MDFBTSArMDAwMCwgS1kgU3Jpbml2YXNhbiB3 cm90ZToKPiAKPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tCj4gPiBGcm9tOiBKZWZmIExl dW5nIFttYWlsdG86amxldW5nQHYxMG5ldHdvcmtzLmNhXQo+ID4gU2VudDogU2F0dXJkYXksIE9j dG9iZXIgMTEsIDIwMTQgMToyMiBQTQo+ID4gCj4gPiA+IE9uIHRoZSBjdXJyZW50IHJlbGVhc2Ug b2YgV2luZG93cyAod2luZG93cyAxMCksIHdlIGFyZSBhZHZlcnRpc2luZwo+ID4gPiBTUEMzIGNv bXBsaWFuY2UuCj4gPiA+IFdlIGFyZSBvayB3aXRoIGRlY2xhcmluZyBjb21wbGlhbmNlIHRvIFNQ QzMgaW4gb3VyIGRyaXZlcnMuCj4gPiBJZiB5b3UgYXJlIGdvaW5nIHRvIGRlY2xhcmUgU1BDMyBj b21wbGlhbmNlIGluIHRoZSBkcml2ZXJzLCBhcmUgeW91IGdvaW5nIHRvCj4gPiBwdXQgaW4gY2hl Y2tzIHRvIGVuc3VyZSB0aGF0IFNQQy0zIGNvbXBsaWFuY2UgZG9lc24ndCBnZXQgYWNjaWRlbnRh bGx5Cj4gPiBlbmFibGVkIGZvciBoeXBlcnZpc29ycyBiZWxvdyBXaW4xMD8KPiA+IAo+ID4gSSBk byBrbm93IGZvciBhIGZhY3QgdGhhdCBVYnVudHUncyBrZXJuZWxzIGFscmVhZHkgZm9yY2UgU1BD MyBjb21wbGlhbmNlIHRvCj4gPiBlbmFibGUgc3BlY2lmaWMgZmVhdHVyZXMgc3VjaCBhcyBUUklN IG9uIGVhcmxpZXIgdmVyc2lvbnMgb2YgSHlwZXItViAoTmFtZWx5Cj4gPiBIeXBlci1WIDIwMTIg YW5kIDIwMTIgUjIpLgo+IFlvdSBhcmUgcmlnaHQ7IFVidW50dSBoYXMgYmVlbiBjYXJyeWluZyBh IHBhdGNoICB0aGF0IHdhcyBkb2luZyBqdXN0Cj4gdGhpcyBhbmQgdGhpcyBoYXMgYmVlbiB3b3Jr aW5nIHdpdGhvdXQgYW55IGlzc3VlcyBvbiBtYW55IGVhcmxpZXIKPiB2ZXJzaW9ucyBvZiBXaW5k b3dzLiAoMjAxMiBhbmQgMjAxMiBSMikuICBPbiB3aW5kb3dzIDEwIHdlIGRvbid0IG5lZWQKPiBh bnkgY2hhbmdlcyBpbiB0aGUgTGludXggZHJpdmVyIGFzIHRoZSBob3N0IGl0c2VsZiBpcyBhZHZl cnRpc2luZyBTUEMzCj4gY29tcGxpYW5jZS4gQmFzZWQgb24gdGhlIHRlc3Rpbmcgd2UgaGF2ZSBk b25lIHdpdGggVWJ1bnR1LCB3ZSBhcmUKPiBjb21mb3J0YWJsZSBwaWNraW5nIHVwIHRoYXQgcGF0 Y2guCgpPSyB0aGlzIHNlZW1zIHRvIGJlIHRoZSBwYXRjaCBjdXJyZW50bHkgY2FycmllZCBieSBV YnVudHU6CgpGcm9tIGZmMmM1ZmEzZmE5YWRmMGI5MTliOTQyNWU3MWE4YmEwNDRjMzFhN2QgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEFuZHkgV2hpdGNyb2Z0IDxhcHdAY2Fub25pY2Fs LmNvbT4KRGF0ZTogRnJpLCAxMyBTZXAgMjAxMyAxNzo0OToxNiArMDEwMApTdWJqZWN0OiBbUEFU Q0hdIHNjc2k6IGh5cGVyLXYgc3RvcnN2YyBzd2l0Y2ggdXAgdG8gU1BDLTMKClN1Z2dlc3RlZC1C eTogSmFtZXMgQm90dG9tbGV5IDxKYW1lcy5Cb3R0b21sZXlASGFuc2VuUGFydG5lcnNoaXAuY29t PgpTaWduZWQtb2ZmLWJ5OiBBbmR5IFdoaXRjcm9mdCA8YXB3QGNhbm9uaWNhbC5jb20+Ci0tLQog ZHJpdmVycy9zY3NpL3N0b3J2c2NfZHJ2LmMgfCAgICA4ICsrKysrKysrCiAxIGZpbGUgY2hhbmdl ZCwgOCBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9zY3NpL3N0b3J2c2NfZHJ2 LmMgYi9kcml2ZXJzL3Njc2kvc3RvcnZzY19kcnYuYwppbmRleCA5OTY5ZmExLi4zOTAzYzhhIDEw MDY0NAotLS0gYS9kcml2ZXJzL3Njc2kvc3RvcnZzY19kcnYuYworKysgYi9kcml2ZXJzL3Njc2kv c3RvcnZzY19kcnYuYwpAQCAtMTQ0MSw2ICsxNDQxLDE0IEBAIHN0YXRpYyBpbnQgc3RvcnZzY19k ZXZpY2VfY29uZmlndXJlKHN0cnVjdCBzY3NpX2RldmljZSAqc2RldmljZSkKIAogCXNkZXZpY2Ut Pm5vX3dyaXRlX3NhbWUgPSAxOwogCisJLyoKKwkgKiBoeXBlci12IGxpZXMgYWJvdXQgaXRzIGNh cGFiaWxpdGllcyBpbmRpY2F0aW5nIGl0IGlzIG9ubHkgU1BDLTIKKwkgKiBjb21wbGlhbnQsIGJ1 dCBhY3R1YWxseSBpbXBsZW1lbnRzIHRoZSBjb3JlIFNQQy0zIGZlYXR1cmVzLgorCSAqIElmIHdl IHByZXRlbmQgdG8gYmUgU1BDLTMsIHdlIHNlbmQgUkMxNiB3aGljaCBhY3RpdmF0ZXMgdHJpbSBh bmQKKwkgKiB3aWxsIHF1ZXJ5IHRoZSBhcHByb3ByaWF0ZSBWUEQgcGFnZXMgdG8gZW5hYmxlIHRy aW0uCisJICovCisJc2RldmljZS0+c2NzaV9sZXZlbCA9IFNDU0lfU1BDXzM7CisKIAlyZXR1cm4g MDsKIH0KIAotLSAKMS43LjkuNQoKKERvd25sb2FkZWQgZnJvbQpodHRwOi8va2VybmVsLnVidW50 dS5jb20vZ2l0P3A9anNhbGlzYnVyeS9zdGFibGUvdHJ1c3R5L3VidW50dS10cnVzdHkuZ2l0O2E9 cGF0Y2g7aD1mZjJjNWZhM2ZhOWFkZjBiOTE5Yjk0MjVlNzFhOGJhMDQ0YzMxYTdkCikuCgpJIHRo aW5rIGl0J3MgdW53aXNlIHRvIG92ZXJyaWRlIHRoZSBzY3NpX2xldmVsIGF0IHRoaXMgcGFydGlj dWxhciBwb2ludApiZWNhdXNlIHlvdSBhcmUgZ29pbmcgdG8gZG8gaXQgZm9yIEFMTCBIeXBlci1W ICJkaXNrcyIgKHBlcmhhcHMgYWxsCkh5cGVyLVYgU0NTSSBkZXZpY2VzPykuLi4KCkhlcmUncyB0 aGUgU0NTSSBpbnF1aXJ5IGluZm9ybWF0aW9uIHJlcG9ydGVkIGJ5IGEgVVNCIDIgaGFyZCBkaXNr IGJlaW5nCnBhc3NlZCBwYXNzZWQtdGhyb3VnaCBieSBvbmUgb2YgbXkgMjAxMiBSMiBob3N0czoK CiMgc2dfaW5xIC9kZXYvc2RjCnN0YW5kYXJkIElOUVVJUlk6CiAgUFF1YWw9MCAgRGV2aWNlX3R5 cGU9MCAgUk1CPTAgIHZlcnNpb249MHgwMiAgW1NDU0ktMl0KICBbQUVSQz0wXSAgW1RybVRzaz0w XSAgTm9ybUFDQT0wICBIaVNVUD0wICBSZXNwX2RhdGFfZm9ybWF0PTEKICBTQ0NTPTAgIEFDQz0w ICBUUEdTPTAgIDNQQz0wICBQcm90ZWN0PTAgIFtCUXVlPTBdCiAgRW5jU2Vydj0wICBNdWx0aVA9 MCAgW01DaG5ncj0wXSAgW0FDS1JFUVE9MF0gIEFkZHIxNj0wCiAgW1JlbEFkcj0wXSAgV0J1czE2 PTAgIFN5bmM9MCAgTGlua2VkPTAgIFtUcmFuRGlzPTBdICBDbWRRdWU9MAogICAgbGVuZ3RoPTM2 ICgweDI0KSAgIFBlcmlwaGVyYWwgZGV2aWNlIHR5cGU6IGRpc2sKIFZlbmRvciBpZGVudGlmaWNh dGlvbjogTURUIE1ENTAKIFByb2R1Y3QgaWRlbnRpZmljYXRpb246IDAwQUFLUy0wMFRNQTAgICAK IFByb2R1Y3QgcmV2aXNpb24gbGV2ZWw6IAoKSXMgaXQgT0sgdG8gcmVwbGFjZSBhIHNjc2lfbGV2 ZWwgb2YgU0NTSS0yIHdpdGggU0NTSV9TUENfMz8gQWRkaXRpb25hbGx5CmlzIGl0IGFsc28gT0sg dG8gZm9yY2UgU0NTSV9TUENfMyBvbiBIeXBlci1WIDIwMDg/Cgo+ID4gPiBOcnnYslh22JYpe27H iXt6WBd9emo6diB6Wnpmfnp32qIpG2p5QQo+ID4gPgo+ID4gPiAPaQo+IE4/Pz8/P3I/P3k/Pz8/ Yj9YPz/Hp3Y/Xj8p3rp7Lm4/Kz8/Pz97Pz8/P3pYPz8XPz/cqH0/Pz/GoHo/Jmo6K3Y/Pz8HPz8/ P3paKz8/K3pmPz8/aD8/P34/Pz8/aT8/P3o/Hj93Pz8/Pz8/Pz8/Jj8p36IbZj8/XmrHq3k/bT8/ QEE/YT8/fz8MMD8/aD8PPz9pfwoKXl5eIFdoZXJlIGRvIHRoZXNlIGNoYXJhY3RlcnMgY29tZSBm cm9tPyBJJ3ZlIG9jY2FzaW9uYWxseSBzZWVuIHRoZW0gb24KZW1haWxzIGZyb20gb3RoZXIgTWlj cm9zb2Z0IGZvbGtzIHBvc3RpbmcgdG8gTEtNTCB0b28uLi4KCi0tIApTaXRzb2ZlIHwgaHR0cDov L3N1Y3Mub3JnL35zaXRzLwpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpkZXZlbCBtYWlsaW5nIGxpc3QKZGV2ZWxAbGludXhkcml2ZXJwcm9qZWN0Lm9yZwpo dHRwOi8vZHJpdmVyZGV2LmxpbnV4ZHJpdmVycHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby9k cml2ZXJkZXYtZGV2ZWwK From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752936AbaJUEp4 (ORCPT ); Tue, 21 Oct 2014 00:45:56 -0400 Received: from mail-wg0-f47.google.com ([74.125.82.47]:56739 "EHLO mail-wg0-f47.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750730AbaJUEpy convert rfc822-to-8bit (ORCPT ); Tue, 21 Oct 2014 00:45:54 -0400 Date: Tue, 21 Oct 2014 05:45:50 +0100 From: Sitsofe Wheeler To: KY Srinivasan Cc: Jeff Leung , James Bottomley , Christoph Hellwig , Haiyang Zhang , Christoph Hellwig , Hannes Reinecke , "linux-scsi@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "devel@linuxdriverproject.org" Subject: Re: [PATCH 0/3] scsi: Add Hyper-V logical block provisioning quirks Message-ID: <20141021044550.GC11691@sucs.org> References: <20141010074901.GA32028@sucs.org> <20141011173902.GA1946@infradead.org> <1413049313.2068.48.camel@jarvis.lan> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8BIT In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sun, Oct 12, 2014 at 01:21:01AM +0000, KY Srinivasan wrote: > > > -----Original Message----- > > From: Jeff Leung [mailto:jleung@v10networks.ca] > > Sent: Saturday, October 11, 2014 1:22 PM > > > > > On the current release of Windows (windows 10), we are advertising > > > SPC3 compliance. > > > We are ok with declaring compliance to SPC3 in our drivers. > > If you are going to declare SPC3 compliance in the drivers, are you going to > > put in checks to ensure that SPC-3 compliance doesn't get accidentally > > enabled for hypervisors below Win10? > > > > I do know for a fact that Ubuntu's kernels already force SPC3 compliance to > > enable specific features such as TRIM on earlier versions of Hyper-V (Namely > > Hyper-V 2012 and 2012 R2). > You are right; Ubuntu has been carrying a patch that was doing just > this and this has been working without any issues on many earlier > versions of Windows. (2012 and 2012 R2). On windows 10 we don't need > any changes in the Linux driver as the host itself is advertising SPC3 > compliance. Based on the testing we have done with Ubuntu, we are > comfortable picking up that patch. OK this seems to be the patch currently carried by Ubuntu: >>From ff2c5fa3fa9adf0b919b9425e71a8ba044c31a7d Mon Sep 17 00:00:00 2001 From: Andy Whitcroft Date: Fri, 13 Sep 2013 17:49:16 +0100 Subject: [PATCH] scsi: hyper-v storsvc switch up to SPC-3 Suggested-By: James Bottomley Signed-off-by: Andy Whitcroft --- drivers/scsi/storvsc_drv.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/drivers/scsi/storvsc_drv.c b/drivers/scsi/storvsc_drv.c index 9969fa1..3903c8a 100644 --- a/drivers/scsi/storvsc_drv.c +++ b/drivers/scsi/storvsc_drv.c @@ -1441,6 +1441,14 @@ static int storvsc_device_configure(struct scsi_device *sdevice) sdevice->no_write_same = 1; + /* + * hyper-v lies about its capabilities indicating it is only SPC-2 + * compliant, but actually implements the core SPC-3 features. + * If we pretend to be SPC-3, we send RC16 which activates trim and + * will query the appropriate VPD pages to enable trim. + */ + sdevice->scsi_level = SCSI_SPC_3; + return 0; } -- 1.7.9.5 (Downloaded from http://kernel.ubuntu.com/git?p=jsalisbury/stable/trusty/ubuntu-trusty.git;a=patch;h=ff2c5fa3fa9adf0b919b9425e71a8ba044c31a7d ). I think it's unwise to override the scsi_level at this particular point because you are going to do it for ALL Hyper-V "disks" (perhaps all Hyper-V SCSI devices?)... Here's the SCSI inquiry information reported by a USB 2 hard disk being passed passed-through by one of my 2012 R2 hosts: # sg_inq /dev/sdc standard INQUIRY: PQual=0 Device_type=0 RMB=0 version=0x02 [SCSI-2] [AERC=0] [TrmTsk=0] NormACA=0 HiSUP=0 Resp_data_format=1 SCCS=0 ACC=0 TPGS=0 3PC=0 Protect=0 [BQue=0] EncServ=0 MultiP=0 [MChngr=0] [ACKREQQ=0] Addr16=0 [RelAdr=0] WBus16=0 Sync=0 Linked=0 [TranDis=0] CmdQue=0 length=36 (0x24) Peripheral device type: disk Vendor identification: MDT MD50 Product identification: 00AAKS-00TMA0 Product revision level: Is it OK to replace a scsi_level of SCSI-2 with SCSI_SPC_3? Additionally is it also OK to force SCSI_SPC_3 on Hyper-V 2008? > > > NryزXvؖ){nlj{zX}zj:v zZzf~zwڢ)jyA > > > > > > i > N?????r??y????b?X??ǧv?^?)޺{.n?+????{????zX????ܨ}???Ơz?&j:+v???????zZ+??+zf???h???~????i???z??w?????????&?)ߢf??^jǫy?m??@A?a??? 0??h???i ^^^ Where do these characters come from? I've occasionally seen them on emails from other Microsoft folks posting to LKML too... -- Sitsofe | http://sucs.org/~sits/