From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [RFC 4/8] drm/fence: add in-fences support Date: Fri, 15 Apr 2016 10:11:32 +0200 Message-ID: <20160415081132.GT2510@phenom.ffwll.local> References: <1460683781-22535-1-git-send-email-gustavo@padovan.org> <1460683781-22535-5-git-send-email-gustavo@padovan.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-x243.google.com (mail-wm0-x243.google.com [IPv6:2a00:1450:400c:c09::243]) by gabe.freedesktop.org (Postfix) with ESMTPS id DA8DB6EBC4 for ; Fri, 15 Apr 2016 08:11:36 +0000 (UTC) Received: by mail-wm0-x243.google.com with SMTP id y144so3929257wmd.0 for ; Fri, 15 Apr 2016 01:11:36 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1460683781-22535-5-git-send-email-gustavo@padovan.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Gustavo Padovan Cc: marcheu@google.com, Daniel Stone , seanpaul@google.com, Daniel Vetter , Arve =?iso-8859-1?B?SGr4bm5lduVn?= , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Riley Andrews , m.chehab@samsung.com, Gustavo Padovan , John Harrison , laurent.pinchart@ideasonboard.com List-Id: dri-devel@lists.freedesktop.org T24gVGh1LCBBcHIgMTQsIDIwMTYgYXQgMDY6Mjk6MzdQTSAtMDcwMCwgR3VzdGF2byBQYWRvdmFu IHdyb3RlOgo+IEZyb206IEd1c3Rhdm8gUGFkb3ZhbiA8Z3VzdGF2by5wYWRvdmFuQGNvbGxhYm9y YS5jby51az4KPiAKPiBUaGVyZSBpcyBub3cgYSBuZXcgcHJvcGVydHkgY2FsbGVkIEZFTkNFX0ZE IGF0dGFjaGVkIHRvIGV2ZXJ5IHBsYW5lCj4gc3RhdGUgdGhhdCByZWNlaXZlcyB0aGUgc3luY19m aWxlIGZkIGZyb20gdXNlcnNwYWNlIHZpYSB0aGUgYXRvbWljIGNvbW1pdAo+IElPQ1RMLgo+IAo+ IFRoZSBmZCBpcyB0aGVuIHRyYW5zbGF0ZWQgdG8gYSBmZW5jZSAodGhhdCBtYXkgYmUgYSBmZW5j ZV9jb2xsZWN0aW9uCj4gc3ViY2xhc3Mgb3IganVzdCBhIG5vcm1hbCBmZW5jZSkgYW5kIHRoZW4g dXNlZCBieSBEUk0gdG8gZmVuY2Vfd2FpdCgpIGZvcgo+IGFsbCBmZW5jZXMgaW4gdGhlIHN5bmNf ZmlsZSB0byBzaWduYWwuIFNvIGl0IG9ubHkgY29tbWl0cyB3aGVuIGFsbAo+IGZyYW1lYnVmZmVy cyBhcmUgcmVhZHkgdG8gc2Nhbm91dC4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBHdXN0YXZvIFBhZG92 YW4gPGd1c3Rhdm8ucGFkb3ZhbkBjb2xsYWJvcmEuY28udWs+Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1 L2RybS9LY29uZmlnICAgICAgICAgICAgIHwgMSArCj4gIGRyaXZlcnMvZ3B1L2RybS9kcm1fYXRv bWljLmMgICAgICAgIHwgOCArKysrKysrKwo+ICBkcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY19o ZWxwZXIuYyB8IDUgKysrKysKPiAgZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjLmMgICAgICAgICAg fCA3ICsrKysrKysKPiAgaW5jbHVkZS9kcm0vZHJtX2NydGMuaCAgICAgICAgICAgICAgfCAxICsK PiAgNSBmaWxlcyBjaGFuZ2VkLCAyMiBpbnNlcnRpb25zKCspCj4gCj4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9LY29uZmlnIGIvZHJpdmVycy9ncHUvZHJtL0tjb25maWcKPiBpbmRleCBm MmE3NGQwLi4zYzk4N2UzIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9LY29uZmlnCj4g KysrIGIvZHJpdmVycy9ncHUvZHJtL0tjb25maWcKPiBAQCAtMTIsNiArMTIsNyBAQCBtZW51Y29u ZmlnIERSTQo+ICAJc2VsZWN0IEkyQwo+ICAJc2VsZWN0IEkyQ19BTEdPQklUCj4gIAlzZWxlY3Qg RE1BX1NIQVJFRF9CVUZGRVIKPiArCXNlbGVjdCBTWU5DX0ZJTEUKPiAgCWhlbHAKPiAgCSAgS2Vy bmVsLWxldmVsIHN1cHBvcnQgZm9yIHRoZSBEaXJlY3QgUmVuZGVyaW5nIEluZnJhc3RydWN0dXJl IChEUkkpCj4gIAkgIGludHJvZHVjZWQgaW4gWEZyZWU4NiA0LjAuIElmIHlvdSBzYXkgWSBoZXJl LCB5b3UgbmVlZCB0byBzZWxlY3QKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9h dG9taWMuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljLmMKPiBpbmRleCA4ZWUxZGI4Li42 NzAyNTAyIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljLmMKPiArKysg Yi9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pYy5jCj4gQEAgLTMwLDYgKzMwLDcgQEAKPiAgI2lu Y2x1ZGUgPGRybS9kcm1fYXRvbWljLmg+Cj4gICNpbmNsdWRlIDxkcm0vZHJtX21vZGUuaD4KPiAg I2luY2x1ZGUgPGRybS9kcm1fcGxhbmVfaGVscGVyLmg+Cj4gKyNpbmNsdWRlIDxsaW51eC9zeW5j X2ZpbGUuaD4KPiAgCj4gIC8qKgo+ICAgKiBkcm1fYXRvbWljX3N0YXRlX2RlZmF1bHRfcmVsZWFz ZSAtCj4gQEAgLTY4MCw2ICs2ODEsMTEgQEAgaW50IGRybV9hdG9taWNfcGxhbmVfc2V0X3Byb3Bl cnR5KHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLAo+ICAJCWRybV9hdG9taWNfc2V0X2ZiX2Zvcl9w bGFuZShzdGF0ZSwgZmIpOwo+ICAJCWlmIChmYikKPiAgCQkJZHJtX2ZyYW1lYnVmZmVyX3VucmVm ZXJlbmNlKGZiKTsKPiArCX0gZWxzZSBpZiAocHJvcGVydHkgPT0gY29uZmlnLT5wcm9wX2ZlbmNl X2ZkKSB7CgpOZWVkIHRvIGZlbmNlX3B1dCBpZiBzdGF0ZS0+ZmVuY2UgaXMgbm9uLU5VTEwgYWxy ZWFkeS4gQ291bGQgaGFwcGVuIGlmCnVzZXJzcGFjZSBzZXRzIEZFTkNFX0ZEIG1vcmUgdGhhbiBv bmNlIChhbm90aGVyIGNhc2UgZm9yIHlvdXIgdGVzdGNhc2UgSSdkCnNheSkuCi1EYW5pZWwKCj4g KwkJc3RhdGUtPmZlbmNlID0gc3luY19maWxlX2ZlbmNlc19nZXQodmFsKTsKPiArCQlpZiAoIXN0 YXRlLT5mZW5jZSkKPiArCQkJcmV0dXJuIC1FSU5WQUw7Cj4gKwkJZmVuY2VfZ2V0KHN0YXRlLT5m ZW5jZSk7Cj4gIAl9IGVsc2UgaWYgKHByb3BlcnR5ID09IGNvbmZpZy0+cHJvcF9jcnRjX2lkKSB7 Cj4gIAkJc3RydWN0IGRybV9jcnRjICpjcnRjID0gZHJtX2NydGNfZmluZChkZXYsIHZhbCk7Cj4g IAkJcmV0dXJuIGRybV9hdG9taWNfc2V0X2NydGNfZm9yX3BsYW5lKHN0YXRlLCBjcnRjKTsKPiBA QCAtNzM3LDYgKzc0Myw4IEBAIGRybV9hdG9taWNfcGxhbmVfZ2V0X3Byb3BlcnR5KHN0cnVjdCBk cm1fcGxhbmUgKnBsYW5lLAo+ICAKPiAgCWlmIChwcm9wZXJ0eSA9PSBjb25maWctPnByb3BfZmJf aWQpIHsKPiAgCQkqdmFsID0gKHN0YXRlLT5mYikgPyBzdGF0ZS0+ZmItPmJhc2UuaWQgOiAwOwo+ ICsJfSBlbHNlIGlmIChwcm9wZXJ0eSA9PSBjb25maWctPnByb3BfZmVuY2VfZmQpIHsKPiArCQkq dmFsID0gLTE7Cj4gIAl9IGVsc2UgaWYgKHByb3BlcnR5ID09IGNvbmZpZy0+cHJvcF9jcnRjX2lk KSB7Cj4gIAkJKnZhbCA9IChzdGF0ZS0+Y3J0YykgPyBzdGF0ZS0+Y3J0Yy0+YmFzZS5pZCA6IDA7 Cj4gIAl9IGVsc2UgaWYgKHByb3BlcnR5ID09IGNvbmZpZy0+cHJvcF9jcnRjX3gpIHsKPiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMgYi9kcml2ZXJzL2dw dS9kcm0vZHJtX2F0b21pY19oZWxwZXIuYwo+IGluZGV4IGY4NWVmOGMuLjZlZDgzMzkgMTAwNjQ0 Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMKPiArKysgYi9kcml2 ZXJzL2dwdS9kcm0vZHJtX2F0b21pY19oZWxwZXIuYwo+IEBAIC0yNjg3LDYgKzI2ODcsMTEgQEAg dm9pZCBfX2RybV9hdG9taWNfaGVscGVyX3BsYW5lX2Rlc3Ryb3lfc3RhdGUoc3RydWN0IGRybV9w bGFuZSAqcGxhbmUsCj4gIHsKPiAgCWlmIChzdGF0ZS0+ZmIpCj4gIAkJZHJtX2ZyYW1lYnVmZmVy X3VucmVmZXJlbmNlKHN0YXRlLT5mYik7Cj4gKwo+ICsJaWYgKHN0YXRlLT5mZW5jZSkgewo+ICsJ CWZlbmNlX3B1dChzdGF0ZS0+ZmVuY2UpOwo+ICsJCXN0YXRlLT5mZW5jZSA9IE5VTEw7Cj4gKwl9 Cj4gIH0KPiAgRVhQT1JUX1NZTUJPTChfX2RybV9hdG9taWNfaGVscGVyX3BsYW5lX2Rlc3Ryb3lf c3RhdGUpOwo+ICAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjLmMgYi9k cml2ZXJzL2dwdS9kcm0vZHJtX2NydGMuYwo+IGluZGV4IDU1ZmZkZTUuLjY1MjEyY2UgMTAwNjQ0 Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9jcnRjLmMKPiArKysgYi9kcml2ZXJzL2dwdS9k cm0vZHJtX2NydGMuYwo+IEBAIC0xMjc4LDYgKzEyNzgsNyBAQCBpbnQgZHJtX3VuaXZlcnNhbF9w bGFuZV9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5l LAo+ICAKPiAgCWlmIChkcm1fY29yZV9jaGVja19mZWF0dXJlKGRldiwgRFJJVkVSX0FUT01JQykp IHsKPiAgCQlkcm1fb2JqZWN0X2F0dGFjaF9wcm9wZXJ0eSgmcGxhbmUtPmJhc2UsIGNvbmZpZy0+ cHJvcF9mYl9pZCwgMCk7Cj4gKwkJZHJtX29iamVjdF9hdHRhY2hfcHJvcGVydHkoJnBsYW5lLT5i YXNlLCBjb25maWctPnByb3BfZmVuY2VfZmQsIC0xKTsKPiAgCQlkcm1fb2JqZWN0X2F0dGFjaF9w cm9wZXJ0eSgmcGxhbmUtPmJhc2UsIGNvbmZpZy0+cHJvcF9jcnRjX2lkLCAwKTsKPiAgCQlkcm1f b2JqZWN0X2F0dGFjaF9wcm9wZXJ0eSgmcGxhbmUtPmJhc2UsIGNvbmZpZy0+cHJvcF9jcnRjX3gs IDApOwo+ICAJCWRybV9vYmplY3RfYXR0YWNoX3Byb3BlcnR5KCZwbGFuZS0+YmFzZSwgY29uZmln LT5wcm9wX2NydGNfeSwgMCk7Cj4gQEAgLTE1MzMsNiArMTUzNCwxMiBAQCBzdGF0aWMgaW50IGRy bV9tb2RlX2NyZWF0ZV9zdGFuZGFyZF9wcm9wZXJ0aWVzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYp Cj4gIAkJcmV0dXJuIC1FTk9NRU07Cj4gIAlkZXYtPm1vZGVfY29uZmlnLnByb3BfZmJfaWQgPSBw cm9wOwo+ICAKPiArCXByb3AgPSBkcm1fcHJvcGVydHlfY3JlYXRlX3NpZ25lZF9yYW5nZShkZXYs IERSTV9NT0RFX1BST1BfQVRPTUlDLAo+ICsJCQkiRkVOQ0VfRkQiLCAtMSwgSU5UX01BWCk7Cj4g KwlpZiAoIXByb3ApCj4gKwkJcmV0dXJuIC1FTk9NRU07Cj4gKwlkZXYtPm1vZGVfY29uZmlnLnBy b3BfZmVuY2VfZmQgPSBwcm9wOwo+ICsKPiAgCXByb3AgPSBkcm1fcHJvcGVydHlfY3JlYXRlX29i amVjdChkZXYsIERSTV9NT0RFX1BST1BfQVRPTUlDLAo+ICAJCQkiQ1JUQ19JRCIsIERSTV9NT0RF X09CSkVDVF9DUlRDKTsKPiAgCWlmICghcHJvcCkKPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0v ZHJtX2NydGMuaCBiL2luY2x1ZGUvZHJtL2RybV9jcnRjLmgKPiBpbmRleCA4Y2IzNzdjLi41YmEz Y2RhIDEwMDY0NAo+IC0tLSBhL2luY2x1ZGUvZHJtL2RybV9jcnRjLmgKPiArKysgYi9pbmNsdWRl L2RybS9kcm1fY3J0Yy5oCj4gQEAgLTIxMjIsNiArMjEyMiw3IEBAIHN0cnVjdCBkcm1fbW9kZV9j b25maWcgewo+ICAJc3RydWN0IGRybV9wcm9wZXJ0eSAqcHJvcF9jcnRjX3c7Cj4gIAlzdHJ1Y3Qg ZHJtX3Byb3BlcnR5ICpwcm9wX2NydGNfaDsKPiAgCXN0cnVjdCBkcm1fcHJvcGVydHkgKnByb3Bf ZmJfaWQ7Cj4gKwlzdHJ1Y3QgZHJtX3Byb3BlcnR5ICpwcm9wX2ZlbmNlX2ZkOwo+ICAJc3RydWN0 IGRybV9wcm9wZXJ0eSAqcHJvcF9jcnRjX2lkOwo+ICAJc3RydWN0IGRybV9wcm9wZXJ0eSAqcHJv cF9hY3RpdmU7Cj4gIAlzdHJ1Y3QgZHJtX3Byb3BlcnR5ICpwcm9wX21vZGVfaWQ7Cj4gLS0gCj4g Mi41LjUKPiAKCi0tIApEYW5pZWwgVmV0dGVyClNvZnR3YXJlIEVuZ2luZWVyLCBJbnRlbCBDb3Jw b3JhdGlvbgpodHRwOi8vYmxvZy5mZndsbC5jaApfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0 cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9s aXN0aW5mby9kcmktZGV2ZWwK