From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Daniel Subject: [PATCH 32/43] drm/i915/bdw: Avoid non-lite-restore preemptions Date: Thu, 24 Jul 2014 17:04:40 +0100 Message-ID: <1406217891-8912-33-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 46C8E6E724 for ; Thu, 24 Jul 2014 09:05:25 -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 RnJvbTogT3NjYXIgTWF0ZW8gPG9zY2FyLm1hdGVvQGludGVsLmNvbT4KCkluIHRoZSBjdXJyZW50 IEV4ZWNsaXN0cyBmZWVkaW5nIG1lY2hhbmlzbSwgZnVsbCBwcmVlbXB0aW9uIGlzIG5vdApzdXBw b3J0ZWQgeWV0OiBvbmx5IGxpdGUtcmVzdG9yZXMgYXJlIGFsbG93ZWQgKHRoaXMgaXM6IHRoZSBH UFUKc2ltcGx5IHNhbXBsZXMgYSBuZXcgdGFpbCBwb2ludGVyIGZvciB0aGUgY29udGV4dCBjdXJy ZW50bHkgaW4KZXhlY3V0aW9uKS4KCkJ1dCB3ZSBoYXZlIGlkZW50aWZpZWQgYW4gc2NlbmFyaW8g aW4gd2hpY2ggYSBmdWxsIHByZWVtcHRpb24gb2NjdXJzOgoxKSBXZSBzdWJtaXQgdHdvIGNvbnRl eHRzIGZvciBleGVjdXRpb24gKEEgJiBCKS4KMikgVGhlIEdQVSBmaW5pc2hlcyB3aXRoIHRoZSBm aXJzdCBvbmUgKEEpLCBzd2l0Y2hlcyB0byB0aGUgc2Vjb25kIG9uZQooQikgYW5kIGluZm9ybXMg dXMuCjMpIFdlIHN1Ym1pdCBCIGFnYWluIChob3BpbmcgdG8gY2F1c2UgYSBsaXRlIHJlc3RvcmUp IHRvZ2V0aGVyIHdpdGggQywKYnV0IGluIHRoZSB0aW1lIHdlIHNwZW5kIHdyaXRpbmcgdG8gdGhl IEVMU1AsIHRoZSBHUFUgZmluaXNoZXMgQi4KNCkgVGhlIEdQVSBzdGFydCBleGVjdXRpbmcgQiBh Z2FpbiAoc2luY2Ugd2UgdG9sZCBpdCBzbykuCjUpIFdlIHJlY2VpdmUgYSBCIGZpbmlzaGVkIGlu dGVycnVwdCBhbmQsIG1pc3Rha2VubHksIHdlIHN1Ym1pdCBDIChhZ2FpbikKYW5kIEQsIGNhdXNp bmcgYSBmdWxsIHByZWVtcHRpb24gb2YgQi4KClRoZSByYWNlIGlzIGF2b2lkZWQgYnkga2VlcGlu ZyB0cmFjayBvZiBob3cgbWFueSB0aW1lcyBhIGNvbnRleHQgaGFzIGJlZW4Kc3VibWl0dGVkIHRv IHRoZSBoYXJkd2FyZSBhbmQgYnkgYmV0dGVyIGRpc2NyaW1pbmF0aW5nIHRoZSByZWNlaXZlZCBj b250ZXh0CnN3aXRjaCBpbnRlcnJ1cHRzOiBpbiB0aGUgZXhhbXBsZSwgd2hlbiB3ZSBoYXZlIHN1 Ym1pdHRlZCBCIHR3aWNlLCB3ZSB3b27CtHQKc3VibWl0IEMgYW5kIEQgYXMgc29vbiBhcyB3ZSBy ZWNlaXZlIHRoZSBub3RpZmljYXRpb24gdGhhdCBCIGlzIGNvbXBsZXRlZApiZWNhdXNlIHdlIHdl cmUgZXhwZWN0aW5nIHRvIGdldCBhIExJVEVfUkVTVE9SRSBhbmQgd2UgZGlkbsK0dCwgc28gd2Ug a25vdyBhCnNlY29uZCBjb21wbGV0aW9uIHdpbGwgYmUgcmVjZWl2ZWQgc2hvcnRseS4KCldpdGhv dXQgdGhpcyBleHBsaWNpdCBjaGVja2luZywgc29tZWhvdywgdGhlIGJhdGNoIGJ1ZmZlciBleGVj dXRpb24gb3JkZXIKZ2V0cyBtZXNzZWQgd2l0aC4gVGhpcyBjYW4gYmUgdmVyaWZpZWQgd2l0aCB0 aGUgSUdUIHRlc3QgSSBzZW50IHRvZ2V0aGVyIHdpdGgKdGhlIHNlcmllcy4gSSBkb27CtHQga25v dyB0aGUgZXhhY3QgbWVjaGFuaXNtIGJ5IHdoaWNoIHRoZSBwcmUtZW1wdGlvbiBtZXNzZXMKd2l0 aCB0aGUgZXhlY3V0aW9uIG9yZGVyIGJ1dCwgc2luY2Ugb3RoZXIgcGVvcGxlIGlzIHdvcmtpbmcg b24gdGhlIFNjaGVkdWxlcgorIFByZWVtcHRpb24gb24gRXhlY2xpc3RzLCBJIGRpZG7CtHQgdHJ5 IHRvIGZpeCBpdC4gSW4gdGhlc2Ugc2VyaWVzLCBvbmx5IExpdGUKUmVzdG9yZXMgYXJlIHN1cHBv cnRlZCAob3RoZXIga2luZCBvZiBwcmVlbXB0aW9ucyBXQVJOKS4KCnYyOiBlbHNwX3N1Ym1pdHRl ZCBiZWxvbmdzIGluIHRoZSBuZXcgaW50ZWxfY3R4X3N1Ym1pdF9yZXF1ZXN0LiBTZXZlcmFsCnJl YmFzZSBjaGFuZ2VzLgoKdjM6IENsYXJpZnkgaG93IHRoZSByYWNlIGlzIGF2b2lkZWQsIGFzIHJl cXVlc3RlZCBieSBEYW5pZWwuCgpTaWduZWQtb2ZmLWJ5OiBPc2NhciBNYXRlbyA8b3NjYXIubWF0 ZW9AaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jIHwgICAy OCArKysrKysrKysrKysrKysrKysrKysrKystLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9scmMuaCB8ICAgIDIgKysKIDIgZmlsZXMgY2hhbmdlZCwgMjYgaW5zZXJ0aW9ucygrKSwgNCBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMu YyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jCmluZGV4IDY1ZjRmMjYuLjg5NWRi ZmMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jCkBAIC0yNjQsNiArMjY0LDcgQEAgc3RhdGlj IHZvaWQgZXhlY2xpc3RzX2NvbnRleHRfdW5xdWV1ZShzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpy aW5nKQogCQllbHNlIGlmIChyZXEwLT5jdHggPT0gY3Vyc29yLT5jdHgpIHsKIAkJCS8qIFNhbWUg Y3R4OiBpZ25vcmUgZmlyc3QgcmVxdWVzdCwgYXMgc2Vjb25kIHJlcXVlc3QKIAkJCSAqIHdpbGwg dXBkYXRlIHRhaWwgcGFzdCBmaXJzdCByZXF1ZXN0J3Mgd29ya2xvYWQgKi8KKwkJCWN1cnNvci0+ ZWxzcF9zdWJtaXR0ZWQgPSByZXEwLT5lbHNwX3N1Ym1pdHRlZDsKIAkJCWxpc3RfZGVsKCZyZXEw LT5leGVjbGlzdF9saW5rKTsKIAkJCXF1ZXVlX3dvcmsoZGV2X3ByaXYtPndxLCAmcmVxMC0+d29y ayk7CiAJCQlyZXEwID0gY3Vyc29yOwpAQCAtMjczLDggKzI3NCwxNCBAQCBzdGF0aWMgdm9pZCBl eGVjbGlzdHNfY29udGV4dF91bnF1ZXVlKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcpCiAJ CX0KIAl9CiAKKwlXQVJOX09OKHJlcTEgJiYgcmVxMS0+ZWxzcF9zdWJtaXR0ZWQpOworCiAJQlVH X09OKGV4ZWNsaXN0c19zdWJtaXRfY29udGV4dChyaW5nLCByZXEwLT5jdHgsIHJlcTAtPnRhaWws CiAJCQlyZXExPyByZXExLT5jdHggOiBOVUxMLCByZXExPyByZXExLT50YWlsIDogMCkpOworCisJ cmVxMC0+ZWxzcF9zdWJtaXR0ZWQrKzsKKwlpZiAocmVxMSkKKwkJcmVxMS0+ZWxzcF9zdWJtaXR0 ZWQrKzsKIH0KIAogc3RhdGljIGJvb2wgZXhlY2xpc3RzX2NoZWNrX3JlbW92ZV9yZXF1ZXN0KHN0 cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcsCkBAIC0yOTEsOSArMjk4LDEzIEBAIHN0YXRpYyBi b29sIGV4ZWNsaXN0c19jaGVja19yZW1vdmVfcmVxdWVzdChzdHJ1Y3QgaW50ZWxfZW5naW5lX2Nz ICpyaW5nLAogCQlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqY3R4X29iaiA9CiAJCQkJaGVh ZF9yZXEtPmN0eC0+ZW5naW5lW3JpbmctPmlkXS5zdGF0ZTsKIAkJaWYgKGludGVsX2V4ZWNsaXN0 c19jdHhfaWQoY3R4X29iaikgPT0gcmVxdWVzdF9pZCkgewotCQkJbGlzdF9kZWwoJmhlYWRfcmVx LT5leGVjbGlzdF9saW5rKTsKLQkJCXF1ZXVlX3dvcmsoZGV2X3ByaXYtPndxLCAmaGVhZF9yZXEt PndvcmspOwotCQkJcmV0dXJuIHRydWU7CisJCQlXQVJOKGhlYWRfcmVxLT5lbHNwX3N1Ym1pdHRl ZCA9PSAwLAorCQkJCQkiTmV2ZXIgc3VibWl0dGVkIGhlYWQgcmVxdWVzdFxuIik7CisJCQlpZiAo LS1oZWFkX3JlcS0+ZWxzcF9zdWJtaXR0ZWQgPD0gMCkgeworCQkJCWxpc3RfZGVsKCZoZWFkX3Jl cS0+ZXhlY2xpc3RfbGluayk7CisJCQkJcXVldWVfd29yayhkZXZfcHJpdi0+d3EsICZoZWFkX3Jl cS0+d29yayk7CisJCQkJcmV0dXJuIHRydWU7CisJCQl9CiAJCX0KIAl9CiAKQEAgLTMyNiw3ICsz MzcsMTYgQEAgdm9pZCBpbnRlbF9leGVjbGlzdHNfaGFuZGxlX2N0eF9ldmVudHMoc3RydWN0IGlu dGVsX2VuZ2luZV9jcyAqcmluZykKIAkJc3RhdHVzX2lkID0gSTkxNV9SRUFEKFJJTkdfQ09OVEVY VF9TVEFUVVNfQlVGKHJpbmcpICsKIAkJCQkocmVhZF9wb2ludGVyICUgNikgKiA4ICsgNCk7CiAK LQkJaWYgKHN0YXR1cyAmIEdFTjhfQ1RYX1NUQVRVU19DT01QTEVURSkgeworCQlpZiAoc3RhdHVz ICYgR0VOOF9DVFhfU1RBVFVTX1BSRUVNUFRFRCkgeworCQkJaWYgKHN0YXR1cyAmIEdFTjhfQ1RY X1NUQVRVU19MSVRFX1JFU1RPUkUpIHsKKwkJCQlpZiAoZXhlY2xpc3RzX2NoZWNrX3JlbW92ZV9y ZXF1ZXN0KHJpbmcsIHN0YXR1c19pZCkpCisJCQkJCVdBUk4oMSwgIkxpdGUgUmVzdG9yZWQgcmVx dWVzdCByZW1vdmVkIGZyb20gcXVldWVcbiIpOworCQkJfSBlbHNlCisJCQkJV0FSTigxLCAiUHJl ZW1wdGlvbiB3aXRob3V0IExpdGUgUmVzdG9yZVxuIik7CisJCX0KKworCQkgaWYgKChzdGF0dXMg JiBHRU44X0NUWF9TVEFUVVNfQUNUSVZFX0lETEUpIHx8CisJCSAgICAgKHN0YXR1cyAmIEdFTjhf Q1RYX1NUQVRVU19FTEVNRU5UX1NXSVRDSCkpIHsKIAkJCWlmIChleGVjbGlzdHNfY2hlY2tfcmVt b3ZlX3JlcXVlc3QocmluZywgc3RhdHVzX2lkKSkKIAkJCQlzdWJtaXRfY29udGV4dHMrKzsKIAkJ fQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmggYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuaAppbmRleCAyZTg5MjlmLi4wNzRiNDRmIDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuaAorKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9scmMuaApAQCAtNjcsNiArNjcsOCBAQCBzdHJ1Y3QgaW50ZWxfY3R4X3N1 Ym1pdF9yZXF1ZXN0IHsKIAogCXN0cnVjdCBsaXN0X2hlYWQgZXhlY2xpc3RfbGluazsKIAlzdHJ1 Y3Qgd29ya19zdHJ1Y3Qgd29yazsKKworCWludCBlbHNwX3N1Ym1pdHRlZDsKIH07CiAKIHZvaWQg aW50ZWxfZXhlY2xpc3RzX2hhbmRsZV9jdHhfZXZlbnRzKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3Mg KnJpbmcpOwotLSAKMS43LjkuNQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRl c2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9p bnRlbC1nZngK