From mboxrd@z Thu Jan 1 00:00:00 1970 From: John.C.Harrison@Intel.com Subject: [PATCH v2 11/28] drm/i915: Add IRQ friendly request deference facility Date: Fri, 14 Nov 2014 12:19:02 +0000 Message-ID: <1415967559-17074-12-git-send-email-John.C.Harrison@Intel.com> References: <1415967559-17074-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 mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id 9918C6EDC5 for ; Fri, 14 Nov 2014 04:19:33 -0800 (PST) In-Reply-To: <1415967559-17074-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 IDxKb2huLkMuSGFycmlzb25ASW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZHJ2LmggICAgICAgICB8ICAgIDcgKysrKysrKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9nZW0uYyAgICAgICAgIHwgICAzMyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYyAgICAgICAgfCAgICAyICsrCiBkcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmMgfCAgICAzICsrKwogZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oIHwgICAgMiArKwogNSBmaWxlcyBjaGFuZ2VkLCA0 NyBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9k cnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXggMTgwYjY3NC4uODdj YjM1NSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAorKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCkBAIC0yMDE5LDYgKzIwMTksMTAgQEAgc3Ry dWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0IHsKIAlzdHJ1Y3QgZHJtX2k5MTVfZmlsZV9wcml2YXRl ICpmaWxlX3ByaXY7CiAJLyoqIGZpbGVfcHJpdiBsaXN0IGVudHJ5IGZvciB0aGlzIHJlcXVlc3Qg Ki8KIAlzdHJ1Y3QgbGlzdF9oZWFkIGNsaWVudF9saXN0OworCisJLyoqIGRlZmVycmVkIGZyZWUg bGlzdCBmb3IgZGVyZWZlcmVuY2luZyBmcm9tIElSUSBjb250ZXh0ICovCisJc3RydWN0IGxpc3Rf aGVhZCBkZWxheV9mcmVlX2xpc3Q7CisJdWludDMyX3QgZGVsYXlfZnJlZV9jb3VudDsKIH07CiAK IHZvaWQgaTkxNV9nZW1fcmVxdWVzdF9mcmVlKHN0cnVjdCBrcmVmICpyZXFfcmVmKTsKQEAgLTIw NDQsOSArMjA0OCwxMiBAQCBpOTE1X2dlbV9yZXF1ZXN0X3JlZmVyZW5jZShzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX3JlcXVlc3QgKnJlcSkKIHN0YXRpYyBpbmxpbmUgdm9pZAogaTkxNV9nZW1fcmVxdWVz dF91bnJlZmVyZW5jZShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSkKIHsKKwlXQVJO X09OKCFtdXRleF9pc19sb2NrZWQoJnJlcS0+cmluZy0+ZGV2LT5zdHJ1Y3RfbXV0ZXgpKTsKIAlr cmVmX3B1dCgmcmVxLT5yZWYsIGk5MTVfZ2VtX3JlcXVlc3RfZnJlZSk7CiB9CiAKK3ZvaWQgaTkx NV9nZW1fcmVxdWVzdF91bnJlZmVyZW5jZV9pcnEoc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0 ICpyZXEpOworCiBzdGF0aWMgaW5saW5lIHZvaWQgaTkxNV9nZW1fcmVxdWVzdF9hc3NpZ24oc3Ry dWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICoqcGRzdCwKIAkJCQkJICAgc3RydWN0IGRybV9pOTE1 X2dlbV9yZXF1ZXN0ICpzcmMpCiB7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2dlbS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwppbmRleCA2MGU1ZWVj Li44NDUzYmJkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCisr KyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKQEAgLTI3MjIsNiArMjcyMiwxOSBA QCB2b2lkIGk5MTVfZ2VtX3Jlc2V0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJaTkxNV9nZW1f cmVzdG9yZV9mZW5jZXMoZGV2KTsKIH0KIAordm9pZCBpOTE1X2dlbV9yZXF1ZXN0X3VucmVmZXJl bmNlX2lycShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSkKK3sKKwlzdHJ1Y3QgaW50 ZWxfZW5naW5lX2NzICpyaW5nID0gcmVxLT5yaW5nOworCXVuc2lnbmVkIGxvbmcgZmxhZ3M7CisK KwkvKiBOZWVkIHRvIGFkZCB0aGUgcmVxIHRvIGEgZGVmZXJyZWQgZGVyZWZlcmVuY2UgbGlzdCB0 byBiZSBwcm9jZXNzZWQKKwkgKiBvdXRzaWRlIG9mIGludGVycnVwdCB0aW1lICovCisJc3Bpbl9s b2NrX2lycXNhdmUoJnJpbmctPnJlcWxpc3RfbG9jaywgZmxhZ3MpOworCWlmIChyZXEtPmRlbGF5 X2ZyZWVfY291bnQrKyA9PSAwKQorCQlsaXN0X2FkZF90YWlsKCZyZXEtPmRlbGF5X2ZyZWVfbGlz dCwgJnJpbmctPmRlbGF5ZWRfZnJlZV9saXN0KTsKKwlzcGluX3VubG9ja19pcnFyZXN0b3JlKCZy aW5nLT5yZXFsaXN0X2xvY2ssIGZsYWdzKTsKK30KKwogLyoqCiAgKiBUaGlzIGZ1bmN0aW9uIGNs ZWFycyB0aGUgcmVxdWVzdCBsaXN0IGFzIHNlcXVlbmNlIG51bWJlcnMgYXJlIHBhc3NlZC4KICAq LwpAQCAtMjc5Niw2ICsyODA5LDI1IEBAIGk5MTVfZ2VtX3JldGlyZV9yZXF1ZXN0c19yaW5nKHN0 cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcpCiAJCXJpbmctPnRyYWNlX2lycV9zZXFubyA9IDA7 CiAJfQogCisJd2hpbGUgKCFsaXN0X2VtcHR5KCZyaW5nLT5kZWxheWVkX2ZyZWVfbGlzdCkpIHsK KwkJc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXF1ZXN0OworCQl1bnNpZ25lZCBsb25n IGZsYWdzOworCQl1aW50MzJfdCBjb3VudDsKKworCQlyZXF1ZXN0ID0gbGlzdF9maXJzdF9lbnRy eSgmcmluZy0+ZGVsYXllZF9mcmVlX2xpc3QsCisJCQkJCSAgIHN0cnVjdCBkcm1faTkxNV9nZW1f cmVxdWVzdCwKKwkJCQkJICAgZGVsYXlfZnJlZV9saXN0KTsKKworCQlzcGluX2xvY2tfaXJxc2F2 ZSgmcmVxdWVzdC0+cmluZy0+cmVxbGlzdF9sb2NrLCBmbGFncyk7CisJCWxpc3RfZGVsKCZyZXF1 ZXN0LT5kZWxheV9mcmVlX2xpc3QpOworCQljb3VudCA9IHJlcXVlc3QtPmRlbGF5X2ZyZWVfY291 bnQ7CisJCXJlcXVlc3QtPmRlbGF5X2ZyZWVfY291bnQgPSAwOworCQlzcGluX3VubG9ja19pcnFy ZXN0b3JlKCZyZXF1ZXN0LT5yaW5nLT5yZXFsaXN0X2xvY2ssIGZsYWdzKTsKKworCQl3aGlsZSAo Y291bnQtLSA+IDApCisJCQlpOTE1X2dlbV9yZXF1ZXN0X3VucmVmZXJlbmNlKHJlcXVlc3QpOwor CX0KKwogCVdBUk5fT04oaTkxNV92ZXJpZnlfbGlzdHMocmluZy0+ZGV2KSk7CiB9CiAKQEAgLTUw NTUsNiArNTA4Nyw3IEBAIGluaXRfcmluZ19saXN0cyhzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpy aW5nKQogewogCUlOSVRfTElTVF9IRUFEKCZyaW5nLT5hY3RpdmVfbGlzdCk7CiAJSU5JVF9MSVNU X0hFQUQoJnJpbmctPnJlcXVlc3RfbGlzdCk7CisJSU5JVF9MSVNUX0hFQUQoJnJpbmctPmRlbGF5 ZWRfZnJlZV9saXN0KTsKIH0KIAogdm9pZCBpOTE1X2luaXRfdm0oc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2LApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf bHJjLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYwppbmRleCBlYmEwYWNkLi5k YjhlZmFhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYworKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYwpAQCAtMTI4Nyw3ICsxMjg3LDkgQEAg c3RhdGljIGludCBsb2dpY2FsX3JpbmdfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1 Y3QgaW50ZWxfZW5naW5lX2NzICpyaW4KIAlyaW5nLT5kZXYgPSBkZXY7CiAJSU5JVF9MSVNUX0hF QUQoJnJpbmctPmFjdGl2ZV9saXN0KTsKIAlJTklUX0xJU1RfSEVBRCgmcmluZy0+cmVxdWVzdF9s aXN0KTsKKwlzcGluX2xvY2tfaW5pdCgmcmluZy0+cmVxbGlzdF9sb2NrKTsKIAlpbml0X3dhaXRx dWV1ZV9oZWFkKCZyaW5nLT5pcnFfcXVldWUpOworCUlOSVRfTElTVF9IRUFEKCZyaW5nLT5kZWxh eWVkX2ZyZWVfbGlzdCk7CiAKIAlJTklUX0xJU1RfSEVBRCgmcmluZy0+ZXhlY2xpc3RfcXVldWUp OwogCXNwaW5fbG9ja19pbml0KCZyaW5nLT5leGVjbGlzdF9sb2NrKTsKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX3JpbmdidWZmZXIuYwppbmRleCA3NGM0OGVkLi40MzM4MTMyIDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5jCkBAIC0xODA4LDYgKzE4MDgsOCBAQCBzdGF0 aWMgaW50IGludGVsX2luaXRfcmluZ19idWZmZXIoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAly aW5nLT5kZXYgPSBkZXY7CiAJSU5JVF9MSVNUX0hFQUQoJnJpbmctPmFjdGl2ZV9saXN0KTsKIAlJ TklUX0xJU1RfSEVBRCgmcmluZy0+cmVxdWVzdF9saXN0KTsKKwlzcGluX2xvY2tfaW5pdCgmcmlu Zy0+cmVxbGlzdF9sb2NrKTsKKwlJTklUX0xJU1RfSEVBRCgmcmluZy0+ZGVsYXllZF9mcmVlX2xp c3QpOwogCUlOSVRfTElTVF9IRUFEKCZyaW5nLT5leGVjbGlzdF9xdWV1ZSk7CiAJcmluZ2J1Zi0+ c2l6ZSA9IDMyICogUEFHRV9TSVpFOwogCXJpbmdidWYtPnJpbmcgPSByaW5nOwpAQCAtMjUxMCw2 ICsyNTEyLDcgQEAgaW50IGludGVsX3JlbmRlcl9yaW5nX2luaXRfZHJpKHN0cnVjdCBkcm1fZGV2 aWNlICpkZXYsIHU2NCBzdGFydCwgdTMyIHNpemUpCiAJcmluZy0+ZGV2ID0gZGV2OwogCUlOSVRf TElTVF9IRUFEKCZyaW5nLT5hY3RpdmVfbGlzdCk7CiAJSU5JVF9MSVNUX0hFQUQoJnJpbmctPnJl cXVlc3RfbGlzdCk7CisJSU5JVF9MSVNUX0hFQUQoJnJpbmctPmRlbGF5ZWRfZnJlZV9saXN0KTsK IAogCXJpbmdidWYtPnNpemUgPSBzaXplOwogCXJpbmdidWYtPmVmZmVjdGl2ZV9zaXplID0gcmlu Z2J1Zi0+c2l6ZTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3Jpbmdi dWZmZXIuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaAppbmRleCA4 MjRmNTg4NC4uM2FmN2I3YyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf cmluZ2J1ZmZlci5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIu aApAQCAtMjYyLDYgKzI2Miw4IEBAIHN0cnVjdCAgaW50ZWxfZW5naW5lX2NzIHsKIAkgKiBvdXRz dGFuZGluZy4KIAkgKi8KIAlzdHJ1Y3QgbGlzdF9oZWFkIHJlcXVlc3RfbGlzdDsKKwlzcGlubG9j a190IHJlcWxpc3RfbG9jazsKKwlzdHJ1Y3QgbGlzdF9oZWFkIGRlbGF5ZWRfZnJlZV9saXN0Owog CiAJLyoqCiAJICogRG8gd2UgaGF2ZSBzb21lIG5vdCB5ZXQgZW1pdHRlZCByZXF1ZXN0cyBvdXRz dGFuZGluZz8KLS0gCjEuNy45LjUKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8v aW50ZWwtZ2Z4Cg==