From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH 2/4] drm/i915/gt: Make deferred context allocation explicit Date: Fri, 9 Aug 2019 16:41:44 +0100 Message-ID: <20190809154146.16397-2-chris@chris-wilson.co.uk> References: <20190809154146.16397-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 172A36EE36 for ; Fri, 9 Aug 2019 15:42:17 +0000 (UTC) In-Reply-To: <20190809154146.16397-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 UmVmYWN0b3IgdGhlIGJhY2tlbmRzIHRvIGhhbmRsZSB0aGUgZGVmZXJyZWQgY29udGV4dCBhbGxv Y2F0aW9uIGluIGEKY29uc2lzdGVudCBtYW5uZXIsIGFuZCBhbGxvdyBjYWxsaW5nIGl0IGFzIGFu IGV4cGxpY2l0IGZpcnN0IHN0ZXAgaW4KcGlubmluZyBhIGNvbnRleHQgZm9yIHRoZSBmaXJzdCB0 aW1lLiBUaGlzIHNob3VsZCBtYWtlIGl0IGVhc2llciBmb3IKYmFja2VuZHMgdG8ga2VlcCB0cmFj ayBvZiBwYXJ0aWFsbHkgY29uc3RydWN0ZWQgY29udGV4dHMgZnJvbQppbml0aWFsaXNhdGlvbi4K ClNpZ25lZC1vZmYtYnk6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgpS ZXZpZXdlZC1ieTogTWlrYSBLdW9wcGFsYSA8bWlrYS5rdW9wcGFsYUBsaW51eC5pbnRlbC5jb20+ Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfY29udGV4dC5jICAgICAgIHwgIDgg KysrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2NvbnRleHRfdHlwZXMuaCB8ICA1 ICsrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2xyYy5jICAgICAgICAgICB8IDI5 ICsrKysrKysrKysrKy0tLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX3Jpbmdi dWZmZXIuYyAgICB8IDE1ICsrKysrKysrLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L21vY2tf ZW5naW5lLmMgICAgICAgICB8IDE3ICsrKysrKystLS0tCiA1IGZpbGVzIGNoYW5nZWQsIDU1IGlu c2VydGlvbnMoKyksIDE5IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2d0L2ludGVsX2NvbnRleHQuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVs X2NvbnRleHQuYwppbmRleCBjODc3N2UyMjJiMTIuLjQxZDM4ZTY2MWRlNyAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfY29udGV4dC5jCisrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2d0L2ludGVsX2NvbnRleHQuYwpAQCAtNTMsNiArNTMsMTQgQEAgaW50IF9faW50 ZWxfY29udGV4dF9kb19waW4oc3RydWN0IGludGVsX2NvbnRleHQgKmNlKQogCWlmIChsaWtlbHko IWF0b21pY19yZWFkKCZjZS0+cGluX2NvdW50KSkpIHsKIAkJaW50ZWxfd2FrZXJlZl90IHdha2Vy ZWY7CiAKKwkJaWYgKHVubGlrZWx5KCF0ZXN0X2JpdChDT05URVhUX0FMTE9DX0JJVCwgJmNlLT5m bGFncykpKSB7CisJCQllcnIgPSBjZS0+b3BzLT5hbGxvYyhjZSk7CisJCQlpZiAodW5saWtlbHko ZXJyKSkKKwkJCQlnb3RvIGVycjsKKworCQkJX19zZXRfYml0KENPTlRFWFRfQUxMT0NfQklULCAm Y2UtPmZsYWdzKTsKKwkJfQorCiAJCWVyciA9IDA7CiAJCXdpdGhfaW50ZWxfcnVudGltZV9wbSgm Y2UtPmVuZ2luZS0+aTkxNS0+cnVudGltZV9wbSwgd2FrZXJlZikKIAkJCWVyciA9IGNlLT5vcHMt PnBpbihjZSk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9jb250 ZXh0X3R5cGVzLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9jb250ZXh0X3R5cGVz LmgKaW5kZXggNjhhN2U5NzliMWE5Li5jZmY2MjM4YzIxM2EgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2d0L2ludGVsX2NvbnRleHRfdHlwZXMuaAorKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9ndC9pbnRlbF9jb250ZXh0X3R5cGVzLmgKQEAgLTIzLDYgKzIzLDggQEAgc3RydWN0 IGludGVsX2NvbnRleHQ7CiBzdHJ1Y3QgaW50ZWxfcmluZzsKIAogc3RydWN0IGludGVsX2NvbnRl eHRfb3BzIHsKKwlpbnQgKCphbGxvYykoc3RydWN0IGludGVsX2NvbnRleHQgKmNlKTsKKwogCWlu dCAoKnBpbikoc3RydWN0IGludGVsX2NvbnRleHQgKmNlKTsKIAl2b2lkICgqdW5waW4pKHN0cnVj dCBpbnRlbF9jb250ZXh0ICpjZSk7CiAKQEAgLTUyLDYgKzU0LDkgQEAgc3RydWN0IGludGVsX2Nv bnRleHQgewogCXN0cnVjdCBpOTE1X3ZtYSAqc3RhdGU7CiAJc3RydWN0IGludGVsX3JpbmcgKnJp bmc7CiAKKwl1bnNpZ25lZCBsb25nIGZsYWdzOworI2RlZmluZSBDT05URVhUX0FMTE9DX0JJVCAw CisKIAl1MzIgKmxyY19yZWdfc3RhdGU7CiAJdTY0IGxyY19kZXNjOwogCmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9scmMuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2d0L2ludGVsX2xyYy5jCmluZGV4IDE0YzViZmJlMGE3NC4uMTcyY2UzZTA3N2ZjIDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9scmMuYworKysgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9ndC9pbnRlbF9scmMuYwpAQCAtMjE5LDggKzIxOSw5IEBAIHN0YXRpYyBzdHJ1 Y3QgdmlydHVhbF9lbmdpbmUgKnRvX3ZpcnR1YWxfZW5naW5lKHN0cnVjdCBpbnRlbF9lbmdpbmVf Y3MgKmVuZ2luZSkKIAlyZXR1cm4gY29udGFpbmVyX29mKGVuZ2luZSwgc3RydWN0IHZpcnR1YWxf ZW5naW5lLCBiYXNlKTsKIH0KIAotc3RhdGljIGludCBleGVjbGlzdHNfY29udGV4dF9kZWZlcnJl ZF9hbGxvYyhzdHJ1Y3QgaW50ZWxfY29udGV4dCAqY2UsCi0JCQkJCSAgICBzdHJ1Y3QgaW50ZWxf ZW5naW5lX2NzICplbmdpbmUpOworc3RhdGljIGludCBfX2V4ZWNsaXN0c19jb250ZXh0X2FsbG9j KHN0cnVjdCBpbnRlbF9jb250ZXh0ICpjZSwKKwkJCQkgICAgIHN0cnVjdCBpbnRlbF9lbmdpbmVf Y3MgKmVuZ2luZSk7CisKIHN0YXRpYyB2b2lkIGV4ZWNsaXN0c19pbml0X3JlZ19zdGF0ZSh1MzIg KnJlZ19zdGF0ZSwKIAkJCQkgICAgIHN0cnVjdCBpbnRlbF9jb250ZXh0ICpjZSwKIAkJCQkgICAg IHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSwKQEAgLTE2MTQsOSArMTYxNSw2IEBAIF9f ZXhlY2xpc3RzX2NvbnRleHRfcGluKHN0cnVjdCBpbnRlbF9jb250ZXh0ICpjZSwKIAl2b2lkICp2 YWRkcjsKIAlpbnQgcmV0OwogCi0JcmV0ID0gZXhlY2xpc3RzX2NvbnRleHRfZGVmZXJyZWRfYWxs b2MoY2UsIGVuZ2luZSk7Ci0JaWYgKHJldCkKLQkJZ290byBlcnI7CiAJR0VNX0JVR19PTighY2Ut PnN0YXRlKTsKIAogCXJldCA9IGludGVsX2NvbnRleHRfYWN0aXZlX2FjcXVpcmUoY2UpOwpAQCAt MTY1NSw2ICsxNjUzLDExIEBAIHN0YXRpYyBpbnQgZXhlY2xpc3RzX2NvbnRleHRfcGluKHN0cnVj dCBpbnRlbF9jb250ZXh0ICpjZSkKIAlyZXR1cm4gX19leGVjbGlzdHNfY29udGV4dF9waW4oY2Us IGNlLT5lbmdpbmUpOwogfQogCitzdGF0aWMgaW50IGV4ZWNsaXN0c19jb250ZXh0X2FsbG9jKHN0 cnVjdCBpbnRlbF9jb250ZXh0ICpjZSkKK3sKKwlyZXR1cm4gX19leGVjbGlzdHNfY29udGV4dF9h bGxvYyhjZSwgY2UtPmVuZ2luZSk7Cit9CisKIHN0YXRpYyB2b2lkIGV4ZWNsaXN0c19jb250ZXh0 X3Jlc2V0KHN0cnVjdCBpbnRlbF9jb250ZXh0ICpjZSkKIHsKIAkvKgpAQCAtMTY3OCw2ICsxNjgx LDggQEAgc3RhdGljIHZvaWQgZXhlY2xpc3RzX2NvbnRleHRfcmVzZXQoc3RydWN0IGludGVsX2Nv bnRleHQgKmNlKQogfQogCiBzdGF0aWMgY29uc3Qgc3RydWN0IGludGVsX2NvbnRleHRfb3BzIGV4 ZWNsaXN0c19jb250ZXh0X29wcyA9IHsKKwkuYWxsb2MgPSBleGVjbGlzdHNfY29udGV4dF9hbGxv YywKKwogCS5waW4gPSBleGVjbGlzdHNfY29udGV4dF9waW4sCiAJLnVucGluID0gZXhlY2xpc3Rz X2NvbnRleHRfdW5waW4sCiAKQEAgLTMwNzUsOCArMzA4MCw4IEBAIGdldF90aW1lbGluZShzdHJ1 Y3QgaTkxNV9nZW1fY29udGV4dCAqY3R4LCBzdHJ1Y3QgaW50ZWxfZ3QgKmd0KQogCQlyZXR1cm4g aW50ZWxfdGltZWxpbmVfY3JlYXRlKGd0LCBOVUxMKTsKIH0KIAotc3RhdGljIGludCBleGVjbGlz dHNfY29udGV4dF9kZWZlcnJlZF9hbGxvYyhzdHJ1Y3QgaW50ZWxfY29udGV4dCAqY2UsCi0JCQkJ CSAgICBzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUpCitzdGF0aWMgaW50IF9fZXhlY2xp c3RzX2NvbnRleHRfYWxsb2Moc3RydWN0IGludGVsX2NvbnRleHQgKmNlLAorCQkJCSAgICAgc3Ry dWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKQogewogCXN0cnVjdCBkcm1faTkxNV9nZW1fb2Jq ZWN0ICpjdHhfb2JqOwogCXN0cnVjdCBpOTE1X3ZtYSAqdm1hOwpAQCAtMzA4NSw5ICszMDkwLDcg QEAgc3RhdGljIGludCBleGVjbGlzdHNfY29udGV4dF9kZWZlcnJlZF9hbGxvYyhzdHJ1Y3QgaW50 ZWxfY29udGV4dCAqY2UsCiAJc3RydWN0IGludGVsX3RpbWVsaW5lICp0aW1lbGluZTsKIAlpbnQg cmV0OwogCi0JaWYgKGNlLT5zdGF0ZSkKLQkJcmV0dXJuIDA7Ci0KKwlHRU1fQlVHX09OKCFjZS0+ c3RhdGUpOwogCWNvbnRleHRfc2l6ZSA9IHJvdW5kX3VwKGVuZ2luZS0+Y29udGV4dF9zaXplLCBJ OTE1X0dUVF9QQUdFX1NJWkUpOwogCiAJLyoKQEAgLTM1MzMsNiArMzUzNiwxMiBAQCBpbnRlbF9l eGVjbGlzdHNfY3JlYXRlX3ZpcnR1YWwoc3RydWN0IGk5MTVfZ2VtX2NvbnRleHQgKmN0eCwKIAog CXZlLT5iYXNlLmZsYWdzIHw9IEk5MTVfRU5HSU5FX0lTX1ZJUlRVQUw7CiAKKwllcnIgPSBfX2V4 ZWNsaXN0c19jb250ZXh0X2FsbG9jKCZ2ZS0+Y29udGV4dCwgc2libGluZ3NbMF0pOworCWlmIChl cnIpCisJCWdvdG8gZXJyX3B1dDsKKworCV9fc2V0X2JpdChDT05URVhUX0FMTE9DX0JJVCwgJnZl LT5jb250ZXh0LmZsYWdzKTsKKwogCXJldHVybiAmdmUtPmNvbnRleHQ7CiAKIGVycl9wdXQ6CmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9yaW5nYnVmZmVyLmMgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9yaW5nYnVmZmVyLmMKaW5kZXggNzhiNDIzNWY5 YzBmLi43ZGI1NjFlMDYzMTIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2lu dGVsX3JpbmdidWZmZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9yaW5n YnVmZmVyLmMKQEAgLTE0ODAsMTYgKzE0ODAsMTYgQEAgYWxsb2NfY29udGV4dF92bWEoc3RydWN0 IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKQogCXJldHVybiBFUlJfUFRSKGVycik7CiB9CiAKLXN0 YXRpYyBpbnQgcmluZ19jb250ZXh0X3BpbihzdHJ1Y3QgaW50ZWxfY29udGV4dCAqY2UpCitzdGF0 aWMgaW50IHJpbmdfY29udGV4dF9hbGxvYyhzdHJ1Y3QgaW50ZWxfY29udGV4dCAqY2UpCiB7CiAJ c3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lID0gY2UtPmVuZ2luZTsKLQlpbnQgZXJyOwog CiAJLyogT25lIHJpbmdidWZmZXIgdG8gcnVsZSB0aGVtIGFsbCAqLwogCUdFTV9CVUdfT04oIWVu Z2luZS0+YnVmZmVyKTsKIAljZS0+cmluZyA9IGVuZ2luZS0+YnVmZmVyOwogCi0JaWYgKCFjZS0+ c3RhdGUgJiYgZW5naW5lLT5jb250ZXh0X3NpemUpIHsKKwlHRU1fQlVHX09OKCFjZS0+c3RhdGUp OworCWlmIChlbmdpbmUtPmNvbnRleHRfc2l6ZSkgewogCQlzdHJ1Y3QgaTkxNV92bWEgKnZtYTsK IAogCQl2bWEgPSBhbGxvY19jb250ZXh0X3ZtYShlbmdpbmUpOwpAQCAtMTQ5OSw2ICsxNDk5LDEz IEBAIHN0YXRpYyBpbnQgcmluZ19jb250ZXh0X3BpbihzdHJ1Y3QgaW50ZWxfY29udGV4dCAqY2Up CiAJCWNlLT5zdGF0ZSA9IHZtYTsKIAl9CiAKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludCBy aW5nX2NvbnRleHRfcGluKHN0cnVjdCBpbnRlbF9jb250ZXh0ICpjZSkKK3sKKwlpbnQgZXJyOwor CiAJZXJyID0gaW50ZWxfY29udGV4dF9hY3RpdmVfYWNxdWlyZShjZSk7CiAJaWYgKGVycikKIAkJ cmV0dXJuIGVycjsKQEAgLTE1MjAsNiArMTUyNyw4IEBAIHN0YXRpYyB2b2lkIHJpbmdfY29udGV4 dF9yZXNldChzdHJ1Y3QgaW50ZWxfY29udGV4dCAqY2UpCiB9CiAKIHN0YXRpYyBjb25zdCBzdHJ1 Y3QgaW50ZWxfY29udGV4dF9vcHMgcmluZ19jb250ZXh0X29wcyA9IHsKKwkuYWxsb2MgPSByaW5n X2NvbnRleHRfYWxsb2MsCisKIAkucGluID0gcmluZ19jb250ZXh0X3BpbiwKIAkudW5waW4gPSBy aW5nX2NvbnRleHRfdW5waW4sCiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0 L21vY2tfZW5naW5lLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9tb2NrX2VuZ2luZS5jCmlu ZGV4IGRkMDJlNTliMTkyZi4uODQ4YTgzYTM4YjA4IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9ndC9tb2NrX2VuZ2luZS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L21v Y2tfZW5naW5lLmMKQEAgLTE0NywxNiArMTQ3LDE5IEBAIHN0YXRpYyB2b2lkIG1vY2tfY29udGV4 dF9kZXN0cm95KHN0cnVjdCBrcmVmICpyZWYpCiAJaW50ZWxfY29udGV4dF9mcmVlKGNlKTsKIH0K IAorc3RhdGljIGludCBtb2NrX2NvbnRleHRfYWxsb2Moc3RydWN0IGludGVsX2NvbnRleHQgKmNl KQoreworCWNlLT5yaW5nID0gbW9ja19yaW5nKGNlLT5lbmdpbmUpOworCWlmICghY2UtPnJpbmcp CisJCXJldHVybiAtRU5PTUVNOworCisJcmV0dXJuIDA7Cit9CisKIHN0YXRpYyBpbnQgbW9ja19j b250ZXh0X3BpbihzdHJ1Y3QgaW50ZWxfY29udGV4dCAqY2UpCiB7CiAJaW50IHJldDsKIAotCWlm ICghY2UtPnJpbmcpIHsKLQkJY2UtPnJpbmcgPSBtb2NrX3JpbmcoY2UtPmVuZ2luZSk7Ci0JCWlm ICghY2UtPnJpbmcpCi0JCQlyZXR1cm4gLUVOT01FTTsKLQl9Ci0KIAlyZXQgPSBpbnRlbF9jb250 ZXh0X2FjdGl2ZV9hY3F1aXJlKGNlKTsKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwpAQCAtMTY2 LDYgKzE2OSw4IEBAIHN0YXRpYyBpbnQgbW9ja19jb250ZXh0X3BpbihzdHJ1Y3QgaW50ZWxfY29u dGV4dCAqY2UpCiB9CiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgaW50ZWxfY29udGV4dF9vcHMgbW9j a19jb250ZXh0X29wcyA9IHsKKwkuYWxsb2MgPSBtb2NrX2NvbnRleHRfYWxsb2MsCisKIAkucGlu ID0gbW9ja19jb250ZXh0X3BpbiwKIAkudW5waW4gPSBtb2NrX2NvbnRleHRfdW5waW4sCiAKLS0g CjIuMjMuMC5yYzEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9y ZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdm eA==