From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965098AbaGPOxy (ORCPT ); Wed, 16 Jul 2014 10:53:54 -0400 Received: from mx2.parallels.com ([199.115.105.18]:38913 "EHLO mx2.parallels.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S934066AbaGPOxv (ORCPT ); Wed, 16 Jul 2014 10:53:51 -0400 From: James Bottomley To: "hch@infradead.org" CC: "linux-kernel@vger.kernel.org" , "apw@canonical.com" , "devel@linuxdriverproject.org" , "kys@microsoft.com" , "martin.petersen@oracle.com" , "stable@vger.kernel.org" , "linux-scsi@vger.kernel.org" , "ohering@suse.com" , "jasowang@redhat.com" Subject: Re: [PATCH 4/8] Drivers: scsi: storvsc: Filter WRITE_SAME_16 Thread-Topic: [PATCH 4/8] Drivers: scsi: storvsc: Filter WRITE_SAME_16 Thread-Index: AQHPoQW+iuVgDGn56EGhE5PiroYLNw== Date: Wed, 16 Jul 2014 14:53:47 +0000 Message-ID: <1405522426.2225.10.camel@jarvis.lan> References: <1404866812-26950-1-git-send-email-kys@microsoft.com> <1404866812-26950-4-git-send-email-kys@microsoft.com> <20140709084300.GD6012@infradead.org> <1404935792.2184.5.camel@dabdike.int.hansenpartnership.com> <2f3ae589e6f149acbe4c5dd79f905971@BY2PR03MB299.namprd03.prod.outlook.com> <1404944843.2184.8.camel@dabdike.int.hansenpartnership.com> <20140711063216.GA20660@infradead.org> <328b7a6174ef4dd8a54a7db5ac959834@BY2PR03MB299.namprd03.prod.outlook.com> <20140716110111.GA7382@infradead.org> In-Reply-To: <20140716110111.GA7382@infradead.org> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [50.46.103.107] Content-Type: text/plain; charset="utf-8" Content-ID: <4631051B0E5CE84EBC23F9B11473E066@sw.swsoft.com> MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from base64 to 8bit by mail.home.local id s6GEs042028624 On Wed, 2014-07-16 at 04:01 -0700, hch@infradead.org wrote: > On Sun, Jul 13, 2014 at 08:58:34AM -0400, Martin K. Petersen wrote: > > >>>>> "KY" == KY Srinivasan writes: > > > > KY> Windows hosts do support UNMAP and set the field in the > > KY> EVPD. However, since the host advertises SPC-2 compliance, Linux > > KY> does not even query the VPD page. > > > > >> If we want to enable UNMAP in this case I'd prefer a blacklist entry > > >> than trying UNMAP despite the device not advertising it. > > > > I agree with that. We could do something like the patch below. > > > > However, I do think it's a good idea that you guys are looking into > > reporting SPC-3. > > KY mentioned that they have a prototype for that now. > > Btw, I looked over sd.c a bit more, and I think I understand why they > get the WRITE SAME commands now: > > read_capacity_16 calls sd_config_discard(sdkp, SD_LBP_WS16) if the LPBME > bit is set. At least older SBC drafts left it wide open if a target > supports WRITE SAME with UNMAP or UNMAP in this case. So I think we'd > still want a patch to use UNMAP instead of WRITE SAME for this case, > which should also fix hyperv. Below is the quick hack version of that > that just checks the host no_write_same flag, as the one on the device > isn't set yet - I guess we need to refactor some of that logic. > > > diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c > index 87566b5..4480fdf 100644 > --- a/drivers/scsi/sd.c > +++ b/drivers/scsi/sd.c > @@ -2035,7 +2035,10 @@ static int read_capacity_16(struct scsi_disk *sdkp, struct scsi_device *sdp, > if (buffer[14] & 0x40) /* LBPRZ */ > sdkp->lbprz = 1; > > - sd_config_discard(sdkp, SD_LBP_WS16); > + if (sdp->host->no_write_same) > + sd_config_discard(sdkp, SD_LBP_UNMAP); > + else > + sd_config_discard(sdkp, SD_LBP_WS16); Right, I already said this was the problem: that was the reason for my patch. However, there are a couple of other cases (including the /sys entry) which is why I patched sd_config_discard instead. James {.n++%ݶw{.n+{G{ayʇڙ,jfhz_(階ݢj"mG?&~iOzv^m ?I From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: James Bottomley To: "hch@infradead.org" CC: "linux-kernel@vger.kernel.org" , "apw@canonical.com" , "devel@linuxdriverproject.org" , "kys@microsoft.com" , "martin.petersen@oracle.com" , "stable@vger.kernel.org" , "linux-scsi@vger.kernel.org" , "ohering@suse.com" , "jasowang@redhat.com" Subject: Re: [PATCH 4/8] Drivers: scsi: storvsc: Filter WRITE_SAME_16 Date: Wed, 16 Jul 2014 14:53:47 +0000 Message-ID: <1405522426.2225.10.camel@jarvis.lan> References: <1404866812-26950-1-git-send-email-kys@microsoft.com> <1404866812-26950-4-git-send-email-kys@microsoft.com> <20140709084300.GD6012@infradead.org> <1404935792.2184.5.camel@dabdike.int.hansenpartnership.com> <2f3ae589e6f149acbe4c5dd79f905971@BY2PR03MB299.namprd03.prod.outlook.com> <1404944843.2184.8.camel@dabdike.int.hansenpartnership.com> <20140711063216.GA20660@infradead.org> <328b7a6174ef4dd8a54a7db5ac959834@BY2PR03MB299.namprd03.prod.outlook.com> <20140716110111.GA7382@infradead.org> In-Reply-To: <20140716110111.GA7382@infradead.org> Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-ID: <4631051B0E5CE84EBC23F9B11473E066@sw.swsoft.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org List-ID: T24gV2VkLCAyMDE0LTA3LTE2IGF0IDA0OjAxIC0wNzAwLCBoY2hAaW5mcmFkZWFkLm9yZyB3cm90 ZToNCj4gT24gU3VuLCBKdWwgMTMsIDIwMTQgYXQgMDg6NTg6MzRBTSAtMDQwMCwgTWFydGluIEsu IFBldGVyc2VuIHdyb3RlOg0KPiA+ID4+Pj4+ICJLWSIgPT0gS1kgU3Jpbml2YXNhbiA8a3lzQG1p Y3Jvc29mdC5jb20+IHdyaXRlczoNCj4gPiANCj4gPiBLWT4gV2luZG93cyBob3N0cyBkbyBzdXBw b3J0IFVOTUFQIGFuZCBzZXQgdGhlIGZpZWxkIGluIHRoZQ0KPiA+IEtZPiBFVlBELiBIb3dldmVy LCBzaW5jZSB0aGUgaG9zdCBhZHZlcnRpc2VzIFNQQy0yIGNvbXBsaWFuY2UsIExpbnV4DQo+ID4g S1k+IGRvZXMgbm90IGV2ZW4gcXVlcnkgdGhlIFZQRCBwYWdlLg0KPiA+ICANCj4gPiA+PiBJZiB3 ZSB3YW50IHRvIGVuYWJsZSBVTk1BUCBpbiB0aGlzIGNhc2UgSSdkIHByZWZlciBhIGJsYWNrbGlz dCBlbnRyeQ0KPiA+ID4+IHRoYW4gdHJ5aW5nIFVOTUFQIGRlc3BpdGUgdGhlIGRldmljZSBub3Qg YWR2ZXJ0aXNpbmcgaXQuDQo+ID4gDQo+ID4gSSBhZ3JlZSB3aXRoIHRoYXQuIFdlIGNvdWxkIGRv IHNvbWV0aGluZyBsaWtlIHRoZSBwYXRjaCBiZWxvdy4NCj4gPiANCj4gPiBIb3dldmVyLCBJIGRv IHRoaW5rIGl0J3MgYSBnb29kIGlkZWEgdGhhdCB5b3UgZ3V5cyBhcmUgbG9va2luZyBpbnRvDQo+ ID4gcmVwb3J0aW5nIFNQQy0zLg0KPiANCj4gS1kgbWVudGlvbmVkIHRoYXQgdGhleSBoYXZlIGEg cHJvdG90eXBlIGZvciB0aGF0IG5vdy4NCj4gDQo+IEJ0dywgSSBsb29rZWQgb3ZlciBzZC5jIGEg Yml0IG1vcmUsIGFuZCBJIHRoaW5rIEkgdW5kZXJzdGFuZCB3aHkgdGhleQ0KPiBnZXQgdGhlIFdS SVRFIFNBTUUgY29tbWFuZHMgbm93Og0KPiANCj4gcmVhZF9jYXBhY2l0eV8xNiBjYWxscyBzZF9j b25maWdfZGlzY2FyZChzZGtwLCBTRF9MQlBfV1MxNikgaWYgdGhlIExQQk1FDQo+IGJpdCBpcyBz ZXQuICBBdCBsZWFzdCBvbGRlciBTQkMgZHJhZnRzIGxlZnQgaXQgd2lkZSBvcGVuIGlmIGEgdGFy Z2V0DQo+IHN1cHBvcnRzIFdSSVRFIFNBTUUgd2l0aCBVTk1BUCBvciBVTk1BUCBpbiB0aGlzIGNh c2UuICBTbyBJIHRoaW5rIHdlJ2QNCj4gc3RpbGwgd2FudCBhIHBhdGNoIHRvIHVzZSBVTk1BUCBp bnN0ZWFkIG9mIFdSSVRFIFNBTUUgZm9yIHRoaXMgY2FzZSwNCj4gd2hpY2ggc2hvdWxkIGFsc28g Zml4IGh5cGVydi4gIEJlbG93IGlzIHRoZSBxdWljayBoYWNrIHZlcnNpb24gb2YgdGhhdA0KPiB0 aGF0IGp1c3QgY2hlY2tzIHRoZSBob3N0IG5vX3dyaXRlX3NhbWUgZmxhZywgYXMgdGhlIG9uZSBv biB0aGUgZGV2aWNlDQo+IGlzbid0IHNldCB5ZXQgLSBJIGd1ZXNzIHdlIG5lZWQgdG8gcmVmYWN0 b3Igc29tZSBvZiB0aGF0IGxvZ2ljLg0KPiANCj4gDQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL3Nj c2kvc2QuYyBiL2RyaXZlcnMvc2NzaS9zZC5jDQo+IGluZGV4IDg3NTY2YjUuLjQ0ODBmZGYgMTAw NjQ0DQo+IC0tLSBhL2RyaXZlcnMvc2NzaS9zZC5jDQo+ICsrKyBiL2RyaXZlcnMvc2NzaS9zZC5j DQo+IEBAIC0yMDM1LDcgKzIwMzUsMTAgQEAgc3RhdGljIGludCByZWFkX2NhcGFjaXR5XzE2KHN0 cnVjdCBzY3NpX2Rpc2sgKnNka3AsIHN0cnVjdCBzY3NpX2RldmljZSAqc2RwLA0KPiAgCQlpZiAo YnVmZmVyWzE0XSAmIDB4NDApIC8qIExCUFJaICovDQo+ICAJCQlzZGtwLT5sYnByeiA9IDE7DQo+ ICANCj4gLQkJc2RfY29uZmlnX2Rpc2NhcmQoc2RrcCwgU0RfTEJQX1dTMTYpOw0KPiArCQlpZiAo c2RwLT5ob3N0LT5ub193cml0ZV9zYW1lKQ0KPiArCQkJc2RfY29uZmlnX2Rpc2NhcmQoc2RrcCwg U0RfTEJQX1VOTUFQKTsNCj4gKwkJZWxzZQ0KPiArCQkJc2RfY29uZmlnX2Rpc2NhcmQoc2RrcCwg U0RfTEJQX1dTMTYpOw0KDQpSaWdodCwgSSBhbHJlYWR5IHNhaWQgdGhpcyB3YXMgdGhlIHByb2Js ZW06IHRoYXQgd2FzIHRoZSByZWFzb24gZm9yIG15DQpwYXRjaC4gIEhvd2V2ZXIsIHRoZXJlIGFy ZSBhIGNvdXBsZSBvZiBvdGhlciBjYXNlcyAoaW5jbHVkaW5nIHRoZSAvc3lzDQplbnRyeSkgd2hp Y2ggaXMgd2h5IEkgcGF0Y2hlZCBzZF9jb25maWdfZGlzY2FyZCBpbnN0ZWFkLg0KDQpKYW1lcw0K DQo=