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: [RFT,1/2] xhci: Fix leaking USB3 shared_hcd at xhci removal From: Chunfeng Yun Message-Id: <1538100970.32173.58.camel@mhfsdcap03> Date: Fri, 28 Sep 2018 10:16:10 +0800 To: Mathias Nyman Cc: jackp@codeaurora.org, peter.chen@nxp.com, linux-imx@nxp.com, linux-usb@vger.kernel.org, jun.li@nxp.com, joel@jms.id.au, mrana@codeaurora.org, Thierry Reding , Jianguo Sun , stable@vger.kernel.org List-ID: T24gVGh1LCAyMDE4LTA5LTI3IGF0IDE5OjI2ICswMzAwLCBNYXRoaWFzIE55bWFuIHdyb3RlOgo+ IEVuc3VyZSB0aGF0IHRoZSBzaGFyZWRfaGNkIHBvaW50ZXIgaXMgdmFsaWQgd2hlbiBjYWxsaW5n IHVzYl9wdXRfaGNkKCkKPiAKPiBUaGUgc2hhcmVkX2hjZCBpcyByZW1vdmVkIGFuZCBmcmVlZCBp biB4aGNpIGJ5IGZpcnN0IGNhbGxpbmcKPiB1c2JfcmVtb3ZlX2hjZCh4aGNpLT5zaGFyZWRfaGNk KSwgYW5kIGxhdGVyCj4gdXNiX3B1dF9oY2QoeGhjaS0+c2hhcmVkX2hjZCkKPiAKPiBBZmVyIGNv bW1pdCBmZTE5MGVkMGQ2MDIgKCJ4aGNpOiBEbyBub3QgaGFsdCB0aGUgaG9zdCB1bnRpbCBib3Ro IEhDRCBoYXZlCj4gZGlzY29ubmVjdGVkIHRoZWlyIGRldmljZXMuIikgdGhlIHNoYXJlZF9oY2Qg d2FzIG5ldmVyIHByb3Blcmx5IHB1dCBhcwo+IHhoY2ktPnNoYXJlZF9oY2Qgd2FzIHNldCB0byBO VUxMIGJlZm9yZSB1c2JfcHV0X2hjZCh4aGNpLT5zaGFyZWRfaGNkKSB3YXMKPiBjYWxsZWQuCj4g Cj4gc2hhcmVkX2hjZCAoVVNCMykgaXMgcmVtb3ZlZCBiZWZvcmUgcHJpbWFyeSBoY2QgKFVTQjIp Lgo+IFdoaWxlIHJlbW92aW5nIHRoZSBwcmltYXJ5IGhjZCB3ZSBtaWdodCBuZWVkIHRvIGhhbmRs ZSB4aGNpIGludGVycnVwdHMKPiB0byBjbGVhbmx5IHJlbW92ZSBsYXN0IFVTQjIgZGV2aWNlcywg dGhlcmVmb3JlIHdlIG5lZWQgdG8gc2V0Cj4geGhjaS0+c2hhcmVkX2hjZCB0byBOVUxMIGJlZm9y ZSByZW1vdmluZyB0aGUgcHJpbWFyeSBoY2QgdG8gbGV0IHhoY2kKPiBpbnRlcnJ1cHQgaGFuZGxl ciBrbm93IHNoYXJlZF9oY2QgaXMgbm8gbG9uZ2VyIGF2YWlsYWJsZS4KPiAKPiB4aGNpLXBsYXQu YywgeGhjaS1oaXN0Yi5jIGFuZCB4aGNpLW10ayBmaXJzdCBjcmVhdGUgYm90aCB0aGVpciBoY2Qn cyBiZWZvcmUKPiBhZGRpbmcgdGhlbS4gc28gdG8ga2VlcCB0aGUgY29ycmVjdCByZXZlcnNlIHJl bW92YWwgb3JkZXIgdXNlIGEgdGVtcG9yYXJ5Cj4gc2hhcmVkX2hjZCB2YXJpYWJsZSBmb3IgdGhl bS4KPiBGb3IgbW9yZSBkZXRhaWxzIHNlZSBjb21taXQgNGFjNTMwODdkNmQ0ICgidXNiOiB4aGNp OiBwbGF0OiBDcmVhdGUgYm90aAo+IEhDRHMgYmVmb3JlIGFkZGluZyB0aGVtIikKPiAKPiBGaXhl czogZmUxOTBlZDBkNjAyICgieGhjaTogRG8gbm90IGhhbHQgdGhlIGhvc3QgdW50aWwgYm90aCBI Q0QgaGF2ZSBkaXNjb25uZWN0ZWQgdGhlaXIgZGV2aWNlcy4iKQo+IENjOiBKb2VsIFN0YW5sZXkg PGpvZWxAam1zLmlkLmF1Pgo+IENjOiBDaHVuZmVuZyBZdW4gPGNodW5mZW5nLnl1bkBtZWRpYXRl ay5jb20+Cj4gQ2M6IFRoaWVycnkgUmVkaW5nIDx0cmVkaW5nQG52aWRpYS5jb20+Cj4gQ2M6IEpp YW5ndW8gU3VuIDxzdW5qaWFuZ3VvMUBodWF3ZWkuY29tPgo+IENjOiA8c3RhYmxlQHZnZXIua2Vy bmVsLm9yZz4KPiBSZXBvcnRlZC1ieTogSmFjayBQaGFtIDxqYWNrcEBjb2RlYXVyb3JhLm9yZz4K PiBTaWduZWQtb2ZmLWJ5OiBNYXRoaWFzIE55bWFuIDxtYXRoaWFzLm55bWFuQGxpbnV4LmludGVs LmNvbT4KPiAtLS0KPiAgZHJpdmVycy91c2IvaG9zdC94aGNpLWhpc3RiLmMgfCA2ICsrKystLQo+ ICBkcml2ZXJzL3VzYi9ob3N0L3hoY2ktbXRrLmMgICB8IDYgKysrKy0tCj4gIGRyaXZlcnMvdXNi L2hvc3QveGhjaS1wY2kuYyAgIHwgMSArCj4gIGRyaXZlcnMvdXNiL2hvc3QveGhjaS1wbGF0LmMg IHwgNiArKysrLS0KPiAgZHJpdmVycy91c2IvaG9zdC94aGNpLXRlZ3JhLmMgfCAxICsKPiAgZHJp dmVycy91c2IvaG9zdC94aGNpLmMgICAgICAgfCAyIC0tCj4gIDYgZmlsZXMgY2hhbmdlZCwgMTQg aW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy91 c2IvaG9zdC94aGNpLWhpc3RiLmMgYi9kcml2ZXJzL3VzYi9ob3N0L3hoY2ktaGlzdGIuYwo+IGlu ZGV4IDI3ZjAwMTYuLjNjNGFiYjUgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy91c2IvaG9zdC94aGNp LWhpc3RiLmMKPiArKysgYi9kcml2ZXJzL3VzYi9ob3N0L3hoY2ktaGlzdGIuYwo+IEBAIC0zMjUs MTQgKzMyNSwxNiBAQCBzdGF0aWMgaW50IHhoY2lfaGlzdGJfcmVtb3ZlKHN0cnVjdCBwbGF0Zm9y bV9kZXZpY2UgKmRldikKPiAgCXN0cnVjdCB4aGNpX2hjZF9oaXN0YiAqaGlzdGIgPSBwbGF0Zm9y bV9nZXRfZHJ2ZGF0YShkZXYpOwo+ICAJc3RydWN0IHVzYl9oY2QgKmhjZCA9IGhpc3RiLT5oY2Q7 Cj4gIAlzdHJ1Y3QgeGhjaV9oY2QJKnhoY2kgPSBoY2RfdG9feGhjaShoY2QpOwo+ICsJc3RydWN0 IHVzYl9oY2QgKnNoYXJlZF9oY2QgPSB4aGNpLT5zaGFyZWRfaGNkOwo+ICAKPiAgCXhoY2ktPnho Y19zdGF0ZSB8PSBYSENJX1NUQVRFX1JFTU9WSU5HOwo+ICAKPiAtCXVzYl9yZW1vdmVfaGNkKHho Y2ktPnNoYXJlZF9oY2QpOwo+ICsJdXNiX3JlbW92ZV9oY2Qoc2hhcmVkX2hjZCk7Cj4gKwl4aGNp LT5zaGFyZWRfaGNkID0gTlVMTDsKPiAgCWRldmljZV93YWtldXBfZGlzYWJsZSgmZGV2LT5kZXYp Owo+ICAKPiAgCXVzYl9yZW1vdmVfaGNkKGhjZCk7Cj4gLQl1c2JfcHV0X2hjZCh4aGNpLT5zaGFy ZWRfaGNkKTsKPiArCXVzYl9wdXRfaGNkKHNoYXJlZF9oY2QpOwo+ICAKPiAgCXhoY2lfaGlzdGJf aG9zdF9kaXNhYmxlKGhpc3RiKTsKPiAgCXVzYl9wdXRfaGNkKGhjZCk7Cj4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvdXNiL2hvc3QveGhjaS1tdGsuYyBiL2RyaXZlcnMvdXNiL2hvc3QveGhjaS1tdGsu Ywo+IGluZGV4IDcxZDBkMzMuLjYwOTg3YzcgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy91c2IvaG9z dC94aGNpLW10ay5jCj4gKysrIGIvZHJpdmVycy91c2IvaG9zdC94aGNpLW10ay5jCj4gQEAgLTU5 MCwxMiArNTkwLDE0IEBAIHN0YXRpYyBpbnQgeGhjaV9tdGtfcmVtb3ZlKHN0cnVjdCBwbGF0Zm9y bV9kZXZpY2UgKmRldikKPiAgCXN0cnVjdCB4aGNpX2hjZF9tdGsgKm10ayA9IHBsYXRmb3JtX2dl dF9kcnZkYXRhKGRldik7Cj4gIAlzdHJ1Y3QgdXNiX2hjZAkqaGNkID0gbXRrLT5oY2Q7Cj4gIAlz dHJ1Y3QgeGhjaV9oY2QJKnhoY2kgPSBoY2RfdG9feGhjaShoY2QpOwo+ICsJc3RydWN0IHVzYl9o Y2QgICpzaGFyZWRfaGNkID0geGhjaS0+c2hhcmVkX2hjZDsKPiAgCj4gLQl1c2JfcmVtb3ZlX2hj ZCh4aGNpLT5zaGFyZWRfaGNkKTsKPiArCXVzYl9yZW1vdmVfaGNkKHNoYXJlZF9oY2QpOwo+ICsJ eGhjaS0+c2hhcmVkX2hjZCA9IE5VTEw7Cj4gIAlkZXZpY2VfaW5pdF93YWtldXAoJmRldi0+ZGV2 LCBmYWxzZSk7Cj4gIAo+ICAJdXNiX3JlbW92ZV9oY2QoaGNkKTsKPiAtCXVzYl9wdXRfaGNkKHho Y2ktPnNoYXJlZF9oY2QpOwo+ICsJdXNiX3B1dF9oY2Qoc2hhcmVkX2hjZCk7Cj4gIAl1c2JfcHV0 X2hjZChoY2QpOwo+ICAJeGhjaV9tdGtfc2NoX2V4aXQobXRrKTsKPiAgCXhoY2lfbXRrX2Nsa3Nf ZGlzYWJsZShtdGspOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL3VzYi9ob3N0L3hoY2ktcGNpLmMg Yi9kcml2ZXJzL3VzYi9ob3N0L3hoY2ktcGNpLmMKPiBpbmRleCA1MWRkOGUwLi45MmZkNmI2IDEw MDY0NAo+IC0tLSBhL2RyaXZlcnMvdXNiL2hvc3QveGhjaS1wY2kuYwo+ICsrKyBiL2RyaXZlcnMv dXNiL2hvc3QveGhjaS1wY2kuYwo+IEBAIC0zNTYsNiArMzU2LDcgQEAgc3RhdGljIHZvaWQgeGhj aV9wY2lfcmVtb3ZlKHN0cnVjdCBwY2lfZGV2ICpkZXYpCj4gIAlpZiAoeGhjaS0+c2hhcmVkX2hj ZCkgewo+ICAJCXVzYl9yZW1vdmVfaGNkKHhoY2ktPnNoYXJlZF9oY2QpOwo+ICAJCXVzYl9wdXRf aGNkKHhoY2ktPnNoYXJlZF9oY2QpOwo+ICsJCXhoY2ktPnNoYXJlZF9oY2QgPSBOVUxMOwo+ICAJ fQo+ICAKPiAgCS8qIFdvcmthcm91bmQgZm9yIHNwdXJpb3VzIHdha2V1cHMgYXQgc2h1dGRvd24g d2l0aCBIU1cgKi8KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy91c2IvaG9zdC94aGNpLXBsYXQuYyBi L2RyaXZlcnMvdXNiL2hvc3QveGhjaS1wbGF0LmMKPiBpbmRleCA5NGU5MzkyLi5lNWRhOGNlIDEw MDY0NAo+IC0tLSBhL2RyaXZlcnMvdXNiL2hvc3QveGhjaS1wbGF0LmMKPiArKysgYi9kcml2ZXJz L3VzYi9ob3N0L3hoY2ktcGxhdC5jCj4gQEAgLTM1OSwxNCArMzU5LDE2IEBAIHN0YXRpYyBpbnQg eGhjaV9wbGF0X3JlbW92ZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpkZXYpCj4gIAlzdHJ1Y3Qg eGhjaV9oY2QJKnhoY2kgPSBoY2RfdG9feGhjaShoY2QpOwo+ICAJc3RydWN0IGNsayAqY2xrID0g eGhjaS0+Y2xrOwo+ICAJc3RydWN0IGNsayAqcmVnX2NsayA9IHhoY2ktPnJlZ19jbGs7Cj4gKwlz dHJ1Y3QgdXNiX2hjZCAqc2hhcmVkX2hjZCA9IHhoY2ktPnNoYXJlZF9oY2Q7Cj4gIAo+ICAJeGhj aS0+eGhjX3N0YXRlIHw9IFhIQ0lfU1RBVEVfUkVNT1ZJTkc7Cj4gIAo+IC0JdXNiX3JlbW92ZV9o Y2QoeGhjaS0+c2hhcmVkX2hjZCk7Cj4gKwl1c2JfcmVtb3ZlX2hjZChzaGFyZWRfaGNkKTsKPiAr CXhoY2ktPnNoYXJlZF9oY2QgPSBOVUxMOwo+ICAJdXNiX3BoeV9zaHV0ZG93bihoY2QtPnVzYl9w aHkpOwo+ICAKPiAgCXVzYl9yZW1vdmVfaGNkKGhjZCk7Cj4gLQl1c2JfcHV0X2hjZCh4aGNpLT5z aGFyZWRfaGNkKTsKPiArCXVzYl9wdXRfaGNkKHNoYXJlZF9oY2QpOwo+ICAKPiAgCWNsa19kaXNh YmxlX3VucHJlcGFyZShjbGspOwo+ICAJY2xrX2Rpc2FibGVfdW5wcmVwYXJlKHJlZ19jbGspOwo+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL3VzYi9ob3N0L3hoY2ktdGVncmEuYyBiL2RyaXZlcnMvdXNi L2hvc3QveGhjaS10ZWdyYS5jCj4gaW5kZXggNGI0NjNlNS4uYjFjY2U5OCAxMDA2NDQKPiAtLS0g YS9kcml2ZXJzL3VzYi9ob3N0L3hoY2ktdGVncmEuYwo+ICsrKyBiL2RyaXZlcnMvdXNiL2hvc3Qv eGhjaS10ZWdyYS5jCj4gQEAgLTEyNDAsNiArMTI0MCw3IEBAIHN0YXRpYyBpbnQgdGVncmFfeHVz Yl9yZW1vdmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikKPiAgCj4gIAl1c2JfcmVtb3Zl X2hjZCh4aGNpLT5zaGFyZWRfaGNkKTsKPiAgCXVzYl9wdXRfaGNkKHhoY2ktPnNoYXJlZF9oY2Qp Owo+ICsJeGhjaS0+c2hhcmVkX2hjZCA9IE5VTEw7Cj4gIAl1c2JfcmVtb3ZlX2hjZCh0ZWdyYS0+ aGNkKTsKPiAgCXVzYl9wdXRfaGNkKHRlZ3JhLT5oY2QpOwo+ICAKPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy91c2IvaG9zdC94aGNpLmMgYi9kcml2ZXJzL3VzYi9ob3N0L3hoY2kuYwo+IGluZGV4IDA0 MjBlZWYuLmM5MjhkYmIgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy91c2IvaG9zdC94aGNpLmMKPiAr KysgYi9kcml2ZXJzL3VzYi9ob3N0L3hoY2kuYwo+IEBAIC03MTksOCArNzE5LDYgQEAgc3RhdGlj IHZvaWQgeGhjaV9zdG9wKHN0cnVjdCB1c2JfaGNkICpoY2QpCj4gIAo+ICAJLyogT25seSBoYWx0 IGhvc3QgYW5kIGZyZWUgbWVtb3J5IGFmdGVyIGJvdGggaGNkcyBhcmUgcmVtb3ZlZCAqLwo+ICAJ aWYgKCF1c2JfaGNkX2lzX3ByaW1hcnlfaGNkKGhjZCkpIHsKPiAtCQkvKiB1c2IgY29yZSB3aWxs IGZyZWUgdGhpcyBoY2Qgc2hvcnRseSwgdW5zZXQgcG9pbnRlciAqLwo+IC0JCXhoY2ktPnNoYXJl ZF9oY2QgPSBOVUxMOwo+ICAJCW11dGV4X3VubG9jaygmeGhjaS0+bXV0ZXgpOwo+ICAJCXJldHVy bjsKPiAgCX0KClRlc3RlZC1ieTogQ2h1bmZlbmcgWXVuIDxjaHVuZmVuZy55dW5AbWVkaWF0ZWsu Y29tPgoKVGhhbmtzCg==