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: Mathias Nyman Message-Id: <1538065587-22997-1-git-send-email-mathias.nyman@linux.intel.com> Date: Thu, 27 Sep 2018 19:26:26 +0300 To: jackp@codeaurora.org Cc: peter.chen@nxp.com, linux-imx@nxp.com, linux-usb@vger.kernel.org, jun.li@nxp.com, joel@jms.id.au, mrana@codeaurora.org, Mathias Nyman , Chunfeng Yun , Thierry Reding , Jianguo Sun , stable@vger.kernel.org List-ID: RW5zdXJlIHRoYXQgdGhlIHNoYXJlZF9oY2QgcG9pbnRlciBpcyB2YWxpZCB3aGVuIGNhbGxpbmcg dXNiX3B1dF9oY2QoKQoKVGhlIHNoYXJlZF9oY2QgaXMgcmVtb3ZlZCBhbmQgZnJlZWQgaW4geGhj aSBieSBmaXJzdCBjYWxsaW5nCnVzYl9yZW1vdmVfaGNkKHhoY2ktPnNoYXJlZF9oY2QpLCBhbmQg bGF0ZXIKdXNiX3B1dF9oY2QoeGhjaS0+c2hhcmVkX2hjZCkKCkFmZXIgY29tbWl0IGZlMTkwZWQw ZDYwMiAoInhoY2k6IERvIG5vdCBoYWx0IHRoZSBob3N0IHVudGlsIGJvdGggSENEIGhhdmUKZGlz Y29ubmVjdGVkIHRoZWlyIGRldmljZXMuIikgdGhlIHNoYXJlZF9oY2Qgd2FzIG5ldmVyIHByb3Bl cmx5IHB1dCBhcwp4aGNpLT5zaGFyZWRfaGNkIHdhcyBzZXQgdG8gTlVMTCBiZWZvcmUgdXNiX3B1 dF9oY2QoeGhjaS0+c2hhcmVkX2hjZCkgd2FzCmNhbGxlZC4KCnNoYXJlZF9oY2QgKFVTQjMpIGlz IHJlbW92ZWQgYmVmb3JlIHByaW1hcnkgaGNkIChVU0IyKS4KV2hpbGUgcmVtb3ZpbmcgdGhlIHBy aW1hcnkgaGNkIHdlIG1pZ2h0IG5lZWQgdG8gaGFuZGxlIHhoY2kgaW50ZXJydXB0cwp0byBjbGVh bmx5IHJlbW92ZSBsYXN0IFVTQjIgZGV2aWNlcywgdGhlcmVmb3JlIHdlIG5lZWQgdG8gc2V0Cnho Y2ktPnNoYXJlZF9oY2QgdG8gTlVMTCBiZWZvcmUgcmVtb3ZpbmcgdGhlIHByaW1hcnkgaGNkIHRv IGxldCB4aGNpCmludGVycnVwdCBoYW5kbGVyIGtub3cgc2hhcmVkX2hjZCBpcyBubyBsb25nZXIg YXZhaWxhYmxlLgoKeGhjaS1wbGF0LmMsIHhoY2ktaGlzdGIuYyBhbmQgeGhjaS1tdGsgZmlyc3Qg Y3JlYXRlIGJvdGggdGhlaXIgaGNkJ3MgYmVmb3JlCmFkZGluZyB0aGVtLiBzbyB0byBrZWVwIHRo ZSBjb3JyZWN0IHJldmVyc2UgcmVtb3ZhbCBvcmRlciB1c2UgYSB0ZW1wb3JhcnkKc2hhcmVkX2hj ZCB2YXJpYWJsZSBmb3IgdGhlbS4KRm9yIG1vcmUgZGV0YWlscyBzZWUgY29tbWl0IDRhYzUzMDg3 ZDZkNCAoInVzYjogeGhjaTogcGxhdDogQ3JlYXRlIGJvdGgKSENEcyBiZWZvcmUgYWRkaW5nIHRo ZW0iKQoKRml4ZXM6IGZlMTkwZWQwZDYwMiAoInhoY2k6IERvIG5vdCBoYWx0IHRoZSBob3N0IHVu dGlsIGJvdGggSENEIGhhdmUgZGlzY29ubmVjdGVkIHRoZWlyIGRldmljZXMuIikKQ2M6IEpvZWwg U3RhbmxleSA8am9lbEBqbXMuaWQuYXU+CkNjOiBDaHVuZmVuZyBZdW4gPGNodW5mZW5nLnl1bkBt ZWRpYXRlay5jb20+CkNjOiBUaGllcnJ5IFJlZGluZyA8dHJlZGluZ0BudmlkaWEuY29tPgpDYzog Smlhbmd1byBTdW4gPHN1bmppYW5ndW8xQGh1YXdlaS5jb20+CkNjOiA8c3RhYmxlQHZnZXIua2Vy bmVsLm9yZz4KUmVwb3J0ZWQtYnk6IEphY2sgUGhhbSA8amFja3BAY29kZWF1cm9yYS5vcmc+ClNp Z25lZC1vZmYtYnk6IE1hdGhpYXMgTnltYW4gPG1hdGhpYXMubnltYW5AbGludXguaW50ZWwuY29t PgotLS0KIGRyaXZlcnMvdXNiL2hvc3QveGhjaS1oaXN0Yi5jIHwgNiArKysrLS0KIGRyaXZlcnMv dXNiL2hvc3QveGhjaS1tdGsuYyAgIHwgNiArKysrLS0KIGRyaXZlcnMvdXNiL2hvc3QveGhjaS1w Y2kuYyAgIHwgMSArCiBkcml2ZXJzL3VzYi9ob3N0L3hoY2ktcGxhdC5jICB8IDYgKysrKy0tCiBk cml2ZXJzL3VzYi9ob3N0L3hoY2ktdGVncmEuYyB8IDEgKwogZHJpdmVycy91c2IvaG9zdC94aGNp LmMgICAgICAgfCAyIC0tCiA2IGZpbGVzIGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDggZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy91c2IvaG9zdC94aGNpLWhpc3RiLmMgYi9k cml2ZXJzL3VzYi9ob3N0L3hoY2ktaGlzdGIuYwppbmRleCAyN2YwMDE2Li4zYzRhYmI1IDEwMDY0 NAotLS0gYS9kcml2ZXJzL3VzYi9ob3N0L3hoY2ktaGlzdGIuYworKysgYi9kcml2ZXJzL3VzYi9o b3N0L3hoY2ktaGlzdGIuYwpAQCAtMzI1LDE0ICszMjUsMTYgQEAgc3RhdGljIGludCB4aGNpX2hp c3RiX3JlbW92ZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpkZXYpCiAJc3RydWN0IHhoY2lfaGNk X2hpc3RiICpoaXN0YiA9IHBsYXRmb3JtX2dldF9kcnZkYXRhKGRldik7CiAJc3RydWN0IHVzYl9o Y2QgKmhjZCA9IGhpc3RiLT5oY2Q7CiAJc3RydWN0IHhoY2lfaGNkCSp4aGNpID0gaGNkX3RvX3ho Y2koaGNkKTsKKwlzdHJ1Y3QgdXNiX2hjZCAqc2hhcmVkX2hjZCA9IHhoY2ktPnNoYXJlZF9oY2Q7 CiAKIAl4aGNpLT54aGNfc3RhdGUgfD0gWEhDSV9TVEFURV9SRU1PVklORzsKIAotCXVzYl9yZW1v dmVfaGNkKHhoY2ktPnNoYXJlZF9oY2QpOworCXVzYl9yZW1vdmVfaGNkKHNoYXJlZF9oY2QpOwor CXhoY2ktPnNoYXJlZF9oY2QgPSBOVUxMOwogCWRldmljZV93YWtldXBfZGlzYWJsZSgmZGV2LT5k ZXYpOwogCiAJdXNiX3JlbW92ZV9oY2QoaGNkKTsKLQl1c2JfcHV0X2hjZCh4aGNpLT5zaGFyZWRf aGNkKTsKKwl1c2JfcHV0X2hjZChzaGFyZWRfaGNkKTsKIAogCXhoY2lfaGlzdGJfaG9zdF9kaXNh YmxlKGhpc3RiKTsKIAl1c2JfcHV0X2hjZChoY2QpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy91c2Iv aG9zdC94aGNpLW10ay5jIGIvZHJpdmVycy91c2IvaG9zdC94aGNpLW10ay5jCmluZGV4IDcxZDBk MzMuLjYwOTg3YzcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvdXNiL2hvc3QveGhjaS1tdGsuYworKysg Yi9kcml2ZXJzL3VzYi9ob3N0L3hoY2ktbXRrLmMKQEAgLTU5MCwxMiArNTkwLDE0IEBAIHN0YXRp YyBpbnQgeGhjaV9tdGtfcmVtb3ZlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKmRldikKIAlzdHJ1 Y3QgeGhjaV9oY2RfbXRrICptdGsgPSBwbGF0Zm9ybV9nZXRfZHJ2ZGF0YShkZXYpOwogCXN0cnVj dCB1c2JfaGNkCSpoY2QgPSBtdGstPmhjZDsKIAlzdHJ1Y3QgeGhjaV9oY2QJKnhoY2kgPSBoY2Rf dG9feGhjaShoY2QpOworCXN0cnVjdCB1c2JfaGNkICAqc2hhcmVkX2hjZCA9IHhoY2ktPnNoYXJl ZF9oY2Q7CiAKLQl1c2JfcmVtb3ZlX2hjZCh4aGNpLT5zaGFyZWRfaGNkKTsKKwl1c2JfcmVtb3Zl X2hjZChzaGFyZWRfaGNkKTsKKwl4aGNpLT5zaGFyZWRfaGNkID0gTlVMTDsKIAlkZXZpY2VfaW5p dF93YWtldXAoJmRldi0+ZGV2LCBmYWxzZSk7CiAKIAl1c2JfcmVtb3ZlX2hjZChoY2QpOwotCXVz Yl9wdXRfaGNkKHhoY2ktPnNoYXJlZF9oY2QpOworCXVzYl9wdXRfaGNkKHNoYXJlZF9oY2QpOwog CXVzYl9wdXRfaGNkKGhjZCk7CiAJeGhjaV9tdGtfc2NoX2V4aXQobXRrKTsKIAl4aGNpX210a19j bGtzX2Rpc2FibGUobXRrKTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvdXNiL2hvc3QveGhjaS1wY2ku YyBiL2RyaXZlcnMvdXNiL2hvc3QveGhjaS1wY2kuYwppbmRleCA1MWRkOGUwLi45MmZkNmI2IDEw MDY0NAotLS0gYS9kcml2ZXJzL3VzYi9ob3N0L3hoY2ktcGNpLmMKKysrIGIvZHJpdmVycy91c2Iv aG9zdC94aGNpLXBjaS5jCkBAIC0zNTYsNiArMzU2LDcgQEAgc3RhdGljIHZvaWQgeGhjaV9wY2lf cmVtb3ZlKHN0cnVjdCBwY2lfZGV2ICpkZXYpCiAJaWYgKHhoY2ktPnNoYXJlZF9oY2QpIHsKIAkJ dXNiX3JlbW92ZV9oY2QoeGhjaS0+c2hhcmVkX2hjZCk7CiAJCXVzYl9wdXRfaGNkKHhoY2ktPnNo YXJlZF9oY2QpOworCQl4aGNpLT5zaGFyZWRfaGNkID0gTlVMTDsKIAl9CiAKIAkvKiBXb3JrYXJv dW5kIGZvciBzcHVyaW91cyB3YWtldXBzIGF0IHNodXRkb3duIHdpdGggSFNXICovCmRpZmYgLS1n aXQgYS9kcml2ZXJzL3VzYi9ob3N0L3hoY2ktcGxhdC5jIGIvZHJpdmVycy91c2IvaG9zdC94aGNp LXBsYXQuYwppbmRleCA5NGU5MzkyLi5lNWRhOGNlIDEwMDY0NAotLS0gYS9kcml2ZXJzL3VzYi9o b3N0L3hoY2ktcGxhdC5jCisrKyBiL2RyaXZlcnMvdXNiL2hvc3QveGhjaS1wbGF0LmMKQEAgLTM1 OSwxNCArMzU5LDE2IEBAIHN0YXRpYyBpbnQgeGhjaV9wbGF0X3JlbW92ZShzdHJ1Y3QgcGxhdGZv cm1fZGV2aWNlICpkZXYpCiAJc3RydWN0IHhoY2lfaGNkCSp4aGNpID0gaGNkX3RvX3hoY2koaGNk KTsKIAlzdHJ1Y3QgY2xrICpjbGsgPSB4aGNpLT5jbGs7CiAJc3RydWN0IGNsayAqcmVnX2NsayA9 IHhoY2ktPnJlZ19jbGs7CisJc3RydWN0IHVzYl9oY2QgKnNoYXJlZF9oY2QgPSB4aGNpLT5zaGFy ZWRfaGNkOwogCiAJeGhjaS0+eGhjX3N0YXRlIHw9IFhIQ0lfU1RBVEVfUkVNT1ZJTkc7CiAKLQl1 c2JfcmVtb3ZlX2hjZCh4aGNpLT5zaGFyZWRfaGNkKTsKKwl1c2JfcmVtb3ZlX2hjZChzaGFyZWRf aGNkKTsKKwl4aGNpLT5zaGFyZWRfaGNkID0gTlVMTDsKIAl1c2JfcGh5X3NodXRkb3duKGhjZC0+ dXNiX3BoeSk7CiAKIAl1c2JfcmVtb3ZlX2hjZChoY2QpOwotCXVzYl9wdXRfaGNkKHhoY2ktPnNo YXJlZF9oY2QpOworCXVzYl9wdXRfaGNkKHNoYXJlZF9oY2QpOwogCiAJY2xrX2Rpc2FibGVfdW5w cmVwYXJlKGNsayk7CiAJY2xrX2Rpc2FibGVfdW5wcmVwYXJlKHJlZ19jbGspOwpkaWZmIC0tZ2l0 IGEvZHJpdmVycy91c2IvaG9zdC94aGNpLXRlZ3JhLmMgYi9kcml2ZXJzL3VzYi9ob3N0L3hoY2kt dGVncmEuYwppbmRleCA0YjQ2M2U1Li5iMWNjZTk4IDEwMDY0NAotLS0gYS9kcml2ZXJzL3VzYi9o b3N0L3hoY2ktdGVncmEuYworKysgYi9kcml2ZXJzL3VzYi9ob3N0L3hoY2ktdGVncmEuYwpAQCAt MTI0MCw2ICsxMjQwLDcgQEAgc3RhdGljIGludCB0ZWdyYV94dXNiX3JlbW92ZShzdHJ1Y3QgcGxh dGZvcm1fZGV2aWNlICpwZGV2KQogCiAJdXNiX3JlbW92ZV9oY2QoeGhjaS0+c2hhcmVkX2hjZCk7 CiAJdXNiX3B1dF9oY2QoeGhjaS0+c2hhcmVkX2hjZCk7CisJeGhjaS0+c2hhcmVkX2hjZCA9IE5V TEw7CiAJdXNiX3JlbW92ZV9oY2QodGVncmEtPmhjZCk7CiAJdXNiX3B1dF9oY2QodGVncmEtPmhj ZCk7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvdXNiL2hvc3QveGhjaS5jIGIvZHJpdmVycy91c2Iv aG9zdC94aGNpLmMKaW5kZXggMDQyMGVlZi4uYzkyOGRiYiAxMDA2NDQKLS0tIGEvZHJpdmVycy91 c2IvaG9zdC94aGNpLmMKKysrIGIvZHJpdmVycy91c2IvaG9zdC94aGNpLmMKQEAgLTcxOSw4ICs3 MTksNiBAQCBzdGF0aWMgdm9pZCB4aGNpX3N0b3Aoc3RydWN0IHVzYl9oY2QgKmhjZCkKIAogCS8q IE9ubHkgaGFsdCBob3N0IGFuZCBmcmVlIG1lbW9yeSBhZnRlciBib3RoIGhjZHMgYXJlIHJlbW92 ZWQgKi8KIAlpZiAoIXVzYl9oY2RfaXNfcHJpbWFyeV9oY2QoaGNkKSkgewotCQkvKiB1c2IgY29y ZSB3aWxsIGZyZWUgdGhpcyBoY2Qgc2hvcnRseSwgdW5zZXQgcG9pbnRlciAqLwotCQl4aGNpLT5z aGFyZWRfaGNkID0gTlVMTDsKIAkJbXV0ZXhfdW5sb2NrKCZ4aGNpLT5tdXRleCk7CiAJCXJldHVy bjsKIAl9Cg==