From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?Christian=20K=C3=B6nig?= Subject: [PATCH 5/5] drm/amdgpu: allow concurrent VM flushes Date: Wed, 5 Apr 2017 18:22:00 +0200 Message-ID: <1491409320-2448-5-git-send-email-deathsimple@vodafone.de> References: <1491409320-2448-1-git-send-email-deathsimple@vodafone.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1491409320-2448-1-git-send-email-deathsimple-ANTagKRnAhcb1SvskN2V4Q@public.gmane.org> 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 RnJvbTogQ2hyaXN0aWFuIEvDtm5pZyA8Y2hyaXN0aWFuLmtvZW5pZ0BhbWQuY29tPgoKRW5hYmxl IGNvbmN1cnJlbnQgVk0gZmx1c2hlcyBmb3IgVmVnYTEwLgoKU2lnbmVkLW9mZi1ieTogQ2hyaXN0 aWFuIEvDtm5pZyA8Y2hyaXN0aWFuLmtvZW5pZ0BhbWQuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2Ry bS9hbWQvYW1kZ3B1L2FtZGdwdV92bS5jIHwgNTEgKysrKysrKysrKysrKysrKysrKy0tLS0tLS0t LS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDI4IGluc2VydGlvbnMoKyksIDIzIGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV92bS5jIGIv ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZtLmMKaW5kZXggNmZkMTk1Mi4uMWJi MmY4YSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZtLmMK KysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZtLmMKQEAgLTQ2MiwxMSAr NDYyLDEyIEBAIGludCBhbWRncHVfdm1fZ3JhYl9pZChzdHJ1Y3QgYW1kZ3B1X3ZtICp2bSwgc3Ry dWN0IGFtZGdwdV9yaW5nICpyaW5nLAogCX0KIAlrZnJlZShmZW5jZXMpOwogCi0Jam9iLT52bV9u ZWVkc19mbHVzaCA9IHRydWU7CisJam9iLT52bV9uZWVkc19mbHVzaCA9IGZhbHNlOwogCS8qIENo ZWNrIGlmIHdlIGNhbiB1c2UgYSBWTUlEIGFscmVhZHkgYXNzaWduZWQgdG8gdGhpcyBWTSAqLwog CWkgPSByaW5nLT5pZHg7CiAJZG8gewogCQlzdHJ1Y3QgZmVuY2UgKmZsdXNoZWQ7CisJCWJvb2wg bmVlZHNfZmx1c2ggPSBmYWxzZTsKIAogCQlpZCA9IHZtLT5pZHNbaSsrXTsKIAkJaWYgKGkgPT0g QU1ER1BVX01BWF9SSU5HUykKQEAgLTQ4NCwxNiArNDg1LDE3IEBAIGludCBhbWRncHVfdm1fZ3Jh Yl9pZChzdHJ1Y3QgYW1kZ3B1X3ZtICp2bSwgc3RydWN0IGFtZGdwdV9yaW5nICpyaW5nLAogCQlp ZiAoam9iLT52bV9wZF9hZGRyICE9IGlkLT5wZF9ncHVfYWRkclt2bWh1Yl0pCiAJCQljb250aW51 ZTsKIAotCQlpZiAoIWlkLT5sYXN0X2ZsdXNoW3ZtaHViXSkKLQkJCWNvbnRpbnVlOwotCi0JCWlm IChpZC0+bGFzdF9mbHVzaFt2bWh1Yl0tPmNvbnRleHQgIT0gZmVuY2VfY29udGV4dCAmJgotCQkg ICAgIWZlbmNlX2lzX3NpZ25hbGVkKGlkLT5sYXN0X2ZsdXNoW3ZtaHViXSkpCi0JCQljb250aW51 ZTsKKwkJaWYgKCFpZC0+bGFzdF9mbHVzaFt2bWh1Yl0gfHwKKwkJICAgIChpZC0+bGFzdF9mbHVz aFt2bWh1Yl0tPmNvbnRleHQgIT0gZmVuY2VfY29udGV4dCAmJgorCQkgICAgICFmZW5jZV9pc19z aWduYWxlZChpZC0+bGFzdF9mbHVzaFt2bWh1Yl0pKSkKKwkJCW5lZWRzX2ZsdXNoID0gdHJ1ZTsK IAogCQlmbHVzaGVkICA9IGlkLT5mbHVzaGVkX3VwZGF0ZXNbdm1odWJdOwotCQlpZiAodXBkYXRl cyAmJgotCQkgICAgKCFmbHVzaGVkIHx8IGZlbmNlX2lzX2xhdGVyKHVwZGF0ZXMsIGZsdXNoZWQp KSkKKwkJaWYgKHVwZGF0ZXMgJiYgKCFmbHVzaGVkIHx8IGZlbmNlX2lzX2xhdGVyKHVwZGF0ZXMs IGZsdXNoZWQpKSkKKwkJCW5lZWRzX2ZsdXNoID0gdHJ1ZTsKKworCQkvKiBDb25jdXJyZW50IGZs dXNoZXMgYXJlIG9ubHkgcG9zc2libGUgc3RhcnRpbmcgd2l0aCBWZWdhMTAgKi8KKwkJaWYgKGFk ZXYtPmFzaWNfdHlwZSA8IENISVBfVkVHQTEwICYmIG5lZWRzX2ZsdXNoKQogCQkJY29udGludWU7 CiAKIAkJLyogR29vZCB3ZSBjYW4gdXNlIHRoaXMgVk1JRC4gUmVtZW1iZXIgdGhpcyBzdWJtaXNz aW9uIGFzCkBAIC01MDMsMTUgKzUwNSwxNSBAQCBpbnQgYW1kZ3B1X3ZtX2dyYWJfaWQoc3RydWN0 IGFtZGdwdV92bSAqdm0sIHN0cnVjdCBhbWRncHVfcmluZyAqcmluZywKIAkJaWYgKHIpCiAJCQln b3RvIGVycm9yOwogCi0JCWxpc3RfbW92ZV90YWlsKCZpZC0+bGlzdCwgJmFkZXYtPnZtX21hbmFn ZXIuaWRzX2xydSk7Ci0JCXZtLT5pZHNbcmluZy0+aWR4XSA9IGlkOwotCi0JCWpvYi0+dm1faWQg PSBpZCAtIGFkZXYtPnZtX21hbmFnZXIuaWRzOwotCQlqb2ItPnZtX25lZWRzX2ZsdXNoID0gZmFs c2U7Ci0JCXRyYWNlX2FtZGdwdV92bV9ncmFiX2lkKHZtLCByaW5nLT5pZHgsIGpvYik7CisJCWlm ICh1cGRhdGVzICYmICghZmx1c2hlZCB8fCBmZW5jZV9pc19sYXRlcih1cGRhdGVzLCBmbHVzaGVk KSkpIHsKKwkJCWZlbmNlX3B1dChpZC0+Zmx1c2hlZF91cGRhdGVzW3ZtaHViXSk7CisJCQlpZC0+ Zmx1c2hlZF91cGRhdGVzW3ZtaHViXSA9IGZlbmNlX2dldCh1cGRhdGVzKTsKKwkJfQogCi0JCW11 dGV4X3VubG9jaygmYWRldi0+dm1fbWFuYWdlci5sb2NrKTsKLQkJcmV0dXJuIDA7CisJCWlmIChu ZWVkc19mbHVzaCkKKwkJCWdvdG8gbmVlZHNfZmx1c2g7CisJCWVsc2UKKwkJCWdvdG8gbm9fZmx1 c2hfbmVlZGVkOwogCiAJfSB3aGlsZSAoaSAhPSByaW5nLT5pZHgpOwogCkBAIC01MjMsMTggKzUy NSwyMSBAQCBpbnQgYW1kZ3B1X3ZtX2dyYWJfaWQoc3RydWN0IGFtZGdwdV92bSAqdm0sIHN0cnVj dCBhbWRncHVfcmluZyAqcmluZywKIAlpZiAocikKIAkJZ290byBlcnJvcjsKIAorCWlkLT5wZF9n cHVfYWRkclt2bWh1Yl0gPSBqb2ItPnZtX3BkX2FkZHI7CisJZmVuY2VfcHV0KGlkLT5mbHVzaGVk X3VwZGF0ZXNbdm1odWJdKTsKKwlpZC0+Zmx1c2hlZF91cGRhdGVzW3ZtaHViXSA9IGZlbmNlX2dl dCh1cGRhdGVzKTsKKwlpZC0+Y3VycmVudF9ncHVfcmVzZXRfY291bnQgPSBhdG9taWNfcmVhZCgm YWRldi0+Z3B1X3Jlc2V0X2NvdW50ZXIpOworCWF0b21pYzY0X3NldCgmaWQtPm93bmVyLCB2bS0+ Y2xpZW50X2lkKTsKKworbmVlZHNfZmx1c2g6CisJam9iLT52bV9uZWVkc19mbHVzaCA9IHRydWU7 CiAJZm9yIChpID0gMDsgaSA8IEFNREdQVV9NQVhfVk1IVUJTOyArK2kpIHsKIAkJZmVuY2VfcHV0 KGlkLT5sYXN0X2ZsdXNoW2ldKTsKIAkJaWQtPmxhc3RfZmx1c2hbaV0gPSBOVUxMOwogCX0KIAot CWZlbmNlX3B1dChpZC0+Zmx1c2hlZF91cGRhdGVzW3ZtaHViXSk7Ci0JaWQtPmZsdXNoZWRfdXBk YXRlc1t2bWh1Yl0gPSBmZW5jZV9nZXQodXBkYXRlcyk7Ci0KLQlpZC0+cGRfZ3B1X2FkZHJbdm1o dWJdID0gam9iLT52bV9wZF9hZGRyOwotCWlkLT5jdXJyZW50X2dwdV9yZXNldF9jb3VudCA9IGF0 b21pY19yZWFkKCZhZGV2LT5ncHVfcmVzZXRfY291bnRlcik7Citub19mbHVzaF9uZWVkZWQ6CiAJ bGlzdF9tb3ZlX3RhaWwoJmlkLT5saXN0LCAmYWRldi0+dm1fbWFuYWdlci5pZHNfbHJ1KTsKLQlh dG9taWM2NF9zZXQoJmlkLT5vd25lciwgdm0tPmNsaWVudF9pZCk7CiAJdm0tPmlkc1tyaW5nLT5p ZHhdID0gaWQ7CiAKIAlqb2ItPnZtX2lkID0gaWQgLSBhZGV2LT52bV9tYW5hZ2VyLmlkczsKLS0g CjIuNS4wCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwph bWQtZ2Z4IG1haWxpbmcgbGlzdAphbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczov L2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2FtZC1nZngK