From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Yang, Philip" Subject: [PATCH 2/3] drm/amdkfd: avoid HMM change cause circular lock dependency v2 Date: Wed, 6 Feb 2019 16:26:14 +0000 Message-ID: <20190206162556.11512-3-Philip.Yang@amd.com> References: <20190206162556.11512-1-Philip.Yang@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190206162556.11512-1-Philip.Yang-5C7GfCeVMHo@public.gmane.org> Content-Language: en-US Content-ID: 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: "amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org" Cc: "Yang, Philip" VGhlcmUgaXMgY2lyY3VsYXIgbG9jayBiZXR3ZWVuIGdmeCBhbmQga2ZkIHBhdGggd2l0aCBITU0g Y2hhbmdlOg0KbG9jayhkcW0pIC0+IGJvOjpyZXNlcnZlIC0+IGFtZGdwdV9tbl9sb2NrDQoNClRv IGF2b2lkIHRoaXMsIG1vdmUgaW5pdC91bmludF9tcWQoKSBvdXQgb2YgbG9jayhkcW0pLCB0byBy ZW1vdmUgbmVzdGVkDQpsb2NraW5nIGJldHdlZW4gbW1hcF9zZW0gYW5kIGJvOjpyZXNlcnZlLiBU aGUgbG9ja2luZyBvcmRlcg0KaXM6IGJvOjpyZXNlcnZlIC0+IGFtZGdwdV9tbl9sb2NrKHAtPm1u KQ0KDQpDaGFuZ2UtSWQ6IEkyZWMwOWE0NzU3MWY2YjRjOGVhZWY5M2YyMmMwYTYwMGY1ZjcwMTUz DQpTaWduZWQtb2ZmLWJ5OiBQaGlsaXAgWWFuZyA8UGhpbGlwLllhbmdAYW1kLmNvbT4NClJldmll d2VkLWJ5OiBGZWxpeCBLdWVobGluZyA8RmVsaXguS3VlaGxpbmdAYW1kLmNvbT4NCkFja2VkLWJ5 OiBDaHJpc3RpYW4gS8O2bmlnIDxjaHJpc3RpYW4ua29lbmlnQGFtZC5jb20+DQotLS0NCiAuLi4v ZHJtL2FtZC9hbWRrZmQva2ZkX2RldmljZV9xdWV1ZV9tYW5hZ2VyLmMgfCAzMiArKysrKysrKysr LS0tLS0tLS0tDQogMSBmaWxlIGNoYW5nZWQsIDE3IGluc2VydGlvbnMoKyksIDE1IGRlbGV0aW9u cygtKQ0KDQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRrZmQva2ZkX2Rldmlj ZV9xdWV1ZV9tYW5hZ2VyLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGtmZC9rZmRfZGV2aWNl X3F1ZXVlX21hbmFnZXIuYw0KaW5kZXggODM3MjU1NmI1MmViLi5lZmUwZDNjMDIxNWIgMTAwNjQ0 DQotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGtmZC9rZmRfZGV2aWNlX3F1ZXVlX21hbmFn ZXIuYw0KKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRrZmQva2ZkX2RldmljZV9xdWV1ZV9t YW5hZ2VyLmMNCkBAIC0xMTU2LDIxICsxMTU2LDE3IEBAIHN0YXRpYyBpbnQgY3JlYXRlX3F1ZXVl X2Nwc2NoKHN0cnVjdCBkZXZpY2VfcXVldWVfbWFuYWdlciAqZHFtLCBzdHJ1Y3QgcXVldWUgKnEs DQogCWludCByZXR2YWw7DQogCXN0cnVjdCBtcWRfbWFuYWdlciAqbXFkX21ncjsNCiANCi0JcmV0 dmFsID0gMDsNCi0NCi0JZHFtX2xvY2soZHFtKTsNCi0NCiAJaWYgKGRxbS0+dG90YWxfcXVldWVf Y291bnQgPj0gbWF4X251bV9vZl9xdWV1ZXNfcGVyX2RldmljZSkgew0KIAkJcHJfd2FybigiQ2Fu J3QgY3JlYXRlIG5ldyB1c2VybW9kZSBxdWV1ZSBiZWNhdXNlICVkIHF1ZXVlcyB3ZXJlIGFscmVh ZHkgY3JlYXRlZFxuIiwNCiAJCQkJZHFtLT50b3RhbF9xdWV1ZV9jb3VudCk7DQogCQlyZXR2YWwg PSAtRVBFUk07DQotCQlnb3RvIG91dF91bmxvY2s7DQorCQlnb3RvIG91dDsNCiAJfQ0KIA0KIAlp ZiAocS0+cHJvcGVydGllcy50eXBlID09IEtGRF9RVUVVRV9UWVBFX1NETUEpIHsNCiAJCXJldHZh bCA9IGFsbG9jYXRlX3NkbWFfcXVldWUoZHFtLCAmcS0+c2RtYV9pZCk7DQogCQlpZiAocmV0dmFs KQ0KLQkJCWdvdG8gb3V0X3VubG9jazsNCisJCQlnb3RvIG91dDsNCiAJCXEtPnByb3BlcnRpZXMu c2RtYV9xdWV1ZV9pZCA9DQogCQkJcS0+c2RtYV9pZCAvIGdldF9udW1fc2RtYV9lbmdpbmVzKGRx bSk7DQogCQlxLT5wcm9wZXJ0aWVzLnNkbWFfZW5naW5lX2lkID0NCkBAIC0xMTgxLDYgKzExNzcs OSBAQCBzdGF0aWMgaW50IGNyZWF0ZV9xdWV1ZV9jcHNjaChzdHJ1Y3QgZGV2aWNlX3F1ZXVlX21h bmFnZXIgKmRxbSwgc3RydWN0IHF1ZXVlICpxLA0KIAlpZiAocmV0dmFsKQ0KIAkJZ290byBvdXRf ZGVhbGxvY2F0ZV9zZG1hX3F1ZXVlOw0KIA0KKwkvKiBEbyBpbml0X21xZCBiZWZvcmUgZHFtX2xv Y2soZHFtKSB0byBhdm9pZCBjaXJjdWxhciBsb2NraW5nIG9yZGVyOg0KKwkgKiBsb2NrKGRxbSkg LT4gYm86OnJlc2VydmUNCisJICovDQogCW1xZF9tZ3IgPSBkcW0tPm9wcy5nZXRfbXFkX21hbmFn ZXIoZHFtLA0KIAkJCWdldF9tcWRfdHlwZV9mcm9tX3F1ZXVlX3R5cGUocS0+cHJvcGVydGllcy50 eXBlKSk7DQogDQpAQCAtMTE4OCw2ICsxMTg3LDcgQEAgc3RhdGljIGludCBjcmVhdGVfcXVldWVf Y3BzY2goc3RydWN0IGRldmljZV9xdWV1ZV9tYW5hZ2VyICpkcW0sIHN0cnVjdCBxdWV1ZSAqcSwN CiAJCXJldHZhbCA9IC1FTk9NRU07DQogCQlnb3RvIG91dF9kZWFsbG9jYXRlX2Rvb3JiZWxsOw0K IAl9DQorDQogCS8qDQogCSAqIEV2aWN0aW9uIHN0YXRlIGxvZ2ljOiB3ZSBvbmx5IG1hcmsgYWN0 aXZlIHF1ZXVlcyBhcyBldmljdGVkDQogCSAqIHRvIGF2b2lkIHRoZSBvdmVyaGVhZCBvZiByZXN0 b3JpbmcgaW5hY3RpdmUgcXVldWVzIGxhdGVyDQpAQCAtMTE5Niw5ICsxMTk2LDcgQEAgc3RhdGlj IGludCBjcmVhdGVfcXVldWVfY3BzY2goc3RydWN0IGRldmljZV9xdWV1ZV9tYW5hZ2VyICpkcW0s IHN0cnVjdCBxdWV1ZSAqcSwNCiAJCXEtPnByb3BlcnRpZXMuaXNfZXZpY3RlZCA9IChxLT5wcm9w ZXJ0aWVzLnF1ZXVlX3NpemUgPiAwICYmDQogCQkJCQkgICAgcS0+cHJvcGVydGllcy5xdWV1ZV9w ZXJjZW50ID4gMCAmJg0KIAkJCQkJICAgIHEtPnByb3BlcnRpZXMucXVldWVfYWRkcmVzcyAhPSAw KTsNCi0NCiAJZHFtLT5hc2ljX29wcy5pbml0X3NkbWFfdm0oZHFtLCBxLCBxcGQpOw0KLQ0KIAlx LT5wcm9wZXJ0aWVzLnRiYV9hZGRyID0gcXBkLT50YmFfYWRkcjsNCiAJcS0+cHJvcGVydGllcy50 bWFfYWRkciA9IHFwZC0+dG1hX2FkZHI7DQogCXJldHZhbCA9IG1xZF9tZ3ItPmluaXRfbXFkKG1x ZF9tZ3IsICZxLT5tcWQsICZxLT5tcWRfbWVtX29iaiwNCkBAIC0xMjA2LDYgKzEyMDQsOCBAQCBz dGF0aWMgaW50IGNyZWF0ZV9xdWV1ZV9jcHNjaChzdHJ1Y3QgZGV2aWNlX3F1ZXVlX21hbmFnZXIg KmRxbSwgc3RydWN0IHF1ZXVlICpxLA0KIAlpZiAocmV0dmFsKQ0KIAkJZ290byBvdXRfZGVhbGxv Y2F0ZV9kb29yYmVsbDsNCiANCisJZHFtX2xvY2soZHFtKTsNCisNCiAJbGlzdF9hZGQoJnEtPmxp c3QsICZxcGQtPnF1ZXVlc19saXN0KTsNCiAJcXBkLT5xdWV1ZV9jb3VudCsrOw0KIAlpZiAocS0+ cHJvcGVydGllcy5pc19hY3RpdmUpIHsNCkBAIC0xMjMzLDkgKzEyMzMsNyBAQCBzdGF0aWMgaW50 IGNyZWF0ZV9xdWV1ZV9jcHNjaChzdHJ1Y3QgZGV2aWNlX3F1ZXVlX21hbmFnZXIgKmRxbSwgc3Ry dWN0IHF1ZXVlICpxLA0KIG91dF9kZWFsbG9jYXRlX3NkbWFfcXVldWU6DQogCWlmIChxLT5wcm9w ZXJ0aWVzLnR5cGUgPT0gS0ZEX1FVRVVFX1RZUEVfU0RNQSkNCiAJCWRlYWxsb2NhdGVfc2RtYV9x dWV1ZShkcW0sIHEtPnNkbWFfaWQpOw0KLW91dF91bmxvY2s6DQotCWRxbV91bmxvY2soZHFtKTsN Ci0NCitvdXQ6DQogCXJldHVybiByZXR2YWw7DQogfQ0KIA0KQEAgLTEzOTgsOCArMTM5Niw2IEBA IHN0YXRpYyBpbnQgZGVzdHJveV9xdWV1ZV9jcHNjaChzdHJ1Y3QgZGV2aWNlX3F1ZXVlX21hbmFn ZXIgKmRxbSwNCiAJCQlxcGQtPnJlc2V0X3dhdmVmcm9udHMgPSB0cnVlOw0KIAl9DQogDQotCW1x ZF9tZ3ItPnVuaW5pdF9tcWQobXFkX21nciwgcS0+bXFkLCBxLT5tcWRfbWVtX29iaik7DQotDQog CS8qDQogCSAqIFVuY29uZGl0aW9uYWxseSBkZWNyZW1lbnQgdGhpcyBjb3VudGVyLCByZWdhcmRs ZXNzIG9mIHRoZSBxdWV1ZSdzDQogCSAqIHR5cGUNCkBAIC0xNDEwLDYgKzE0MDYsOSBAQCBzdGF0 aWMgaW50IGRlc3Ryb3lfcXVldWVfY3BzY2goc3RydWN0IGRldmljZV9xdWV1ZV9tYW5hZ2VyICpk cW0sDQogDQogCWRxbV91bmxvY2soZHFtKTsNCiANCisJLyogRG8gdW5pbml0X21xZCBhZnRlciBk cW1fdW5sb2NrKGRxbSkgdG8gYXZvaWQgY2lyY3VsYXIgbG9ja2luZyAqLw0KKwltcWRfbWdyLT51 bmluaXRfbXFkKG1xZF9tZ3IsIHEtPm1xZCwgcS0+bXFkX21lbV9vYmopOw0KKw0KIAlyZXR1cm4g cmV0dmFsOw0KIA0KIGZhaWxlZDoNCkBAIC0xNjMxLDcgKzE2MzAsMTEgQEAgc3RhdGljIGludCBw cm9jZXNzX3Rlcm1pbmF0aW9uX2Nwc2NoKHN0cnVjdCBkZXZpY2VfcXVldWVfbWFuYWdlciAqZHFt LA0KIAkJcXBkLT5yZXNldF93YXZlZnJvbnRzID0gZmFsc2U7DQogCX0NCiANCi0JLyogbGFzdGx5 LCBmcmVlIG1xZCByZXNvdXJjZXMgKi8NCisJZHFtX3VubG9jayhkcW0pOw0KKw0KKwkvKiBMYXN0 bHksIGZyZWUgbXFkIHJlc291cmNlcy4NCisJICogRG8gdW5pbml0X21xZCgpIGFmdGVyIGRxbV91 bmxvY2sgdG8gYXZvaWQgY2lyY3VsYXIgbG9ja2luZy4NCisJICovDQogCWxpc3RfZm9yX2VhY2hf ZW50cnlfc2FmZShxLCBuZXh0LCAmcXBkLT5xdWV1ZXNfbGlzdCwgbGlzdCkgew0KIAkJbXFkX21n ciA9IGRxbS0+b3BzLmdldF9tcWRfbWFuYWdlcihkcW0sDQogCQkJZ2V0X21xZF90eXBlX2Zyb21f cXVldWVfdHlwZShxLT5wcm9wZXJ0aWVzLnR5cGUpKTsNCkBAIC0xNjQ1LDcgKzE2NDgsNiBAQCBz dGF0aWMgaW50IHByb2Nlc3NfdGVybWluYXRpb25fY3BzY2goc3RydWN0IGRldmljZV9xdWV1ZV9t YW5hZ2VyICpkcW0sDQogCX0NCiANCiBvdXQ6DQotCWRxbV91bmxvY2soZHFtKTsNCiAJcmV0dXJu IHJldHZhbDsNCiB9DQogDQotLSANCjIuMTcuMQ0KDQpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwphbWQtZ2Z4IG1haWxpbmcgbGlzdAphbWQtZ2Z4QGxpc3Rz LmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xp c3RpbmZvL2FtZC1nZngK