From mboxrd@z Thu Jan 1 00:00:00 1970 From: John.C.Harrison@Intel.com Subject: [PATCH v5 23/35] drm/i915: Defer seqno allocation until actual hardware submission time Date: Thu, 18 Feb 2016 14:27:11 +0000 Message-ID: <1455805644-6450-24-git-send-email-John.C.Harrison@Intel.com> References: <1455805644-6450-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 mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTP id 8469E6EBF5 for ; Thu, 18 Feb 2016 14:27:56 +0000 (UTC) In-Reply-To: <1455805644-6450-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 RnJvbTogSm9obiBIYXJyaXNvbiA8Sm9obi5DLkhhcnJpc29uQEludGVsLmNvbT4KClRoZSBzZXFu byB2YWx1ZSBpcyBub3cgb25seSB1c2VkIGZvciB0aGUgZmluYWwgdGVzdCBmb3IgY29tcGxldGlv biBvZgphIHJlcXVlc3QuIEl0IGlzIG5vIGxvbmdlciB1c2VkIHRvIHRyYWNrIHRoZSByZXF1ZXN0 IHRocm91Z2ggdGhlCnNvZnR3YXJlIHN0YWNrLiBUaHVzIGl0IGlzIG5vIGxvbmdlciBuZWNlc3Nh cnkgdG8gYWxsb2NhdGUgdGhlIHNlcW5vCmltbWVkaWF0ZWx5IHdpdGggdGhlIHJlcXVlc3QuIElu c3RlYWQsIGl0IGNhbiBiZSBkb25lIGxhemlseSBhbmQgbGVmdAp1bnRpbCB0aGUgcmVxdWVzdCBp cyBhY3R1YWxseSBzZW50IHRvIHRoZSBoYXJkd2FyZS4gVGhpcyBpcyBwYXJ0aWN1bGFyCmFkdmFu dGFnZW91cyB3aXRoIGEgR1BVIHNjaGVkdWxlciBhcyB0aGUgcmVxdWVzdHMgY2FuIHRoZW4gYmUK cmUtb3JkZXJlZCBiZXR3ZWVuIHRoZWlyIGNyZWF0aW9uIGFuZCB0aGVpciBoYXJkd2FyZSBzdWJt aXNzaW9uCndpdGhvdXQgaGF2aW5nIG91dCBvZiBvcmRlciBzZXFub3MuCgp2MjogaTkxNV9hZGRf cmVxdWVzdCgpIGNhbid0IGZhaWwhCgpDb21iaW5lIHdpdGggJ2RybS9pOTE1OiBBc3NpZ24gc2Vx bm8gYXQgc3RhcnQgb2YgZXhlY19maW5hbCgpJwpWYXJpb3VzIGJpdHMgb2YgY29kZSBkdXJpbmcg dGhlIGV4ZWNidWYgY29kZSBwYXRoIG5lZWQgYSBzZXFubyB2YWx1ZQp0byBiZSBhc3NpZ25lZCB0 byB0aGUgcmVxdWVzdC4gVGhpcyBjaGFuZ2UgbWFrZXMgdGhpcyBhc3NpZ25tZW50CmV4cGxpY2l0 IGF0IHRoZSBzdGFydCBvZiBzdWJtaXNzaW9uX2ZpbmFsKCkgcmF0aGVyIHRoYW4gcmVseWluZyBv biBhbgphdXRvLWdlbmVyYXRlZCBzZXFubyB0byBoYXZlIGhhcHBlbmVkIGFscmVhZHkuIFRoaXMg aXMgaW4gcHJlcGFyYXRpb24KZm9yIGEgZnV0dXJlIHBhdGNoIHdoaWNoIGNoYW5nZXMgc2Vxbm8g dmFsdWVzIHRvIGJlIGFzc2lnbmVkIGxhemlseQooZHVyaW5nIGFkZF9yZXF1ZXN0KS4KCnYzOiBV cGRhdGVkIHRvIHVzZSBsb2NhbGx5IGNhY2hlZCByZXF1ZXN0IHBvaW50ZXIuCgp2NDogQ2hhbmdl ZCBzb21lIHdoaXRlIHNwYWNlIGFuZCBjb21tZW50IGZvcm1hdHRpbmcgdG8ga2VlcCB0aGUgc3R5 bGUKY2hlY2tlciBoYXBweS4KCkZvcjogVklaLTE1ODcKU2lnbmVkLW9mZi1ieTogSm9obiBIYXJy aXNvbiA8Sm9obi5DLkhhcnJpc29uQEludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2Rydi5oICAgICAgICAgICAgfCAgMSArCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2dlbS5jICAgICAgICAgICAgfCAyMyArKysrKysrKysrKysrKysrKysrKysrLQogZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9nZW1fZXhlY2J1ZmZlci5jIHwgMTQgKysrKysrKysrKysrKysKIGRy aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jICAgICAgICAgICB8IDE0ICsrKysrKysrKysr KysrCiA0IGZpbGVzIGNoYW5nZWQsIDUxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKCmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9kcnYuaAppbmRleCA1ZWVlY2VkLi4wNzFhMjdiIDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZHJ2LmgKQEAgLTIyNTcsNiArMjI1Nyw3IEBAIHN0cnVjdCBkcm1faTkxNV9nZW1fcmVx dWVzdCB7CiAJICAqIGhhcyBmaW5pc2hlZCBwcm9jZXNzaW5nIHRoaXMgcmVxdWVzdC4KIAkgICov CiAJdTMyIHNlcW5vOworCXUzMiByZXNlcnZlZF9zZXFubzsKIAogCS8qIFVuaXF1ZSBpZGVudGlm aWVyIHdoaWNoIGNhbiBiZSB1c2VkIGZvciB0cmFjZSBwb2ludHMgJiBkZWJ1ZyAqLwogCXVpbnQz Ml90IHVuaXE7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwppbmRleCBhMjQ5ZTUyLi5hMmMxMzZkIDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKQEAgLTI2MTYsNiArMjYxNiwxMSBAQCBpOTE1X2dlbV9n ZXRfc2Vxbm8oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdTMyICpzZXFubykKIAogCS8qIHJlc2Vy dmUgMCBmb3Igbm9uLXNlcW5vICovCiAJaWYgKGRldl9wcml2LT5uZXh0X3NlcW5vID09IDApIHsK KwkJLyoKKwkJICogV2h5IGlzIHRoZSBmdWxsIHJlLWluaXRpYWxpc2F0aW9uIHJlcXVpcmVkPyBJ cyBpdCBvbmx5IGZvcgorCQkgKiBoYXJkd2FyZSBzZW1hcGhvcmVzPyBJZiBzbywgY291bGQgc2tp cCBpdCBpbiB0aGUgY2FzZSB3aGVyZQorCQkgKiBzZW1hcGhvcmVzIGFyZSBkaXNhYmxlZD8KKwkJ ICovCiAJCWludCByZXQgPSBpOTE1X2dlbV9pbml0X3NlcW5vKGRldiwgMCk7CiAJCWlmIChyZXQp CiAJCQlyZXR1cm4gcmV0OwpAQCAtMjY3Myw2ICsyNjc4LDEyIEBAIHZvaWQgX19pOTE1X2FkZF9y ZXF1ZXN0KHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxdWVzdCwKIAkJV0FSTihyZXQs ICIqX3JpbmdfZmx1c2hfYWxsX2NhY2hlcyBmYWlsZWQ6ICVkIVxuIiwgcmV0KTsKIAl9CiAKKwkv KiBNYWtlIHRoZSByZXF1ZXN0J3Mgc2Vxbm8gJ2xpdmUnOiAqLworCWlmICghcmVxdWVzdC0+c2Vx bm8pIHsKKwkJcmVxdWVzdC0+c2Vxbm8gPSByZXF1ZXN0LT5yZXNlcnZlZF9zZXFubzsKKwkJV0FS Tl9PTihyZXF1ZXN0LT5zZXFubyAhPSBkZXZfcHJpdi0+bGFzdF9zZXFubyk7CisJfQorCiAJLyog UmVjb3JkIHRoZSBwb3NpdGlvbiBvZiB0aGUgc3RhcnQgb2YgdGhlIHJlcXVlc3Qgc28gdGhhdAog CSAqIHNob3VsZCB3ZSBkZXRlY3QgdGhlIHVwZGF0ZWQgc2Vxbm8gcGFydC13YXkgdGhyb3VnaCB0 aGUKIAkgKiBHUFUgcHJvY2Vzc2luZyB0aGUgcmVxdWVzdCwgd2UgbmV2ZXIgb3Zlci1lc3RpbWF0 ZSB0aGUKQEAgLTI5MzAsNiArMjk0MSw5IEBAIHZvaWQgaTkxNV9nZW1fcmVxdWVzdF9ub3RpZnko c3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZywgYm9vbCBmZW5jZV9sb2NrZWQpCiAKIAlsaXN0 X2Zvcl9lYWNoX2VudHJ5X3NhZmUocmVxLCByZXFfbmV4dCwgJnJpbmctPmZlbmNlX3NpZ25hbF9s aXN0LCBzaWduYWxfbGluaykgewogCQlpZiAoIXJlcS0+Y2FuY2VsbGVkKSB7CisJCQkvKiBIb3cg Y2FuIHRoaXMgaGFwcGVuPyAqLworCQkJV0FSTl9PTihyZXEtPnNlcW5vID09IDApOworCiAJCQlp ZiAoIWk5MTVfc2Vxbm9fcGFzc2VkKHNlcW5vLCByZXEtPnNlcW5vKSkKIAkJCQlicmVhazsKIAkJ fQpAQCAtMzA3OSw3ICszMDkzLDE0IEBAIGludCBpOTE1X2dlbV9yZXF1ZXN0X2FsbG9jKHN0cnVj dCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcsCiAJaWYgKHJlcSA9PSBOVUxMKQogCQlyZXR1cm4gLUVO T01FTTsKIAotCXJldCA9IGk5MTVfZ2VtX2dldF9zZXFubyhyaW5nLT5kZXYsICZyZXEtPnNlcW5v KTsKKwkvKgorCSAqIEFzc2lnbiBhbiBpZGVudGlmaWVyIHRvIHRyYWNrIHRoaXMgcmVxdWVzdCB0 aHJvdWdoIHRoZSBoYXJkd2FyZQorCSAqIGJ1dCBkb24ndCBtYWtlIGl0IGxpdmUgeWV0LiBJdCBj b3VsZCBjaGFuZ2UgaW4gdGhlIGZ1dHVyZSBpZiB0aGlzCisJICogcmVxdWVzdCBnZXRzIG92ZXJ0 YWtlbi4gSG93ZXZlciwgaXQgc3RpbGwgbmVlZHMgdG8gYmUgYWxsb2NhdGVkCisJICogaW4gYWR2 YW5jZSBiZWNhdXNlIHRoZSBwb2ludCBvZiBzdWJtaXNzaW9uIG11c3Qgbm90IGZhaWwgYW5kIHNl cW5vCisJICogYWxsb2NhdGlvbiBjYW4gZmFpbC4KKwkgKi8KKwlyZXQgPSBpOTE1X2dlbV9nZXRf c2Vxbm8ocmluZy0+ZGV2LCAmcmVxLT5yZXNlcnZlZF9zZXFubyk7CiAJaWYgKHJldCkKIAkJZ290 byBlcnI7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V4ZWNi dWZmZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIuYwppbmRl eCBmNDVmNGRjLi5iOWFkMGZkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2dlbV9leGVjYnVmZmVyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZXhl Y2J1ZmZlci5jCkBAIC0xMjk1LDYgKzEyOTUsMjAgQEAgaW50IGk5MTVfZ2VtX3JpbmdidWZmZXJf c3VibWlzc2lvbl9maW5hbChzdHJ1Y3QgaTkxNV9leGVjYnVmZmVyX3BhcmFtcyAqcGFyYW1zKQog CS8qIFRoZSBtdXRleCBtdXN0IGJlIGFjcXVpcmVkIGJlZm9yZSBjYWxsaW5nIHRoaXMgZnVuY3Rp b24gKi8KIAlXQVJOX09OKCFtdXRleF9pc19sb2NrZWQoJnBhcmFtcy0+ZGV2LT5zdHJ1Y3RfbXV0 ZXgpKTsKIAorCS8qIE1ha2Ugc3VyZSB0aGUgcmVxdWVzdCdzIHNlcW5vIGlzIHRoZSBsYXRlc3Qg YW5kIGdyZWF0ZXN0OiAqLworCWlmIChyZXEtPnJlc2VydmVkX3NlcW5vICE9IGRldl9wcml2LT5s YXN0X3NlcW5vKSB7CisJCXJldCA9IGk5MTVfZ2VtX2dldF9zZXFubyhyaW5nLT5kZXYsICZyZXEt PnJlc2VydmVkX3NlcW5vKTsKKwkJaWYgKHJldCkKKwkJCXJldHVybiByZXQ7CisJfQorCS8qCisJ ICogQW5kIG1ha2UgaXQgbGl2ZSBiZWNhdXNlIHNvbWUgb2YgdGhlIGV4ZWNidWZmIHN1Ym1pc3Np b24gY29kZQorCSAqIHJlcXVpcmVzIHRoZSBzZXFubyB0byBiZSBhdmFpbGFibGUgdXAgZnJvbnQu CisJICovCisJV0FSTl9PTihyZXEtPnNlcW5vKTsKKwlyZXEtPnNlcW5vID0gcmVxLT5yZXNlcnZl ZF9zZXFubzsKKwlXQVJOX09OKHJlcS0+c2Vxbm8gIT0gZGV2X3ByaXYtPmxhc3Rfc2Vxbm8pOwor CiAJcmV0ID0gaW50ZWxfcmluZ19yZXNlcnZlX3NwYWNlKHJlcSk7CiAJaWYgKHJldCkKIAkJZ290 byBlcnJvcjsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMKaW5kZXggZTA1Njg3NS4uOWM3YTc5YSAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMKQEAgLTk3OCw2ICs5NzgsMjAgQEAgaW50IGludGVs X2V4ZWNsaXN0c19zdWJtaXNzaW9uX2ZpbmFsKHN0cnVjdCBpOTE1X2V4ZWNidWZmZXJfcGFyYW1z ICpwYXJhbXMpCiAJLyogVGhlIG11dGV4IG11c3QgYmUgYWNxdWlyZWQgYmVmb3JlIGNhbGxpbmcg dGhpcyBmdW5jdGlvbiAqLwogCVdBUk5fT04oIW11dGV4X2lzX2xvY2tlZCgmcGFyYW1zLT5kZXYt PnN0cnVjdF9tdXRleCkpOwogCisJLyogTWFrZSBzdXJlIHRoZSByZXF1ZXN0J3Mgc2Vxbm8gaXMg dGhlIGxhdGVzdCBhbmQgZ3JlYXRlc3Q6ICovCisJaWYgKHJlcS0+cmVzZXJ2ZWRfc2Vxbm8gIT0g ZGV2X3ByaXYtPmxhc3Rfc2Vxbm8pIHsKKwkJcmV0ID0gaTkxNV9nZW1fZ2V0X3NlcW5vKHJpbmct PmRldiwgJnJlcS0+cmVzZXJ2ZWRfc2Vxbm8pOworCQlpZiAocmV0KQorCQkJcmV0dXJuIHJldDsK Kwl9CisJLyoKKwkgKiBBbmQgbWFrZSBpdCBsaXZlIGJlY2F1c2Ugc29tZSBvZiB0aGUgZXhlY2J1 ZmYgc3VibWlzc2lvbiBjb2RlCisJICogcmVxdWlyZXMgdGhlIHNlcW5vIHRvIGJlIGF2YWlsYWJs ZSB1cCBmcm9udC4KKwkgKi8KKwlXQVJOX09OKHJlcS0+c2Vxbm8pOworCXJlcS0+c2Vxbm8gPSBy ZXEtPnJlc2VydmVkX3NlcW5vOworCVdBUk5fT04ocmVxLT5zZXFubyAhPSBkZXZfcHJpdi0+bGFz dF9zZXFubyk7CisKIAlyZXQgPSBpbnRlbF9sb2dpY2FsX3JpbmdfcmVzZXJ2ZV9zcGFjZShyZXEp OwogCWlmIChyZXQpCiAJCWdvdG8gZXJyOwotLSAKMS45LjEKCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwt Z2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9t YWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=