From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Daniel Subject: [PATCH 01/43] drm/i915: Reorder the actual workload submission so that args checking is done earlier Date: Thu, 24 Jul 2014 17:04:09 +0100 Message-ID: <1406217891-8912-2-git-send-email-thomas.daniel@intel.com> References: <1406217891-8912-1-git-send-email-thomas.daniel@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [143.182.124.21]) by gabe.freedesktop.org (Postfix) with ESMTP id 08EAB6E2C9 for ; Thu, 24 Jul 2014 09:04:55 -0700 (PDT) In-Reply-To: <1406217891-8912-1-git-send-email-thomas.daniel@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 RnJvbTogT3NjYXIgTWF0ZW8gPG9zY2FyLm1hdGVvQGludGVsLmNvbT4KCkluIHRoaXMgcGF0Y2g6 Cgpjb21taXQgNzgzODI1OTNlOTIxYzg4MzcxYWJkMDE5YWNhODk3OGRiMzI0OGE4ZgpBdXRob3I6 IE9zY2FyIE1hdGVvIDxvc2Nhci5tYXRlb0BpbnRlbC5jb20+CkRhdGU6ICAgVGh1IEp1bCAzIDE2 OjI4OjA1IDIwMTQgKzAxMDAKCiAgICBkcm0vaTkxNTogRXh0cmFjdCB0aGUgYWN0dWFsIHdvcmts b2FkIHN1Ym1pc3Npb24gbWVjaGFuaXNtIGZyb20gZXhlY2J1ZmZlcgoKICAgIFNvIHRoYXQgd2Ug aXNvbGF0ZSB0aGUgbGVnYWN5IHJpbmdidWZmZXIgc3VibWlzc2lvbiBtZWNoYW5pc20sIHdoaWNo IGJlY29tZXMKICAgIGEgZ29vZCBjYW5kaWRhdGUgdG8gYmUgYWJzdHJhY3RlZCBhd2F5LiBUaGlz IGlzIHByZXAtd29yayBmb3IgRXhlY2xpc3RzICh3aGljaAogICAgd2lsbCBpdHMgb3duIHdvcmts b2FkIHN1Ym1pc3Npb24gbWVjaGFuaXNtKS4KCiAgICBObyBmdW5jdGlvbmFsIGNoYW5nZXMuCgpJ IGNoYW5nZWQgdGhlIG9yZGVyIGluIHdoaWNoIHRoZSBhcmdzIGNoZWNraW5nIGlzIGRvbmUuIEkg ZG9uJ3Qga25vdyB3aHkgSSBkaWQgKGJyYWluCmZhZGU/KSBidXQgaXTFmyBub3QgcmlnaHQuIEkg aGF2ZW4ndCBzZWVuIGFueSBpbGwgZWZmZWN0IGZyb20gdGhpcywgYnV0IHRoZSBFeGVjbGlzdHMK dmVyc2lvbiBvZiB0aGlzIGZ1bmN0aW9uIHdpbGwgaGF2ZSBwcm9ibGVtcyBpZiB0aGUgb3JkZXIg aXMgbm90IGNvcnJlY3QuCgpTaWduZWQtb2ZmLWJ5OiBPc2NhciBNYXRlbyA8b3NjYXIubWF0ZW9A aW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIu YyB8ICAgODYgKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDQz IGluc2VydGlvbnMoKyksIDQzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZ2VtX2V4ZWNidWZmZXIuYwppbmRleCA2MDk5OGZjLi5jNTExNTk1NyAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZXhlY2J1ZmZlci5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIuYwpAQCAtMTA0Miw2ICsxMDQyLDQzIEBA IGxlZ2FjeV9yaW5nYnVmZmVyX3N1Ym1pc3Npb24oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3Ry dWN0IGRybV9maWxlICpmaWxlLAogCXUzMiBpbnN0cF9tYXNrOwogCWludCBpLCByZXQgPSAwOwog CisJaW5zdHBfbW9kZSA9IGFyZ3MtPmZsYWdzICYgSTkxNV9FWEVDX0NPTlNUQU5UU19NQVNLOwor CWluc3RwX21hc2sgPSBJOTE1X0VYRUNfQ09OU1RBTlRTX01BU0s7CisJc3dpdGNoIChpbnN0cF9t b2RlKSB7CisJY2FzZSBJOTE1X0VYRUNfQ09OU1RBTlRTX1JFTF9HRU5FUkFMOgorCWNhc2UgSTkx NV9FWEVDX0NPTlNUQU5UU19BQlNPTFVURToKKwljYXNlIEk5MTVfRVhFQ19DT05TVEFOVFNfUkVM X1NVUkZBQ0U6CisJCWlmIChpbnN0cF9tb2RlICE9IDAgJiYgcmluZyAhPSAmZGV2X3ByaXYtPnJp bmdbUkNTXSkgeworCQkJRFJNX0RFQlVHKCJub24tMCByZWwgY29uc3RhbnRzIG1vZGUgb24gbm9u LVJDU1xuIik7CisJCQlyZXQgPSAtRUlOVkFMOworCQkJZ290byBlcnJvcjsKKwkJfQorCisJCWlm IChpbnN0cF9tb2RlICE9IGRldl9wcml2LT5yZWxhdGl2ZV9jb25zdGFudHNfbW9kZSkgeworCQkJ aWYgKElOVEVMX0lORk8oZGV2KS0+Z2VuIDwgNCkgeworCQkJCURSTV9ERUJVRygibm8gcmVsIGNv bnN0YW50cyBvbiBwcmUtZ2VuNFxuIik7CisJCQkJcmV0ID0gLUVJTlZBTDsKKwkJCQlnb3RvIGVy cm9yOworCQkJfQorCisJCQlpZiAoSU5URUxfSU5GTyhkZXYpLT5nZW4gPiA1ICYmCisJCQkgICAg aW5zdHBfbW9kZSA9PSBJOTE1X0VYRUNfQ09OU1RBTlRTX1JFTF9TVVJGQUNFKSB7CisJCQkJRFJN X0RFQlVHKCJyZWwgc3VyZmFjZSBjb25zdGFudHMgbW9kZSBpbnZhbGlkIG9uIGdlbjUrXG4iKTsK KwkJCQlyZXQgPSAtRUlOVkFMOworCQkJCWdvdG8gZXJyb3I7CisJCQl9CisKKwkJCS8qIFRoZSBI VyBjaGFuZ2VkIHRoZSBtZWFuaW5nIG9uIHRoaXMgYml0IG9uIGdlbjYgKi8KKwkJCWlmIChJTlRF TF9JTkZPKGRldiktPmdlbiA+PSA2KQorCQkJCWluc3RwX21hc2sgJj0gfkk5MTVfRVhFQ19DT05T VEFOVFNfUkVMX1NVUkZBQ0U7CisJCX0KKwkJYnJlYWs7CisJZGVmYXVsdDoKKwkJRFJNX0RFQlVH KCJleGVjYnVmIHdpdGggdW5rbm93biBjb25zdGFudHM6ICVkXG4iLCBpbnN0cF9tb2RlKTsKKwkJ cmV0ID0gLUVJTlZBTDsKKwkJZ290byBlcnJvcjsKKwl9CisKIAlpZiAoYXJncy0+bnVtX2NsaXBy ZWN0cyAhPSAwKSB7CiAJCWlmIChyaW5nICE9ICZkZXZfcHJpdi0+cmluZ1tSQ1NdKSB7CiAJCQlE Uk1fREVCVUcoImNsaXAgcmVjdGFuZ2xlcyBhcmUgb25seSB2YWxpZCB3aXRoIHRoZSByZW5kZXIg cmluZ1xuIik7CkBAIC0xMDg1LDYgKzExMjIsMTIgQEAgbGVnYWN5X3JpbmdidWZmZXJfc3VibWlz c2lvbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUsCiAJCX0K IAl9CiAKKwlpZiAoYXJncy0+ZmxhZ3MgJiBJOTE1X0VYRUNfR0VON19TT0xfUkVTRVQpIHsKKwkJ cmV0ID0gaTkxNV9yZXNldF9nZW43X3NvbF9vZmZzZXRzKGRldiwgcmluZyk7CisJCWlmIChyZXQp CisJCQlnb3RvIGVycm9yOworCX0KKwogCXJldCA9IGk5MTVfZ2VtX2V4ZWNidWZmZXJfbW92ZV90 b19ncHUocmluZywgdm1hcyk7CiAJaWYgKHJldCkKIAkJZ290byBlcnJvcjsKQEAgLTEwOTMsNDMg KzExMzYsNiBAQCBsZWdhY3lfcmluZ2J1ZmZlcl9zdWJtaXNzaW9uKHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYsIHN0cnVjdCBkcm1fZmlsZSAqZmlsZSwKIAlpZiAocmV0KQogCQlnb3RvIGVycm9yOwog Ci0JaW5zdHBfbW9kZSA9IGFyZ3MtPmZsYWdzICYgSTkxNV9FWEVDX0NPTlNUQU5UU19NQVNLOwot CWluc3RwX21hc2sgPSBJOTE1X0VYRUNfQ09OU1RBTlRTX01BU0s7Ci0Jc3dpdGNoIChpbnN0cF9t b2RlKSB7Ci0JY2FzZSBJOTE1X0VYRUNfQ09OU1RBTlRTX1JFTF9HRU5FUkFMOgotCWNhc2UgSTkx NV9FWEVDX0NPTlNUQU5UU19BQlNPTFVURToKLQljYXNlIEk5MTVfRVhFQ19DT05TVEFOVFNfUkVM X1NVUkZBQ0U6Ci0JCWlmIChpbnN0cF9tb2RlICE9IDAgJiYgcmluZyAhPSAmZGV2X3ByaXYtPnJp bmdbUkNTXSkgewotCQkJRFJNX0RFQlVHKCJub24tMCByZWwgY29uc3RhbnRzIG1vZGUgb24gbm9u LVJDU1xuIik7Ci0JCQlyZXQgPSAtRUlOVkFMOwotCQkJZ290byBlcnJvcjsKLQkJfQotCi0JCWlm IChpbnN0cF9tb2RlICE9IGRldl9wcml2LT5yZWxhdGl2ZV9jb25zdGFudHNfbW9kZSkgewotCQkJ aWYgKElOVEVMX0lORk8oZGV2KS0+Z2VuIDwgNCkgewotCQkJCURSTV9ERUJVRygibm8gcmVsIGNv bnN0YW50cyBvbiBwcmUtZ2VuNFxuIik7Ci0JCQkJcmV0ID0gLUVJTlZBTDsKLQkJCQlnb3RvIGVy cm9yOwotCQkJfQotCi0JCQlpZiAoSU5URUxfSU5GTyhkZXYpLT5nZW4gPiA1ICYmCi0JCQkgICAg aW5zdHBfbW9kZSA9PSBJOTE1X0VYRUNfQ09OU1RBTlRTX1JFTF9TVVJGQUNFKSB7Ci0JCQkJRFJN X0RFQlVHKCJyZWwgc3VyZmFjZSBjb25zdGFudHMgbW9kZSBpbnZhbGlkIG9uIGdlbjUrXG4iKTsK LQkJCQlyZXQgPSAtRUlOVkFMOwotCQkJCWdvdG8gZXJyb3I7Ci0JCQl9Ci0KLQkJCS8qIFRoZSBI VyBjaGFuZ2VkIHRoZSBtZWFuaW5nIG9uIHRoaXMgYml0IG9uIGdlbjYgKi8KLQkJCWlmIChJTlRF TF9JTkZPKGRldiktPmdlbiA+PSA2KQotCQkJCWluc3RwX21hc2sgJj0gfkk5MTVfRVhFQ19DT05T VEFOVFNfUkVMX1NVUkZBQ0U7Ci0JCX0KLQkJYnJlYWs7Ci0JZGVmYXVsdDoKLQkJRFJNX0RFQlVH KCJleGVjYnVmIHdpdGggdW5rbm93biBjb25zdGFudHM6ICVkXG4iLCBpbnN0cF9tb2RlKTsKLQkJ cmV0ID0gLUVJTlZBTDsKLQkJZ290byBlcnJvcjsKLQl9Ci0KIAlpZiAocmluZyA9PSAmZGV2X3By aXYtPnJpbmdbUkNTXSAmJgogCQkJaW5zdHBfbW9kZSAhPSBkZXZfcHJpdi0+cmVsYXRpdmVfY29u c3RhbnRzX21vZGUpIHsKIAkJcmV0ID0gaW50ZWxfcmluZ19iZWdpbihyaW5nLCA0KTsKQEAgLTEx NDUsMTIgKzExNTEsNiBAQCBsZWdhY3lfcmluZ2J1ZmZlcl9zdWJtaXNzaW9uKHN0cnVjdCBkcm1f ZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1fZmlsZSAqZmlsZSwKIAkJZGV2X3ByaXYtPnJlbGF0aXZl X2NvbnN0YW50c19tb2RlID0gaW5zdHBfbW9kZTsKIAl9CiAKLQlpZiAoYXJncy0+ZmxhZ3MgJiBJ OTE1X0VYRUNfR0VON19TT0xfUkVTRVQpIHsKLQkJcmV0ID0gaTkxNV9yZXNldF9nZW43X3NvbF9v ZmZzZXRzKGRldiwgcmluZyk7Ci0JCWlmIChyZXQpCi0JCQlnb3RvIGVycm9yOwotCX0KLQogCWV4 ZWNfbGVuID0gYXJncy0+YmF0Y2hfbGVuOwogCWlmIChjbGlwcmVjdHMpIHsKIAkJZm9yIChpID0g MDsgaSA8IGFyZ3MtPm51bV9jbGlwcmVjdHM7IGkrKykgewotLSAKMS43LjkuNQoKX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcg bGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVz a3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK