From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?Christian=20K=C3=B6nig?= Subject: [PATCH 2/5] drm/amdgpu: separate VMID flush tracking per hub Date: Wed, 5 Apr 2017 18:21:57 +0200 Message-ID: <1491409320-2448-2-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 RnJvbTogQ2hyaXN0aWFuIEvDtm5pZyA8Y2hyaXN0aWFuLmtvZW5pZ0BhbWQuY29tPgoKUmF0aGVy IGluZWZmaWNpZW50LCBidXQgdGhpcyB3YXkgd2Ugb25seSBuZWVkIHRvIGZsdXNoIHRoZSBjdXJy ZW50IGh1Yi4KCkkgd29uZGVyIGlmIHdlIHNob3VsZG4ndCBtYWtlIG5haWxzIHdpdGggaGVhZHMg YW5kIHNlcGFyYXRlIHRoZSBWTUlEIHJhbmdlcyBjb21wbGV0ZWx5LgoKU2lnbmVkLW9mZi1ieTog Q2hyaXN0aWFuIEvDtm5pZyA8Y2hyaXN0aWFuLmtvZW5pZ0BhbWQuY29tPgotLS0KIGRyaXZlcnMv Z3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV92bS5jIHwgMzYgKysrKysrKysrKysrKysrKysrKyst LS0tLS0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZtLmggfCAg NiArKystLS0KIDIgZmlsZXMgY2hhbmdlZCwgMjQgaW5zZXJ0aW9ucygrKSwgMTggZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ZtLmMg Yi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfdm0uYwppbmRleCA4Nzg1NDIwLi42 ZmQxOTUyIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfdm0u YworKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfdm0uYwpAQCAtNDA2LDYg KzQwNiw3IEBAIGludCBhbWRncHVfdm1fZ3JhYl9pZChzdHJ1Y3QgYW1kZ3B1X3ZtICp2bSwgc3Ry dWN0IGFtZGdwdV9yaW5nICpyaW5nLAogCQkgICAgICBzdHJ1Y3QgYW1kZ3B1X2pvYiAqam9iKQog ewogCXN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2ID0gcmluZy0+YWRldjsKKwl1bnNpZ25lZCB2 bWh1YiA9IHJpbmctPmZ1bmNzLT52bWh1YjsKIAl1aW50NjRfdCBmZW5jZV9jb250ZXh0ID0gYWRl di0+ZmVuY2VfY29udGV4dCArIHJpbmctPmlkeDsKIAlzdHJ1Y3QgZmVuY2UgKnVwZGF0ZXMgPSBz eW5jLT5sYXN0X3ZtX3VwZGF0ZTsKIAlzdHJ1Y3QgYW1kZ3B1X3ZtX2lkICppZCwgKmlkbGU7CkBA IC00ODAsMTcgKzQ4MSwxNyBAQCBpbnQgYW1kZ3B1X3ZtX2dyYWJfaWQoc3RydWN0IGFtZGdwdV92 bSAqdm0sIHN0cnVjdCBhbWRncHVfcmluZyAqcmluZywKIAkJaWYgKGF0b21pYzY0X3JlYWQoJmlk LT5vd25lcikgIT0gdm0tPmNsaWVudF9pZCkKIAkJCWNvbnRpbnVlOwogCi0JCWlmIChqb2ItPnZt X3BkX2FkZHIgIT0gaWQtPnBkX2dwdV9hZGRyKQorCQlpZiAoam9iLT52bV9wZF9hZGRyICE9IGlk LT5wZF9ncHVfYWRkclt2bWh1Yl0pCiAJCQljb250aW51ZTsKIAotCQlpZiAoIWlkLT5sYXN0X2Zs dXNoKQorCQlpZiAoIWlkLT5sYXN0X2ZsdXNoW3ZtaHViXSkKIAkJCWNvbnRpbnVlOwogCi0JCWlm IChpZC0+bGFzdF9mbHVzaC0+Y29udGV4dCAhPSBmZW5jZV9jb250ZXh0ICYmCi0JCSAgICAhZmVu Y2VfaXNfc2lnbmFsZWQoaWQtPmxhc3RfZmx1c2gpKQorCQlpZiAoaWQtPmxhc3RfZmx1c2hbdm1o dWJdLT5jb250ZXh0ICE9IGZlbmNlX2NvbnRleHQgJiYKKwkJICAgICFmZW5jZV9pc19zaWduYWxl ZChpZC0+bGFzdF9mbHVzaFt2bWh1Yl0pKQogCQkJY29udGludWU7CiAKLQkJZmx1c2hlZCAgPSBp ZC0+Zmx1c2hlZF91cGRhdGVzOworCQlmbHVzaGVkICA9IGlkLT5mbHVzaGVkX3VwZGF0ZXNbdm1o dWJdOwogCQlpZiAodXBkYXRlcyAmJgogCQkgICAgKCFmbHVzaGVkIHx8IGZlbmNlX2lzX2xhdGVy KHVwZGF0ZXMsIGZsdXNoZWQpKSkKIAkJCWNvbnRpbnVlOwpAQCAtNTIyLDEzICs1MjMsMTUgQEAg aW50IGFtZGdwdV92bV9ncmFiX2lkKHN0cnVjdCBhbWRncHVfdm0gKnZtLCBzdHJ1Y3QgYW1kZ3B1 X3JpbmcgKnJpbmcsCiAJaWYgKHIpCiAJCWdvdG8gZXJyb3I7CiAKLQlmZW5jZV9wdXQoaWQtPmxh c3RfZmx1c2gpOwotCWlkLT5sYXN0X2ZsdXNoID0gTlVMTDsKKwlmb3IgKGkgPSAwOyBpIDwgQU1E R1BVX01BWF9WTUhVQlM7ICsraSkgeworCQlmZW5jZV9wdXQoaWQtPmxhc3RfZmx1c2hbaV0pOwor CQlpZC0+bGFzdF9mbHVzaFtpXSA9IE5VTEw7CisJfQogCi0JZmVuY2VfcHV0KGlkLT5mbHVzaGVk X3VwZGF0ZXMpOwotCWlkLT5mbHVzaGVkX3VwZGF0ZXMgPSBmZW5jZV9nZXQodXBkYXRlcyk7CisJ ZmVuY2VfcHV0KGlkLT5mbHVzaGVkX3VwZGF0ZXNbdm1odWJdKTsKKwlpZC0+Zmx1c2hlZF91cGRh dGVzW3ZtaHViXSA9IGZlbmNlX2dldCh1cGRhdGVzKTsKIAotCWlkLT5wZF9ncHVfYWRkciA9IGpv Yi0+dm1fcGRfYWRkcjsKKwlpZC0+cGRfZ3B1X2FkZHJbdm1odWJdID0gam9iLT52bV9wZF9hZGRy OwogCWlkLT5jdXJyZW50X2dwdV9yZXNldF9jb3VudCA9IGF0b21pY19yZWFkKCZhZGV2LT5ncHVf cmVzZXRfY291bnRlcik7CiAJbGlzdF9tb3ZlX3RhaWwoJmlkLT5saXN0LCAmYWRldi0+dm1fbWFu YWdlci5pZHNfbHJ1KTsKIAlhdG9taWM2NF9zZXQoJmlkLT5vd25lciwgdm0tPmNsaWVudF9pZCk7 CkBAIC01OTEsNiArNTk0LDcgQEAgaW50IGFtZGdwdV92bV9mbHVzaChzdHJ1Y3QgYW1kZ3B1X3Jp bmcgKnJpbmcsIHN0cnVjdCBhbWRncHVfam9iICpqb2IpCiB7CiAJc3RydWN0IGFtZGdwdV9kZXZp Y2UgKmFkZXYgPSByaW5nLT5hZGV2OwogCXN0cnVjdCBhbWRncHVfdm1faWQgKmlkID0gJmFkZXYt PnZtX21hbmFnZXIuaWRzW2pvYi0+dm1faWRdOworCXVuc2lnbmVkIHZtaHViID0gcmluZy0+ZnVu Y3MtPnZtaHViOwogCWJvb2wgZ2RzX3N3aXRjaF9uZWVkZWQgPSByaW5nLT5mdW5jcy0+ZW1pdF9n ZHNfc3dpdGNoICYmICgKIAkJaWQtPmdkc19iYXNlICE9IGpvYi0+Z2RzX2Jhc2UgfHwKIAkJaWQt Pmdkc19zaXplICE9IGpvYi0+Z2RzX3NpemUgfHwKQEAgLTYyOSw4ICs2MzMsOCBAQCBpbnQgYW1k Z3B1X3ZtX2ZsdXNoKHN0cnVjdCBhbWRncHVfcmluZyAqcmluZywgc3RydWN0IGFtZGdwdV9qb2Ig KmpvYikKIAkJCXJldHVybiByOwogCiAJCW11dGV4X2xvY2soJmFkZXYtPnZtX21hbmFnZXIubG9j ayk7Ci0JCWZlbmNlX3B1dChpZC0+bGFzdF9mbHVzaCk7Ci0JCWlkLT5sYXN0X2ZsdXNoID0gZmVu Y2U7CisJCWZlbmNlX3B1dChpZC0+bGFzdF9mbHVzaFt2bWh1Yl0pOworCQlpZC0+bGFzdF9mbHVz aFt2bWh1Yl0gPSBmZW5jZTsKIAkJbXV0ZXhfdW5sb2NrKCZhZGV2LT52bV9tYW5hZ2VyLmxvY2sp OwogCX0KIApAQCAtMjIzNCwxMyArMjIzOCwxNSBAQCB2b2lkIGFtZGdwdV92bV9tYW5hZ2VyX2lu aXQoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYpCiAgKi8KIHZvaWQgYW1kZ3B1X3ZtX21hbmFn ZXJfZmluaShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldikKIHsKLQl1bnNpZ25lZCBpOworCXVu c2lnbmVkIGksIGo7CiAKIAlmb3IgKGkgPSAwOyBpIDwgQU1ER1BVX05VTV9WTTsgKytpKSB7CiAJ CXN0cnVjdCBhbWRncHVfdm1faWQgKmlkID0gJmFkZXYtPnZtX21hbmFnZXIuaWRzW2ldOwogCiAJ CWFtZGdwdV9zeW5jX2ZyZWUoJmFkZXYtPnZtX21hbmFnZXIuaWRzW2ldLmFjdGl2ZSk7Ci0JCWZl bmNlX3B1dChpZC0+Zmx1c2hlZF91cGRhdGVzKTsKLQkJZmVuY2VfcHV0KGlkLT5sYXN0X2ZsdXNo KTsKKwkJZm9yIChqID0gMDsgaiA8IEFNREdQVV9NQVhfVk1IVUJTOyArK2opIHsKKwkJCWZlbmNl X3B1dChpZC0+Zmx1c2hlZF91cGRhdGVzW2pdKTsKKwkJCWZlbmNlX3B1dChpZC0+bGFzdF9mbHVz aFtqXSk7CisJCX0KIAl9CiB9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdw dS9hbWRncHVfdm0uaCBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV92bS5oCmlu ZGV4IDdkMDEzNzIuLmQ2MWRkODMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1k Z3B1L2FtZGdwdV92bS5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV92 bS5oCkBAIC0xMzIsMTIgKzEzMiwxMiBAQCBzdHJ1Y3QgYW1kZ3B1X3ZtIHsKIHN0cnVjdCBhbWRn cHVfdm1faWQgewogCXN0cnVjdCBsaXN0X2hlYWQJbGlzdDsKIAlzdHJ1Y3QgYW1kZ3B1X3N5bmMJ YWN0aXZlOwotCXN0cnVjdCBmZW5jZQkJKmxhc3RfZmx1c2g7CisJc3RydWN0IGZlbmNlCQkqbGFz dF9mbHVzaFtBTURHUFVfTUFYX1ZNSFVCU107CiAJYXRvbWljNjRfdAkJb3duZXI7CiAKLQl1aW50 NjRfdAkJcGRfZ3B1X2FkZHI7CisJdWludDY0X3QJCXBkX2dwdV9hZGRyW0FNREdQVV9NQVhfVk1I VUJTXTsKIAkvKiBsYXN0IGZsdXNoZWQgUEQvUFQgdXBkYXRlICovCi0Jc3RydWN0IGZlbmNlCQkq Zmx1c2hlZF91cGRhdGVzOworCXN0cnVjdCBmZW5jZQkJKmZsdXNoZWRfdXBkYXRlc1tBTURHUFVf TUFYX1ZNSFVCU107CiAKIAl1aW50MzJfdCAgICAgICAgICAgICAgICBjdXJyZW50X2dwdV9yZXNl dF9jb3VudDsKIAotLSAKMi41LjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCmFtZC1nZnggbWFpbGluZyBsaXN0CmFtZC1nZnhAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vYW1k LWdmeAo=