From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Liu, Monk" Subject: RE: [PATCH 13/18] drm/amdgpu:fix driver unloading bug Date: Mon, 18 Sep 2017 10:12:00 +0000 Message-ID: References: <1505715122-23904-1-git-send-email-Monk.Liu@amd.com> <1505715122-23904-14-git-send-email-Monk.Liu@amd.com> <1821bf91-83d8-c933-704d-fcd8db07def1@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1821bf91-83d8-c933-704d-fcd8db07def1-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> Content-Language: en-US List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: "Koenig, Christian" , "amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org" Cc: "Chen, Horace" Q2hyaXN0aWFuLA0KDQpMZXQncyBkaXNjdXNzIHRoaXMgcGF0Y2ggYW5kIHRoZSBvbmUgZm9sbG93 cyB3aGljaCBza2lwIHRoZSBLSVEgTVFEIGZyZWUgdG8gYXZvaWQgU0FWRV9GQUlMIGlzc3VlLg0K DQoNCkZvciBza2lwcGluZyBLSVEgTVFEIGRlYWxsb2NhdGlvbiBwYXRjaCwgSSB0aGluayBJIHdp bGwgZHJvcCBpdCBhbmQgdXNlIGEgbmV3IHdheToNCldlIGFsbG9jYXRlIEtJUSBNUUQgaW4gVlJB TSBkb21haW4gYW5kIHRoaXMgQk8gY2FuIGJlIHNhZmVseSBmcmVlZCBhZnRlciBkcml2ZXIgdW5s b2FkZWQsIGJlY2F1c2UgYWZ0ZXIgZHJpdmVyIHVubG9hZGVkIG5vIG9uZSB3aWxsIGNoYW5nZSB0 aGUgZGF0YSBpbiB0aGlzIEJPICp1c3VhbGx5Ki4NCmUuZy4gc29tZSByb290ICBhcHAgY2FuIG1h cCB2aXNpYmxlIHZyYW0gYW5kIGFsdGVyIHRoZSB2YWx1ZSBpbiBpdA0KDQpmb3IgdGhpcyBwYXRj aCAidG8gc2tpcHBpbmcgdW5iaW5kIHRoZSBHQVJUIG1hcHBpbmcgdG8ga2VlcCBLSVEgTVFEIGFs d2F5cyB2YWxpZCI6DQpTaW5jZSBoeXBlcnZpc29yIHNpZGUgYWx3YXlzIGhhdmUgY291cGxlIGh3 IGNvbXBvbmVudCB3b3JraW5nLCBhbmQgdGhleSByZWx5IG9uIEdNQyBrZXB0IGFsaXZlLCBzbyB0 aGlzIGlzIHZlcnkgZGlmZmVyZW50IHdpdGggQkFSRS1NRVRBTC4gVGhhdCdzIHRvIHNheSB3ZSBj YW4gb25seSBkbyBsaWtlIHRoaXMgd2F5Lg0KDQpCZXNpZGVzLCB3ZSdsbCBoYXZlIG1vcmUgcGF0 Y2hlcyBpbiBmdXR1cmUgZm9yIEwxIHNlY3VyZSBtb2RlLCB3aGljaCBmb3JiaWRkZW4gVkYgYWNj ZXNzIEdNQyByZWdpc3RlcnMsIHNvIHVuZGVyIEwxIHNlY3VyZSBtb2RlIGRyaXZlciB3aWxsIGFs d2F5cyBza2lwIEdNQyBwcm9ncmFtaW5nIHVuZGVyIFNSSU9WIGJvdGggaW4gaW5pdCBhbmQgZmlu aSwgYnV0IHRoYXQgd2lsbCBjb21lIGxhdGVyDQoNCkJSIE1vbmsNCg0KDQoNCi0tLS0tT3JpZ2lu YWwgTWVzc2FnZS0tLS0tDQpGcm9tOiBDaHJpc3RpYW4gS8O2bmlnIFttYWlsdG86Y2tvZW5pZy5s ZWljaHR6dW1lcmtlbkBnbWFpbC5jb21dIA0KU2VudDogMjAxN+W5tDnmnIgxOOaXpSAxNzoyOA0K VG86IExpdSwgTW9uayA8TW9uay5MaXVAYW1kLmNvbT47IGFtZC1nZnhAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnDQpDYzogQ2hlbiwgSG9yYWNlIDxIb3JhY2UuQ2hlbkBhbWQuY29tPg0KU3ViamVjdDog UmU6IFtQQVRDSCAxMy8xOF0gZHJtL2FtZGdwdTpmaXggZHJpdmVyIHVubG9hZGluZyBidWcNCg0K QW0gMTguMDkuMjAxNyB1bSAwODoxMSBzY2hyaWViIE1vbmsgTGl1Og0KPiBbU1dERVYtMTI2NjMx XSAtIGZpeCBoeXBlcnZpc29yIHNhdmVfdmYgZmFpbCB0aGF0IG9jY3VyZWQgYWZ0ZXIgZHJpdmVy IA0KPiByZW1vdmVkOg0KPiAxLiBCZWNhdXNlIHRoZSBLSVEgYW5kIEtDUSB3ZXJlIG5vdCB1bW1h cHBlZCwgc2F2ZV92ZiB3aWxsIGZhaWwgaWYgZHJpdmVyIGZyZWVkIG1xZCBvZiBLSVEgYW5kIEtD US4NCj4gMi4gS0lRIGNhbid0IGJlIHVubWFwcGVkIHNpbmNlIFJMQ1YgYWx3YXlzIG5lZWQgaXQs IHRoZSBib19mcmVlIG9uIEtJUSANCj4gc2hvdWxkIGJlIHNraXBwZWQgMy4gS0NRIGNhbiBiZSB1 bm1hcHBlZCwgYW5kIHNob3VsZCBiZSB1bm1hcHBlZCANCj4gZHVyaW5nIGh3X2ZpbmksIDQuIFJM Q1Ygc3RpbGwgbmVlZCB0byBhY2Nlc3Mgb3RoZXIgbWMgYWRkcmVzcyBmcm9tIHNvbWUgaHcgZXZl biBhZnRlciBkcml2ZXIgdW5sb2FkZWQsDQo+ICAgICBTbyB3ZSBzaG91bGQgbm90IHVuYmluZCBn YXJ0IGZvciBWRi4NCj4NCj4gQ2hhbmdlLUlkOiBJMzIwNDg3YTlhODQ4ZjQxNDg0YzVmOGNjMTFi ZTM0YWNhODA3YjQyNA0KPiBTaWduZWQtb2ZmLWJ5OiBIb3JhY2UgQ2hlbiA8aG9yYWNlLmNoZW5A YW1kLmNvbT4NCj4gU2lnbmVkLW9mZi1ieTogTW9uayBMaXUgPE1vbmsuTGl1QGFtZC5jb20+DQoN CkkgYWJzb2x1dGVseSBjYW4ndCBqdWRnZSBpZiB0aGlzIGlzIGNvcnJlY3Qgb3Igbm90LCBidXQg a2VlcGluZyB0aGUgR0FSVCBhbmQgS0lRIGFsaXZlIGFmdGVyIHRoZSBkcml2ZXIgaXMgdW5sb2Fk ZWQgc291bmRzIHJlYWxseSBmaXNoeSB0byBtZS4NCg0KSXNuJ3QgdGhlcmUgYW55IG90aGVyIGNs ZWFuIHdheSBvZiBoYW5kbGluZyB0aGlzPw0KDQpDaHJpc3RpYW4uDQoNCj4gLS0tDQo+ICAgZHJp dmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2dhcnQuYyB8ICAzICstDQo+ICAgZHJpdmVy cy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2dmeC5jICB8ICA1ICsrKw0KPiAgIGRyaXZlcnMv Z3B1L2RybS9hbWQvYW1kZ3B1L2dmeF92OV8wLmMgICAgfCA2MCArKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrLQ0KPiAgIDMgZmlsZXMgY2hhbmdlZCwgNjYgaW5zZXJ0aW9ucygrKSwgMiBk ZWxldGlvbnMoLSkNCj4NCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1 L2FtZGdwdV9nYXJ0LmMgDQo+IGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2dh cnQuYw0KPiBpbmRleCBmNDM3MDA4Li4yZmVlMDcxIDEwMDY0NA0KPiAtLS0gYS9kcml2ZXJzL2dw dS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZ2FydC5jDQo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1L2FtZGdwdV9nYXJ0LmMNCj4gQEAgLTM5NCw3ICszOTQsOCBAQCBpbnQgYW1kZ3B1 X2dhcnRfaW5pdChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldikNCj4gICAgKi8NCj4gICB2b2lk IGFtZGdwdV9nYXJ0X2Zpbmkoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpDQo+ICAgew0KPiAt CWlmIChhZGV2LT5nYXJ0LnJlYWR5KSB7DQo+ICsJLyogZ2FydCBpcyBzdGlsbCB1c2VkIGJ5IG90 aGVyIGh3IHVuZGVyIFNSSU9WLCBkb24ndCB1bmJpbmQgaXQgKi8NCj4gKwlpZiAoYWRldi0+Z2Fy dC5yZWFkeSAmJiAhYW1kZ3B1X3NyaW92X3ZmKGFkZXYpKSB7DQo+ICAgCQkvKiB1bmJpbmQgcGFn ZXMgKi8NCj4gICAJCWFtZGdwdV9nYXJ0X3VuYmluZChhZGV2LCAwLCBhZGV2LT5nYXJ0Lm51bV9j cHVfcGFnZXMpOw0KPiAgIAl9DQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2Ft ZGdwdS9hbWRncHVfZ2Z4LmMgDQo+IGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1 X2dmeC5jDQo+IGluZGV4IDRmNmM2OGYuLmJmNjY1NmYgMTAwNjQ0DQo+IC0tLSBhL2RyaXZlcnMv Z3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9nZnguYw0KPiArKysgYi9kcml2ZXJzL2dwdS9kcm0v YW1kL2FtZGdwdS9hbWRncHVfZ2Z4LmMNCj4gQEAgLTMwOSw2ICszMDksMTEgQEAgdm9pZCBhbWRn cHVfZ2Z4X2NvbXB1dGVfbXFkX3N3X2Zpbmkoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpDQo+ ICAgCQkJCSAgICAgICZyaW5nLT5tcWRfcHRyKTsNCj4gICAJfQ0KPiAgIA0KPiArCS8qIGRvbid0 IGRlYWxsb2NhdGUgS0lRIG1xZCBiZWNhdXNlIHRoZSBibyBpcyBzdGlsbCB1c2VkIGJ5IFJMQ1Yg ZXZlbg0KPiArCXRoZSBndWVzdCBWTSBpcyBzaHV0ZG93biAqLw0KPiArCWlmIChhbWRncHVfc3Jp b3ZfdmYoYWRldikpDQo+ICsJCXJldHVybjsNCj4gKw0KPiAgIAlyaW5nID0gJmFkZXYtPmdmeC5r aXEucmluZzsNCj4gICAJa2ZyZWUoYWRldi0+Z2Z4Lm1lYy5tcWRfYmFja3VwW0FNREdQVV9NQVhf Q09NUFVURV9SSU5HU10pOw0KPiAgIAlhbWRncHVfYm9fZnJlZV9rZXJuZWwoJnJpbmctPm1xZF9v YmosDQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9nZnhfdjlfMC5j IA0KPiBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dmeF92OV8wLmMNCj4gaW5kZXggNDQ5 NjBiMy4uYTU3N2JiYyAxMDA2NDQNCj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUv Z2Z4X3Y5XzAuYw0KPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9nZnhfdjlfMC5j DQo+IEBAIC0yODkyLDE0ICsyODkyLDcyIEBAIHN0YXRpYyBpbnQgZ2Z4X3Y5XzBfaHdfaW5pdCh2 b2lkICpoYW5kbGUpDQo+ICAgCXJldHVybiByOw0KPiAgIH0NCj4gICANCj4gK3N0YXRpYyBpbnQg Z2Z4X3Y5XzBfa2NxX2Rpc2FibGUoc3RydWN0IGFtZGdwdV9yaW5nICpraXFfcmluZyxzdHJ1Y3Qg DQo+ICthbWRncHVfcmluZyAqcmluZykgew0KPiArCXN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2 ID0ga2lxX3JpbmctPmFkZXY7DQo+ICsJdWludDMyX3Qgc2NyYXRjaCwgdG1wID0gMDsNCj4gKwlp bnQgciwgaTsNCj4gKw0KPiArCXIgPSBhbWRncHVfZ2Z4X3NjcmF0Y2hfZ2V0KGFkZXYsICZzY3Jh dGNoKTsNCj4gKwlpZiAocikgew0KPiArCQlEUk1fRVJST1IoIkZhaWxlZCB0byBnZXQgc2NyYXRj aCByZWcgKCVkKS5cbiIsIHIpOw0KPiArCQlyZXR1cm4gcjsNCj4gKwl9DQo+ICsJV1JFRzMyKHNj cmF0Y2gsIDB4Q0FGRURFQUQpOw0KPiArDQo+ICsJciA9IGFtZGdwdV9yaW5nX2FsbG9jKGtpcV9y aW5nLCAxMCk7DQo+ICsJaWYgKHIpIHsNCj4gKwkJRFJNX0VSUk9SKCJGYWlsZWQgdG8gbG9jayBL SVEgKCVkKS5cbiIsIHIpOw0KPiArCQlhbWRncHVfZ2Z4X3NjcmF0Y2hfZnJlZShhZGV2LCBzY3Jh dGNoKTsNCj4gKwkJcmV0dXJuIHI7DQo+ICsJfQ0KPiArDQo+ICsJLyogdW5tYXAgcXVldWVzICov DQo+ICsJYW1kZ3B1X3Jpbmdfd3JpdGUoa2lxX3JpbmcsIFBBQ0tFVDMoUEFDS0VUM19VTk1BUF9R VUVVRVMsIDQpKTsNCj4gKwlhbWRncHVfcmluZ193cml0ZShraXFfcmluZywgLyogUV9zZWw6IDAs IHZtaWQ6IDAsIGVuZ2luZTogMCwgbnVtX1E6IDEgKi8NCj4gKwkJCQkJCVBBQ0tFVDNfVU5NQVBf UVVFVUVTX0FDVElPTigxKSB8IC8qIFJFU0VUX1FVRVVFUyAqLw0KPiArCQkJCQkJUEFDS0VUM19V Tk1BUF9RVUVVRVNfUVVFVUVfU0VMKDApIHwNCj4gKwkJCQkJCVBBQ0tFVDNfVU5NQVBfUVVFVUVT X0VOR0lORV9TRUwoMCkgfA0KPiArCQkJCQkJUEFDS0VUM19VTk1BUF9RVUVVRVNfTlVNX1FVRVVF UygxKSk7DQo+ICsJYW1kZ3B1X3Jpbmdfd3JpdGUoa2lxX3JpbmcsIFBBQ0tFVDNfVU5NQVBfUVVF VUVTX0RPT1JCRUxMX09GRlNFVDAocmluZy0+ZG9vcmJlbGxfaW5kZXgpKTsNCj4gKwlhbWRncHVf cmluZ193cml0ZShraXFfcmluZywgMCk7DQo+ICsJYW1kZ3B1X3Jpbmdfd3JpdGUoa2lxX3Jpbmcs IDApOw0KPiArCWFtZGdwdV9yaW5nX3dyaXRlKGtpcV9yaW5nLCAwKTsNCj4gKwkvKiB3cml0ZSB0 byBzY3JhdGNoIGZvciBjb21wbGV0aW9uICovDQo+ICsJYW1kZ3B1X3Jpbmdfd3JpdGUoa2lxX3Jp bmcsIFBBQ0tFVDMoUEFDS0VUM19TRVRfVUNPTkZJR19SRUcsIDEpKTsNCj4gKwlhbWRncHVfcmlu Z193cml0ZShraXFfcmluZywgKHNjcmF0Y2ggLSBQQUNLRVQzX1NFVF9VQ09ORklHX1JFR19TVEFS VCkpOw0KPiArCWFtZGdwdV9yaW5nX3dyaXRlKGtpcV9yaW5nLCAweERFQURCRUVGKTsNCj4gKwlh bWRncHVfcmluZ19jb21taXQoa2lxX3JpbmcpOw0KPiArDQo+ICsJZm9yIChpID0gMDsgaSA8IGFk ZXYtPnVzZWNfdGltZW91dDsgaSsrKSB7DQo+ICsJCXRtcCA9IFJSRUczMihzY3JhdGNoKTsNCj4g KwkJaWYgKHRtcCA9PSAweERFQURCRUVGKQ0KPiArCQkJYnJlYWs7DQo+ICsJCURSTV9VREVMQVko MSk7DQo+ICsJfQ0KPiArCWlmIChpID49IGFkZXYtPnVzZWNfdGltZW91dCkgew0KPiArCQlEUk1f RVJST1IoIktDUSBkaXNhYmxlZCBmYWlsZWQgKHNjcmF0Y2goMHglMDRYKT0weCUwOFgpXG4iLCBz Y3JhdGNoLCB0bXApOw0KPiArCQlyID0gLUVJTlZBTDsNCj4gKwl9DQo+ICsJYW1kZ3B1X2dmeF9z Y3JhdGNoX2ZyZWUoYWRldiwgc2NyYXRjaCk7DQo+ICsJcmV0dXJuIHI7DQo+ICt9DQo+ICsNCj4g Kw0KPiAgIHN0YXRpYyBpbnQgZ2Z4X3Y5XzBfaHdfZmluaSh2b2lkICpoYW5kbGUpDQo+ICAgew0K PiAgIAlzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiA9IChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAq KWhhbmRsZTsNCj4gKwlpbnQgaSwgcjsNCj4gICANCj4gICAJYW1kZ3B1X2lycV9wdXQoYWRldiwg JmFkZXYtPmdmeC5wcml2X3JlZ19pcnEsIDApOw0KPiAgIAlhbWRncHVfaXJxX3B1dChhZGV2LCAm YWRldi0+Z2Z4LnByaXZfaW5zdF9pcnEsIDApOw0KPiAgIAlpZiAoYW1kZ3B1X3NyaW92X3ZmKGFk ZXYpKSB7DQo+IC0JCXByX2RlYnVnKCJGb3IgU1JJT1YgY2xpZW50LCBzaG91bGRuJ3QgZG8gYW55 dGhpbmcuXG4iKTsNCj4gKwkJLyogZGlzYWJsZSBLQ1EgdG8gYXZvaWQgQ1BDIHRvdWNoIG1lbW9y eSBub3QgdmFsaWQgYW55bW9yZSAqLw0KPiArCQlmb3IgKGkgPSAwOyBpIDwgYWRldi0+Z2Z4Lm51 bV9jb21wdXRlX3JpbmdzOyBpKyspIHsNCj4gKwkJCXIgPSBnZnhfdjlfMF9rY3FfZGlzYWJsZSgm YWRldi0+Z2Z4LmtpcS5yaW5nLCAmYWRldi0+Z2Z4LmNvbXB1dGVfcmluZ1tpXSk7DQo+ICsJCQlp ZiAocikNCj4gKwkJCQlyZXR1cm4gcjsNCj4gKwkJfQ0KPiAgIAkJcmV0dXJuIDA7DQo+ICAgCX0N Cj4gICAJZ2Z4X3Y5XzBfY3BfZW5hYmxlKGFkZXYsIGZhbHNlKTsNCg0KDQpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwphbWQtZ2Z4IG1haWxpbmcgbGlzdAph bWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2FtZC1nZngK