From mboxrd@z Thu Jan 1 00:00:00 1970 From: Oliver Neukum Subject: Re: [PATCH] usb: uas: fix usb subsystem hang after power off hub port Date: Thu, 28 Mar 2019 16:15:39 +0100 Message-ID: <1553786139.14990.6.camel@suse.com> References: <1552063928.29776.2.camel@suse.com> <1552405047.21557.7.camel@suse.com> <1553510086.2668.2.camel@suse.com> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: Sender: linux-kernel-owner@vger.kernel.org To: Kento.A.Kobayashi@sony.com, gregkh@linuxfoundation.org, stern@rowland.harvard.edu Cc: usb-storage@lists.one-eyed-alien.net, Jacky.Cao@sony.com, linux-kernel@vger.kernel.org, linux-scsi@vger.kernel.org, linux-usb@vger.kernel.org List-Id: linux-scsi@vger.kernel.org On Do, 2019-03-28 at 07:53 +0000, Kento.A.Kobayashi@sony.com wrote: > Hi, > > > Sorry, > > > > I thought this was clear. Your patch is making the assumption that the reset is triggered by the SCSI layer. You cannot make that assumption, as there is an ioctl for resetting a USB device. > > In case we are getting an error during the reset (our endpoints vanish), the device driver must report that to the USB layer, so the driver will always be disconnected. > > We cannot drop errors. > > > > Regards > > Oliver > > This patch modified uas_post_reset to skip rebind operation to avoid exception while -ENODEV happens not drop error. > If uas_post_reset happens -ENODEV, usb_reset_and_verify_device must happen error. > So,when we use ioctl(USBDEVFS_RESET) to reset device, if usb_reset_and_verify_device happens error, the error will be reported through ioctl return value. OK, It is possible that I am stupid. We must rebind if uas_post_reset() fails. The driver will crash without the endpoints. Can you please explain again in greater detail, what you are trying to achieve? Regards Oliver From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: usb: uas: fix usb subsystem hang after power off hub port From: Oliver Neukum Message-Id: <1553786139.14990.6.camel@suse.com> Date: Thu, 28 Mar 2019 16:15:39 +0100 To: Kento.A.Kobayashi@sony.com, gregkh@linuxfoundation.org, stern@rowland.harvard.edu Cc: usb-storage@lists.one-eyed-alien.net, Jacky.Cao@sony.com, linux-kernel@vger.kernel.org, linux-scsi@vger.kernel.org, linux-usb@vger.kernel.org List-ID: T24gRG8sIDIwMTktMDMtMjggYXQgMDc6NTMgKzAwMDAsIEtlbnRvLkEuS29iYXlhc2hpQHNvbnku Y29tIHdyb3RlOgo+IEhpLAo+IAo+ID4gU29ycnksCj4gPiAKPiA+IEkgdGhvdWdodCB0aGlzIHdh cyBjbGVhci4gWW91ciBwYXRjaCBpcyBtYWtpbmcgdGhlIGFzc3VtcHRpb24gdGhhdCB0aGUgcmVz ZXQgaXMgdHJpZ2dlcmVkIGJ5IHRoZSBTQ1NJIGxheWVyLiBZb3UgY2Fubm90IG1ha2UgdGhhdCBh c3N1bXB0aW9uLCBhcyB0aGVyZSBpcyBhbiBpb2N0bCBmb3IgcmVzZXR0aW5nIGEgVVNCIGRldmlj ZS4KPiA+IEluIGNhc2Ugd2UgYXJlIGdldHRpbmcgYW4gZXJyb3IgZHVyaW5nIHRoZSByZXNldCAo b3VyIGVuZHBvaW50cyB2YW5pc2gpLCB0aGUgZGV2aWNlIGRyaXZlciBtdXN0IHJlcG9ydCB0aGF0 IHRvIHRoZSBVU0IgbGF5ZXIsIHNvIHRoZSBkcml2ZXIgd2lsbCBhbHdheXMgYmUgZGlzY29ubmVj dGVkLgo+ID4gV2UgY2Fubm90IGRyb3AgZXJyb3JzLgo+ID4gCj4gPiAJUmVnYXJkcwo+ID4gCQlP bGl2ZXIKPiAKPiBUaGlzIHBhdGNoIG1vZGlmaWVkIHVhc19wb3N0X3Jlc2V0IHRvIHNraXAgcmVi aW5kIG9wZXJhdGlvbiB0byBhdm9pZCBleGNlcHRpb24gd2hpbGUgLUVOT0RFViBoYXBwZW5zIG5v dCBkcm9wIGVycm9yLgo+IElmIHVhc19wb3N0X3Jlc2V0IGhhcHBlbnMgLUVOT0RFViwgdXNiX3Jl c2V0X2FuZF92ZXJpZnlfZGV2aWNlIG11c3QgaGFwcGVuIGVycm9yLgo+IFNvLHdoZW4gd2UgdXNl IGlvY3RsKFVTQkRFVkZTX1JFU0VUKSB0byByZXNldCBkZXZpY2UsIGlmIHVzYl9yZXNldF9hbmRf dmVyaWZ5X2RldmljZSBoYXBwZW5zIGVycm9yLCB0aGUgZXJyb3Igd2lsbCBiZSByZXBvcnRlZCB0 aHJvdWdoIGlvY3RsIHJldHVybiB2YWx1ZS4gCgpPSywgSXQgaXMgcG9zc2libGUgdGhhdCBJIGFt IHN0dXBpZC4gV2UgbXVzdCByZWJpbmQgaWYgdWFzX3Bvc3RfcmVzZXQoKQpmYWlscy4gVGhlIGRy aXZlciB3aWxsIGNyYXNoIHdpdGhvdXQgdGhlIGVuZHBvaW50cy4gQ2FuIHlvdSBwbGVhc2UKZXhw bGFpbiBhZ2FpbiBpbiBncmVhdGVyIGRldGFpbCwgd2hhdCB5b3UgYXJlIHRyeWluZyB0byBhY2hp ZXZlPwoKCVJlZ2FyZHMKCQlPbGl2ZXIK