From mboxrd@z Thu Jan 1 00:00:00 1970 From: John.C.Harrison@Intel.com Subject: [PATCH v10 1/6] drm/i915: Add per context timelines for fence objects Date: Thu, 16 Jun 2016 13:54:35 +0100 Message-ID: <1466081680-2344-2-git-send-email-John.C.Harrison@Intel.com> References: <1466081680-2344-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 mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTP id 642D46E9E4 for ; Thu, 16 Jun 2016 12:54:45 +0000 (UTC) In-Reply-To: <1466081680-2344-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 RnJvbTogSm9obiBIYXJyaXNvbiA8Sm9obi5DLkhhcnJpc29uQEludGVsLmNvbT4KClRoZSBwdXJw b3NlIG9mIHRoaXMgcGF0Y2ggc2VyaWVzIGlzIHRvIGNvbnZlcnQgdGhlIHJlcXVzdCBzdHJ1Y3R1 cmUgdG8KdXNlIGZlbmNlIG9iamVjdHMgZm9yIHRoZSB1bmRlcmx5aW5nIGNvbXBsZXRpb24gdHJh Y2tpbmcuIFRoZSBmZW5jZQpvYmplY3QgcmVxdWlyZXMgYSBzZXF1ZW5jZSBudW1iZXIuIFRoZSB1 bHRpbWF0ZSBhaW0gaXMgdG8gdXNlIHRoZSBzYW1lCnNlcXVlbmNlIG51bWJlciBhcyBmb3IgdGhl IHJlcXVlc3QgaXRzZWxmIChvciByYXRoZXIsIHRvIHJlbW92ZSB0aGUKcmVxdWVzdCdzIHNlcW5v IGZpZWxkIGFuZCBqdXN0IHVzZSB0aGUgZmVuY2UncyB2YWx1ZSB0aHJvdWdob3V0IHRoZQpkcml2 ZXIpLiBIb3dldmVyLCB0aGlzIGlzIG5vdCBjdXJyZW50bHkgcG9zc2libGUgYW5kIHNvIHRoaXMg cGF0Y2gKaW50cm9kdWNlcyBhIHNlcGFyYXRlIG51bWJlcmluZyBzY2hlbWUgYXMgYW4gaW50ZXJt ZWRpYXRlIHN0ZXAuCgpBIG1ham9yIGFkdmFudGFnZSBvZiB1c2luZyB0aGUgZmVuY2Ugb2JqZWN0 IGlzIHRoYXQgaXQgY2FuIGJlIHBhc3NlZApvdXRzaWRlIG9mIHRoZSBpOTE1IGRyaXZlciBhbmQg dXNlZCBleHRlcm5hbGx5LiBUaGUgZmVuY2UgQVBJIGFsbG93cwpmb3IgdmFyaW91cyBvcGVyYXRp b25zIHN1Y2ggYXMgY29tYmluaW5nIG11bHRpcGxlIGZlbmNlcy4gVGhpcwpyZXF1aXJlcyB0aGF0 IGZlbmNlIHNlcW5vcyB3aXRoaW4gYSBzaW5nbGUgZmVuY2UgY29udGV4dCBiZSBndWFyYW50ZWVk CmluLW9yZGVyLiBUaGUgR1BVIHNjaGVkdWxlciB0aGF0IGlzIGNvbWluZyBjYW4gcmUtb3JkZXIg cmVxdWVzdApleGVjdXRpb24gYnV0IG5vdCB3aXRoaW4gYSBzaW5nbGUgR1BVIGNvbnRleHQuIFRo dXMgdGhlIGZlbmNlIGNvbnRleHQKbXVzdCBiZSB0aWVkIHRvIHRoZSBpOTE1IGNvbnRleHQgKGFu ZCB0aGUgZW5naW5lIHdpdGhpbiB0aGUgY29udGV4dCBhcwplYWNoIGVuZ2luZSBydW5zIGFzeW5j aHJvbm91c2x5KS4KCk9uIHRoZSBvdGhlciBoYW5kLCB0aGUgZHJpdmVyIGFzIGEgd2hvbGUgY3Vy cmVudGx5IG9ubHkgd29ya3Mgd2l0aApyZXF1ZXN0IHNlcW5vcyB0aGF0IGFyZSBhbGxvY2F0ZWQg ZnJvbSBhIGdsb2JhbCBpbi1vcmRlciB0aW1lbGluZS4gSXQKd2lsbCByZXF1aXJlIGEgZmFpciBj aHVuayBvZiByZS13b3JrIHRvIGFsbG93IG11bHRpcGxlIGluZGVwZW5kZW50CnNlcW5vIHRpbWVs aW5lcyB0byBiZSB1c2VkLiBIZW5jZSB0aGUgaW50cm9kdWN0aW9uIG9mIGEgdGVtcG9yYXJ5LApm ZW5jZSBzcGVjaWZpYyB0aW1lbGluZS4gT25jZSB0aGUgd29yayB0byB1cGRhdGUgdGhlIHJlc3Qg b2YgdGhlCmRyaXZlciBoYXMgYmVlbiBjb21wbGV0ZWQgdGhlbiB0aGUgcmVxdWVzdCBjYW4gdXNl IHRoZSBmZW5jZSBzZXFubwppbnN0ZWFkLgoKdjI6IE5ldyBwYXRjaCBpbiBzZXJpZXMuCgp2Mzog UmVuYW1lZC9yZXR5cGVkIHRpbWVsaW5lIHN0cnVjdHVyZSBmaWVsZHMgYWZ0ZXIgcmV2aWV3IGNv bW1lbnRzIGJ5ClR2cnRrbyBVcnN1bGluLgoKQWRkZWQgY29udGV4dCBpbmZvcm1hdGlvbiB0byB0 aGUgdGltZWxpbmUncyBuYW1lIHN0cmluZyBmb3IgYmV0dGVyCmlkZW50aWZpY2F0aW9uIGluIGRl YnVnZnMgb3V0cHV0LgoKdjU6IExpbmUgd3JhcHBpbmcgYW5kIG90aGVyIHdoaXRlIHNwYWNlIGZp eGVzIHRvIGtlZXAgc3R5bGUgY2hlY2tlcgpoYXBweS4KCnY3OiBVcGRhdGVkIHRvIG5ld2VyIG5p Z2h0bHkgKGxvdHMgb2YgcmluZyAtPiBlbmdpbmUgcmVuYW1pbmcpLgoKdjg6IE1vdmVkIHRvIGVh cmxpZXIgaW4gcGF0Y2ggc2VyaWVzIHNvIG5vIGxvbmdlciBuZWVkcyB0byByZW1vdmUgdGhlCnF1 aWNrIGhhY2sgdGltZWxpbmUgdGhhdCB3YXMgYmVpbmcgYWRkZWQgYmVmb3JlLgoKdjk6IFVwZGF0 ZWQgdG8gYW5vdGhlciBuZXdlciBuaWdodGx5IChjaGFuZ2VzIHRvIGNvbnRleHQgc3RydWN0dXJl Cm5hbWluZykuIEFsc28gdXBkYXRlZCBjb21taXQgbWVzc2FnZSB0byBtYXRjaCBwcmV2aW91cyBj aGFuZ2VzLgoKdjEwOiBSZW1vdmVkIG9ic29sZXRlIGZpZWxkcyBmcm9tIHRpbWVsaW5lIHN0cnVj dHVyZSBhbmQgYSBjb3VwbGUgb2YKZnVuY3Rpb25zLiBDb3JyZWN0ZWQgc29tZSBjb21tZW50cyBh bmQgZGVidWcgcHJpbnRzLiBbUmV2aWV3IGNvbW1lbnRzCmZyb20gTWFhcnRlbiBMYW5raG9yc3Qg JiBUdnJ0a28gVXJzdWxpbl0KClVwZGF0ZWQgdG8geWV0IG1vcmUgbmlnaHRseSBjaGFuZ2VzICh1 NjQgZm9yIGZlbmNlIGNvbnRleHQpLgoKRm9yOiBWSVotNTE5MApTaWduZWQtb2ZmLWJ5OiBKb2hu IEhhcnJpc29uIDxKb2huLkMuSGFycmlzb25ASW50ZWwuY29tPgpDYzogVHZydGtvIFVyc3VsaW4g PHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KQ2M6IE1hYXJ0ZW4gTGFua2hvcnN0IDxtYWFydGVu Lmxhbmtob3JzdEBsaW51eC5pbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9kcnYuaCAgICAgICAgIHwgMTAgKysrKysrKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2dlbS5jICAgICAgICAgfCAzNiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIGRy aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2NvbnRleHQuYyB8IDE2ICsrKysrKysrKysrKysr KwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMgICAgICAgIHwgIDggKysrKysrKysK IDQgZmlsZXMgY2hhbmdlZCwgNzAgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5o CmluZGV4IDUzZDllM2YuLmNhNjdiNDUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAtODMx LDYgKzgzMSwxNSBAQCBzdHJ1Y3QgaTkxNV9jdHhfaGFuZ19zdGF0cyB7CiAJYm9vbCBiYW5uZWQ7 CiB9OwogCitzdHJ1Y3QgaTkxNV9mZW5jZV90aW1lbGluZSB7CisJY2hhciAgICAgbmFtZVszMl07 CisJdTY0ICAgICAgZmVuY2VfY29udGV4dDsKKwl1bnNpZ25lZCBuZXh0OworfTsKKworaW50IGk5 MTVfY3JlYXRlX2ZlbmNlX3RpbWVsaW5lKHN0cnVjdCBpOTE1X2dlbV9jb250ZXh0ICpjdHgsCisJ CQkgICAgICAgc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZyk7CisKIC8qIFRoaXMgbXVzdCBt YXRjaCB1cCB3aXRoIHRoZSB2YWx1ZSBwcmV2aW91c2x5IHVzZWQgZm9yIGV4ZWNidWYyLnJzdmQx LiAqLwogI2RlZmluZSBERUZBVUxUX0NPTlRFWFRfSEFORExFIDAKIApAQCAtODc1LDYgKzg4NCw3 IEBAIHN0cnVjdCBpOTE1X2dlbV9jb250ZXh0IHsKIAkJdTY0IGxyY19kZXNjOwogCQlpbnQgcGlu X2NvdW50OwogCQlib29sIGluaXRpYWxpc2VkOworCQlzdHJ1Y3QgaTkxNV9mZW5jZV90aW1lbGlu ZSBmZW5jZV90aW1lbGluZTsKIAl9IGVuZ2luZVtJOTE1X05VTV9FTkdJTkVTXTsKIAogCXN0cnVj dCBsaXN0X2hlYWQgbGluazsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf Z2VtLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCmluZGV4IDU3YWE4YTQuLmEz ZmRjZjkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwpAQCAtMjc3Miw2ICsyNzcyLDQyIEBAIHZv aWQgaTkxNV9nZW1fcmVxdWVzdF9mcmVlKHN0cnVjdCBrcmVmICpyZXFfcmVmKQogCWttZW1fY2Fj aGVfZnJlZShyZXEtPmk5MTUtPnJlcXVlc3RzLCByZXEpOwogfQogCitpbnQgaTkxNV9jcmVhdGVf ZmVuY2VfdGltZWxpbmUoc3RydWN0IGk5MTVfZ2VtX2NvbnRleHQgKmN0eCwKKwkJCSAgICAgICBz dHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUpCit7CisJc3RydWN0IGk5MTVfZmVuY2VfdGlt ZWxpbmUgKnRpbWVsaW5lOworCisJdGltZWxpbmUgPSAmY3R4LT5lbmdpbmVbZW5naW5lLT5pZF0u ZmVuY2VfdGltZWxpbmU7CisKKwlXQVJOX09OKHRpbWVsaW5lLT5uYW1lWzBdKTsKKworCXRpbWVs aW5lLT5mZW5jZV9jb250ZXh0ID0gZmVuY2VfY29udGV4dF9hbGxvYygxKTsKKworCS8qCisJICog U3RhcnQgdGhlIHRpbWVsaW5lIGZyb20gc2Vxbm8gMSBhcyB6ZXJvIGlzIGEgc3BlY2lhbCB2YWx1 ZQorCSAqIHRoYXQgaXMgcmVzZXJ2ZWQgZm9yIGludmFsaWQgc3luYyBwb2ludHMuCisJICovCisJ dGltZWxpbmUtPm5leHQgPSAxOworCisJc25wcmludGYodGltZWxpbmUtPm5hbWUsIHNpemVvZih0 aW1lbGluZS0+bmFtZSksICIlbGxkPiVzOiVkIiwKKwkJIHRpbWVsaW5lLT5mZW5jZV9jb250ZXh0 LCBlbmdpbmUtPm5hbWUsIGN0eC0+dXNlcl9oYW5kbGUpOworCisJcmV0dXJuIDA7Cit9CisKK3Vu c2lnbmVkIGk5MTVfZmVuY2VfdGltZWxpbmVfZ2V0X25leHRfc2Vxbm8oc3RydWN0IGk5MTVfZmVu Y2VfdGltZWxpbmUgKnRpbWVsaW5lKQoreworCXVuc2lnbmVkIHNlcW5vOworCisJc2Vxbm8gPSB0 aW1lbGluZS0+bmV4dDsKKworCS8qIFJlc2VydmUgemVybyBmb3IgaW52YWxpZCAqLworCWlmICgr K3RpbWVsaW5lLT5uZXh0ID09IDApCisJCXRpbWVsaW5lLT5uZXh0ID0gMTsKKworCXJldHVybiBz ZXFubzsKK30KKwogc3RhdGljIGlubGluZSBpbnQKIF9faTkxNV9nZW1fcmVxdWVzdF9hbGxvYyhz dHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUsCiAJCQkgc3RydWN0IGk5MTVfZ2VtX2NvbnRl eHQgKmN0eCwKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2NvbnRl eHQuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2NvbnRleHQuYwppbmRleCBkMGU3 ZmM2Li4xOTcxZDhhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9j b250ZXh0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fY29udGV4dC5jCkBA IC0zMjAsNiArMzIwLDIyIEBAIGk5MTVfZ2VtX2NyZWF0ZV9jb250ZXh0KHN0cnVjdCBkcm1fZGV2 aWNlICpkZXYsCiAJaWYgKElTX0VSUihjdHgpKQogCQlyZXR1cm4gY3R4OwogCisJaWYgKCFpOTE1 LmVuYWJsZV9leGVjbGlzdHMpIHsKKwkJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lOwor CisJCS8qIENyZWF0ZSBhIHBlciBjb250ZXh0IHRpbWVsaW5lIGZvciBmZW5jZXMgKi8KKwkJZm9y X2VhY2hfZW5naW5lKGVuZ2luZSwgdG9faTkxNShkZXYpKSB7CisJCQlpbnQgcmV0ID0gaTkxNV9j cmVhdGVfZmVuY2VfdGltZWxpbmUoY3R4LCBlbmdpbmUpOworCQkJaWYgKHJldCkgeworCQkJCURS TV9FUlJPUigiRmVuY2UgdGltZWxpbmUgY3JlYXRpb24gZmFpbGVkIGZvciBsZWdhY3kgJXM6ICVw LyVkXG4iLAorCQkJCQkgIGVuZ2luZS0+bmFtZSwgY3R4LCBjdHgtPnVzZXJfaGFuZGxlKTsKKwkJ CQlpZHJfcmVtb3ZlKCZmaWxlX3ByaXYtPmNvbnRleHRfaWRyLCBjdHgtPnVzZXJfaGFuZGxlKTsK KwkJCQlpOTE1X2dlbV9jb250ZXh0X3VucmVmZXJlbmNlKGN0eCk7CisJCQkJcmV0dXJuIEVSUl9Q VFIocmV0KTsKKwkJCX0KKwkJfQorCX0KKwogCWlmIChVU0VTX0ZVTExfUFBHVFQoZGV2KSkgewog CQlzdHJ1Y3QgaTkxNV9od19wcGd0dCAqcHBndHQgPSBpOTE1X3BwZ3R0X2NyZWF0ZShkZXYsIGZp bGVfcHJpdik7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5j IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMKaW5kZXggNGZhZDgzMC4uZGVkYjNm OCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMKQEAgLTI1MzksNiArMjUzOSwxNCBAQCBzdGF0 aWMgaW50IGV4ZWNsaXN0c19jb250ZXh0X2RlZmVycmVkX2FsbG9jKHN0cnVjdCBpOTE1X2dlbV9j b250ZXh0ICpjdHgsCiAJCWdvdG8gZXJyb3JfcmluZ2J1ZjsKIAl9CiAKKwkvKiBDcmVhdGUgYSBw ZXIgY29udGV4dCB0aW1lbGluZSBmb3IgZmVuY2VzICovCisJcmV0ID0gaTkxNV9jcmVhdGVfZmVu Y2VfdGltZWxpbmUoY3R4LCBlbmdpbmUpOworCWlmIChyZXQpIHsKKwkJRFJNX0VSUk9SKCJGZW5j ZSB0aW1lbGluZSBjcmVhdGlvbiBmYWlsZWQgZm9yICVzLCBjdHggJXAvJWRcbiIsCisJCQkgIGVu Z2luZS0+bmFtZSwgY3R4LCBjdHgtPnVzZXJfaGFuZGxlKTsKKwkJZ290byBlcnJvcl9yaW5nYnVm OworCX0KKwogCWNlLT5yaW5nYnVmID0gcmluZ2J1ZjsKIAljZS0+c3RhdGUgPSBjdHhfb2JqOwog CWNlLT5pbml0aWFsaXNlZCA9IGVuZ2luZS0+aW5pdF9jb250ZXh0ID09IE5VTEw7Ci0tIAoxLjku MQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwt Z2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==