From mboxrd@z Thu Jan 1 00:00:00 1970 From: John.C.Harrison@Intel.com Subject: [PATCH v3 11/28] drm/i915: Add IRQ friendly request deference facility Date: Mon, 24 Nov 2014 18:49:33 +0000 Message-ID: <1416854990-1920-12-git-send-email-John.C.Harrison@Intel.com> References: <1416854990-1920-1-git-send-email-John.C.Harrison@Intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTP id E34A46EE1F for ; Mon, 24 Nov 2014 10:50:17 -0800 (PST) In-Reply-To: <1416854990-1920-1-git-send-email-John.C.Harrison@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 RnJvbTogSm9obiBIYXJyaXNvbiA8Sm9obi5DLkhhcnJpc29uQEludGVsLmNvbT4KClRoZSBuZXh0 IHBhdGNoZXMgaW4gdGhlIHNlcmllcyBjb252ZXJ0IHNvbWUgZGlzcGxheSByZWxhdGVkIHNlcW5v IHVzYWdlIHRvCnJlcXVlc3Qgc3RydWN0dXJlIHVzYWdlLiBIb3dldmVyLCB0aGUgcmVxdWVzdCBk ZXJlZmVyZW5jZSBpbnRyb2R1Y2VkIG11c3QgYmUKZG9uZSBmcm9tIGludGVycnVwdCBjb250ZXh0 LiBBcyB0aGUgZGVyZWZlcmVuY2UgcG90ZW50aWFsbHkgaW52b2x2ZXMgZnJlZWluZyB0aGUKcmVx dWVzdCBzdHJ1Y3R1cmUgYW5kIHRodXMgY2FsbGluZyBsb3RzIG9mIG5vbi1pbnRlcnJ1cHQgZnJp ZW5kbHkgY29kZSwgdGhpcwpwb3NlcyBhIHByb2JsZW0uCgpUaGUgc29sdXRpb24gaXMgdG8gYWRk IGFuIElSUSBmcmllbmRseSB2ZXJzaW9uIG9mIHRoZSBkZXJlZmVyZW5jZSBmdW5jdGlvbi4gQWxs CnRoaXMgZG9lcyBpcyB0byBhZGQgdGhlIHJlcXVlc3Qgc3RydWN0dXJlIHRvIGEgJ2RlbGF5ZWQg ZnJlZScgbGlzdCBhbmQgcmV0dXJuLgpUaGUgcmV0aXJlIGNvZGUsIHdoaWNoIGlzIHJ1biBwZXJp b2RpY2FsbHksIHRoZW4gcHJvY2Vzc2VzIHRoaXMgbGlzdCBhbmQgZG9lcwp0aGUgYWN0dWFsIGRl cmVmZXJlbmNpbmcgb2YgdGhlIHJlcXVlc3Qgc3RydWN0dXJlcy4KCnYyOiBBZGRlZCBhIGNvdW50 IHRvIGFsbG93IGZvciBtdWx0aXBsZSBJUlEgZGVyZWZlcmVuY2VzIG9mIHRoZSBzYW1lIHJlcXVl c3QgYXQKYSB0aW1lLgoKRm9yOiBWSVotNDM3NwpTaWduZWQtb2ZmLWJ5OiBKb2huIEhhcnJpc29u IDxKb2huLkMuSGFycmlzb25ASW50ZWwuY29tPgpSZXZpZXdlZC1ieTogVGhvbWFzIERhbmllbCA8 VGhvbWFzLkRhbmllbEBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9k cnYuaCAgICAgICAgIHwgICAgNyArKysrKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dl bS5jICAgICAgICAgfCAgIDMzICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIGRyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jICAgICAgICB8ICAgIDIgKysKIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuYyB8ICAgIDIgKysKIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX3JpbmdidWZmZXIuaCB8ICAgIDIgKysKIDUgZmlsZXMgY2hhbmdlZCwgNDYgaW5z ZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2Lmgg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCmluZGV4IDE0OTUzMmU2Li5lOWIwMWUx IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKQEAgLTIwMjUsNiArMjAyNSwxMCBAQCBzdHJ1Y3Qg ZHJtX2k5MTVfZ2VtX3JlcXVlc3QgewogCXN0cnVjdCBkcm1faTkxNV9maWxlX3ByaXZhdGUgKmZp bGVfcHJpdjsKIAkvKiogZmlsZV9wcml2IGxpc3QgZW50cnkgZm9yIHRoaXMgcmVxdWVzdCAqLwog CXN0cnVjdCBsaXN0X2hlYWQgY2xpZW50X2xpc3Q7CisKKwkvKiogZGVmZXJyZWQgZnJlZSBsaXN0 IGZvciBkZXJlZmVyZW5jaW5nIGZyb20gSVJRIGNvbnRleHQgKi8KKwlzdHJ1Y3QgbGlzdF9oZWFk IGRlbGF5X2ZyZWVfbGlzdDsKKwl1aW50MzJfdCBkZWxheV9mcmVlX2NvdW50OwogfTsKIAogdm9p ZCBpOTE1X2dlbV9yZXF1ZXN0X2ZyZWUoc3RydWN0IGtyZWYgKnJlcV9yZWYpOwpAQCAtMjA1MCw5 ICsyMDU0LDEyIEBAIGk5MTVfZ2VtX3JlcXVlc3RfcmVmZXJlbmNlKHN0cnVjdCBkcm1faTkxNV9n ZW1fcmVxdWVzdCAqcmVxKQogc3RhdGljIGlubGluZSB2b2lkCiBpOTE1X2dlbV9yZXF1ZXN0X3Vu cmVmZXJlbmNlKHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxKQogeworCVdBUk5fT04o IW11dGV4X2lzX2xvY2tlZCgmcmVxLT5yaW5nLT5kZXYtPnN0cnVjdF9tdXRleCkpOwogCWtyZWZf cHV0KCZyZXEtPnJlZiwgaTkxNV9nZW1fcmVxdWVzdF9mcmVlKTsKIH0KIAordm9pZCBpOTE1X2dl bV9yZXF1ZXN0X3VucmVmZXJlbmNlX2lycShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJl cSk7CisKIHN0YXRpYyBpbmxpbmUgdm9pZCBpOTE1X2dlbV9yZXF1ZXN0X2Fzc2lnbihzdHJ1Y3Qg ZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKipwZHN0LAogCQkJCQkgICBzdHJ1Y3QgZHJtX2k5MTVfZ2Vt X3JlcXVlc3QgKnNyYykKIHsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf Z2VtLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCmluZGV4IDhlMmM1MzAuLmI2 MmI5ZDkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwpAQCAtMjczMiw2ICsyNzMyLDE5IEBAIHZv aWQgaTkxNV9nZW1fcmVzZXQoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAlpOTE1X2dlbV9yZXN0 b3JlX2ZlbmNlcyhkZXYpOwogfQogCit2b2lkIGk5MTVfZ2VtX3JlcXVlc3RfdW5yZWZlcmVuY2Vf aXJxKHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxKQoreworCXN0cnVjdCBpbnRlbF9l bmdpbmVfY3MgKnJpbmcgPSByZXEtPnJpbmc7CisJdW5zaWduZWQgbG9uZyBmbGFnczsKKworCS8q IE5lZWQgdG8gYWRkIHRoZSByZXEgdG8gYSBkZWZlcnJlZCBkZXJlZmVyZW5jZSBsaXN0IHRvIGJl IHByb2Nlc3NlZAorCSAqIG91dHNpZGUgb2YgaW50ZXJydXB0IHRpbWUgKi8KKwlzcGluX2xvY2tf aXJxc2F2ZSgmcmluZy0+cmVxbGlzdF9sb2NrLCBmbGFncyk7CisJaWYgKHJlcS0+ZGVsYXlfZnJl ZV9jb3VudCsrID09IDApCisJCWxpc3RfYWRkX3RhaWwoJnJlcS0+ZGVsYXlfZnJlZV9saXN0LCAm cmluZy0+ZGVsYXllZF9mcmVlX2xpc3QpOworCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJnJpbmct PnJlcWxpc3RfbG9jaywgZmxhZ3MpOworfQorCiAvKioKICAqIFRoaXMgZnVuY3Rpb24gY2xlYXJz IHRoZSByZXF1ZXN0IGxpc3QgYXMgc2VxdWVuY2UgbnVtYmVycyBhcmUgcGFzc2VkLgogICovCkBA IC0yODA2LDYgKzI4MTksMjUgQEAgaTkxNV9nZW1fcmV0aXJlX3JlcXVlc3RzX3Jpbmcoc3RydWN0 IGludGVsX2VuZ2luZV9jcyAqcmluZykKIAkJcmluZy0+dHJhY2VfaXJxX3NlcW5vID0gMDsKIAl9 CiAKKwl3aGlsZSAoIWxpc3RfZW1wdHkoJnJpbmctPmRlbGF5ZWRfZnJlZV9saXN0KSkgeworCQlz dHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcXVlc3Q7CisJCXVuc2lnbmVkIGxvbmcgZmxh Z3M7CisJCXVpbnQzMl90IGNvdW50OworCisJCXJlcXVlc3QgPSBsaXN0X2ZpcnN0X2VudHJ5KCZy aW5nLT5kZWxheWVkX2ZyZWVfbGlzdCwKKwkJCQkJICAgc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1 ZXN0LAorCQkJCQkgICBkZWxheV9mcmVlX2xpc3QpOworCisJCXNwaW5fbG9ja19pcnFzYXZlKCZy ZXF1ZXN0LT5yaW5nLT5yZXFsaXN0X2xvY2ssIGZsYWdzKTsKKwkJbGlzdF9kZWwoJnJlcXVlc3Qt PmRlbGF5X2ZyZWVfbGlzdCk7CisJCWNvdW50ID0gcmVxdWVzdC0+ZGVsYXlfZnJlZV9jb3VudDsK KwkJcmVxdWVzdC0+ZGVsYXlfZnJlZV9jb3VudCA9IDA7CisJCXNwaW5fdW5sb2NrX2lycXJlc3Rv cmUoJnJlcXVlc3QtPnJpbmctPnJlcWxpc3RfbG9jaywgZmxhZ3MpOworCisJCXdoaWxlIChjb3Vu dC0tID4gMCkKKwkJCWk5MTVfZ2VtX3JlcXVlc3RfdW5yZWZlcmVuY2UocmVxdWVzdCk7CisJfQor CiAJV0FSTl9PTihpOTE1X3ZlcmlmeV9saXN0cyhyaW5nLT5kZXYpKTsKIH0KIApAQCAtNTAwNyw2 ICs1MDM5LDcgQEAgaW5pdF9yaW5nX2xpc3RzKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcp CiB7CiAJSU5JVF9MSVNUX0hFQUQoJnJpbmctPmFjdGl2ZV9saXN0KTsKIAlJTklUX0xJU1RfSEVB RCgmcmluZy0+cmVxdWVzdF9saXN0KTsKKwlJTklUX0xJU1RfSEVBRCgmcmluZy0+ZGVsYXllZF9m cmVlX2xpc3QpOwogfQogCiB2b2lkIGk5MTVfaW5pdF92bShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYsCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMu YyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jCmluZGV4IDYxNzcxNzkuLjA5ZjQ1 ODggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jCkBAIC0xMzgxLDcgKzEzODEsOSBAQCBzdGF0 aWMgaW50IGxvZ2ljYWxfcmluZ19pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBp bnRlbF9lbmdpbmVfY3MgKnJpbgogCXJpbmctPmRldiA9IGRldjsKIAlJTklUX0xJU1RfSEVBRCgm cmluZy0+YWN0aXZlX2xpc3QpOwogCUlOSVRfTElTVF9IRUFEKCZyaW5nLT5yZXF1ZXN0X2xpc3Qp OworCXNwaW5fbG9ja19pbml0KCZyaW5nLT5yZXFsaXN0X2xvY2spOwogCWluaXRfd2FpdHF1ZXVl X2hlYWQoJnJpbmctPmlycV9xdWV1ZSk7CisJSU5JVF9MSVNUX0hFQUQoJnJpbmctPmRlbGF5ZWRf ZnJlZV9saXN0KTsKIAogCUlOSVRfTElTVF9IRUFEKCZyaW5nLT5leGVjbGlzdF9xdWV1ZSk7CiAJ SU5JVF9MSVNUX0hFQUQoJnJpbmctPmV4ZWNsaXN0X3JldGlyZWRfcmVxX2xpc3QpOwpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5jIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5jCmluZGV4IGI5ZDBkMjkuLmUzMDgyYWYgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuYworKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmMKQEAgLTE4MDcsNiArMTgwNyw4 IEBAIHN0YXRpYyBpbnQgaW50ZWxfaW5pdF9yaW5nX2J1ZmZlcihzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2LAogCXJpbmctPmRldiA9IGRldjsKIAlJTklUX0xJU1RfSEVBRCgmcmluZy0+YWN0aXZlX2xp c3QpOwogCUlOSVRfTElTVF9IRUFEKCZyaW5nLT5yZXF1ZXN0X2xpc3QpOworCXNwaW5fbG9ja19p bml0KCZyaW5nLT5yZXFsaXN0X2xvY2spOworCUlOSVRfTElTVF9IRUFEKCZyaW5nLT5kZWxheWVk X2ZyZWVfbGlzdCk7CiAJSU5JVF9MSVNUX0hFQUQoJnJpbmctPmV4ZWNsaXN0X3F1ZXVlKTsKIAly aW5nYnVmLT5zaXplID0gMzIgKiBQQUdFX1NJWkU7CiAJcmluZ2J1Zi0+cmluZyA9IHJpbmc7CmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmggYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmgKaW5kZXggMmE4NGJkOS4uY2QxYTlm OSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oCisr KyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaApAQCAtMjYzLDYgKzI2 Myw4IEBAIHN0cnVjdCAgaW50ZWxfZW5naW5lX2NzIHsKIAkgKiBvdXRzdGFuZGluZy4KIAkgKi8K IAlzdHJ1Y3QgbGlzdF9oZWFkIHJlcXVlc3RfbGlzdDsKKwlzcGlubG9ja190IHJlcWxpc3RfbG9j azsKKwlzdHJ1Y3QgbGlzdF9oZWFkIGRlbGF5ZWRfZnJlZV9saXN0OwogCiAJLyoqCiAJICogRG8g d2UgaGF2ZSBzb21lIG5vdCB5ZXQgZW1pdHRlZCByZXF1ZXN0cyBvdXRzdGFuZGluZz8KLS0gCjEu Ny45LjUKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCklu dGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRw Oi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==