From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andres Rodriguez Subject: [PATCH 18/25] drm/amdgpu: add parameter to allocate high priority contexts v7 Date: Tue, 4 Apr 2017 18:05:44 -0400 Message-ID: <20170404220551.8669-19-andresx7@gmail.com> References: <20170404220551.8669-1-andresx7@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170404220551.8669-1-andresx7-Re5JQEeQqe8AvxtiuMwx3w@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: andresx7-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org QWRkIGEgbmV3IGNvbnRleHQgY3JlYXRpb24gcGFyYW1ldGVyIHRvIGV4cHJlc3MgYSBnbG9iYWwg Y29udGV4dCBwcmlvcml0eS4KCkNvbnRleHRzIGFsbG9jYXRlZCB3aXRoIEFNREdQVV9DVFhfUFJJ T1JJVFlfSElHSCB3aWxsIHJlY2VpdmUgaGlnaGVyCnByaW9yaXR5IHRvIHNjaGVkdWxlIHRoZWly IHdvcmsgdGhhbiBBTURHUFVfQ1RYX1BSSU9SSVRZX05PUk1BTAooZGVmYXVsdCkgY29udGV4dHMu Cgp2MjogSW5zdGVhZCBvZiB1c2luZyBmbGFncywgcmVwdXJwb3NlIF9fcGFkCnYzOiBTd2FwIGVu dW0gdmFsdWVzIG9mIF9OT1JNQUwgX0hJR0ggZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5CnY0 OiBWYWxpZGF0ZSB1c2VybW9kZSBwcmlvcml0eSBhbmQgc3RvcmUgaXQKdjU6IE1vdmUgcHJpb3Jp dHkgdmFsaWRhdGlvbiBpbnRvIGFtZGdwdV9jdHhfaW9jdGwoKSwgaGVhZGxpbmUgcmV3b3JkCnY2 OiBhZGQgVUFQSSBub3RlIHJlZ2FyZGluZyBwcmlvcml0aWVzIHJlcXVpcmluZyBDQVBfU1lTX0FE TUlOCnY3OiByZW1vdmUgY3R4LT5wcmlvcml0eQoKUmV2aWV3ZWQtYnk6IEVtaWwgVmVsaWtvdiA8 ZW1pbC5sLnZlbGlrb3ZAZ21haWwuY29tPgpSZXZpZXdlZC1ieTogQ2hyaXN0aWFuIEvDtm5pZyA8 Y2hyaXN0aWFuLmtvZW5pZ0BhbWQuY29tPgpTaWduZWQtb2ZmLWJ5OiBBbmRyZXMgUm9kcmlndWV6 IDxhbmRyZXN4N0BnbWFpbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1k Z3B1X2N0eC5jICAgICAgIHwgMzYgKysrKysrKysrKysrKysrKysrKysrKysrLS0tCiBkcml2ZXJz L2dwdS9kcm0vYW1kL3NjaGVkdWxlci9ncHVfc2NoZWR1bGVyLmggfCAgMSArCiBpbmNsdWRlL3Vh cGkvZHJtL2FtZGdwdV9kcm0uaCAgICAgICAgICAgICAgICAgfCAgOCArKysrKy0KIDMgZmlsZXMg Y2hhbmdlZCwgNDAgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfY3R4LmMgYi9kcml2ZXJzL2dwdS9kcm0v YW1kL2FtZGdwdS9hbWRncHVfY3R4LmMKaW5kZXggYjM4ZWRhYS4uOWVkY2Y3ZiAxMDA2NDQKLS0t IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2N0eC5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9jdHguYwpAQCAtMTgsMjUgKzE4LDMzIEBACiAgKiBP VEhFUiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9S IE9USEVSV0lTRSwKICAqIEFSSVNJTkcgRlJPTSwgT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lU SCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUgogICogT1RIRVIgREVBTElOR1MgSU4gVEhFIFNP RlRXQVJFLgogICoKICAqIEF1dGhvcnM6IG1vbmsgbGl1IDxtb25rLmxpdUBhbWQuY29tPgogICov CiAKICNpbmNsdWRlIDxkcm0vZHJtUC5oPgogI2luY2x1ZGUgImFtZGdwdS5oIgogCi1zdGF0aWMg aW50IGFtZGdwdV9jdHhfaW5pdChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwgc3RydWN0IGFt ZGdwdV9jdHggKmN0eCkKK3N0YXRpYyBpbnQgYW1kZ3B1X2N0eF9pbml0KHN0cnVjdCBhbWRncHVf ZGV2aWNlICphZGV2LAorCQkJICAgZW51bSBhbWRfc2NoZWRfcHJpb3JpdHkgcHJpb3JpdHksCisJ CQkgICBzdHJ1Y3QgYW1kZ3B1X2N0eCAqY3R4KQogewogCXVuc2lnbmVkIGksIGo7CiAJaW50IHI7 CiAKKwlpZiAocHJpb3JpdHkgPCAwIHx8IHByaW9yaXR5ID49IEFNRF9TQ0hFRF9NQVhfUFJJT1JJ VFkpCisJCXJldHVybiAtRUlOVkFMOworCisJaWYgKHByaW9yaXR5ID09IEFNRF9TQ0hFRF9QUklP UklUWV9ISUdIICYmICFjYXBhYmxlKENBUF9TWVNfQURNSU4pKQorCQlyZXR1cm4gLUVBQ0NFUzsK KwogCW1lbXNldChjdHgsIDAsIHNpemVvZigqY3R4KSk7CiAJY3R4LT5hZGV2ID0gYWRldjsKIAlr cmVmX2luaXQoJmN0eC0+cmVmY291bnQpOwogCXNwaW5fbG9ja19pbml0KCZjdHgtPnJpbmdfbG9j ayk7CiAJY3R4LT5mZW5jZXMgPSBrY2FsbG9jKGFtZGdwdV9zY2hlZF9qb2JzICogQU1ER1BVX01B WF9SSU5HUywKIAkJCSAgICAgIHNpemVvZihzdHJ1Y3QgZG1hX2ZlbmNlKiksIEdGUF9LRVJORUwp OwogCWlmICghY3R4LT5mZW5jZXMpCiAJCXJldHVybiAtRU5PTUVNOwogCiAJZm9yIChpID0gMDsg aSA8IEFNREdQVV9NQVhfUklOR1M7ICsraSkgewpAQCAtNDQsMjEgKzUyLDIxIEBAIHN0YXRpYyBp bnQgYW1kZ3B1X2N0eF9pbml0KHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LCBzdHJ1Y3QgYW1k Z3B1X2N0eCAqY3R4KQogCQljdHgtPnJpbmdzW2ldLmZlbmNlcyA9ICZjdHgtPmZlbmNlc1thbWRn cHVfc2NoZWRfam9icyAqIGldOwogCX0KIAogCWN0eC0+cmVzZXRfY291bnRlciA9IGF0b21pY19y ZWFkKCZhZGV2LT5ncHVfcmVzZXRfY291bnRlcik7CiAKIAkvKiBjcmVhdGUgY29udGV4dCBlbnRp dHkgZm9yIGVhY2ggcmluZyAqLwogCWZvciAoaSA9IDA7IGkgPCBhZGV2LT5udW1fcmluZ3M7IGkr KykgewogCQlzdHJ1Y3QgYW1kZ3B1X3JpbmcgKnJpbmcgPSBhZGV2LT5yaW5nc1tpXTsKIAkJc3Ry dWN0IGFtZF9zY2hlZF9ycSAqcnE7CiAKLQkJcnEgPSAmcmluZy0+c2NoZWQuc2NoZWRfcnFbQU1E X1NDSEVEX1BSSU9SSVRZX05PUk1BTF07CisJCXJxID0gJnJpbmctPnNjaGVkLnNjaGVkX3JxW3By aW9yaXR5XTsKIAkJciA9IGFtZF9zY2hlZF9lbnRpdHlfaW5pdCgmcmluZy0+c2NoZWQsICZjdHgt PnJpbmdzW2ldLmVudGl0eSwKIAkJCQkJICBycSwgYW1kZ3B1X3NjaGVkX2pvYnMpOwogCQlpZiAo cikKIAkJCWdvdG8gZmFpbGVkOwogCX0KIAogCXIgPSBhbWRncHVfcXVldWVfbWdyX2luaXQoYWRl diwgJmN0eC0+cXVldWVfbWdyKTsKIAlpZiAocikKIAkJZ290byBmYWlsZWQ7CiAKQEAgLTg5LDM5 ICs5Nyw0MSBAQCBzdGF0aWMgdm9pZCBhbWRncHVfY3R4X2Zpbmkoc3RydWN0IGFtZGdwdV9jdHgg KmN0eCkKIAogCWZvciAoaSA9IDA7IGkgPCBhZGV2LT5udW1fcmluZ3M7IGkrKykKIAkJYW1kX3Nj aGVkX2VudGl0eV9maW5pKCZhZGV2LT5yaW5nc1tpXS0+c2NoZWQsCiAJCQkJICAgICAgJmN0eC0+ cmluZ3NbaV0uZW50aXR5KTsKIAogCWFtZGdwdV9xdWV1ZV9tZ3JfZmluaShhZGV2LCAmY3R4LT5x dWV1ZV9tZ3IpOwogfQogCiBzdGF0aWMgaW50IGFtZGdwdV9jdHhfYWxsb2Moc3RydWN0IGFtZGdw dV9kZXZpY2UgKmFkZXYsCiAJCQkgICAgc3RydWN0IGFtZGdwdV9mcHJpdiAqZnByaXYsCisJCQkg ICAgZW51bSBhbWRfc2NoZWRfcHJpb3JpdHkgcHJpb3JpdHksCiAJCQkgICAgdWludDMyX3QgKmlk KQogewogCXN0cnVjdCBhbWRncHVfY3R4X21nciAqbWdyID0gJmZwcml2LT5jdHhfbWdyOwogCXN0 cnVjdCBhbWRncHVfY3R4ICpjdHg7CiAJaW50IHI7CiAKIAljdHggPSBrbWFsbG9jKHNpemVvZigq Y3R4KSwgR0ZQX0tFUk5FTCk7CiAJaWYgKCFjdHgpCiAJCXJldHVybiAtRU5PTUVNOwogCiAJbXV0 ZXhfbG9jaygmbWdyLT5sb2NrKTsKIAlyID0gaWRyX2FsbG9jKCZtZ3ItPmN0eF9oYW5kbGVzLCBj dHgsIDEsIDAsIEdGUF9LRVJORUwpOwogCWlmIChyIDwgMCkgewogCQltdXRleF91bmxvY2soJm1n ci0+bG9jayk7CiAJCWtmcmVlKGN0eCk7CiAJCXJldHVybiByOwogCX0KKwogCSppZCA9ICh1aW50 MzJfdClyOwotCXIgPSBhbWRncHVfY3R4X2luaXQoYWRldiwgY3R4KTsKKwlyID0gYW1kZ3B1X2N0 eF9pbml0KGFkZXYsIHByaW9yaXR5LCBjdHgpOwogCWlmIChyKSB7CiAJCWlkcl9yZW1vdmUoJm1n ci0+Y3R4X2hhbmRsZXMsICppZCk7CiAJCSppZCA9IDA7CiAJCWtmcmVlKGN0eCk7CiAJfQogCW11 dGV4X3VubG9jaygmbWdyLT5sb2NrKTsKIAlyZXR1cm4gcjsKIH0KIAogc3RhdGljIHZvaWQgYW1k Z3B1X2N0eF9kb19yZWxlYXNlKHN0cnVjdCBrcmVmICpyZWYpCkBAIC0xNzcsMzYgKzE4Nyw1NCBA QCBzdGF0aWMgaW50IGFtZGdwdV9jdHhfcXVlcnkoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYs CiAJaWYgKGN0eC0+cmVzZXRfY291bnRlciA9PSByZXNldF9jb3VudGVyKQogCQlvdXQtPnN0YXRl LnJlc2V0X3N0YXR1cyA9IEFNREdQVV9DVFhfTk9fUkVTRVQ7CiAJZWxzZQogCQlvdXQtPnN0YXRl LnJlc2V0X3N0YXR1cyA9IEFNREdQVV9DVFhfVU5LTk9XTl9SRVNFVDsKIAljdHgtPnJlc2V0X2Nv dW50ZXIgPSByZXNldF9jb3VudGVyOwogCiAJbXV0ZXhfdW5sb2NrKCZtZ3ItPmxvY2spOwogCXJl dHVybiAwOwogfQogCitzdGF0aWMgZW51bSBhbWRfc2NoZWRfcHJpb3JpdHkgYW1kZ3B1X3RvX3Nj aGVkX3ByaW9yaXR5KGludCBhbWRncHVfcHJpb3JpdHkpCit7CisJc3dpdGNoIChhbWRncHVfcHJp b3JpdHkpIHsKKwljYXNlIEFNREdQVV9DVFhfUFJJT1JJVFlfSElHSDoKKwkJcmV0dXJuIEFNRF9T Q0hFRF9QUklPUklUWV9ISUdIOworCWNhc2UgQU1ER1BVX0NUWF9QUklPUklUWV9OT1JNQUw6CisJ CXJldHVybiBBTURfU0NIRURfUFJJT1JJVFlfTk9STUFMOworCWRlZmF1bHQ6CisJCVdBUk4oMSwg IkludmFsaWQgY29udGV4dCBwcmlvcml0eSAlZFxuIiwgYW1kZ3B1X3ByaW9yaXR5KTsKKwkJcmV0 dXJuIEFNRF9TQ0hFRF9QUklPUklUWV9OT1JNQUw7CisJfQorfQorCiBpbnQgYW1kZ3B1X2N0eF9p b2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAogCQkgICAgIHN0cnVjdCBk cm1fZmlsZSAqZmlscCkKIHsKIAlpbnQgcjsKIAl1aW50MzJfdCBpZDsKKwllbnVtIGFtZF9zY2hl ZF9wcmlvcml0eSBwcmlvcml0eTsKIAogCXVuaW9uIGRybV9hbWRncHVfY3R4ICphcmdzID0gZGF0 YTsKIAlzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiA9IGRldi0+ZGV2X3ByaXZhdGU7CiAJc3Ry dWN0IGFtZGdwdV9mcHJpdiAqZnByaXYgPSBmaWxwLT5kcml2ZXJfcHJpdjsKIAogCXIgPSAwOwog CWlkID0gYXJncy0+aW4uY3R4X2lkOworCXByaW9yaXR5ID0gYW1kZ3B1X3RvX3NjaGVkX3ByaW9y aXR5KGFyZ3MtPmluLnByaW9yaXR5KTsKKworCWlmIChwcmlvcml0eSA+PSBBTURfU0NIRURfTUFY X1BSSU9SSVRZKQorCQlyZXR1cm4gLUVJTlZBTDsKIAogCXN3aXRjaCAoYXJncy0+aW4ub3ApIHsK IAljYXNlIEFNREdQVV9DVFhfT1BfQUxMT0NfQ1RYOgotCQlyID0gYW1kZ3B1X2N0eF9hbGxvYyhh ZGV2LCBmcHJpdiwgJmlkKTsKKwkJciA9IGFtZGdwdV9jdHhfYWxsb2MoYWRldiwgZnByaXYsIHBy aW9yaXR5LCAmaWQpOwogCQlhcmdzLT5vdXQuYWxsb2MuY3R4X2lkID0gaWQ7CiAJCWJyZWFrOwog CWNhc2UgQU1ER1BVX0NUWF9PUF9GUkVFX0NUWDoKIAkJciA9IGFtZGdwdV9jdHhfZnJlZShmcHJp diwgaWQpOwogCQlicmVhazsKIAljYXNlIEFNREdQVV9DVFhfT1BfUVVFUllfU1RBVEU6CiAJCXIg PSBhbWRncHVfY3R4X3F1ZXJ5KGFkZXYsIGZwcml2LCBpZCwgJmFyZ3MtPm91dCk7CiAJCWJyZWFr OwogCWRlZmF1bHQ6CiAJCXJldHVybiAtRUlOVkFMOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2FtZC9zY2hlZHVsZXIvZ3B1X3NjaGVkdWxlci5oIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9z Y2hlZHVsZXIvZ3B1X3NjaGVkdWxlci5oCmluZGV4IDAyNTVjN2YuLmUyNjZlMWUgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvc2NoZWR1bGVyL2dwdV9zY2hlZHVsZXIuaAorKysgYi9k cml2ZXJzL2dwdS9kcm0vYW1kL3NjaGVkdWxlci9ncHVfc2NoZWR1bGVyLmgKQEAgLTEwMywyMCAr MTAzLDIxIEBAIHN0YXRpYyBpbmxpbmUgc3RydWN0IGFtZF9zY2hlZF9mZW5jZSAqdG9fYW1kX3Nj aGVkX2ZlbmNlKHN0cnVjdCBkbWFfZmVuY2UgKmYpCiBzdHJ1Y3QgYW1kX3NjaGVkX2JhY2tlbmRf b3BzIHsKIAlzdHJ1Y3QgZG1hX2ZlbmNlICooKmRlcGVuZGVuY3kpKHN0cnVjdCBhbWRfc2NoZWRf am9iICpzY2hlZF9qb2IpOwogCXN0cnVjdCBkbWFfZmVuY2UgKigqcnVuX2pvYikoc3RydWN0IGFt ZF9zY2hlZF9qb2IgKnNjaGVkX2pvYik7CiAJdm9pZCAoKnRpbWVkb3V0X2pvYikoc3RydWN0IGFt ZF9zY2hlZF9qb2IgKnNjaGVkX2pvYik7CiAJdm9pZCAoKmZyZWVfam9iKShzdHJ1Y3QgYW1kX3Nj aGVkX2pvYiAqc2NoZWRfam9iKTsKIH07CiAKIGVudW0gYW1kX3NjaGVkX3ByaW9yaXR5IHsKIAlB TURfU0NIRURfUFJJT1JJVFlfTUlOLAogCUFNRF9TQ0hFRF9QUklPUklUWV9OT1JNQUwgPSBBTURf U0NIRURfUFJJT1JJVFlfTUlOLAorCUFNRF9TQ0hFRF9QUklPUklUWV9ISUdILAogCUFNRF9TQ0hF RF9QUklPUklUWV9LRVJORUwsCiAJQU1EX1NDSEVEX1BSSU9SSVRZX01BWAogfTsKIAogLyoqCiAg KiBPbmUgc2NoZWR1bGVyIGlzIGltcGxlbWVudGVkIGZvciBlYWNoIGhhcmR3YXJlIHJpbmcKICov CiBzdHJ1Y3QgYW1kX2dwdV9zY2hlZHVsZXIgewogCWNvbnN0IHN0cnVjdCBhbWRfc2NoZWRfYmFj a2VuZF9vcHMJKm9wczsKIAl1aW50MzJfdAkJCWh3X3N1Ym1pc3Npb25fbGltaXQ7CmRpZmYgLS1n aXQgYS9pbmNsdWRlL3VhcGkvZHJtL2FtZGdwdV9kcm0uaCBiL2luY2x1ZGUvdWFwaS9kcm0vYW1k Z3B1X2RybS5oCmluZGV4IDUxNmE5ZjIuLmJhY2RkNzMgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvdWFw aS9kcm0vYW1kZ3B1X2RybS5oCisrKyBiL2luY2x1ZGUvdWFwaS9kcm0vYW1kZ3B1X2RybS5oCkBA IC0xNTMsMjcgKzE1MywzMyBAQCB1bmlvbiBkcm1fYW1kZ3B1X2JvX2xpc3QgewogCiAvKiBHUFUg cmVzZXQgc3RhdHVzICovCiAjZGVmaW5lIEFNREdQVV9DVFhfTk9fUkVTRVQJCTAKIC8qIHRoaXMg dGhlIGNvbnRleHQgY2F1c2VkIGl0ICovCiAjZGVmaW5lIEFNREdQVV9DVFhfR1VJTFRZX1JFU0VU CQkxCiAvKiBzb21lIG90aGVyIGNvbnRleHQgY2F1c2VkIGl0ICovCiAjZGVmaW5lIEFNREdQVV9D VFhfSU5OT0NFTlRfUkVTRVQJMgogLyogdW5rbm93biBjYXVzZSAqLwogI2RlZmluZSBBTURHUFVf Q1RYX1VOS05PV05fUkVTRVQJMwogCisvKiBDb250ZXh0IHByaW9yaXR5IGxldmVsICovCisjZGVm aW5lIEFNREdQVV9DVFhfUFJJT1JJVFlfTk9STUFMCTAKKy8qIFNlbGVjdGluZyBhIHByaW9yaXR5 IGFib3ZlIE5PUk1BTCByZXF1aXJlcyBDQVBfU1lTX0FETUlOICovCisjZGVmaW5lIEFNREdQVV9D VFhfUFJJT1JJVFlfSElHSAkxCisjZGVmaW5lIEFNREdQVV9DVFhfUFJJT1JJVFlfTlVNCQkyCisK IHN0cnVjdCBkcm1fYW1kZ3B1X2N0eF9pbiB7CiAJLyoqIEFNREdQVV9DVFhfT1BfKiAqLwogCV9f dTMyCW9wOwogCS8qKiBGb3IgZnV0dXJlIHVzZSwgbm8gZmxhZ3MgZGVmaW5lZCBzbyBmYXIgKi8K IAlfX3UzMglmbGFnczsKIAlfX3UzMgljdHhfaWQ7Ci0JX191MzIJX3BhZDsKKwlfX3UzMglwcmlv cml0eTsKIH07CiAKIHVuaW9uIGRybV9hbWRncHVfY3R4X291dCB7CiAJCXN0cnVjdCB7CiAJCQlf X3UzMgljdHhfaWQ7CiAJCQlfX3UzMglfcGFkOwogCQl9IGFsbG9jOwogCiAJCXN0cnVjdCB7CiAJ CQkvKiogRm9yIGZ1dHVyZSB1c2UsIG5vIGZsYWdzIGRlZmluZWQgc28gZmFyICovCi0tIAoyLjku MwoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KYW1kLWdm eCBtYWlsaW5nIGxpc3QKYW1kLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0 cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9hbWQtZ2Z4Cg==