From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: Re: [PATCH 16/38] drm/i915: Introduce a context barrier callback Date: Fri, 1 Mar 2019 16:12:33 +0000 Message-ID: References: <20190301140404.26690-1-chris@chris-wilson.co.uk> <20190301140404.26690-16-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by gabe.freedesktop.org (Postfix) with ESMTPS id F07C16E2D1 for ; Fri, 1 Mar 2019 16:12:34 +0000 (UTC) In-Reply-To: <20190301140404.26690-16-chris@chris-wilson.co.uk> Content-Language: en-US List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Chris Wilson , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org Ck9uIDAxLzAzLzIwMTkgMTQ6MDMsIENocmlzIFdpbHNvbiB3cm90ZToKPiBJbiB0aGUgbmV4dCBw YXRjaCwgd2Ugd2lsbCB3YW50IHRvIHVwZGF0ZSBsaXZlIHN0YXRlIHdpdGhpbiBhIGNvbnRleHQu Cj4gQXMgdGhpcyBzdGF0ZSBtYXkgYmUgaW4gdXNlIGJ5IHRoZSBHUFUgYW5kIHdlIGhhdmVuJ3Qg YmVlbiBleHBsaWNpdGx5Cj4gdHJhY2tpbmcgaXRzIGFjdGl2aXR5LCB3ZSBpbnN0ZWFkIGF0dGFj aCBpdCB0byBhIHJlcXVlc3Qgd2Ugc2VuZCBkb3duCj4gdGhlIGNvbnRleHQgc2V0dXAgd2l0aCBp dHMgbmV3IHN0YXRlIGFuZCBvbiByZXRpcmluZyB0aGF0IHJlcXVlc3QKPiBjbGVhbnVwIHRoZSBv bGQgc3RhdGUgYXMgd2UgdGhlbiBrbm93IHRoYXQgaXQgaXMgbm8gbG9uZ2VyIGxpdmUuCj4gCj4g U2lnbmVkLW9mZi1ieTogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+Cj4g LS0tCj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9jb250ZXh0LmMgICAgICAgfCAg NzQgKysrKysrKysrKysrKwo+ICAgLi4uL2dwdS9kcm0vaTkxNS9zZWxmdGVzdHMvaTkxNV9nZW1f Y29udGV4dC5jIHwgMTAzICsrKysrKysrKysrKysrKysrKwo+ICAgMiBmaWxlcyBjaGFuZ2VkLCAx NzcgaW5zZXJ0aW9ucygrKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2dlbV9jb250ZXh0LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9jb250ZXh0 LmMKPiBpbmRleCAzYjUxNDViMzBkODUuLjkxOTI2YTQwNzU0OCAxMDA2NDQKPiAtLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9jb250ZXh0LmMKPiArKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dlbV9jb250ZXh0LmMKPiBAQCAtNzA3LDYgKzcwNyw4MCBAQCBsYXN0X3Jl cXVlc3Rfb25fZW5naW5lKHN0cnVjdCBpOTE1X3RpbWVsaW5lICp0aW1lbGluZSwKPiAgIAlyZXR1 cm4gTlVMTDsKPiAgIH0KPiAgIAo+ICtzdHJ1Y3QgY29udGV4dF9iYXJyaWVyX3Rhc2sgewo+ICsJ c3RydWN0IGk5MTVfYWN0aXZlIGJhc2U7Cj4gKwl2b2lkICgqdGFzaykodm9pZCAqZGF0YSk7Cj4g Kwl2b2lkICpkYXRhOwo+ICt9Owo+ICsKPiArc3RhdGljIHZvaWQgY2JfcmV0aXJlKHN0cnVjdCBp OTE1X2FjdGl2ZSAqYmFzZSkKPiArewo+ICsJc3RydWN0IGNvbnRleHRfYmFycmllcl90YXNrICpj YiA9IGNvbnRhaW5lcl9vZihiYXNlLCB0eXBlb2YoKmNiKSwgYmFzZSk7Cj4gKwo+ICsJaWYgKGNi LT50YXNrKQo+ICsJCWNiLT50YXNrKGNiLT5kYXRhKTsKPiArCj4gKwlpOTE1X2FjdGl2ZV9maW5p KCZjYi0+YmFzZSk7Cj4gKwlrZnJlZShjYik7Cj4gK30KPiArCj4gK0k5MTVfU0VMRlRFU1RfREVD TEFSRShzdGF0aWMgdW5zaWduZWQgbG9uZyBjb250ZXh0X2JhcnJpZXJfaW5qZWN0X2ZhdWx0KTsK PiArc3RhdGljIGludCBjb250ZXh0X2JhcnJpZXJfdGFzayhzdHJ1Y3QgaTkxNV9nZW1fY29udGV4 dCAqY3R4LAo+ICsJCQkJdW5zaWduZWQgbG9uZyBlbmdpbmVzLAoKSSdtIGluIHR3byBtaW5kcyBh Ym91dCB1c2VmdWxuZXNzIG9mIGludGVsX2VuZ2luZV9tYXNrX3QuCgo+ICsJCQkJdm9pZCAoKnRh c2spKHZvaWQgKmRhdGEpLAo+ICsJCQkJdm9pZCAqZGF0YSkKPiArewo+ICsJc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmk5MTUgPSBjdHgtPmk5MTU7Cj4gKwlzdHJ1Y3QgY29udGV4dF9iYXJyaWVy X3Rhc2sgKmNiOwo+ICsJc3RydWN0IGludGVsX2NvbnRleHQgKmNlOwo+ICsJaW50ZWxfd2FrZXJl Zl90IHdha2VyZWY7Cj4gKwlpbnQgZXJyID0gMDsKPiArCj4gKwlsb2NrZGVwX2Fzc2VydF9oZWxk KCZpOTE1LT5kcm0uc3RydWN0X211dGV4KTsKPiArCUdFTV9CVUdfT04oIXRhc2spOwo+ICsKPiAr CWNiID0ga21hbGxvYyhzaXplb2YoKmNiKSwgR0ZQX0tFUk5FTCk7Cj4gKwlpZiAoIWNiKQo+ICsJ CXJldHVybiAtRU5PTUVNOwo+ICsKPiArCWk5MTVfYWN0aXZlX2luaXQoaTkxNSwgJmNiLT5iYXNl LCBjYl9yZXRpcmUpOwo+ICsJaTkxNV9hY3RpdmVfYWNxdWlyZSgmY2ItPmJhc2UpOwo+ICsKPiAr CXdha2VyZWYgPSBpbnRlbF9ydW50aW1lX3BtX2dldChpOTE1KTsKPiArCWxpc3RfZm9yX2VhY2hf ZW50cnkoY2UsICZjdHgtPmFjdGl2ZV9lbmdpbmVzLCBhY3RpdmVfbGluaykgewo+ICsJCXN0cnVj dCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSA9IGNlLT5lbmdpbmU7Cj4gKwkJc3RydWN0IGk5MTVf cmVxdWVzdCAqcnE7Cj4gKwo+ICsJCWlmICghKGNlLT5lbmdpbmUtPm1hc2sgJiBlbmdpbmVzKSkK PiArCQkJY29udGludWU7Cj4gKwo+ICsJCWlmIChJOTE1X1NFTEZURVNUX09OTFkoY29udGV4dF9i YXJyaWVyX2luamVjdF9mYXVsdCAmCj4gKwkJCQkgICAgICAgZW5naW5lLT5tYXNrKSkgewo+ICsJ CQllcnIgPSAtRU5YSU87Cj4gKwkJCWJyZWFrOwo+ICsJCX0KPiArCj4gKwkJcnEgPSBpOTE1X3Jl cXVlc3RfYWxsb2MoZW5naW5lLCBjdHgpOwo+ICsJCWlmIChJU19FUlIocnEpKSB7Cj4gKwkJCWVy ciA9IFBUUl9FUlIocnEpOwo+ICsJCQlicmVhazsKPiArCQl9Cj4gKwo+ICsJCWVyciA9IGk5MTVf YWN0aXZlX3JlZigmY2ItPmJhc2UsIHJxLT5mZW5jZS5jb250ZXh0LCBycSk7Cj4gKwkJaTkxNV9y ZXF1ZXN0X2FkZChycSk7Cj4gKwkJaWYgKGVycikKPiArCQkJYnJlYWs7Cj4gKwl9Cj4gKwlpbnRl bF9ydW50aW1lX3BtX3B1dChpOTE1LCB3YWtlcmVmKTsKPiArCj4gKwljYi0+dGFzayA9IGVyciA/ IE5VTEwgOiB0YXNrOyAvKiBjYWxsZXIgbmVlZHMgdG8gdW53aW5kIGluc3RlYWQgKi8KPiArCWNi LT5kYXRhID0gZGF0YTsKPiArCj4gKwlpOTE1X2FjdGl2ZV9yZWxlYXNlKCZjYi0+YmFzZSk7Cj4g Kwo+ICsJcmV0dXJuIGVycjsKPiArfQo+ICsKPiAgIGludCBpOTE1X2dlbV9zd2l0Y2hfdG9fa2Vy bmVsX2NvbnRleHQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsCj4gICAJCQkJICAgICAg dW5zaWduZWQgbG9uZyBtYXNrKQo+ICAgewo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9zZWxmdGVzdHMvaTkxNV9nZW1fY29udGV4dC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv c2VsZnRlc3RzL2k5MTVfZ2VtX2NvbnRleHQuYwo+IGluZGV4IDdhZTUwMzM0NTdiNi4uNGY3YzA0 MjQ3MzU0IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L3NlbGZ0ZXN0cy9pOTE1 X2dlbV9jb250ZXh0LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9zZWxmdGVzdHMvaTkx NV9nZW1fY29udGV4dC5jCj4gQEAgLTE1OTQsMTAgKzE1OTQsMTEzIEBAIHN0YXRpYyBpbnQgaWd0 X3N3aXRjaF90b19rZXJuZWxfY29udGV4dCh2b2lkICphcmcpCj4gICAJcmV0dXJuIGVycjsKPiAg IH0KPiAgIAo+ICtzdGF0aWMgdm9pZCBtb2NrX2JhcnJpZXJfdGFzayh2b2lkICpkYXRhKQo+ICt7 Cj4gKwl1bnNpZ25lZCBpbnQgKmNvdW50ZXIgPSBkYXRhOwo+ICsKPiArCSsrKmNvdW50ZXI7Cj4g K30KPiArCj4gK3N0YXRpYyBpbnQgbW9ja19jb250ZXh0X2JhcnJpZXIodm9pZCAqYXJnKQo+ICt7 Cj4gKyN1bmRlZiBwcl9mbXQKPiArI2RlZmluZSBwcl9mbXQoeCkgImNvbnRleHRfYmFycmllcl90 YXNrKCk6IiAjIHgKPiArCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1ID0gYXJnOwo+ICsJ c3RydWN0IGk5MTVfZ2VtX2NvbnRleHQgKmN0eDsKPiArCXN0cnVjdCBpOTE1X3JlcXVlc3QgKnJx Owo+ICsJaW50ZWxfd2FrZXJlZl90IHdha2VyZWY7Cj4gKwl1bnNpZ25lZCBpbnQgY291bnRlcjsK PiArCWludCBlcnI7Cj4gKwo+ICsJLyoKPiArCSAqIFRoZSBjb250ZXh0IGJhcnJpZXIgcHJvdmlk ZXMgdXMgd2l0aCBhIGNhbGxiYWNrIGFmdGVyIGl0IGVtaXRzCj4gKwkgKiBhIHJlcXVlc3Q7IHVz ZWZ1bCBmb3IgcmV0aXJpbmcgb2xkIHN0YXRlIGFmdGVyIGxvYWRpbmcgbmV3Lgo+ICsJICovCj4g Kwo+ICsJbXV0ZXhfbG9jaygmaTkxNS0+ZHJtLnN0cnVjdF9tdXRleCk7Cj4gKwo+ICsJY3R4ID0g bW9ja19jb250ZXh0KGk5MTUsICJtb2NrIik7Cj4gKwlpZiAoSVNfRVJSKGN0eCkpIHsKPiArCQll cnIgPSBQVFJfRVJSKGN0eCk7Cj4gKwkJZ290byB1bmxvY2s7Cj4gKwl9Cj4gKwo+ICsJY291bnRl ciA9IDA7Cj4gKwllcnIgPSBjb250ZXh0X2JhcnJpZXJfdGFzayhjdHgsIDAsIG1vY2tfYmFycmll cl90YXNrLCAmY291bnRlcik7Cj4gKwlpZiAoZXJyKSB7Cj4gKwkJcHJfZXJyKCJGYWlsZWQgYXQg bGluZSAlZCwgZXJyPSVkXG4iLCBfX0xJTkVfXywgZXJyKTsKPiArCQlnb3RvIG91dDsKPiArCX0K PiArCWlmIChjb3VudGVyID09IDApIHsKPiArCQlwcl9lcnIoIkRpZCBub3QgcmV0aXJlIGltbWVk aWF0ZWx5IHdpdGggMCBlbmdpbmVzXG4iKTsKPiArCQllcnIgPSAtRUlOVkFMOwo+ICsJCWdvdG8g b3V0Owo+ICsJfQo+ICsKPiArCWNvdW50ZXIgPSAwOwo+ICsJZXJyID0gY29udGV4dF9iYXJyaWVy X3Rhc2soY3R4LCAtMSwgbW9ja19iYXJyaWVyX3Rhc2ssICZjb3VudGVyKTsKPiArCWlmIChlcnIp IHsKPiArCQlwcl9lcnIoIkZhaWxlZCBhdCBsaW5lICVkLCBlcnI9JWRcbiIsIF9fTElORV9fLCBl cnIpOwo+ICsJCWdvdG8gb3V0Owo+ICsJfQo+ICsJaWYgKGNvdW50ZXIgPT0gMCkgewo+ICsJCXBy X2VycigiRGlkIG5vdCByZXRpcmUgaW1tZWRpYXRlbHkgZm9yIGFsbCBpbmFjdGl2ZSBlbmdpbmVz XG4iKTsKCldoeSB3b3VsZCB0aGlzIG9uZSByZXRpcmUgaW1tZWRpYXRlbHk/IEl0IHdpbGwgc2Vu ZCByZXF1ZXN0cyBkb3duIHRoZSAKcGlwZSwgbm8/IFNvIGRvbid0IHlvdSBhY3R1YWxseSBuZWVk IHRvIHdhaXQgZm9yIHRoZSB0cmFja2VyIHRvIGJlIApzaWduYWxsZWQgYW5kIHRoYXQgY291bnRl ciA9PSBudW1fZW5naW5lcz8KCj4gKwkJZXJyID0gLUVJTlZBTDsKPiArCQlnb3RvIG91dDsKPiAr CX0KPiArCj4gKwlycSA9IEVSUl9QVFIoLUVOT0RFVik7Cj4gKwl3aXRoX2ludGVsX3J1bnRpbWVf cG0oaTkxNSwgd2FrZXJlZikKPiArCQlycSA9IGk5MTVfcmVxdWVzdF9hbGxvYyhpOTE1LT5lbmdp bmVbUkNTXSwgY3R4KTsKPiArCWlmIChJU19FUlIocnEpKSB7Cj4gKwkJcHJfZXJyKCJSZXF1ZXN0 IGFsbG9jYXRpb24gZmFpbGVkIVxuIik7Cj4gKwkJZ290byBvdXQ7Cj4gKwl9Cj4gKwlpOTE1X3Jl cXVlc3RfYWRkKHJxKTsKCkRvZXNuJ3QgdGhpcyBuZWVkIHRvIGdvIHVuZGVyIHRoZSB3YWtlcmVm IGFzIHdlbGw/Cgo+ICsJR0VNX0JVR19PTihsaXN0X2VtcHR5KCZjdHgtPmFjdGl2ZV9lbmdpbmVz KSk7Cj4gKwo+ICsJY291bnRlciA9IDA7Cj4gKwljb250ZXh0X2JhcnJpZXJfaW5qZWN0X2ZhdWx0 ID0gQklUKFJDUyk7Cj4gKwllcnIgPSBjb250ZXh0X2JhcnJpZXJfdGFzayhjdHgsIC0xLCBtb2Nr X2JhcnJpZXJfdGFzaywgJmNvdW50ZXIpOwo+ICsJY29udGV4dF9iYXJyaWVyX2luamVjdF9mYXVs dCA9IDA7Cj4gKwlpZiAoZXJyID09IC1FTlhJTykKPiArCQllcnIgPSAwOwo+ICsJZWxzZQo+ICsJ CXByX2VycigiRGlkIG5vdCBoaXQgZmF1bHQgaW5qZWN0aW9uIVxuIik7Cj4gKwlpZiAoY291bnRl ciAhPSAwKSB7Cj4gKwkJcHJfZXJyKCJJbnZva2VkIGNhbGxiYWNrIG9uIGVycm9yIVxuIik7Cj4g KwkJZXJyID0gLUVJTzsKPiArCX0KPiArCWlmIChlcnIpCj4gKwkJZ290byBvdXQ7Cj4gKwo+ICsJ Y291bnRlciA9IDA7Cj4gKwllcnIgPSBjb250ZXh0X2JhcnJpZXJfdGFzayhjdHgsIC0xLCBtb2Nr X2JhcnJpZXJfdGFzaywgJmNvdW50ZXIpOwo+ICsJaWYgKGVycikgewo+ICsJCXByX2VycigiRmFp bGVkIGF0IGxpbmUgJWQsIGVycj0lZFxuIiwgX19MSU5FX18sIGVycik7Cj4gKwkJZ290byBvdXQ7 Cj4gKwl9Cj4gKwltb2NrX2RldmljZV9mbHVzaChpOTE1KTsKPiArCWlmIChjb3VudGVyID09IDAp IHsKPiArCQlwcl9lcnIoIkRpZCBub3QgcmV0aXJlIG9uIGVhY2ggYWN0aXZlIGVuZ2luZXNcbiIp Owo+ICsJCWVyciA9IC1FSU5WQUw7Cj4gKwkJZ290byBvdXQ7Cj4gKwl9CgpUaGlzIG9uZSBpcyBp bmxpbmUgd2l0aCBteSB1bmRlcnN0YW5kaW5nLCBhbmQgdGhlIGNvbnRleHRfYmFycmllcl90YXNr IAphcmd1bWVudHMgYXJlIHRoZSBzYW1lIGFzIHRoZSBvbmUgYWJvdmUuLiBobS4uIEkgYW0gY29u ZnVzZWQuCgo+ICsKPiArb3V0Ogo+ICsJbW9ja19jb250ZXh0X2Nsb3NlKGN0eCk7Cj4gK3VubG9j azoKPiArCW11dGV4X3VubG9jaygmaTkxNS0+ZHJtLnN0cnVjdF9tdXRleCk7Cj4gKwlyZXR1cm4g ZXJyOwo+ICsjdW5kZWYgcHJfZm10Cj4gKyNkZWZpbmUgcHJfZm10KHgpIHgKPiArfQo+ICsKPiAg IGludCBpOTE1X2dlbV9jb250ZXh0X21vY2tfc2VsZnRlc3RzKHZvaWQpCj4gICB7Cj4gICAJc3Rh dGljIGNvbnN0IHN0cnVjdCBpOTE1X3N1YnRlc3QgdGVzdHNbXSA9IHsKPiAgIAkJU1VCVEVTVChp Z3Rfc3dpdGNoX3RvX2tlcm5lbF9jb250ZXh0KSwKPiArCQlTVUJURVNUKG1vY2tfY29udGV4dF9i YXJyaWVyKSwKPiAgIAl9Owo+ICAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1Owo+ICAg CWludCBlcnI7Cj4gCgpSZWdhcmRzLAoKVHZydGtvCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxp c3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2ludGVsLWdmeA==