From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH 11/18] drm/i915: Record space required for request emission Date: Wed, 14 Sep 2016 07:52:43 +0100 Message-ID: <20160914065250.15482-12-chris@chris-wilson.co.uk> References: <20160914065250.15482-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 mail-wm0-x241.google.com (mail-wm0-x241.google.com [IPv6:2a00:1450:400c:c09::241]) by gabe.freedesktop.org (Postfix) with ESMTPS id 6403B6E69E for ; Wed, 14 Sep 2016 06:53:12 +0000 (UTC) Received: by mail-wm0-x241.google.com with SMTP id c131so1017849wmh.2 for ; Tue, 13 Sep 2016 23:53:12 -0700 (PDT) In-Reply-To: <20160914065250.15482-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 SW4gdGhlIG5leHQgcGF0Y2gsIHdlIHdpbGwgdXNlIGRlZmVycmVkIHJlcXVlc3QgZW1pc3Npb24u IFRoYXQgcmVxdWlyZXMKcmVzZXJ2aW5nIHN1ZmZpY2llbnQgc3BhY2UgaW4gdGhlIHJpbmdidWZm ZXIgdG8gZW1pdCB0aGUgcmVxdWVzdCwgd2hpY2gKZmlyc3QgcmVxdWlyZXMgdXMgdG8ga25vdyBo b3cgbGFyZ2UgdGhlIHJlcXVlc3QgaXMuCgpTaWduZWQtb2ZmLWJ5OiBDaHJpcyBXaWxzb24gPGNo cmlzQGNocmlzLXdpbHNvbi5jby51az4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dl bV9yZXF1ZXN0LmMgfCAgMSArCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYyAgICAg ICAgfCAgNiArKysrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuYyB8 IDI5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9yaW5nYnVmZmVyLmggfCAgMSArCiA0IGZpbGVzIGNoYW5nZWQsIDM1IGluc2VydGlvbnMo KyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9nZW1fcmVxdWVzdC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fcmVxdWVzdC5j CmluZGV4IGViYzJmZWJhM2U1MC4uOWE3MzVlMmQ1YWVhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2dlbV9yZXF1ZXN0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9nZW1fcmVxdWVzdC5jCkBAIC00MjUsNiArNDI1LDcgQEAgaTkxNV9nZW1fcmVxdWVzdF9h bGxvYyhzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUsCiAJICogYXdheSwgZS5nLiBiZWNh dXNlIGEgR1BVIHNjaGVkdWxlciBoYXMgZGVmZXJyZWQgaXQuCiAJICovCiAJcmVxLT5yZXNlcnZl ZF9zcGFjZSA9IE1JTl9TUEFDRV9GT1JfQUREX1JFUVVFU1Q7CisJR0VNX0JVR19PTihyZXEtPnJl c2VydmVkX3NwYWNlIDwgZW5naW5lLT5lbWl0X3JlcXVlc3Rfc3opOwogCiAJaWYgKGk5MTUuZW5h YmxlX2V4ZWNsaXN0cykKIAkJcmV0ID0gaW50ZWxfbG9naWNhbF9yaW5nX2FsbG9jX3JlcXVlc3Rf ZXh0cmFzKHJlcSk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMu YyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jCmluZGV4IDAwZmNmMzZiYTkxOS4u N2U5NDRhMGFjYzEwIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMu YworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYwpAQCAtMTU3Miw2ICsxNTcy LDggQEAgc3RhdGljIGludCBnZW44X2VtaXRfcmVxdWVzdChzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3Jl cXVlc3QgKnJlcXVlc3QpCiAJcmV0dXJuIGludGVsX2xvZ2ljYWxfcmluZ19hZHZhbmNlKHJlcXVl c3QpOwogfQogCitzdGF0aWMgY29uc3QgaW50IGdlbjhfZW1pdF9yZXF1ZXN0X3N6ID0gNiArIFdB X1RBSUxfRFdPUkRTOworCiBzdGF0aWMgaW50IGdlbjhfZW1pdF9yZXF1ZXN0X3JlbmRlcihzdHJ1 Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcXVlc3QpCiB7CiAJc3RydWN0IGludGVsX3Jpbmcg KnJpbmcgPSByZXF1ZXN0LT5yaW5nOwpAQCAtMTYwMyw2ICsxNjA1LDggQEAgc3RhdGljIGludCBn ZW44X2VtaXRfcmVxdWVzdF9yZW5kZXIoc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXF1 ZXN0KQogCXJldHVybiBpbnRlbF9sb2dpY2FsX3JpbmdfYWR2YW5jZShyZXF1ZXN0KTsKIH0KIAor c3RhdGljIGNvbnN0IGludCBnZW44X2VtaXRfcmVxdWVzdF9yZW5kZXJfc3ogPSA4ICsgV0FfVEFJ TF9EV09SRFM7CisKIHN0YXRpYyBpbnQgZ2VuOF9pbml0X3Jjc19jb250ZXh0KHN0cnVjdCBkcm1f aTkxNV9nZW1fcmVxdWVzdCAqcmVxKQogewogCWludCByZXQ7CkBAIC0xNjc3LDYgKzE2ODEsNyBA QCBsb2dpY2FsX3JpbmdfZGVmYXVsdF92ZnVuY3Moc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5n aW5lKQogCWVuZ2luZS0+cmVzZXRfaHcgPSByZXNldF9jb21tb25fcmluZzsKIAllbmdpbmUtPmVt aXRfZmx1c2ggPSBnZW44X2VtaXRfZmx1c2g7CiAJZW5naW5lLT5lbWl0X3JlcXVlc3QgPSBnZW44 X2VtaXRfcmVxdWVzdDsKKwllbmdpbmUtPmVtaXRfcmVxdWVzdF9zeiA9IGdlbjhfZW1pdF9yZXF1 ZXN0X3N6OwogCWVuZ2luZS0+c3VibWl0X3JlcXVlc3QgPSBleGVjbGlzdHNfc3VibWl0X3JlcXVl c3Q7CiAKIAllbmdpbmUtPmlycV9lbmFibGUgPSBnZW44X2xvZ2ljYWxfcmluZ19lbmFibGVfaXJx OwpAQCAtMTc5OSw2ICsxODA0LDcgQEAgaW50IGxvZ2ljYWxfcmVuZGVyX3JpbmdfaW5pdChzdHJ1 Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUpCiAJZW5naW5lLT5pbml0X2NvbnRleHQgPSBnZW44 X2luaXRfcmNzX2NvbnRleHQ7CiAJZW5naW5lLT5lbWl0X2ZsdXNoID0gZ2VuOF9lbWl0X2ZsdXNo X3JlbmRlcjsKIAllbmdpbmUtPmVtaXRfcmVxdWVzdCA9IGdlbjhfZW1pdF9yZXF1ZXN0X3JlbmRl cjsKKwllbmdpbmUtPmVtaXRfcmVxdWVzdF9zeiA9IGdlbjhfZW1pdF9yZXF1ZXN0X3JlbmRlcl9z ejsKIAogCXJldCA9IGludGVsX2VuZ2luZV9jcmVhdGVfc2NyYXRjaChlbmdpbmUsIDQwOTYpOwog CWlmIChyZXQpCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVm ZmVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmMKaW5kZXggNTk3 ZTM1YzliNjk5Li5jOGM5YWQ0MGZkOTMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX3JpbmdidWZmZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5n YnVmZmVyLmMKQEAgLTE0MDUsNiArMTQwNSw4IEBAIHN0YXRpYyBpbnQgaTl4eF9lbWl0X3JlcXVl c3Qoc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEpCiAJcmV0dXJuIDA7CiB9CiAKK3N0 YXRpYyBjb25zdCBpbnQgaTl4eF9lbWl0X3JlcXVlc3Rfc3ogPSA0OworCiAvKioKICAqIGdlbjZf c2VtYV9lbWl0X3JlcXVlc3QgLSBVcGRhdGUgdGhlIHNlbWFwaG9yZSBtYWlsYm94IHJlZ2lzdGVy cwogICoKQEAgLTE0NTgsNiArMTQ2MCw4IEBAIHN0YXRpYyBpbnQgZ2VuOF9yZW5kZXJfZW1pdF9y ZXF1ZXN0KHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxKQogCXJldHVybiAwOwogfQog CitzdGF0aWMgY29uc3QgaW50IGdlbjhfcmVuZGVyX2VtaXRfcmVxdWVzdF9zeiA9IDg7CisKIC8q KgogICogaW50ZWxfcmluZ19zeW5jIC0gc3luYyB0aGUgd2FpdGVyIHRvIHRoZSBzaWduYWxsZXIg b24gc2Vxbm8KICAqCkBAIC0yNjc3LDggKzI2ODEsMjEgQEAgc3RhdGljIHZvaWQgaW50ZWxfcmlu Z19kZWZhdWx0X3ZmdW5jcyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJZW5n aW5lLT5yZXNldF9odyA9IHJlc2V0X3JpbmdfY29tbW9uOwogCiAJZW5naW5lLT5lbWl0X3JlcXVl c3QgPSBpOXh4X2VtaXRfcmVxdWVzdDsKLQlpZiAoaTkxNS5zZW1hcGhvcmVzKQorCWVuZ2luZS0+ ZW1pdF9yZXF1ZXN0X3N6ID0gaTl4eF9lbWl0X3JlcXVlc3Rfc3o7CisJaWYgKGk5MTUuc2VtYXBo b3JlcykgeworCQlpbnQgbnVtX3JpbmdzOworCiAJCWVuZ2luZS0+ZW1pdF9yZXF1ZXN0ID0gZ2Vu Nl9zZW1hX2VtaXRfcmVxdWVzdDsKKworCQludW1fcmluZ3MgPSBod2VpZ2h0MzIoSU5URUxfSU5G TyhkZXZfcHJpdiktPnJpbmdfbWFzaykgLSAxOworCQlpZiAoSU5URUxfR0VOKGRldl9wcml2KSA+ PSA4KSB7CisJCQllbmdpbmUtPmVtaXRfcmVxdWVzdF9zeiArPSBudW1fcmluZ3MgKiA2OworCQl9 IGVsc2UgeworCQkJZW5naW5lLT5lbWl0X3JlcXVlc3Rfc3ogKz0gbnVtX3JpbmdzICogMzsKKwkJ CWlmIChudW1fcmluZ3MgJiAxKQorCQkJCWVuZ2luZS0+ZW1pdF9yZXF1ZXN0X3N6Kys7CisJCX0K Kwl9CiAJZW5naW5lLT5zdWJtaXRfcmVxdWVzdCA9IGk5eHhfc3VibWl0X3JlcXVlc3Q7CiAKIAlp ZiAoSU5URUxfR0VOKGRldl9wcml2KSA+PSA4KQpAQCAtMjcwNiw5ICsyNzIzLDE3IEBAIGludCBp bnRlbF9pbml0X3JlbmRlcl9yaW5nX2J1ZmZlcihzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdp bmUpCiAJaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPj0gOCkgewogCQllbmdpbmUtPmluaXRfY29u dGV4dCA9IGludGVsX3Jjc19jdHhfaW5pdDsKIAkJZW5naW5lLT5lbWl0X3JlcXVlc3QgPSBnZW44 X3JlbmRlcl9lbWl0X3JlcXVlc3Q7CisJCWVuZ2luZS0+ZW1pdF9yZXF1ZXN0X3N6ID0gZ2VuOF9y ZW5kZXJfZW1pdF9yZXF1ZXN0X3N6OwogCQllbmdpbmUtPmVtaXRfZmx1c2ggPSBnZW44X3JlbmRl cl9yaW5nX2ZsdXNoOwotCQlpZiAoaTkxNS5zZW1hcGhvcmVzKQorCQlpZiAoaTkxNS5zZW1hcGhv cmVzKSB7CisJCQlpbnQgbnVtX3JpbmdzOworCiAJCQllbmdpbmUtPnNlbWFwaG9yZS5zaWduYWwg PSBnZW44X3Jjc19zaWduYWw7CisKKwkJCW51bV9yaW5ncyA9CisJCQkJaHdlaWdodDMyKElOVEVM X0lORk8oZGV2X3ByaXYpLT5yaW5nX21hc2spIC0gMTsKKwkJCWVuZ2luZS0+ZW1pdF9yZXF1ZXN0 X3N6ICs9IG51bV9yaW5ncyAqIDY7CisJCX0KIAl9IGVsc2UgaWYgKElOVEVMX0dFTihkZXZfcHJp dikgPj0gNikgewogCQllbmdpbmUtPmluaXRfY29udGV4dCA9IGludGVsX3Jjc19jdHhfaW5pdDsK IAkJZW5naW5lLT5lbWl0X2ZsdXNoID0gZ2VuN19yZW5kZXJfcmluZ19mbHVzaDsKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaCBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaAppbmRleCBkNmY4MGIzZDY2YjQuLjQ3YWQxOWY1 NDQxZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5o CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaApAQCAtMjI2LDYg KzIyNiw3IEBAIHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgewogI2RlZmluZSBJOTE1X0RJU1BBVENI X1BJTk5FRCBCSVQoMSkKICNkZWZpbmUgSTkxNV9ESVNQQVRDSF9SUyAgICAgQklUKDIpCiAJaW50 CQkoKmVtaXRfcmVxdWVzdCkoc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEpOworCWlu dAkJZW1pdF9yZXF1ZXN0X3N6OwogCiAJLyogUGFzcyB0aGUgcmVxdWVzdCB0byB0aGUgaGFyZHdh cmUgcXVldWUgKGUuZy4gZGlyZWN0bHkgaW50bwogCSAqIHRoZSBsZWdhY3kgcmluZ2J1ZmZlciBv ciB0byB0aGUgZW5kIG9mIGFuIGV4ZWNsaXN0KS4KLS0gCjIuOS4zCgpfX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0Cklu dGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5v cmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK