From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dave Gordon Subject: [PATCH v2 3/6] drm/i915/guc: use a separate GuC client for each engine Date: Thu, 21 Jul 2016 19:15:39 +0100 Message-ID: <1469124942-17943-4-git-send-email-david.s.gordon@intel.com> References: <1469124942-17943-1-git-send-email-david.s.gordon@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTP id 197D96EA14 for ; Thu, 21 Jul 2016 18:15:55 +0000 (UTC) In-Reply-To: <1469124942-17943-1-git-send-email-david.s.gordon@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org V2hlbiB1c2luZyBhIHNpbmdsZSBHdUMgY2xpZW50IGZvciBtdWx0aXBsZSBlbmdpbmVzLCB0aGUg aTkxNSBkcml2ZXIgaGFzCnRvIG1lcmdlIGFsbCB3b3JrIGl0ZW1zIGludG8gYSBzaW5nbGUgd29y ayBxdWV1ZSwgd2hpY2ggdGhlIEd1QyBmaXJtd2FyZQp0aGVuIGRlbXVsdGlwbGV4ZXMgaW50byBz ZXBhcmF0ZSBzdWJtaXNzaW9uIHF1ZXVlcyBwZXIgZW5naW5lLiBJbgp0aGVvcnksIHRoaXMgY291 bGQgbGVhZCB0byB0aGUgc2luZ2xlIHF1ZXVlIGJlY29taW5nIGEgYm90dGxlbmVjayBpbgp3aGlj aCBhbiBleGNlc3Mgb2Ygb3V0c3RhbmRpbmcgd29yayBmb3Igb25lIG9yIG1vcmUgZW5naW5lcyBt aWdodApwcmV2ZW50IHdvcmsgZm9yIGFuIGlkbGUgZW5naW5lIHJlYWNoaW5nIHRoZSBoYXJkd2Fy ZS4KClRvIHJlZHVjZSB0aGlzIHJpc2ssIHdlIGNhbiBjcmVhdGUgb25lIEd1QyBjbGllbnQgcGVy IGVuZ2luZS4gRWFjaCB3aWxsCmhhdmUgaXRzIG93biB3b3JrcXVldWUsIHRvIGJlIHVzZWQgb25s eSBmb3Igd29yayB0YXJnZXRpbmcgYSBzaW5nbGUKZW5naW5lLCBzbyB0aGVyZSB3aWxsIGJlIG5v IGNyb3NzLWVuZ2luZSBjb250ZW50aW9uIGZvciB3b3JrcXVldWUgc2xvdHMuCgpTaWduZWQtb2Zm LWJ5OiBEYXZlIEdvcmRvbiA8ZGF2aWQucy5nb3Jkb25AaW50ZWwuY29tPgpSZXZpZXdlZC1ieTog VHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYyAgICAgICAgfCAyNSArKysrKysrKysrKysrKysrLS0t LS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ3VjX3N1Ym1pc3Npb24uYyB8IDM1ICsrKysr KysrKysrKysrKysrKystLS0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZ3Vj LmggICAgICAgICAgIHwgIDIgKy0KIDMgZmlsZXMgY2hhbmdlZCwgNDIgaW5zZXJ0aW9ucygrKSwg MjAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9k ZWJ1Z2ZzLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYwppbmRleCA5YWE2 MmM1Li43OTNiMWQ5IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVn ZnMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYwpAQCAtMjU2NCwy MCArMjU2NCwyNiBAQCBzdGF0aWMgaW50IGk5MTVfZ3VjX2luZm8oc3RydWN0IHNlcV9maWxlICpt LCB2b2lkICpkYXRhKQogCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBub2RlLT5taW5vci0+ZGV2 OwogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZGV2KTsKIAlz dHJ1Y3QgaW50ZWxfZ3VjIGd1YzsKLQlzdHJ1Y3QgaTkxNV9ndWNfY2xpZW50IGNsaWVudCA9IHt9 OworCXN0cnVjdCBpOTE1X2d1Y19jbGllbnQgKmNsaWVudHM7CiAJc3RydWN0IGludGVsX2VuZ2lu ZV9jcyAqZW5naW5lOworCWVudW0gaW50ZWxfZW5naW5lX2lkIGlkOwogCXU2NCB0b3RhbCA9IDA7 CiAKIAlpZiAoIUhBU19HVUNfU0NIRUQoZGV2X3ByaXYpKQogCQlyZXR1cm4gMDsKIAorCWNsaWVu dHMgPSBrY2FsbG9jKEk5MTVfTlVNX0VOR0lORVMsIHNpemVvZigqY2xpZW50cyksIEdGUF9LRVJO RUwpOworCWlmIChjbGllbnRzID09IE5VTEwpCisJCXJldHVybiAtRU5PTUVNOworCiAJaWYgKG11 dGV4X2xvY2tfaW50ZXJydXB0aWJsZSgmZGV2LT5zdHJ1Y3RfbXV0ZXgpKQotCQlyZXR1cm4gMDsK KwkJZ290byBkb25lOwogCiAJLyogVGFrZSBhIGxvY2FsIGNvcHkgb2YgdGhlIEd1QyBkYXRhLCBz byB3ZSBjYW4gZHVtcCBpdCBhdCBsZWlzdXJlICovCiAJZ3VjID0gZGV2X3ByaXYtPmd1YzsKLQlp ZiAoZ3VjLmV4ZWNidWZfY2xpZW50KQotCQljbGllbnQgPSAqZ3VjLmV4ZWNidWZfY2xpZW50Owor CWZvcl9lYWNoX2VuZ2luZV9pZChlbmdpbmUsIGRldl9wcml2LCBpZCkKKwkJaWYgKGd1Yy5leGVj X2NsaWVudHNbaWRdKQorCQkJY2xpZW50c1tpZF0gPSAqZ3VjLmV4ZWNfY2xpZW50c1tpZF07CiAK IAltdXRleF91bmxvY2soJmRldi0+c3RydWN0X211dGV4KTsKIApAQCAtMjYwMCwxMSArMjYwNiwx OCBAQCBzdGF0aWMgaW50IGk5MTVfZ3VjX2luZm8oc3RydWN0IHNlcV9maWxlICptLCB2b2lkICpk YXRhKQogCX0KIAlzZXFfcHJpbnRmKG0sICJcdCVzOiAlbGx1XG4iLCAiVG90YWwiLCB0b3RhbCk7 CiAKLQlzZXFfcHJpbnRmKG0sICJcbkd1QyBleGVjYnVmIGNsaWVudCBAICVwOlxuIiwgZ3VjLmV4 ZWNidWZfY2xpZW50KTsKLQlpOTE1X2d1Y19jbGllbnRfaW5mbyhtLCBkZXZfcHJpdiwgJmNsaWVu dCk7CisJZm9yX2VhY2hfZW5naW5lX2lkKGVuZ2luZSwgZGV2X3ByaXYsIGlkKSB7CisJCXNlcV9w cmludGYobSwgIlxuR3VDIGV4ZWNfY2xpZW50WyVkXSBAICVwOlxuIiwKKwkJCQlpZCwgZ3VjLmV4 ZWNfY2xpZW50c1tpZF0pOworCQlpZiAoZ3VjLmV4ZWNfY2xpZW50c1tpZF0pCisJCQlpOTE1X2d1 Y19jbGllbnRfaW5mbyhtLCBkZXZfcHJpdiwgJmNsaWVudHNbaWRdKTsKKwl9CiAKIAkvKiBBZGQg bW9yZSBhcyByZXF1aXJlZCAuLi4gKi8KIAorZG9uZToKKwlrZnJlZShjbGllbnRzKTsKKwogCXJl dHVybiAwOwogfQogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2d1Y19z dWJtaXNzaW9uLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2d1Y19zdWJtaXNzaW9uLmMK aW5kZXggODE2YmRjYS4uOTk5OTc5NyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9ndWNfc3VibWlzc2lvbi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ3Vj X3N1Ym1pc3Npb24uYwpAQCAtNDM0LDcgKzQzNCw5IEBAIHN0YXRpYyB2b2lkIGd1Y19maW5pX2N0 eF9kZXNjKHN0cnVjdCBpbnRlbF9ndWMgKmd1YywKIGludCBpOTE1X2d1Y193cV9jaGVja19zcGFj ZShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcXVlc3QpCiB7CiAJY29uc3Qgc2l6ZV90 IHdxaV9zaXplID0gc2l6ZW9mKHN0cnVjdCBndWNfd3FfaXRlbSk7Ci0Jc3RydWN0IGk5MTVfZ3Vj X2NsaWVudCAqZ2MgPSByZXF1ZXN0LT5pOTE1LT5ndWMuZXhlY2J1Zl9jbGllbnQ7CisJZW51bSBp bnRlbF9lbmdpbmVfaWQgZW5naW5lX2lkID0gcmVxdWVzdC0+ZW5naW5lLT5pZDsKKwlzdHJ1Y3Qg aW50ZWxfZ3VjICpndWMgPSAmcmVxdWVzdC0+aTkxNS0+Z3VjOworCXN0cnVjdCBpOTE1X2d1Y19j bGllbnQgKmdjID0gZ3VjLT5leGVjX2NsaWVudHNbZW5naW5lX2lkXTsKIAlzdHJ1Y3QgZ3VjX3By b2Nlc3NfZGVzYyAqZGVzYzsKIAl1MzIgZnJlZXNwYWNlOwogCkBAIC01ODksNyArNTkxLDcgQEAg aW50IGk5MTVfZ3VjX3N1Ym1pdChzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJxKQogewog CXVuc2lnbmVkIGludCBlbmdpbmVfaWQgPSBycS0+ZW5naW5lLT5pZDsKIAlzdHJ1Y3QgaW50ZWxf Z3VjICpndWMgPSAmcnEtPmk5MTUtPmd1YzsKLQlzdHJ1Y3QgaTkxNV9ndWNfY2xpZW50ICpjbGll bnQgPSBndWMtPmV4ZWNidWZfY2xpZW50OworCXN0cnVjdCBpOTE1X2d1Y19jbGllbnQgKmNsaWVu dCA9IGd1Yy0+ZXhlY19jbGllbnRzW2VuZ2luZV9pZF07CiAJaW50IGJfcmV0OwogCiAJZ3VjX2Fk ZF93b3JrcXVldWVfaXRlbShjbGllbnQsIHJxKTsKQEAgLTcyMyw3ICs3MjUsNyBAQCBzdGF0aWMg Ym9vbCBndWNfZG9vcmJlbGxfY2hlY2soc3RydWN0IGludGVsX2d1YyAqZ3VjLCB1aW50MTZfdCBk Yl9pZCkKICAqLwogc3RhdGljIHZvaWQgZ3VjX2luaXRfZG9vcmJlbGxfaHcoc3RydWN0IGludGVs X2d1YyAqZ3VjKQogewotCXN0cnVjdCBpOTE1X2d1Y19jbGllbnQgKmNsaWVudCA9IGd1Yy0+ZXhl Y2J1Zl9jbGllbnQ7CisJc3RydWN0IGk5MTVfZ3VjX2NsaWVudCAqY2xpZW50ID0gZ3VjLT5leGVj X2NsaWVudHNbUkNTXTsKIAl1aW50MTZfdCBkYl9pZDsKIAlpbnQgaSwgZXJyOwogCkBAIC0xMDA0 LDE3ICsxMDA2LDIxIEBAIGludCBpOTE1X2d1Y19zdWJtaXNzaW9uX2VuYWJsZShzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiB7CiAJc3RydWN0IGludGVsX2d1YyAqZ3VjID0gJmRl dl9wcml2LT5ndWM7CiAJc3RydWN0IGk5MTVfZ3VjX2NsaWVudCAqY2xpZW50OworCXN0cnVjdCBp bnRlbF9lbmdpbmVfY3MgKmVuZ2luZTsKIAotCS8qIGNsaWVudCBmb3IgZXhlY2J1ZiBzdWJtaXNz aW9uICovCi0JY2xpZW50ID0gZ3VjX2NsaWVudF9hbGxvYyhkZXZfcHJpdiwKLQkJCQkgIEdVQ19D VFhfUFJJT1JJVFlfS01EX05PUk1BTCwKLQkJCQkgIGRldl9wcml2LT5rZXJuZWxfY29udGV4dCk7 Ci0JaWYgKCFjbGllbnQpIHsKLQkJRFJNX0VSUk9SKCJGYWlsZWQgdG8gY3JlYXRlIGV4ZWNidWYg Z3VjX2NsaWVudFxuIik7Ci0JCXJldHVybiAtRU5PTUVNOworCWZvcl9lYWNoX2VuZ2luZShlbmdp bmUsIGRldl9wcml2KSB7CisJCS8qIGNsaWVudCBmb3IgZXhlY2J1ZiBzdWJtaXNzaW9uICovCisJ CWNsaWVudCA9IGd1Y19jbGllbnRfYWxsb2MoZGV2X3ByaXYsCisJCQkJCSAgR1VDX0NUWF9QUklP UklUWV9LTURfTk9STUFMLAorCQkJCQkgIGRldl9wcml2LT5rZXJuZWxfY29udGV4dCk7CisJCWlm ICghY2xpZW50KSB7CisJCQlEUk1fRVJST1IoIkZhaWxlZCB0byBjcmVhdGUgR3VDIGNsaWVudChz KVxuIik7CisJCQlyZXR1cm4gLUVOT01FTTsKKwkJfQorCisJCWd1Yy0+ZXhlY19jbGllbnRzW2Vu Z2luZS0+aWRdID0gY2xpZW50OwogCX0KIAotCWd1Yy0+ZXhlY2J1Zl9jbGllbnQgPSBjbGllbnQ7 CiAJaG9zdDJndWNfc2FtcGxlX2ZvcmNld2FrZShndWMsIGNsaWVudCk7CiAJZ3VjX2luaXRfZG9v cmJlbGxfaHcoZ3VjKTsKIApAQCAtMTAyNCw5ICsxMDMwLDEyIEBAIGludCBpOTE1X2d1Y19zdWJt aXNzaW9uX2VuYWJsZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiB2b2lkIGk5 MTVfZ3VjX3N1Ym1pc3Npb25fZGlzYWJsZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3By aXYpCiB7CiAJc3RydWN0IGludGVsX2d1YyAqZ3VjID0gJmRldl9wcml2LT5ndWM7CisJc3RydWN0 IGludGVsX2VuZ2luZV9jcyAqZW5naW5lOwogCi0JZ3VjX2NsaWVudF9mcmVlKGRldl9wcml2LCBn dWMtPmV4ZWNidWZfY2xpZW50KTsKLQlndWMtPmV4ZWNidWZfY2xpZW50ID0gTlVMTDsKKwlmb3Jf ZWFjaF9lbmdpbmUoZW5naW5lLCBkZXZfcHJpdikgeworCQlndWNfY2xpZW50X2ZyZWUoZGV2X3By aXYsIGd1Yy0+ZXhlY19jbGllbnRzW2VuZ2luZS0+aWRdKTsKKwkJZ3VjLT5leGVjX2NsaWVudHNb ZW5naW5lLT5pZF0gPSBOVUxMOworCX0KIH0KIAogdm9pZCBpOTE1X2d1Y19zdWJtaXNzaW9uX2Zp bmkoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfZ3VjLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9n dWMuaAppbmRleCAzZTNlNzQzLi43YjRjYzRkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9ndWMuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ndWMuaApA QCAtMTMyLDcgKzEzMiw3IEBAIHN0cnVjdCBpbnRlbF9ndWMgewogCXN0cnVjdCBkcm1faTkxNV9n ZW1fb2JqZWN0ICpjdHhfcG9vbF9vYmo7CiAJc3RydWN0IGlkYSBjdHhfaWRzOwogCi0Jc3RydWN0 IGk5MTVfZ3VjX2NsaWVudCAqZXhlY2J1Zl9jbGllbnQ7CisJc3RydWN0IGk5MTVfZ3VjX2NsaWVu dCAqZXhlY19jbGllbnRzW0k5MTVfTlVNX0VOR0lORVNdOwogCiAJREVDTEFSRV9CSVRNQVAoZG9v cmJlbGxfYml0bWFwLCBHVUNfTUFYX0RPT1JCRUxMUyk7CiAJdWludDMyX3QgZGJfY2FjaGVsaW5l OwkJLyogQ3ljbGljIGNvdW50ZXIgbW9kIHBhZ2VzaXplCSovCi0tIAoxLjkuMQoKX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcg bGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRl c2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==