From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH 5/5] drm/amdgpu: add independent DMA-buf export v3 Date: Mon, 18 Jun 2018 10:28:57 +0200 Message-ID: <20180618082857.GY3438@phenom.ffwll.local> References: <20180601120020.11520-1-christian.koenig@amd.com> <20180601120020.11520-5-christian.koenig@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <20180601120020.11520-5-christian.koenig-5C7GfCeVMHo@public.gmane.org> List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: Christian =?iso-8859-1?Q?K=F6nig?= Cc: linaro-mm-sig-cunTk1MwBs8s++Sfvej+rw@public.gmane.org, amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, linux-media-u79uwXL29TY76Z2rM5mHXA@public.gmane.org T24gRnJpLCBKdW4gMDEsIDIwMTggYXQgMDI6MDA6MjBQTSArMDIwMCwgQ2hyaXN0aWFuIEvDtm5p ZyB3cm90ZToKPiBUaGUgY2FjaGluZyBvZiBTR1QncyBkb25lIGJ5IHRoZSBEUk0gY29kZSBpcyBh Y3R1YWxseSBxdWl0ZSBoYXJtZnVsIGFuZAo+IHNob3VsZCBwcm9iYWJseSByZW1vdmVkIGFsdG9n ZXRoZXIgaW4gdGhlIGxvbmcgdGVybS4KCkhtLCB3aHkgaXMgaXQgaGFybWZ1bD8gV2UndmUgZG9u ZSBpdCBiZWNhdXNlIGl0J3MgZXhwZW5zaXZlLCBhbmQgcGVvcGxlCnN0YXJ0ZWQgc2NyZWFtaW5n IGFib3V0IHRoZSBvdmVyaGVhZCAuLi4gaGVuY2UgdGhlIGNhY2hpbmcuIERvaW5nIGFuCmFtZGdw dSBjb3B5cGFzdGEgc2VlbXMgbGlrZSB3b3JraW5nIGFyb3VuZCBpc3N1ZXMgaW4gc2hhcmVkIGNv ZGUuCi1EYW5pZWwKCj4gCj4gU3RhcnQgYnkgcHJvdmlkaW5nIGEgc2VwYXJhdGUgRE1BLWJ1ZiBl eHBvcnQgaW1wbGVtZW50YXRpb24gaW4gYW1kZ3B1LiBUaGlzIGlzCj4gYWxzbyBhIHByZXJlcXVp c2l0ZSBvZiB1bnBpbm5lZCBETUEtYnVmIGhhbmRsaW5nLgo+IAo+IHYyOiBmaXggdW5pbnRlbmRl ZCByZWN1cnNpb24sIHJlbW92ZSBkZWJ1Z2dpbmcgbGVmdG92ZXJzCj4gdjM6IHNwbGl0IG91dCBm cm9tIHVucGlubmVkIERNQS1idWYgd29yawo+IAo+IFNpZ25lZC1vZmYtYnk6IENocmlzdGlhbiBL w7ZuaWcgPGNocmlzdGlhbi5rb2VuaWdAYW1kLmNvbT4KPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJt L2FtZC9hbWRncHUvYW1kZ3B1LmggICAgICAgfCAgMSAtCj4gIGRyaXZlcnMvZ3B1L2RybS9hbWQv YW1kZ3B1L2FtZGdwdV9kcnYuYyAgIHwgIDEgLQo+ICBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdw dS9hbWRncHVfcHJpbWUuYyB8IDczICsrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KPiAg MyBmaWxlcyBjaGFuZ2VkLCAzMiBpbnNlcnRpb25zKCspLCA0MyBkZWxldGlvbnMoLSkKPiAKPiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1LmggYi9kcml2ZXJz L2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHUuaAo+IGluZGV4IDJkNzUwMDkyMWMwYi4uOTNkYzU3 ZDc0ZmMyIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdS5o Cj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1LmgKPiBAQCAtMzczLDcg KzM3Myw2IEBAIGludCBhbWRncHVfZ2VtX29iamVjdF9vcGVuKHN0cnVjdCBkcm1fZ2VtX29iamVj dCAqb2JqLAo+ICB2b2lkIGFtZGdwdV9nZW1fb2JqZWN0X2Nsb3NlKHN0cnVjdCBkcm1fZ2VtX29i amVjdCAqb2JqLAo+ICAJCQkJc3RydWN0IGRybV9maWxlICpmaWxlX3ByaXYpOwo+ICB1bnNpZ25l ZCBsb25nIGFtZGdwdV9nZW1fdGltZW91dCh1aW50NjRfdCB0aW1lb3V0X25zKTsKPiAtc3RydWN0 IHNnX3RhYmxlICphbWRncHVfZ2VtX3ByaW1lX2dldF9zZ190YWJsZShzdHJ1Y3QgZHJtX2dlbV9v YmplY3QgKm9iaik7Cj4gIHN0cnVjdCBkcm1fZ2VtX29iamVjdCAqCj4gIGFtZGdwdV9nZW1fcHJp bWVfaW1wb3J0X3NnX3RhYmxlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gIAkJCQkgc3RydWN0 IGRtYV9idWZfYXR0YWNobWVudCAqYXR0YWNoLAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGdwdS9hbWRncHVfZHJ2LmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9h bWRncHVfZHJ2LmMKPiBpbmRleCBiMGJmMmYyNGRhNDguLjI3MGI4YWQ5MjdlYSAxMDA2NDQKPiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZHJ2LmMKPiArKysgYi9kcml2 ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZHJ2LmMKPiBAQCAtOTA3LDcgKzkwNyw2IEBA IHN0YXRpYyBzdHJ1Y3QgZHJtX2RyaXZlciBrbXNfZHJpdmVyID0gewo+ICAJLmdlbV9wcmltZV9l eHBvcnQgPSBhbWRncHVfZ2VtX3ByaW1lX2V4cG9ydCwKPiAgCS5nZW1fcHJpbWVfaW1wb3J0ID0g YW1kZ3B1X2dlbV9wcmltZV9pbXBvcnQsCj4gIAkuZ2VtX3ByaW1lX3Jlc19vYmogPSBhbWRncHVf Z2VtX3ByaW1lX3Jlc19vYmosCj4gLQkuZ2VtX3ByaW1lX2dldF9zZ190YWJsZSA9IGFtZGdwdV9n ZW1fcHJpbWVfZ2V0X3NnX3RhYmxlLAo+ICAJLmdlbV9wcmltZV9pbXBvcnRfc2dfdGFibGUgPSBh bWRncHVfZ2VtX3ByaW1lX2ltcG9ydF9zZ190YWJsZSwKPiAgCS5nZW1fcHJpbWVfdm1hcCA9IGFt ZGdwdV9nZW1fcHJpbWVfdm1hcCwKPiAgCS5nZW1fcHJpbWVfdnVubWFwID0gYW1kZ3B1X2dlbV9w cmltZV92dW5tYXAsCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2Ft ZGdwdV9wcmltZS5jIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X3ByaW1lLmMK PiBpbmRleCBhMTU2YjM4OTFhM2YuLjBjNWE3NWIwNjY0OCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfcHJpbWUuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9hbWQvYW1kZ3B1L2FtZGdwdV9wcmltZS5jCj4gQEAgLTMyLDE0ICszMiw2IEBACj4gIAo+ICBz dGF0aWMgY29uc3Qgc3RydWN0IGRtYV9idWZfb3BzIGFtZGdwdV9kbWFidWZfb3BzOwo+ICAKPiAt c3RydWN0IHNnX3RhYmxlICphbWRncHVfZ2VtX3ByaW1lX2dldF9zZ190YWJsZShzdHJ1Y3QgZHJt X2dlbV9vYmplY3QgKm9iaikKPiAtewo+IC0Jc3RydWN0IGFtZGdwdV9ibyAqYm8gPSBnZW1fdG9f YW1kZ3B1X2JvKG9iaik7Cj4gLQlpbnQgbnBhZ2VzID0gYm8tPnRiby5udW1fcGFnZXM7Cj4gLQo+ IC0JcmV0dXJuIGRybV9wcmltZV9wYWdlc190b19zZyhiby0+dGJvLnR0bS0+cGFnZXMsIG5wYWdl cyk7Cj4gLX0KPiAtCj4gIHZvaWQgKmFtZGdwdV9nZW1fcHJpbWVfdm1hcChzdHJ1Y3QgZHJtX2dl bV9vYmplY3QgKm9iaikKPiAgewo+ICAJc3RydWN0IGFtZGdwdV9ibyAqYm8gPSBnZW1fdG9fYW1k Z3B1X2JvKG9iaik7Cj4gQEAgLTEzMiwyMyArMTI0LDE3IEBAIGFtZGdwdV9nZW1fcHJpbWVfaW1w b3J0X3NnX3RhYmxlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gIAlyZXR1cm4gRVJSX1BUUihy ZXQpOwo+ICB9Cj4gIAo+IC1zdGF0aWMgaW50IGFtZGdwdV9nZW1fbWFwX2F0dGFjaChzdHJ1Y3Qg ZG1hX2J1ZiAqZG1hX2J1ZiwKPiAtCQkJCSBzdHJ1Y3QgZG1hX2J1Zl9hdHRhY2htZW50ICphdHRh Y2gpCj4gK3N0YXRpYyBzdHJ1Y3Qgc2dfdGFibGUgKgo+ICthbWRncHVfZ2VtX21hcF9kbWFfYnVm KHN0cnVjdCBkbWFfYnVmX2F0dGFjaG1lbnQgKmF0dGFjaCwKPiArCQkgICAgICAgZW51bSBkbWFf ZGF0YV9kaXJlY3Rpb24gZGlyKQo+ICB7Cj4gKwlzdHJ1Y3QgZG1hX2J1ZiAqZG1hX2J1ZiA9IGF0 dGFjaC0+ZG1hYnVmOwo+ICAJc3RydWN0IGRybV9nZW1fb2JqZWN0ICpvYmogPSBkbWFfYnVmLT5w cml2Owo+ICAJc3RydWN0IGFtZGdwdV9ibyAqYm8gPSBnZW1fdG9fYW1kZ3B1X2JvKG9iaik7Cj4g IAlzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiA9IGFtZGdwdV90dG1fYWRldihiby0+dGJvLmJk ZXYpOwo+ICsJc3RydWN0IHNnX3RhYmxlICpzZ3Q7Cj4gIAlsb25nIHI7Cj4gIAo+IC0JciA9IGRy bV9nZW1fbWFwX2F0dGFjaChkbWFfYnVmLCBhdHRhY2gpOwo+IC0JaWYgKHIpCj4gLQkJcmV0dXJu IHI7Cj4gLQo+IC0JciA9IGFtZGdwdV9ib19yZXNlcnZlKGJvLCBmYWxzZSk7Cj4gLQlpZiAodW5s aWtlbHkociAhPSAwKSkKPiAtCQlnb3RvIGVycm9yX2RldGFjaDsKPiAtCj4gLQo+ICAJaWYgKGF0 dGFjaC0+ZGV2LT5kcml2ZXIgIT0gYWRldi0+ZGV2LT5kcml2ZXIpIHsKPiAgCQkvKgo+ICAJCSAq IFdhaXQgZm9yIGFsbCBzaGFyZWQgZmVuY2VzIHRvIGNvbXBsZXRlIGJlZm9yZSB3ZSBzd2l0Y2gg dG8gZnV0dXJlCj4gQEAgLTE1OSw0NiArMTQ1LDUzIEBAIHN0YXRpYyBpbnQgYW1kZ3B1X2dlbV9t YXBfYXR0YWNoKHN0cnVjdCBkbWFfYnVmICpkbWFfYnVmLAo+ICAJCQkJCQkJTUFYX1NDSEVEVUxF X1RJTUVPVVQpOwo+ICAJCWlmICh1bmxpa2VseShyIDwgMCkpIHsKPiAgCQkJRFJNX0RFQlVHX1BS SU1FKCJGZW5jZSB3YWl0IGZhaWxlZDogJWxpXG4iLCByKTsKPiAtCQkJZ290byBlcnJvcl91bnJl c2VydmU7Cj4gKwkJCXJldHVybiBFUlJfUFRSKHIpOwo+ICAJCX0KPiAgCX0KPiAgCj4gIAkvKiBw aW4gYnVmZmVyIGludG8gR1RUICovCj4gIAlyID0gYW1kZ3B1X2JvX3BpbihibywgQU1ER1BVX0dF TV9ET01BSU5fR1RULCBOVUxMKTsKPiAgCWlmIChyKQo+IC0JCWdvdG8gZXJyb3JfdW5yZXNlcnZl Owo+ICsJCXJldHVybiBFUlJfUFRSKHIpOwo+ICsKPiArCXNndCA9IGRybV9wcmltZV9wYWdlc190 b19zZyhiby0+dGJvLnR0bS0+cGFnZXMsIGJvLT50Ym8ubnVtX3BhZ2VzKTsKPiArCWlmIChJU19F UlIoc2d0KSkKPiArCQlyZXR1cm4gc2d0Owo+ICsKPiArCWlmICghZG1hX21hcF9zZ19hdHRycyhh dHRhY2gtPmRldiwgc2d0LT5zZ2wsIHNndC0+bmVudHMsIGRpciwKPiArCQkJICAgICAgRE1BX0FU VFJfU0tJUF9DUFVfU1lOQykpCj4gKwkJZ290byBlcnJvcl9mcmVlOwo+ICAKPiAgCWlmIChhdHRh Y2gtPmRldi0+ZHJpdmVyICE9IGFkZXYtPmRldi0+ZHJpdmVyKQo+ICAJCWJvLT5wcmltZV9zaGFy ZWRfY291bnQrKzsKPiAgCj4gLWVycm9yX3VucmVzZXJ2ZToKPiAtCWFtZGdwdV9ib191bnJlc2Vy dmUoYm8pOwo+ICsJcmV0dXJuIHNndDsKPiAgCj4gLWVycm9yX2RldGFjaDoKPiAtCWlmIChyKQo+ IC0JCWRybV9nZW1fbWFwX2RldGFjaChkbWFfYnVmLCBhdHRhY2gpOwo+IC0JcmV0dXJuIHI7Cj4g K2Vycm9yX2ZyZWU6Cj4gKwlzZ19mcmVlX3RhYmxlKHNndCk7Cj4gKwlrZnJlZShzZ3QpOwo+ICsJ cmV0dXJuIEVSUl9QVFIoLUVOT01FTSk7Cj4gIH0KPiAgCj4gLXN0YXRpYyB2b2lkIGFtZGdwdV9n ZW1fbWFwX2RldGFjaChzdHJ1Y3QgZG1hX2J1ZiAqZG1hX2J1ZiwKPiAtCQkJCSAgc3RydWN0IGRt YV9idWZfYXR0YWNobWVudCAqYXR0YWNoKQo+ICtzdGF0aWMgdm9pZCBhbWRncHVfZ2VtX3VubWFw X2RtYV9idWYoc3RydWN0IGRtYV9idWZfYXR0YWNobWVudCAqYXR0YWNoLAo+ICsJCQkJICAgICBz dHJ1Y3Qgc2dfdGFibGUgKnNndCwKPiArCQkJCSAgICAgZW51bSBkbWFfZGF0YV9kaXJlY3Rpb24g ZGlyKQo+ICB7Cj4gKwlzdHJ1Y3QgZG1hX2J1ZiAqZG1hX2J1ZiA9IGF0dGFjaC0+ZG1hYnVmOwo+ ICAJc3RydWN0IGRybV9nZW1fb2JqZWN0ICpvYmogPSBkbWFfYnVmLT5wcml2Owo+ICAJc3RydWN0 IGFtZGdwdV9ibyAqYm8gPSBnZW1fdG9fYW1kZ3B1X2JvKG9iaik7Cj4gIAlzdHJ1Y3QgYW1kZ3B1 X2RldmljZSAqYWRldiA9IGFtZGdwdV90dG1fYWRldihiby0+dGJvLmJkZXYpOwo+IC0JaW50IHJl dCA9IDA7Cj4gLQo+IC0JcmV0ID0gYW1kZ3B1X2JvX3Jlc2VydmUoYm8sIHRydWUpOwo+IC0JaWYg KHVubGlrZWx5KHJldCAhPSAwKSkKPiAtCQlnb3RvIGVycm9yOwo+ICAKPiAgCWFtZGdwdV9ib191 bnBpbihibyk7Cj4gKwo+ICAJaWYgKGF0dGFjaC0+ZGV2LT5kcml2ZXIgIT0gYWRldi0+ZGV2LT5k cml2ZXIgJiYgYm8tPnByaW1lX3NoYXJlZF9jb3VudCkKPiAgCQliby0+cHJpbWVfc2hhcmVkX2Nv dW50LS07Cj4gLQlhbWRncHVfYm9fdW5yZXNlcnZlKGJvKTsKPiAgCj4gLWVycm9yOgo+IC0JZHJt X2dlbV9tYXBfZGV0YWNoKGRtYV9idWYsIGF0dGFjaCk7Cj4gKwlpZiAoc2d0KSB7Cj4gKwkJZG1h X3VubWFwX3NnKGF0dGFjaC0+ZGV2LCBzZ3QtPnNnbCwgc2d0LT5uZW50cywgZGlyKTsKPiArCQlz Z19mcmVlX3RhYmxlKHNndCk7Cj4gKwkJa2ZyZWUoc2d0KTsKPiArCX0KPiAgfQo+ICAKPiAgc3Ry dWN0IHJlc2VydmF0aW9uX29iamVjdCAqYW1kZ3B1X2dlbV9wcmltZV9yZXNfb2JqKHN0cnVjdCBk cm1fZ2VtX29iamVjdCAqb2JqKQo+IEBAIC0yMzcsMTAgKzIzMCw4IEBAIHN0YXRpYyBpbnQgYW1k Z3B1X2dlbV9iZWdpbl9jcHVfYWNjZXNzKHN0cnVjdCBkbWFfYnVmICpkbWFfYnVmLAo+ICB9Cj4g IAo+ICBzdGF0aWMgY29uc3Qgc3RydWN0IGRtYV9idWZfb3BzIGFtZGdwdV9kbWFidWZfb3BzID0g ewo+IC0JLmF0dGFjaCA9IGFtZGdwdV9nZW1fbWFwX2F0dGFjaCwKPiAtCS5kZXRhY2ggPSBhbWRn cHVfZ2VtX21hcF9kZXRhY2gsCj4gLQkubWFwX2RtYV9idWYgPSBkcm1fZ2VtX21hcF9kbWFfYnVm LAo+IC0JLnVubWFwX2RtYV9idWYgPSBkcm1fZ2VtX3VubWFwX2RtYV9idWYsCj4gKwkubWFwX2Rt YV9idWYgPSBhbWRncHVfZ2VtX21hcF9kbWFfYnVmLAo+ICsJLnVubWFwX2RtYV9idWYgPSBhbWRn cHVfZ2VtX3VubWFwX2RtYV9idWYsCj4gIAkucmVsZWFzZSA9IGRybV9nZW1fZG1hYnVmX3JlbGVh c2UsCj4gIAkuYmVnaW5fY3B1X2FjY2VzcyA9IGFtZGdwdV9nZW1fYmVnaW5fY3B1X2FjY2VzcywK PiAgCS5tYXAgPSBkcm1fZ2VtX2RtYWJ1Zl9rbWFwLAo+IC0tIAo+IDIuMTQuMQo+IAo+IF9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gZHJpLWRldmVsIG1h aWxpbmcgbGlzdAo+IGRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKPiBodHRwczovL2xp c3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAoKLS0gCkRhbmll bCBWZXR0ZXIKU29mdHdhcmUgRW5naW5lZXIsIEludGVsIENvcnBvcmF0aW9uCmh0dHA6Ly9ibG9n LmZmd2xsLmNoCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CmFtZC1nZnggbWFpbGluZyBsaXN0CmFtZC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBz Oi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vYW1kLWdmeAo=