From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH 4/9] drm: Begin an API for in-kernel clients Date: Tue, 29 May 2018 09:53:10 +0200 Message-ID: <20180529075310.GZ3438@phenom.ffwll.local> References: <20180523143411.64070-1-noralf@tronnes.org> <20180523143411.64070-5-noralf@tronnes.org> <20180524084213.GG3438@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Noralf =?iso-8859-1?Q?Tr=F8nnes?= Cc: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, laurent.pinchart@ideasonboard.com List-Id: dri-devel@lists.freedesktop.org T24gTW9uLCBNYXkgMjgsIDIwMTggYXQgMDM6MjY6NDhQTSArMDIwMCwgTm9yYWxmIFRyw7hubmVz IHdyb3RlOgo+IAo+IERlbiAyNC4wNS4yMDE4IDEwLjQyLCBza3JldiBEYW5pZWwgVmV0dGVyOgo+ ID4gT24gV2VkLCBNYXkgMjMsIDIwMTggYXQgMDQ6MzQ6MDZQTSArMDIwMCwgTm9yYWxmIFRyw7hu bmVzIHdyb3RlOgo+ID4gPiBUaGlzIHRoZSBiZWdpbm5pbmcgb2YgYW4gQVBJIGZvciBpbi1rZXJu ZWwgY2xpZW50cy4KPiA+ID4gRmlyc3Qgb3V0IGlzIGEgd2F5IHRvIGdldCBhIGZyYW1lYnVmZmVy IGJhY2tlZCBieSBhIGR1bWIgYnVmZmVyLgo+ID4gPiAKPiA+ID4gT25seSBHRU0gZHJpdmVycyBh cmUgc3VwcG9ydGVkLgo+ID4gPiBUaGUgb3JpZ2luYWwgaWRlYSBvZiB1c2luZyBhbiBleHBvcnRl ZCBkbWEtYnVmIHdhcyBkcm9wcGVkIGJlY2F1c2UgaXQKPiA+ID4gYWxzbyBjcmVhdGVzIGFuIGFu b25vbW91cyBmaWxlIGRlc2NyaXB0b3Igd2hpY2ggZG9lc24ndCB3b3JrIHdoZW4gdGhlCj4gPiA+ IGJ1ZmZlciBpcyBjcmVhdGVkIGZyb20gYSBrZXJuZWwgdGhyZWFkLiBUaGUgZWFzeSB3YXkgb3V0 IGlzIHRvIHVzZQo+ID4gPiBkcm1fZHJpdmVyLmdlbV9wcmltZV92bWFwIHRvIGdldCB0aGUgdmly dHVhbCBhZGRyZXNzLCB3aGljaCByZXF1aXJlcyBhCj4gPiA+IEdFTSBvYmplY3QuIFRoaXMgZXhj bHVkZXMgdGhlIHZtd2dmeCBkcml2ZXIgd2hpY2ggaXMgdGhlIG9ubHkgbm9uLUdFTQo+ID4gPiBk cml2ZXIgYXBhcnQgZnJvbSB0aGUgbGVnYWN5IG9uZXMuIEEgc29sdXRpb24gZm9yIHZtd2dmeCB3 aWxsIGhhdmUgdG8gYmUKPiA+ID4gd29ya2VkIG91dCBsYXRlciBpZiBpdCB3YW50cyB0byBzdXBw b3J0IHRoZSBjbGllbnQgQVBJIHdoaWNoIGl0IHByb2JhYmx5Cj4gPiA+IHdpbGwgd2hlbiB3ZSBo YXZlIGEgYm9vdHNwbGFzaCBjbGllbnQuCj4gPiA+IAo+ID4gPiBTaWduZWQtb2ZmLWJ5OiBOb3Jh bGYgVHLDuG5uZXMgPG5vcmFsZkB0cm9ubmVzLm9yZz4KPiA+IEEgZmV3IHNtYWxsIG5pdHMgYmVs b3csIHdpdGggdGhvc2UgYWRkcmVzc2VkOgo+ID4gCj4gPiBSZXZpZXdlZC1ieTogRGFuaWVsIFZl dHRlciA8ZGFuaWVsLnZldHRlckBmZndsbC5jaD4KPiA+ID4gLS0tCj4gCj4gWy4uLl0KPiAKPiA+ ID4gKy8qKgo+ID4gPiArICogZHJtX2NsaWVudF9uZXcgLSBDcmVhdGUgYSBEUk0gY2xpZW50Cj4g PiA+ICsgKiBAZGV2OiBEUk0gZGV2aWNlCj4gPiA+ICsgKgo+ID4gPiArICogUmV0dXJuczoKPiA+ ID4gKyAqIFBvaW50ZXIgdG8gYSBjbGllbnQgb3IgYW4gZXJyb3IgcG9pbnRlciBvbiBmYWlsdXJl Lgo+ID4gPiArICovCj4gPiA+ICtzdHJ1Y3QgZHJtX2NsaWVudF9kZXYgKmRybV9jbGllbnRfbmV3 KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4gPiBBcGkgbml0cGljazoKPiA+IAo+ID4gaW50IGRy bV9jbGllbnRfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ID4gCQkgICAgc3RydWN0IGRy bV9jbGllbnRfZGV2ICpjbGllbnQpCj4gPiAKPiA+IGFuZCBkcm9wcGluZyB0aGUga3phbGxvYyBm cm9tIHRoaXMgc3RydWN0dXJlIGhlcmUuIFRoaXMgYWxsb3dzIHVzZXJzIG9mCj4gPiB0aGlzIHRv IGVtYmVkIHRoZSBjbGllbnQgc3RydWN0IGludG8gdGhlaXIgb3duIHRoaW5nLCB3aGljaCBtZWFu cyB0aGUKPiA+IC0+cHJpdmF0ZSBiYWNrcG9pbnRlciBpc24ndCBuZWNlc3NhcnkuIEFsbG93aW5n IGVtYmVkZGluZyBpcyB0aGUgcHJlZmVycmVkCj4gPiBpbnRlcmZhY2UgaW4gdGhlIGtlcm5lbCAo c2luY2UgaXQncyBzdHJpY3RseSBtb3JlIHBvd2VyZnVsLCB5b3UgY2FuIGFsd2F5cwo+ID4ganVz dCBremFsbG9jICsgX2luaXQgdG8gZ2V0IHRoZSBfbmV3IGJlaGF2aW91cikuCj4gPiAKPiA+ID4g K3sKPiA+ID4gKwlzdHJ1Y3QgZHJtX2NsaWVudF9kZXYgKmNsaWVudDsKPiA+ID4gKwlpbnQgcmV0 Owo+ID4gPiArCj4gPiA+ICsJaWYgKCFkcm1fY29yZV9jaGVja19mZWF0dXJlKGRldiwgRFJJVkVS X01PREVTRVQpIHx8Cj4gPiA+ICsJICAgICFkZXYtPmRyaXZlci0+ZHVtYl9jcmVhdGUgfHwgIWRl di0+ZHJpdmVyLT5nZW1fcHJpbWVfdm1hcCkKPiA+ID4gKwkJcmV0dXJuIEVSUl9QVFIoLUVOT1RT VVBQKTsKPiA+ID4gKwo+ID4gPiArCWNsaWVudCA9IGt6YWxsb2Moc2l6ZW9mKCpjbGllbnQpLCBH RlBfS0VSTkVMKTsKPiA+ID4gKwlpZiAoIWNsaWVudCkKPiA+ID4gKwkJcmV0dXJuIEVSUl9QVFIo LUVOT01FTSk7Cj4gPiA+ICsKPiA+ID4gKwljbGllbnQtPmRldiA9IGRldjsKPiA+ID4gKwo+ID4g PiArCXJldCA9IGRybV9jbGllbnRfYWxsb2NfZmlsZShjbGllbnQpOwo+ID4gPiArCWlmIChyZXQp IHsKPiA+ID4gKwkJa2ZyZWUoY2xpZW50KTsKPiA+ID4gKwkJcmV0dXJuIEVSUl9QVFIocmV0KTsK PiA+ID4gKwl9Cj4gPiA+ICsKPiA+ID4gKwlyZXR1cm4gY2xpZW50Owo+ID4gPiArfQo+ID4gPiAr RVhQT1JUX1NZTUJPTChkcm1fY2xpZW50X25ldyk7Cj4gPiA+ICsKPiAKPiBbLi4uXQo+IAo+ID4g PiArc3RhdGljIHN0cnVjdCBkcm1fY2xpZW50X2J1ZmZlciAqCj4gPiA+ICtkcm1fY2xpZW50X2J1 ZmZlcl9jcmVhdGUoc3RydWN0IGRybV9jbGllbnRfZGV2ICpjbGllbnQsIHUzMiB3aWR0aCwgdTMy IGhlaWdodCwgdTMyIGZvcm1hdCkKPiA+ID4gK3sKPiA+ID4gKwlzdHJ1Y3QgZHJtX21vZGVfY3Jl YXRlX2R1bWIgZHVtYl9hcmdzID0geyB9Owo+ID4gPiArCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYg PSBjbGllbnQtPmRldjsKPiA+ID4gKwlzdHJ1Y3QgZHJtX2NsaWVudF9idWZmZXIgKmJ1ZmZlcjsK PiA+ID4gKwlzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKm9iajsKPiA+ID4gKwl2b2lkICp2YWRkcjsK PiA+ID4gKwlpbnQgcmV0Owo+ID4gPiArCj4gPiA+ICsJYnVmZmVyID0ga3phbGxvYyhzaXplb2Yo KmJ1ZmZlciksIEdGUF9LRVJORUwpOwo+ID4gPiArCWlmICghYnVmZmVyKQo+ID4gPiArCQlyZXR1 cm4gRVJSX1BUUigtRU5PTUVNKTsKPiA+ID4gKwo+ID4gPiArCWJ1ZmZlci0+Y2xpZW50ID0gY2xp ZW50Owo+ID4gPiArCj4gPiA+ICsJZHVtYl9hcmdzLndpZHRoID0gd2lkdGg7Cj4gPiA+ICsJZHVt Yl9hcmdzLmhlaWdodCA9IGhlaWdodDsKPiA+ID4gKwlkdW1iX2FyZ3MuYnBwID0gZHJtX2Zvcm1h dF9wbGFuZV9jcHAoZm9ybWF0LCAwKSAqIDg7Cj4gPiA+ICsJcmV0ID0gZHJtX21vZGVfY3JlYXRl X2R1bWIoZGV2LCAmZHVtYl9hcmdzLCBjbGllbnQtPmZpbGUpOwo+ID4gPiArCWlmIChyZXQpCj4g PiA+ICsJCWdvdG8gZXJyX2ZyZWU7Cj4gPiA+ICsKPiA+ID4gKwlidWZmZXItPmhhbmRsZSA9IGR1 bWJfYXJncy5oYW5kbGU7Cj4gPiA+ICsJYnVmZmVyLT5waXRjaCA9IGR1bWJfYXJncy5waXRjaDsK PiA+ID4gKwo+ID4gPiArCW9iaiA9IGRybV9nZW1fb2JqZWN0X2xvb2t1cChjbGllbnQtPmZpbGUs IGR1bWJfYXJncy5oYW5kbGUpOwo+ID4gPiArCWlmICghb2JqKSAgewo+ID4gPiArCQlyZXQgPSAt RU5PRU5UOwo+ID4gPiArCQlnb3RvIGVycl9kZWxldGU7Cj4gPiA+ICsJfQo+ID4gPiArCj4gPiA+ ICsJYnVmZmVyLT5nZW0gPSBvYmo7Cj4gPiA+ICsKPiA+IEknbSBwYXJhbm9pZCwgSSB0aGluayBh bgo+ID4gCj4gPiAJaWYgKFdBUk5fT04oIWdlbV9wcmltZV92bWFwKSkKPiA+IAkJcmV0dXJuIC1F SU5WQUw7Cj4gPiAKPiA+IHdvdWxkIGJlIGNvb2wgaGVyZS4KPiAKPiBUaGlzIGlzIGFscmVhZHkg Y2hlY2tlZCBpbiBkcm1fY2xpZW50X2luaXQoKS4KClllYWggSSBub3RpY2VkIGxhdGVyIG9uLiBJ IHRoaW5rIHJlY2hlY2tpbmcgZm9yIHNhZmV0eSBoZXJlIGNhbid0IGh1cnQsCmJ1dCB1cCB0byB5 b3UuCi1EYW5pZWwKCj4gCj4gTm9yYWxmLgo+IAo+ID4gQWxzbyBwZXJoYXBzIHRoZSBmb2xsb3dp bmcgY29tbWVudDoKPiA+IAo+ID4gCS8qCj4gPiAJICogRklYTUU6IFRoZSBkZXBlbmRlbmN5IG9u IEdFTSBoZXJlIGlzbid0IHJlcXVpcmVkLCB3ZSBjb3VsZAo+ID4gCSAqIGNvbnZlcnQgdGhlIGRy aXZlciBoYW5kbGUgdG8gYSBkbWEtYnVmIGluc3RlYWQgYW5kIHVzZSB0aGUKPiA+IAkgKiBiYWNr ZW5kLWFnbm9zdGljIGRtYS1idWYgdm1hcCBzdXBwb3J0IGluc3RlYWQuIFRoaXMgd291bGQKPiA+ IAkgKiByZXF1aXJlIHRoYXQgdGhlIGhhbmRsZTJmZCBwcmltZSBpb2N0bCBpcyByZXdvcmtlZCB0 byBwdWxsIHRoZQo+ID4gCSAqIGZkX2luc3RhbGwgc3RlcCBvdXQgb2YgdGhlIGRyaXZlciBiYWNr ZW5kIGhvb2tzLCB0byBtYWtlIHRoYXQKPiA+IAkgKiBmaW5hbCBzdGVwIG9wdGlvbmFsIGZvciBp bnRlcm5hbCB1c2Vycy4KPiA+IAkgKi8KPiA+IAo+ID4gCj4gPiA+ICsJdmFkZHIgPSBkZXYtPmRy aXZlci0+Z2VtX3ByaW1lX3ZtYXAob2JqKTsKPiA+ID4gKwlpZiAoIXZhZGRyKSB7Cj4gPiA+ICsJ CXJldCA9IC1FTk9NRU07Cj4gPiA+ICsJCWdvdG8gZXJyX2RlbGV0ZTsKPiA+ID4gKwl9Cj4gPiA+ ICsKPiA+ID4gKwlidWZmZXItPnZhZGRyID0gdmFkZHI7Cj4gPiA+ICsKPiA+ID4gKwlyZXR1cm4g YnVmZmVyOwo+ID4gPiArCj4gPiA+ICtlcnJfZGVsZXRlOgo+ID4gPiArCWRybV9jbGllbnRfYnVm ZmVyX2RlbGV0ZShidWZmZXIpOwo+ID4gPiArZXJyX2ZyZWU6Cj4gPiA+ICsJa2ZyZWUoYnVmZmVy KTsKPiA+ID4gKwo+ID4gPiArCXJldHVybiBFUlJfUFRSKHJldCk7Cj4gPiA+ICt9Cj4gCj4gCgot LSAKRGFuaWVsIFZldHRlcgpTb2Z0d2FyZSBFbmdpbmVlciwgSW50ZWwgQ29ycG9yYXRpb24KaHR0 cDovL2Jsb2cuZmZ3bGwuY2gKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50 ZWwtZ2Z4Cg==