From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rex Zhu Subject: [PATCH 6/9] drm/amdgpu: Create csa per ctx Date: Thu, 6 Dec 2018 19:32:34 +0800 Message-ID: <1544095957-21101-6-git-send-email-Rex.Zhu@amd.com> References: <1544095957-21101-1-git-send-email-Rex.Zhu@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1544095957-21101-1-git-send-email-Rex.Zhu-5C7GfCeVMHo@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 Cc: Rex Zhu Y3JlYXRlIGFuZCBtYXAgIGNzYSBmb3IgZ2Z4L3NkbWEgZW5naW5lIHRvIHNhdmUgdGhlCm1pZGRs ZSBjb21tYW5kIGJ1ZmZlciB3aGVuIGdwdSBwcmVlbXB0aW9uIHRyaWdnZXJlZC4KClNpZ25lZC1v ZmYtYnk6IFJleCBaaHUgPFJleC5aaHVAYW1kLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vYW1k L2FtZGdwdS9hbWRncHVfY3MuYyAgfCAgOSArKystLS0KIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1k Z3B1L2FtZGdwdV9jdHguYyB8IDU1ICsrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLQog ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2N0eC5oIHwgIDQgKysrCiAzIGZpbGVz IGNoYW5nZWQsIDU2IGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9jcy5jIGIvZHJpdmVycy9ncHUvZHJt L2FtZC9hbWRncHUvYW1kZ3B1X2NzLmMKaW5kZXggMmYxODljNWMuLjZmN2EyZGQgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9jcy5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9jcy5jCkBAIC04MjQsOCArODI0LDkgQEAgc3RhdGlj IGludCBhbWRncHVfY3Nfdm1faGFuZGxpbmcoc3RydWN0IGFtZGdwdV9jc19wYXJzZXIgKnApCiAJ c3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYgPSBwLT5hZGV2OwogCXN0cnVjdCBhbWRncHVfdm0g KnZtID0gJmZwcml2LT52bTsKIAlzdHJ1Y3QgYW1kZ3B1X2JvX2xpc3RfZW50cnkgKmU7Ci0Jc3Ry dWN0IGFtZGdwdV9ib192YSAqYm9fdmE7CisJc3RydWN0IGFtZGdwdV9ib192YSAqYm9fdmEgPSBO VUxMOwogCXN0cnVjdCBhbWRncHVfYm8gKmJvOworCXN0cnVjdCBhbWRncHVfY3R4ICpjdHggPSBw LT5jdHg7CiAJaW50IHI7CiAKIAkvKiBPbmx5IGZvciBVVkQvVkNFIFZNIGVtdWxhdGlvbiAqLwpA QCAtOTA2LDExICs5MDcsMTEgQEAgc3RhdGljIGludCBhbWRncHVfY3Nfdm1faGFuZGxpbmcoc3Ry dWN0IGFtZGdwdV9jc19wYXJzZXIgKnApCiAJaWYgKHIpCiAJCXJldHVybiByOwogCi0JaWYgKGFt ZGdwdV9zcmlvdl92ZihhZGV2KSkgeworCWJvX3ZhID0gYW1kZ3B1X3NyaW92X3ZmKGFkZXYpID8g ZnByaXYtPmNzYV92YSA6IGN0eC0+Y3NhX3ZhOworCisJaWYgKGJvX3ZhKSB7CiAJCXN0cnVjdCBk bWFfZmVuY2UgKmY7CiAKLQkJYm9fdmEgPSBmcHJpdi0+Y3NhX3ZhOwotCQlCVUdfT04oIWJvX3Zh KTsKIAkJciA9IGFtZGdwdV92bV9ib191cGRhdGUoYWRldiwgYm9fdmEsIGZhbHNlKTsKIAkJaWYg KHIpCiAJCQlyZXR1cm4gcjsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1 L2FtZGdwdV9jdHguYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9jdHguYwpp bmRleCAzYWI3MjYyLi43MTgzMWFhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2Ft ZGdwdS9hbWRncHVfY3R4LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1 X2N0eC5jCkBAIC03MSw3ICs3MSw3IEBAIHN0YXRpYyBpbnQgYW1kZ3B1X2N0eF9pbml0KHN0cnVj dCBhbWRncHVfZGV2aWNlICphZGV2LAogCQkJICAgc3RydWN0IGFtZGdwdV9mcHJpdiAqZnByaXYs CiAJCQkgICBlbnVtIGRybV9zY2hlZF9wcmlvcml0eSBwcmlvcml0eSwKIAkJCSAgIHN0cnVjdCBk cm1fZmlsZSAqZmlscCwKLQkJCSAgIHN0cnVjdCBhbWRncHVfY3R4ICpjdHgpCisJCQkgICBzdHJ1 Y3QgYW1kZ3B1X2N0eCAqY3R4LCB1aW50MzJfdCBpZCkKIHsKIAl1bnNpZ25lZCBudW1fZW50aXRp ZXMgPSBhbWRncHV0X2N0eF90b3RhbF9udW1fZW50aXRpZXMoKTsKIAl1aW50NjRfdCBjc2FfYWRk cjsKQEAgLTg3LDIwICs4NywzNiBAQCBzdGF0aWMgaW50IGFtZGdwdV9jdHhfaW5pdChzdHJ1Y3Qg YW1kZ3B1X2RldmljZSAqYWRldiwKIAogCW1lbXNldChjdHgsIDAsIHNpemVvZigqY3R4KSk7CiAJ Y3R4LT5hZGV2ID0gYWRldjsKKwljc2FfYWRkciA9IGFtZGdwdV9jc2FfdmFkZHIoYWRldiwgaWQp ICYgQU1ER1BVX0dNQ19IT0xFX01BU0s7CisJY3R4LT5yZXN2X3NwYWNlX2lkID0gaWQ7CiAKIAlp ZiAoYW1kZ3B1X3NyaW92X3ZmKGFkZXYpKSB7CiAJCWlmICghZnByaXYtPmNzYV92YSkgewotCQkJ Y3NhX2FkZHIgPSBhbWRncHVfY3NhX3ZhZGRyKGFkZXYsIDEpICYgQU1ER1BVX0dNQ19IT0xFX01B U0s7CiAJCQlyID0gYW1kZ3B1X21hcF9zdGF0aWNfY3NhKGFkZXYsICZmcHJpdi0+dm0sCi0JCQkJ CQlhZGV2LT52aXJ0LmNzYV9vYmosCi0JCQkJCQkmZnByaXYtPmNzYV92YSwKLQkJCQkJCWNzYV9h ZGRyLAotCQkJCQkJQU1ER1BVX0NTQV9TSVpFKTsKKwkJCQkJCQlhZGV2LT52aXJ0LmNzYV9vYmos CisJCQkJCQkJJmZwcml2LT5jc2FfdmEsCisJCQkJCQkJY3NhX2FkZHIsCisJCQkJCQkJQU1ER1BV X0NTQV9TSVpFKTsKIAkJCWlmIChyKSB7CiAJCQkJYW1kZ3B1X2ZyZWVfc3RhdGljX2NzYSgmYWRl di0+dmlydC5jc2Ffb2JqKTsKIAkJCQlyZXR1cm4gLUVJTlZBTDsKIAkJCX0KIAkJfQorCX0gZWxz ZSB7CisJCXIgPSBhbWRncHVfYWxsb2NhdGVfc3RhdGljX2NzYShhZGV2LCAmY3R4LT5jc2FfYm8s CisJCQkJCQlBTURHUFVfR0VNX0RPTUFJTl9HVFQsCisJCQkJCQlBTURHUFVfQ1NBX1NJWkUpOwor CQlpZiAocikgeworCQkJRFJNX0VSUk9SKCJhbGxvY2F0ZSBDU0EgZmFpbGVkICVkXG4iLCByKTsK KwkJCXJldHVybiByOworCQl9CisJCXIgPSBhbWRncHVfbWFwX3N0YXRpY19jc2EoYWRldiwgJmZw cml2LT52bSwgY3R4LT5jc2FfYm8sCisJCQkJCQkmY3R4LT5jc2FfdmEsIGNzYV9hZGRyLAorCQkJ CQkJQU1ER1BVX0NTQV9TSVpFKTsKKwkJaWYgKHIpIHsKKwkJCWFtZGdwdV9mcmVlX3N0YXRpY19j c2EoJmN0eC0+Y3NhX2JvKTsKKwkJCXJldHVybiAtRUlOVkFMOworCQl9CiAJfQogCiAJY3R4LT5m ZW5jZXMgPSBrY2FsbG9jKGFtZGdwdV9zY2hlZF9qb2JzICogbnVtX2VudGl0aWVzLApAQCAtMjIx LDYgKzIzNywxNiBAQCBzdGF0aWMgdm9pZCBhbWRncHVfY3R4X2Zpbmkoc3RydWN0IGtyZWYgKnJl ZikKIAlrZnJlZShjdHgtPmZlbmNlcyk7CiAJa2ZyZWUoY3R4LT5lbnRpdGllc1swXSk7CiAKKwlp ZiAoIWFtZGdwdV9zcmlvdl92ZihhZGV2KSAmJiBjdHgtPmNzYV9ibykgeworCQlCVUdfT04oYW1k Z3B1X2JvX3Jlc2VydmUoY3R4LT5jc2FfYm8sIHRydWUpKTsKKwkJYW1kZ3B1X3ZtX2JvX3Jtdihh ZGV2LCBjdHgtPmNzYV92YSk7CisJCWN0eC0+Y3NhX3ZhID0gTlVMTDsKKwkJYW1kZ3B1X2JvX3Vu cmVzZXJ2ZShjdHgtPmNzYV9ibyk7CisJCWFtZGdwdV9mcmVlX3N0YXRpY19jc2EoJmN0eC0+Y3Nh X2JvKTsKKwkJaWYgKGN0eC0+Y3R4X21ncikKKwkJCV9fY2xlYXJfYml0KGN0eC0+cmVzdl9zcGFj ZV9pZCAtIDEsIGN0eC0+Y3R4X21nci0+cmVzdl92bV9iaXRtYXApOworCX0KKwogCW11dGV4X2Rl c3Ryb3koJmN0eC0+bG9jayk7CiAKIAlrZnJlZShjdHgpOwpAQCAtMjU4LDYgKzI4NCw3IEBAIHN0 YXRpYyBpbnQgYW1kZ3B1X2N0eF9hbGxvYyhzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwKIAlz dHJ1Y3QgYW1kZ3B1X2N0eF9tZ3IgKm1nciA9ICZmcHJpdi0+Y3R4X21ncjsKIAlzdHJ1Y3QgYW1k Z3B1X2N0eCAqY3R4OwogCWludCByOworCXUzMiByZXN2X3NwYWNlX2lkID0gMTsKIAogCWN0eCA9 IGttYWxsb2Moc2l6ZW9mKCpjdHgpLCBHRlBfS0VSTkVMKTsKIAlpZiAoIWN0eCkKQEAgLTI3MCwx NCArMjk3LDI2IEBAIHN0YXRpYyBpbnQgYW1kZ3B1X2N0eF9hbGxvYyhzdHJ1Y3QgYW1kZ3B1X2Rl dmljZSAqYWRldiwKIAkJa2ZyZWUoY3R4KTsKIAkJcmV0dXJuIHI7CiAJfQotCiAJKmlkID0gKHVp bnQzMl90KXI7Ci0JciA9IGFtZGdwdV9jdHhfaW5pdChhZGV2LCBmcHJpdiwgcHJpb3JpdHksIGZp bHAsIGN0eCk7CisKKwlpZiAoIWFtZGdwdV9zcmlvdl92ZihhZGV2KSkgeworCQlyZXN2X3NwYWNl X2lkID0gZmluZF9maXJzdF96ZXJvX2JpdChtZ3ItPnJlc3Zfdm1fYml0bWFwLCBBTURHUFVfVk1f TUFYX05VTV9DVFgpOworCQlpZiAocmVzdl9zcGFjZV9pZCA8IEFNREdQVV9WTV9NQVhfTlVNX0NU WCkKKwkJCV9fc2V0X2JpdChyZXN2X3NwYWNlX2lkLCBtZ3ItPnJlc3Zfdm1fYml0bWFwKTsKKwkJ ZWxzZQorCQkJcmV0dXJuIC1FTk9NRU07CisJCXJlc3Zfc3BhY2VfaWQgKz0gMTsKKwl9CisKKwly ID0gYW1kZ3B1X2N0eF9pbml0KGFkZXYsIGZwcml2LCBwcmlvcml0eSwgZmlscCwgY3R4LCByZXN2 X3NwYWNlX2lkKTsKIAlpZiAocikgewogCQlpZHJfcmVtb3ZlKCZtZ3ItPmN0eF9oYW5kbGVzLCAq aWQpOwogCQkqaWQgPSAwOwogCQlrZnJlZShjdHgpOworCQltdXRleF91bmxvY2soJm1nci0+bG9j ayk7CisJCXJldHVybiByOwogCX0KKwljdHgtPmN0eF9tZ3IgPSBtZ3I7CiAJbXV0ZXhfdW5sb2Nr KCZtZ3ItPmxvY2spOwogCXJldHVybiByOwogfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2FtZC9hbWRncHUvYW1kZ3B1X2N0eC5oIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1k Z3B1X2N0eC5oCmluZGV4IDk0YWM5NTEuLmU0MzRhNmMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9jdHguaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2Ft ZGdwdS9hbWRncHVfY3R4LmgKQEAgLTM4LDYgKzM4LDkgQEAgc3RydWN0IGFtZGdwdV9jdHhfZW50 aXR5IHsKIHN0cnVjdCBhbWRncHVfY3R4IHsKIAlzdHJ1Y3Qga3JlZgkJCXJlZmNvdW50OwogCXN0 cnVjdCBhbWRncHVfZGV2aWNlCQkqYWRldjsKKwlzdHJ1Y3QgYW1kZ3B1X2N0eF9tZ3IJCSpjdHhf bWdyOworCXN0cnVjdCBhbWRncHVfYm8JCSpjc2FfYm87CisJc3RydWN0IGFtZGdwdV9ib192YQkJ KmNzYV92YTsKIAogCXVuc2lnbmVkCQkJcmVzZXRfY291bnRlcjsKIAl1bnNpZ25lZAkJCXJlc2V0 X2NvdW50ZXJfcXVlcnk7CkBAIC01MCw2ICs1Myw3IEBAIHN0cnVjdCBhbWRncHVfY3R4IHsKIAll bnVtIGRybV9zY2hlZF9wcmlvcml0eQkJb3ZlcnJpZGVfcHJpb3JpdHk7CiAJc3RydWN0IG11dGV4 CQkJbG9jazsKIAlhdG9taWNfdAkJCWd1aWx0eTsKKwl1MzIJCQkJcmVzdl9zcGFjZV9pZDsKIH07 CiAKIHN0cnVjdCBhbWRncHVfY3R4X21nciB7Ci0tIAoxLjkuMQoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KYW1kLWdmeCBtYWlsaW5nIGxpc3QKYW1kLWdm eEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFp bG1hbi9saXN0aW5mby9hbWQtZ2Z4Cg==