From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [RFC 2/2] drm/i915: Select engines via class and instance in execbuffer2 Date: Tue, 18 Apr 2017 17:56:15 +0100 Message-ID: <20170418165615.27666-3-tvrtko.ursulin@linux.intel.com> References: <20170418165615.27666-1-tvrtko.ursulin@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-x243.google.com (mail-wm0-x243.google.com [IPv6:2a00:1450:400c:c09::243]) by gabe.freedesktop.org (Postfix) with ESMTPS id 8885A8994A for ; Tue, 18 Apr 2017 16:56:27 +0000 (UTC) Received: by mail-wm0-x243.google.com with SMTP id d79so505587wmi.2 for ; Tue, 18 Apr 2017 09:56:27 -0700 (PDT) In-Reply-To: <20170418165615.27666-1-tvrtko.ursulin@linux.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 Cc: Ben Widawsky , intel-vaapi-media@lists.01.org, mesa-dev@lists.freedesktop.org, Daniel Vetter List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCkJ1aWxkaW5n IG9uIHRvcCBvZiB0aGUgcHJldmlvdXMgcGF0Y2ggd2hpY2ggZXhwb3J0ZWQgdGhlIGNvbmNlcHQK b2YgZW5naW5lIGNsYXNzZXMgYW5kIGluc3RhbmNlcywgd2UgY2FuIGFsc28gdXNlIHRoaXMgaW5z dGVhZCBvZgp0aGUgY3VycmVudCBhd2t3YXJkIGVuZ2luZSBzZWxlY3Rpb24gdUFQSS4KClRoaXMg aXMgcHJpbWFyaWx5IGludGVyZXN0aW5nIGZvciB0aGUgVkNTIGVuZ2luZSBzZWxlY3Rpb24gd2hp Y2gKaXMgYSkgY3VycmVudGx5IGRvbmUgdmlhIGRpc2pvaW50IHNldCBvZiBmbGFncywgYW5kIGIp IHRoZQpjdXJyZW50IEk5MTVfRVhFQ19CU0QgZmxhZ3MgaGFzIGRpZmZlcmVudCBzZW1hbnRpY3Mg ZGVwZW5kaW5nIG9uCnRoZSB1bmRlcmx5aW5nIGhhcmR3YXJlIHdoaWNoIGlzIGJhZC4KClByb3Bv c2VkIGlkZWEgaGVyZSBpcyB0byByZXNlcnZlIDE2LWJpdHMgb2YgZmxhZ3MsIHRvIHBhc3MgaW4K dGhlIGVuZ2luZSBjbGFzcyBhbmQgaW5zdGFuY2UgKDggYml0cyBlYWNoKSwgYW5kIGEgbmV3IGZs YWcKbmFtZWQgSTkxNV9FWEVDX0NMQVNTX0lOU1RBQ0UgdG8gdGVsbCB0aGUga2VybmVsIHRoaXMg bmV3IGVuZ2luZQpzZWxlY3Rpb24gQVBJIGlzIGluIHVzZS4KClRoZSBuZXcgdUFQSSBhbHNvIHJl bW92ZXMgYWNjZXNzIHRvIHRoZSB3ZWFrIFZDUyBlbmdpbmUKYmFsYW5jaW5nIGFzIGN1cnJlbnRs eSBleGlzdGluZyBpbiB0aGUgZHJpdmVyLgoKRXhhbXBsZSB1c2FnZSB0byBzZW5kIGEgY29tbWFu ZCB0byBWQ1MwOgoKICBlYi5mbGFncyA9IGk5MTVfZXhlY2J1ZmZlcjJfZW5naW5lKERSTV9JOTE1 X0VOR0lORV9DTEFTU19WSURFT19ERUNPREUsIDApOwoKT3IgdG8gc2VuZCBhIGNvbW1hbmQgdG8g VkNTMToKCiAgZWIuZmxhZ3MgPSBpOTE1X2V4ZWNidWZmZXIyX2VuZ2luZShEUk1fSTkxNV9FTkdJ TkVfQ0xBU1NfVklERU9fREVDT0RFLCAxKTsKClNpZ25lZC1vZmYtYnk6IFR2cnRrbyBVcnN1bGlu IDx0dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+CkNjOiBCZW4gV2lkYXdza3kgPGJlbkBid2lkYXdz ay5uZXQ+CkNjOiBDaHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KQ2M6IERh bmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0ZXJAaW50ZWwuY29tPgpDYzogSm9vbmFzIExhaHRpbmVu IDxqb29uYXMubGFodGluZW5AbGludXguaW50ZWwuY29tPgpDYzogSm9uIEJsb29tZmllbGQgPGpv bi5ibG9vbWZpZWxkQGludGVsLmNvbT4KQ2M6IERhbmllbCBDaGFybGVzIDxkYW5pZWwuY2hhcmxl c0BpbnRlbC5jb20+CkNjOiAiUm9nb3poa2luLCBEbWl0cnkgViIgPGRtaXRyeS52LnJvZ296aGtp bkBpbnRlbC5jb20+CkNjOiBPc2NhciBNYXRlbyA8b3NjYXIubWF0ZW9AaW50ZWwuY29tPgpDYzog IkdvbmcsIFpoaXBlbmciIDx6aGlwZW5nLmdvbmdAaW50ZWwuY29tPgpDYzogaW50ZWwtdmFhcGkt bWVkaWFAbGlzdHMuMDEub3JnCkNjOiBtZXNhLWRldkBsaXN0cy5mcmVlZGVza3RvcC5vcmcKLS0t CiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9leGVjYnVmZmVyLmMgfCAzNiArKysrKysr KysrKysrKysrKysrKysrKysrKysrKysKIGluY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0uaCAgICAg ICAgICAgICAgICB8ICA3ICsrKysrLQogMiBmaWxlcyBjaGFuZ2VkLCA0MiBpbnNlcnRpb25zKCsp LCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9n ZW1fZXhlY2J1ZmZlci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZXhlY2J1ZmZl ci5jCmluZGV4IGFmMTk2NTc3NGU3Yi4uN2ZjOTJlYzgzOWExIDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9leGVjYnVmZmVyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9nZW1fZXhlY2J1ZmZlci5jCkBAIC0xMTUzLDYgKzExNTMsMTAgQEAgaTkxNV9n ZW1fY2hlY2tfZXhlY2J1ZmZlcihzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNidWZmZXIyICpleGVj KQogCWlmIChleGVjLT5mbGFncyAmIF9fSTkxNV9FWEVDX1VOS05PV05fRkxBR1MpCiAJCXJldHVy biBmYWxzZTsKIAorCWlmICgoZXhlYy0+ZmxhZ3MgJiBJOTE1X0VYRUNfQ0xBU1NfSU5TVEFOQ0Up ICYmCisJICAgIChleGVjLT5mbGFncyAmIEk5MTVfRVhFQ19SSU5HX01BU0spKQorCQlyZXR1cm4g ZmFsc2U7CisKIAkvKiBLZXJuZWwgY2xpcHBpbmcgd2FzIGEgRFJJMSBtaXNmZWF0dXJlICovCiAJ aWYgKGV4ZWMtPm51bV9jbGlwcmVjdHMgfHwgZXhlYy0+Y2xpcHJlY3RzX3B0cikKIAkJcmV0dXJu IGZhbHNlOwpAQCAtMTQ5Miw2ICsxNDk2LDM1IEBAIGdlbjhfZGlzcGF0Y2hfYnNkX2VuZ2luZShz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJcmV0dXJuIGZpbGVfcHJpdi0+YnNk X2VuZ2luZTsKIH0KIAorZXh0ZXJuIHU4IHVzZXJfY2xhc3NfbWFwW0RSTV9JOTE1X0VOR0lORV9D TEFTU19NQVhdOworCitzdGF0aWMgc3RydWN0IGludGVsX2VuZ2luZV9jcyAqCitlYl9zZWxlY3Rf ZW5naW5lX2NsYXNzX2luc3RhbmNlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1LAorCQkJ CXN0cnVjdCBkcm1faTkxNV9nZW1fZXhlY2J1ZmZlcjIgKmFyZ3MpCit7CisJc3RydWN0IGludGVs X2VuZ2luZV9jcyAqZW5naW5lOworCWVudW0gaW50ZWxfZW5naW5lX2lkIGlkOworCXUxNiBjbGFz c19pbnN0YW5jZTsKKwl1OCB1c2VyX2NsYXNzLCBjbGFzcywgaW5zdGFuY2U7CisKKwljbGFzc19p bnN0YW5jZSA9IChhcmdzLT5mbGFncyAmIEk5MTVfRVhFQ19DTEFTU19JTlNUQU5DRV9NQVNLKSA+ PgorCQkJIEk5MTVfRVhFQ19DTEFTU19JTlNUQU5DRV9TSElGVDsKKworCXVzZXJfY2xhc3MgPSBj bGFzc19pbnN0YW5jZSA+PiA4OworCWluc3RhbmNlID0gY2xhc3NfaW5zdGFuY2UgJiAweGZmOwor CisJaWYgKHVzZXJfY2xhc3MgPj0gRFJNX0k5MTVfRU5HSU5FX0NMQVNTX01BWCkKKwkJcmV0dXJu IE5VTEw7CisJY2xhc3MgPSB1c2VyX2NsYXNzX21hcFt1c2VyX2NsYXNzXTsKKworCWZvcl9lYWNo X2VuZ2luZShlbmdpbmUsIGk5MTUsIGlkKSB7CisJCWlmIChlbmdpbmUtPmNsYXNzID09IGNsYXNz ICYmIGVuZ2luZS0+aW5zdGFuY2UgPT0gaW5zdGFuY2UpCisJCQlyZXR1cm4gZW5naW5lOworCX0K KworCXJldHVybiBOVUxMOworfQorCiAjZGVmaW5lIEk5MTVfVVNFUl9SSU5HUyAoNCkKIAogc3Rh dGljIGNvbnN0IGVudW0gaW50ZWxfZW5naW5lX2lkIHVzZXJfcmluZ19tYXBbSTkxNV9VU0VSX1JJ TkdTICsgMV0gPSB7CkBAIC0xNTEwLDYgKzE1NDMsOSBAQCBlYl9zZWxlY3RfZW5naW5lKHN0cnVj dCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAl1bnNpZ25lZCBpbnQgdXNlcl9yaW5nX2lk ID0gYXJncy0+ZmxhZ3MgJiBJOTE1X0VYRUNfUklOR19NQVNLOwogCXN0cnVjdCBpbnRlbF9lbmdp bmVfY3MgKmVuZ2luZTsKIAorCWlmIChhcmdzLT5mbGFncyAmIEk5MTVfRVhFQ19DTEFTU19JTlNU QU5DRSkKKwkJcmV0dXJuIGViX3NlbGVjdF9lbmdpbmVfY2xhc3NfaW5zdGFuY2UoZGV2X3ByaXYs IGFyZ3MpOworCiAJaWYgKHVzZXJfcmluZ19pZCA+IEk5MTVfVVNFUl9SSU5HUykgewogCQlEUk1f REVCVUcoImV4ZWNidWYgd2l0aCB1bmtub3duIHJpbmc6ICV1XG4iLCB1c2VyX3JpbmdfaWQpOwog CQlyZXR1cm4gTlVMTDsKZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0uaCBi L2luY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0uaAppbmRleCA2MDU4NTk2YTlmMzMuLjcyN2E2ZGM0 YjAyOSAxMDA2NDQKLS0tIGEvaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oCisrKyBiL2luY2x1 ZGUvdWFwaS9kcm0vaTkxNV9kcm0uaApAQCAtOTA2LDcgKzkwNiwxMiBAQCBzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX2V4ZWNidWZmZXIyIHsKICAqLwogI2RlZmluZSBJOTE1X0VYRUNfRkVOQ0VfT1VUCQko MTw8MTcpCiAKLSNkZWZpbmUgX19JOTE1X0VYRUNfVU5LTk9XTl9GTEFHUyAoLShJOTE1X0VYRUNf RkVOQ0VfT1VUPDwxKSkKKyNkZWZpbmUgSTkxNV9FWEVDX0NMQVNTX0lOU1RBTkNFCSgxPDwxOCkK KworI2RlZmluZSBJOTE1X0VYRUNfQ0xBU1NfSU5TVEFOQ0VfU0hJRlQJKDE5KQorI2RlZmluZSBJ OTE1X0VYRUNfQ0xBU1NfSU5TVEFOQ0VfTUFTSwkoMHhmZmZmIDw8IEk5MTVfRVhFQ19DTEFTU19J TlNUQU5DRV9TSElGVCkKKworI2RlZmluZSBfX0k5MTVfRVhFQ19VTktOT1dOX0ZMQUdTICgtKDM1 IDw8IDEpKQogCiAjZGVmaW5lIEk5MTVfRVhFQ19DT05URVhUX0lEX01BU0sJKDB4ZmZmZmZmZmYp CiAjZGVmaW5lIGk5MTVfZXhlY2J1ZmZlcjJfc2V0X2NvbnRleHRfaWQoZWIyLCBjb250ZXh0KSBc Ci0tIAoyLjkuMwoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3Jn Cmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4 Cg==