From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH 10/32] drm/i915: Introduce context->enter() and context->exit() Date: Wed, 17 Apr 2019 08:56:35 +0100 Message-ID: <20190417075657.19456-10-chris@chris-wilson.co.uk> References: <20190417075657.19456-1-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from fireflyinternet.com (mail.fireflyinternet.com [109.228.58.192]) by gabe.freedesktop.org (Postfix) with ESMTPS id 3AAA46E02B for ; Wed, 17 Apr 2019 08:14:58 +0000 (UTC) In-Reply-To: <20190417075657.19456-1-chris@chris-wilson.co.uk> 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 V2Ugd2lzaCB0byBzdGFydCBzZWdyZWdhdGluZyB0aGUgcG93ZXIgbWFuYWdlbWVudCBpbnRvIGRp ZmZlcmVudCBjb250cm9sCmRvbWFpbnMsIGJvdGggd2l0aCByZXNwZWN0IHRvIHRoZSBoYXJkd2Fy ZSBhbmQgdGhlIHVzZXIgaW50ZXJmYWNlLiBUaGUKZmlyc3Qgc3RlcCBpcyB0aGF0IGF0IHRoZSBs b3dlc3QgbGV2ZWwgZmxvdyBvZiByZXF1ZXN0cywgd2Ugd2FudCB0bwpwcm9jZXNzIGEgY29udGV4 dCBldmVudCAoYW5kIG5vdCBhIGdsb2JhbCBHRU0gb3BlcmF0aW9uKS4gSW4gdGhpcyBwYXRjaCwK d2UgaW50cm9kdWNlIHRoZSBjb250ZXh0IGNhbGxiYWNrcyB0aGF0IGluIGZ1dHVyZSBwYXRjaGVz IHdpbGwgYmUKcmVkaXJlY3RlZCB0byBwZXItZW5naW5lIGludGVyZmFjZXMgbGVhZGluZyB0byBn bG9iYWwgb3BlcmF0aW9ucyBhcwpyZXF1aXJlZC4KClRoZSBpbnRlbnQgaXMgdGhhdCB0aGlzIHdp bGwgYmUgZ3VhcmRlZCBieSB0aGUgdGltZWxpbmUtPm11dGV4LCBleGNlcHQKdGhhdCByZXRpcmlu ZyBoYXMgbm90IHF1aXRlIGZpbmlzaGVkIHRyYW5zaXRpb25pbmcgb3ZlciBmcm9tIGJlaW5nCmd1 YXJkZWQgYnkgc3RydWN0X211dGV4LiBTbyBhdCB0aGUgbW9tZW50IGl0IGlzIHByb3RlY3RlZCBi eQpzdHJ1Y3RfbXV0ZXggd2l0aCBhIHJlbWluZGVkIHRvIHN3aXRjaC4KCnYyOiBSZW5hbWUgZGVm YXVsdCBoYW5kbGVycyB0byBpbnRlbF9jb250ZXh0X2VudGVyX2VuZ2luZS4KClNpZ25lZC1vZmYt Ynk6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgpDYzogVHZydGtvIFVy c3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KUmV2aWV3ZWQtYnk6IFR2cnRrbyBVcnN1 bGluIDx0dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUv Z3QvaW50ZWxfY29udGV4dC5jICAgICAgIHwgMTcgKysrKysrKysrKysrKysKIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2d0L2ludGVsX2NvbnRleHQuaCAgICAgICB8IDIxICsrKysrKysrKysrKysrKysr KwogZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfY29udGV4dF90eXBlcy5oIHwgIDUgKysr KysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2xyYy5jICAgICAgICAgICB8ICAzICsr KwogZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfcmluZ2J1ZmZlci5jICAgIHwgIDMgKysr CiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9tb2NrX2VuZ2luZS5jICAgICAgICAgfCAgMyArKysK IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVxdWVzdC5jICAgICAgICAgICB8IDIyICsrKyst LS0tLS0tLS0tLS0tLS0KIDcgZmlsZXMgY2hhbmdlZCwgNTYgaW5zZXJ0aW9ucygrKSwgMTggZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfY29u dGV4dC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfY29udGV4dC5jCmluZGV4IGVi ZDFlNTkxOWE0YS4uNDQxMGUyMGU4ZTEzIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9ndC9pbnRlbF9jb250ZXh0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxf Y29udGV4dC5jCkBAIC0yNjYsMyArMjY2LDIwIEBAIGludCBfX2luaXQgaTkxNV9nbG9iYWxfY29u dGV4dF9pbml0KHZvaWQpCiAJaTkxNV9nbG9iYWxfcmVnaXN0ZXIoJmdsb2JhbC5iYXNlKTsKIAly ZXR1cm4gMDsKIH0KKwordm9pZCBpbnRlbF9jb250ZXh0X2VudGVyX2VuZ2luZShzdHJ1Y3QgaW50 ZWxfY29udGV4dCAqY2UpCit7CisJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUgPSBjZS0+ Z2VtX2NvbnRleHQtPmk5MTU7CisKKwlpZiAoIWk5MTUtPmd0LmFjdGl2ZV9yZXF1ZXN0cysrKQor CQlpOTE1X2dlbV91bnBhcmsoaTkxNSk7Cit9CisKK3ZvaWQgaW50ZWxfY29udGV4dF9leGl0X2Vu Z2luZShzdHJ1Y3QgaW50ZWxfY29udGV4dCAqY2UpCit7CisJc3RydWN0IGRybV9pOTE1X3ByaXZh dGUgKmk5MTUgPSBjZS0+Z2VtX2NvbnRleHQtPmk5MTU7CisKKwlHRU1fQlVHX09OKCFpOTE1LT5n dC5hY3RpdmVfcmVxdWVzdHMpOworCWlmICghLS1pOTE1LT5ndC5hY3RpdmVfcmVxdWVzdHMpCisJ CWk5MTVfZ2VtX3BhcmsoaTkxNSk7Cit9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9ndC9pbnRlbF9jb250ZXh0LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9jb250 ZXh0LmgKaW5kZXggZWJjODYxYjFhNDllLi5iNzMyY2Y5OWVmY2IgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2NvbnRleHQuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9ndC9pbnRlbF9jb250ZXh0LmgKQEAgLTczLDYgKzczLDI3IEBAIHN0YXRpYyBpbmxpbmUg dm9pZCBfX2ludGVsX2NvbnRleHRfcGluKHN0cnVjdCBpbnRlbF9jb250ZXh0ICpjZSkKIAogdm9p ZCBpbnRlbF9jb250ZXh0X3VucGluKHN0cnVjdCBpbnRlbF9jb250ZXh0ICpjZSk7CiAKK3ZvaWQg aW50ZWxfY29udGV4dF9lbnRlcl9lbmdpbmUoc3RydWN0IGludGVsX2NvbnRleHQgKmNlKTsKK3Zv aWQgaW50ZWxfY29udGV4dF9leGl0X2VuZ2luZShzdHJ1Y3QgaW50ZWxfY29udGV4dCAqY2UpOwor CitzdGF0aWMgaW5saW5lIHZvaWQgaW50ZWxfY29udGV4dF9lbnRlcihzdHJ1Y3QgaW50ZWxfY29u dGV4dCAqY2UpCit7CisJaWYgKCFjZS0+YWN0aXZlX2NvdW50KyspCisJCWNlLT5vcHMtPmVudGVy KGNlKTsKK30KKworc3RhdGljIGlubGluZSB2b2lkIGludGVsX2NvbnRleHRfbWFya19hY3RpdmUo c3RydWN0IGludGVsX2NvbnRleHQgKmNlKQoreworCSsrY2UtPmFjdGl2ZV9jb3VudDsKK30KKwor c3RhdGljIGlubGluZSB2b2lkIGludGVsX2NvbnRleHRfZXhpdChzdHJ1Y3QgaW50ZWxfY29udGV4 dCAqY2UpCit7CisJR0VNX0JVR19PTighY2UtPmFjdGl2ZV9jb3VudCk7CisJaWYgKCEtLWNlLT5h Y3RpdmVfY291bnQpCisJCWNlLT5vcHMtPmV4aXQoY2UpOworfQorCiBzdGF0aWMgaW5saW5lIHN0 cnVjdCBpbnRlbF9jb250ZXh0ICppbnRlbF9jb250ZXh0X2dldChzdHJ1Y3QgaW50ZWxfY29udGV4 dCAqY2UpCiB7CiAJa3JlZl9nZXQoJmNlLT5yZWYpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvZ3QvaW50ZWxfY29udGV4dF90eXBlcy5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv Z3QvaW50ZWxfY29udGV4dF90eXBlcy5oCmluZGV4IDllYzRmNzg3YzkwOC4uZjAyZDI3NzM0ZTNi IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9jb250ZXh0X3R5cGVz LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfY29udGV4dF90eXBlcy5oCkBA IC0yNSw2ICsyNSw5IEBAIHN0cnVjdCBpbnRlbF9jb250ZXh0X29wcyB7CiAJaW50ICgqcGluKShz dHJ1Y3QgaW50ZWxfY29udGV4dCAqY2UpOwogCXZvaWQgKCp1bnBpbikoc3RydWN0IGludGVsX2Nv bnRleHQgKmNlKTsKIAorCXZvaWQgKCplbnRlcikoc3RydWN0IGludGVsX2NvbnRleHQgKmNlKTsK Kwl2b2lkICgqZXhpdCkoc3RydWN0IGludGVsX2NvbnRleHQgKmNlKTsKKwogCXZvaWQgKCpyZXNl dCkoc3RydWN0IGludGVsX2NvbnRleHQgKmNlKTsKIAl2b2lkICgqZGVzdHJveSkoc3RydWN0IGty ZWYgKmtyZWYpOwogfTsKQEAgLTQ2LDYgKzQ5LDggQEAgc3RydWN0IGludGVsX2NvbnRleHQgewog CXUzMiAqbHJjX3JlZ19zdGF0ZTsKIAl1NjQgbHJjX2Rlc2M7CiAKKwl1bnNpZ25lZCBpbnQgYWN0 aXZlX2NvdW50OyAvKiBub3Rpb25hbGx5IHByb3RlY3RlZCBieSB0aW1lbGluZS0+bXV0ZXggKi8K KwogCWF0b21pY190IHBpbl9jb3VudDsKIAlzdHJ1Y3QgbXV0ZXggcGluX211dGV4OyAvKiBndWFy ZHMgcGlubmluZyBhbmQgYXNzb2NpYXRlZCBvbi1ncHVpbmcgKi8KIApkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfbHJjLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9n dC9pbnRlbF9scmMuYwppbmRleCA1Y2FkZjhmNmEyM2QuLmVkZWM3ZjE4MzY4OCAxMDA2NDQKLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfbHJjLmMKKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvZ3QvaW50ZWxfbHJjLmMKQEAgLTEzMTUsNiArMTMxNSw5IEBAIHN0YXRpYyBjb25z dCBzdHJ1Y3QgaW50ZWxfY29udGV4dF9vcHMgZXhlY2xpc3RzX2NvbnRleHRfb3BzID0gewogCS5w aW4gPSBleGVjbGlzdHNfY29udGV4dF9waW4sCiAJLnVucGluID0gZXhlY2xpc3RzX2NvbnRleHRf dW5waW4sCiAKKwkuZW50ZXIgPSBpbnRlbF9jb250ZXh0X2VudGVyX2VuZ2luZSwKKwkuZXhpdCA9 IGludGVsX2NvbnRleHRfZXhpdF9lbmdpbmUsCisKIAkucmVzZXQgPSBleGVjbGlzdHNfY29udGV4 dF9yZXNldCwKIAkuZGVzdHJveSA9IGV4ZWNsaXN0c19jb250ZXh0X2Rlc3Ryb3ksCiB9OwpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfcmluZ2J1ZmZlci5jIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfcmluZ2J1ZmZlci5jCmluZGV4IGMxMjE0ZmQyNTcw Mi4uYzZkMmQ3ZmY3ZjMyIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRl bF9yaW5nYnVmZmVyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfcmluZ2J1 ZmZlci5jCkBAIC0xNTE2LDYgKzE1MTYsOSBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGludGVsX2Nv bnRleHRfb3BzIHJpbmdfY29udGV4dF9vcHMgPSB7CiAJLnBpbiA9IHJpbmdfY29udGV4dF9waW4s CiAJLnVucGluID0gcmluZ19jb250ZXh0X3VucGluLAogCisJLmVudGVyID0gaW50ZWxfY29udGV4 dF9lbnRlcl9lbmdpbmUsCisJLmV4aXQgPSBpbnRlbF9jb250ZXh0X2V4aXRfZW5naW5lLAorCiAJ LnJlc2V0ID0gcmluZ19jb250ZXh0X3Jlc2V0LAogCS5kZXN0cm95ID0gcmluZ19jb250ZXh0X2Rl c3Ryb3ksCiB9OwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvbW9ja19lbmdp bmUuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L21vY2tfZW5naW5lLmMKaW5kZXggNDE0YWZk MmYyN2ZlLi5iY2ZlYjBjNjc5OTcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0 L21vY2tfZW5naW5lLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvbW9ja19lbmdpbmUu YwpAQCAtMTU3LDYgKzE1Nyw5IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgaW50ZWxfY29udGV4dF9v cHMgbW9ja19jb250ZXh0X29wcyA9IHsKIAkucGluID0gbW9ja19jb250ZXh0X3BpbiwKIAkudW5w aW4gPSBtb2NrX2NvbnRleHRfdW5waW4sCiAKKwkuZW50ZXIgPSBpbnRlbF9jb250ZXh0X2VudGVy X2VuZ2luZSwKKwkuZXhpdCA9IGludGVsX2NvbnRleHRfZXhpdF9lbmdpbmUsCisKIAkuZGVzdHJv eSA9IG1vY2tfY29udGV4dF9kZXN0cm95LAogfTsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9yZXF1ZXN0LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlcXVl c3QuYwppbmRleCA3NGFlNjk4YzFmOTUuLjgxMjk4ODY5OTJjYSAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9yZXF1ZXN0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9yZXF1ZXN0LmMKQEAgLTEzMSwxOSArMTMxLDYgQEAgaTkxNV9yZXF1ZXN0X3JlbW92ZV9m cm9tX2NsaWVudChzdHJ1Y3QgaTkxNV9yZXF1ZXN0ICpyZXF1ZXN0KQogCXNwaW5fdW5sb2NrKCZm aWxlX3ByaXYtPm1tLmxvY2spOwogfQogCi1zdGF0aWMgdm9pZCByZXNlcnZlX2d0KHN0cnVjdCBk cm1faTkxNV9wcml2YXRlICppOTE1KQotewotCWlmICghaTkxNS0+Z3QuYWN0aXZlX3JlcXVlc3Rz KyspCi0JCWk5MTVfZ2VtX3VucGFyayhpOTE1KTsKLX0KLQotc3RhdGljIHZvaWQgdW5yZXNlcnZl X2d0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1KQotewotCUdFTV9CVUdfT04oIWk5MTUt Pmd0LmFjdGl2ZV9yZXF1ZXN0cyk7Ci0JaWYgKCEtLWk5MTUtPmd0LmFjdGl2ZV9yZXF1ZXN0cykK LQkJaTkxNV9nZW1fcGFyayhpOTE1KTsKLX0KLQogc3RhdGljIHZvaWQgYWR2YW5jZV9yaW5nKHN0 cnVjdCBpOTE1X3JlcXVlc3QgKnJlcXVlc3QpCiB7CiAJc3RydWN0IGludGVsX3JpbmcgKnJpbmcg PSByZXF1ZXN0LT5yaW5nOwpAQCAtMzAxLDExICsyODgsMTAgQEAgc3RhdGljIHZvaWQgaTkxNV9y ZXF1ZXN0X3JldGlyZShzdHJ1Y3QgaTkxNV9yZXF1ZXN0ICpyZXF1ZXN0KQogCiAJaTkxNV9yZXF1 ZXN0X3JlbW92ZV9mcm9tX2NsaWVudChyZXF1ZXN0KTsKIAotCWludGVsX2NvbnRleHRfdW5waW4o cmVxdWVzdC0+aHdfY29udGV4dCk7Ci0KIAlfX3JldGlyZV9lbmdpbmVfdXB0byhyZXF1ZXN0LT5l bmdpbmUsIHJlcXVlc3QpOwogCi0JdW5yZXNlcnZlX2d0KHJlcXVlc3QtPmk5MTUpOworCWludGVs X2NvbnRleHRfZXhpdChyZXF1ZXN0LT5od19jb250ZXh0KTsKKwlpbnRlbF9jb250ZXh0X3VucGlu KHJlcXVlc3QtPmh3X2NvbnRleHQpOwogCiAJaTkxNV9zY2hlZF9ub2RlX2ZpbmkoJnJlcXVlc3Qt PnNjaGVkKTsKIAlpOTE1X3JlcXVlc3RfcHV0KHJlcXVlc3QpOwpAQCAtNjYwLDggKzY0Niw4IEBA IGk5MTVfcmVxdWVzdF9hbGxvYyhzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUsIHN0cnVj dCBpOTE1X2dlbV9jb250ZXh0ICpjdHgpCiAJaWYgKElTX0VSUihjZSkpCiAJCXJldHVybiBFUlJf Q0FTVChjZSk7CiAKLQlyZXNlcnZlX2d0KGk5MTUpOwogCW11dGV4X2xvY2soJmNlLT5yaW5nLT50 aW1lbGluZS0+bXV0ZXgpOworCWludGVsX2NvbnRleHRfZW50ZXIoY2UpOwogCiAJLyogTW92ZSBv dXIgb2xkZXN0IHJlcXVlc3QgdG8gdGhlIHNsYWItY2FjaGUgKGlmIG5vdCBpbiB1c2UhKSAqLwog CXJxID0gbGlzdF9maXJzdF9lbnRyeSgmY2UtPnJpbmctPnJlcXVlc3RfbGlzdCwgdHlwZW9mKCpy cSksIHJpbmdfbGluayk7CkBAIC03OTIsOCArNzc4LDggQEAgaTkxNV9yZXF1ZXN0X2FsbG9jKHN0 cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSwgc3RydWN0IGk5MTVfZ2VtX2NvbnRleHQgKmN0 eCkKIGVycl9mcmVlOgogCWttZW1fY2FjaGVfZnJlZShnbG9iYWwuc2xhYl9yZXF1ZXN0cywgcnEp OwogZXJyX3VucmVzZXJ2ZToKKwlpbnRlbF9jb250ZXh0X2V4aXQoY2UpOwogCW11dGV4X3VubG9j aygmY2UtPnJpbmctPnRpbWVsaW5lLT5tdXRleCk7Ci0JdW5yZXNlcnZlX2d0KGk5MTUpOwogCWlu dGVsX2NvbnRleHRfdW5waW4oY2UpOwogCXJldHVybiBFUlJfUFRSKHJldCk7CiB9Ci0tIAoyLjIw LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVs LWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczov L2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA==