From mboxrd@z Thu Jan 1 00:00:00 1970 From: Greg KH Subject: Re: [RFC][PATCH 1/5 v2] dma-buf: Add dma-buf heaps framework Date: Wed, 27 Mar 2019 23:53:54 +0900 Message-ID: <20190327145354.GA4514@kroah.com> References: <1551819273-640-1-git-send-email-john.stultz@linaro.org> <1551819273-640-2-git-send-email-john.stultz@linaro.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by gabe.freedesktop.org (Postfix) with ESMTPS id F242F6E282 for ; Wed, 27 Mar 2019 18:25:58 +0000 (UTC) Content-Disposition: inline In-Reply-To: <1551819273-640-2-git-send-email-john.stultz@linaro.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: John Stultz Cc: Chenbo Feng , lkml , Liam Mark , "Andrew F. Davis" , Alistair Strachan , dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gVHVlLCBNYXIgMDUsIDIwMTkgYXQgMTI6NTQ6MjlQTSAtMDgwMCwgSm9obiBTdHVsdHogd3Jv dGU6Cj4gRnJvbTogIkFuZHJldyBGLiBEYXZpcyIgPGFmZEB0aS5jb20+Cj4gCj4gVGhpcyBmcmFt ZXdvcmsgYWxsb3dzIGEgdW5pZmllZCB1c2Vyc3BhY2UgaW50ZXJmYWNlIGZvciBkbWEtYnVmCj4g ZXhwb3J0ZXJzLCBhbGxvd2luZyB1c2VybGFuZCB0byBhbGxvY2F0ZSBzcGVjaWZpYyB0eXBlcyBv Zgo+IG1lbW9yeSBmb3IgdXNlIGluIGRtYS1idWYgc2hhcmluZy4KPiAKPiBFYWNoIGhlYXAgaXMg Z2l2ZW4gaXRzIG93biBkZXZpY2Ugbm9kZSwgd2hpY2ggYSB1c2VyIGNhbgo+IGFsbG9jYXRlIGEg ZG1hLWJ1ZiBmZCBmcm9tIHVzaW5nIHRoZSBETUFfSEVBUF9JT0NfQUxMT0MuCj4gCj4gVGhpcyBj b2RlIGlzIGFuIGV2b2x1aXRvbiBvZiB0aGUgQW5kcm9pZCBJT04gaW1wbGVtZW50YXRpb24sCj4g YW5kIGEgYmlnIHRoYW5rcyBpcyBkdWUgdG8gaXRzIGF1dGhvcnMvbWFpbnRhaW5lcnMgb3ZlciB0 aW1lCj4gZm9yIHRoZWlyIGVmZm9ydDoKPiAgIFJlYmVjY2EgU2NodWx0eiBaYXZpbiwgQ29saW4g Q3Jvc3MsIEJlbmphbWluIEdhaWduYXJkLAo+ICAgTGF1cmEgQWJib3R0LCBhbmQgbWFueSBvdGhl ciBjb250cmlidXRvcnMhCgpDb21tZW50cyBqdXN0IG9uIHRoZSB1c2VyL2tlcm5lbCBhcGkgYW5k IGhvdyBpdCBpbnRlcmFjdHMgd2l0aCB0aGUKZHJpdmVyIG1vZGVsLiAgTm90IG9uIHRoZSAicmVh bCIgZnVuY3Rpb25hbGl0eSBvZiB0aGlzIGNvZGUgOikKCj4gKyNkZWZpbmUgREVWTkFNRSAiZG1h X2hlYXAiCj4gKwo+ICsjZGVmaW5lIE5VTV9IRUFQX01JTk9SUyAxMjgKCldoeSBhIG1heD8KCj4g K3N0YXRpYyBERUZJTkVfSURSKGRtYV9oZWFwX2lkcik7Cj4gK3N0YXRpYyBERUZJTkVfTVVURVgo bWlub3JfbG9jayk7IC8qIFByb3RlY3QgaWRyIGFjY2Vzc2VzICovCgpNb3ZlIHRvIHVzZSB4YXJy YXkgbm93IHNvIHRoYXQgTWF0dGhldyBkb2Vzbid0IGhhdmUgdG8gc2VuZCBwYXRjaGVzCmNvbnZl cnRpbmcgdGhpcyBjb2RlIGxhdGVyIDopCgpJdCBhbHNvIGFsbG93cyB5b3UgdG8gZHJvcCB0aGUg bXV0ZXguCgo+ICsKPiArZGV2X3QgZG1hX2hlYXBfZGV2dDsKPiArc3RydWN0IGNsYXNzICpkbWFf aGVhcF9jbGFzczsKPiArc3RydWN0IGxpc3RfaGVhZCBkbWFfaGVhcF9saXN0Owo+ICtzdHJ1Y3Qg ZGVudHJ5ICpkbWFfaGVhcF9kZWJ1Z19yb290OwoKR2xvYmFsIHZhcmlhYmxlcz8KCj4gKwo+ICtz dGF0aWMgaW50IGRtYV9oZWFwX2J1ZmZlcl9hbGxvYyhzdHJ1Y3QgZG1hX2hlYXAgKmhlYXAsIHNp emVfdCBsZW4sCj4gKwkJCQkgdW5zaWduZWQgaW50IGZsYWdzKQo+ICt7Cj4gKwlsZW4gPSBQQUdF X0FMSUdOKGxlbik7Cj4gKwlpZiAoIWxlbikKPiArCQlyZXR1cm4gLUVJTlZBTDsKPiArCj4gKwly ZXR1cm4gaGVhcC0+b3BzLT5hbGxvY2F0ZShoZWFwLCBsZW4sIGZsYWdzKTsKPiArfQo+ICsKPiAr c3RhdGljIGludCBkbWFfaGVhcF9vcGVuKHN0cnVjdCBpbm9kZSAqaW5vZGUsIHN0cnVjdCBmaWxl ICpmaWxwKQo+ICt7Cj4gKwlzdHJ1Y3QgZG1hX2hlYXAgKmhlYXA7Cj4gKwo+ICsJbXV0ZXhfbG9j aygmbWlub3JfbG9jayk7Cj4gKwloZWFwID0gaWRyX2ZpbmQoJmRtYV9oZWFwX2lkciwgaW1pbm9y KGlub2RlKSk7Cj4gKwltdXRleF91bmxvY2soJm1pbm9yX2xvY2spOwo+ICsJaWYgKCFoZWFwKSB7 Cj4gKwkJcHJfZXJyKCJkbWFfaGVhcDogbWlub3IgJWQgdW5rbm93bi5cbiIsIGltaW5vcihpbm9k ZSkpOwo+ICsJCXJldHVybiAtRU5PREVWOwo+ICsJfQo+ICsKPiArCS8qIGluc3RhbmNlIGRhdGEg YXMgY29udGV4dCAqLwo+ICsJZmlscC0+cHJpdmF0ZV9kYXRhID0gaGVhcDsKPiArCW5vbnNlZWth YmxlX29wZW4oaW5vZGUsIGZpbHApOwo+ICsKPiArCXJldHVybiAwOwo+ICt9Cj4gKwo+ICtzdGF0 aWMgaW50IGRtYV9oZWFwX3JlbGVhc2Uoc3RydWN0IGlub2RlICppbm9kZSwgc3RydWN0IGZpbGUg KmZpbHApCj4gK3sKPiArCWZpbHAtPnByaXZhdGVfZGF0YSA9IE5VTEw7CgpXaHkgZG9lcyB0aGlz IG1hdHRlcj8gIHJlbGVhc2Ugc2hvdWxkIG9ubHkgYmUgY2FsbGVkIG9uIHRoZSB3YXkgb3V0IG9m CmhlcmUsIG5vIG5lZWQgdG8gZG8gYW55dGhpbmcgYXMgbm90aGluZyBlbHNlIGNhbiBiZSBjYWxs ZWQsIHJpZ2h0PwoKcmVsZWFzZSBzaG91bGRuJ3QgYmUgbmVlZGVkIGZyb20gd2hhdCBJIGNhbiB0 ZWxsLgoKPiArCj4gKwlyZXR1cm4gMDsKPiArfQo+ICsKPiArc3RhdGljIGxvbmcgZG1hX2hlYXBf aW9jdGwoc3RydWN0IGZpbGUgKmZpbHAsIHVuc2lnbmVkIGludCBjbWQsCj4gKwkJCSAgIHVuc2ln bmVkIGxvbmcgYXJnKQo+ICt7Cj4gKwlzd2l0Y2ggKGNtZCkgewo+ICsJY2FzZSBETUFfSEVBUF9J T0NfQUxMT0M6Cj4gKwl7Cj4gKwkJc3RydWN0IGRtYV9oZWFwX2FsbG9jYXRpb25fZGF0YSBoZWFw X2FsbG9jYXRpb247Cj4gKwkJc3RydWN0IGRtYV9oZWFwICpoZWFwID0gZmlscC0+cHJpdmF0ZV9k YXRhOwo+ICsJCWludCBmZDsKPiArCj4gKwkJaWYgKGNvcHlfZnJvbV91c2VyKCZoZWFwX2FsbG9j YXRpb24sICh2b2lkIF9fdXNlciAqKWFyZywKPiArCQkJCSAgIHNpemVvZihoZWFwX2FsbG9jYXRp b24pKSkKPiArCQkJcmV0dXJuIC1FRkFVTFQ7Cj4gKwo+ICsJCWlmIChoZWFwX2FsbG9jYXRpb24u ZmQgfHwKPiArCQkgICAgaGVhcF9hbGxvY2F0aW9uLnJlc2VydmVkMCB8fAo+ICsJCSAgICBoZWFw X2FsbG9jYXRpb24ucmVzZXJ2ZWQxIHx8Cj4gKwkJICAgIGhlYXBfYWxsb2NhdGlvbi5yZXNlcnZl ZDIpIHsKPiArCQkJcHJfd2Fybl9vbmNlKCJkbWFfaGVhcDogaW9jdGwgZGF0YSBub3QgdmFsaWRc biIpOwo+ICsJCQlyZXR1cm4gLUVJTlZBTDsKPiArCQl9CgpHb29kIGpvYiBpbiBmb3JjaW5nIHRo ZSByZXNlcnZlZCBmaWVsZHMgdG8gYmUgMCEKCj4gKwkJaWYgKGhlYXBfYWxsb2NhdGlvbi5mbGFn cyAmIH5ETUFfSEVBUF9WQUxJRF9GTEFHUykgewo+ICsJCQlwcl93YXJuX29uY2UoImRtYV9oZWFw OiBmbGFncyBoYXMgaW52YWxpZCBvciB1bnN1cHBvcnRlZCBmbGFncyBzZXRcbiIpOwo+ICsJCQly ZXR1cm4gLUVJTlZBTDsKPiArCQl9Cj4gKwo+ICsJCWZkID0gZG1hX2hlYXBfYnVmZmVyX2FsbG9j KGhlYXAsIGhlYXBfYWxsb2NhdGlvbi5sZW4sCj4gKwkJCQkJICAgaGVhcF9hbGxvY2F0aW9uLmZs YWdzKTsKCk5vIG1heCB2YWx1ZSBjaGVja2luZyBmb3IgLmxlbj8gIENhbiB5b3UgcmVhbGx5IGFz ayBmb3IgYW55dGhpbmc/Cgo+ICsJCWlmIChmZCA8IDApCj4gKwkJCXJldHVybiBmZDsKPiArCj4g KwkJaGVhcF9hbGxvY2F0aW9uLmZkID0gZmQ7Cj4gKwo+ICsJCWlmIChjb3B5X3RvX3VzZXIoKHZv aWQgX191c2VyICopYXJnLCAmaGVhcF9hbGxvY2F0aW9uLAo+ICsJCQkJIHNpemVvZihoZWFwX2Fs bG9jYXRpb24pKSkKPiArCQkJcmV0dXJuIC1FRkFVTFQ7Cj4gKwo+ICsJCWJyZWFrOwo+ICsJfQo+ ICsJZGVmYXVsdDoKPiArCQlyZXR1cm4gLUVOT1RUWTsKPiArCX0KPiArCj4gKwlyZXR1cm4gMDsK PiArfQo+ICsKPiArc3RhdGljIGNvbnN0IHN0cnVjdCBmaWxlX29wZXJhdGlvbnMgZG1hX2hlYXBf Zm9wcyA9IHsKPiArCS5vd25lciAgICAgICAgICA9IFRISVNfTU9EVUxFLAo+ICsJLm9wZW4JCT0g ZG1hX2hlYXBfb3BlbiwKPiArCS5yZWxlYXNlCT0gZG1hX2hlYXBfcmVsZWFzZSwKPiArCS51bmxv Y2tlZF9pb2N0bCA9IGRtYV9oZWFwX2lvY3RsLAo+ICsjaWZkZWYgQ09ORklHX0NPTVBBVAo+ICsJ LmNvbXBhdF9pb2N0bAk9IGRtYV9oZWFwX2lvY3RsLAo+ICsjZW5kaWYKCldoeSBpcyBjb21wYXRf aW9jdGwgZXZlbiBuZWVkZWQ/Cgo+ICt9Owo+ICsKPiAraW50IGRtYV9oZWFwX2FkZChzdHJ1Y3Qg ZG1hX2hlYXAgKmhlYXApCj4gK3sKPiArCXN0cnVjdCBkZXZpY2UgKmRldl9yZXQ7Cj4gKwlpbnQg cmV0Owo+ICsKPiArCWlmICghaGVhcC0+bmFtZSB8fCAhc3RyY21wKGhlYXAtPm5hbWUsICIiKSkg ewo+ICsJCXByX2VycigiZG1hX2hlYXA6IENhbm5vdCBhZGQgaGVhcCB3aXRob3V0IGEgbmFtZVxu Iik7Cj4gKwkJcmV0dXJuIC1FSU5WQUw7Cj4gKwl9Cj4gKwo+ICsJaWYgKCFoZWFwLT5vcHMgfHwg IWhlYXAtPm9wcy0+YWxsb2NhdGUpIHsKPiArCQlwcl9lcnIoImRtYV9oZWFwOiBDYW5ub3QgYWRk IGhlYXAgd2l0aCBpbnZhbGlkIG9wcyBzdHJ1Y3RcbiIpOwo+ICsJCXJldHVybiAtRUlOVkFMOwo+ ICsJfQo+ICsKPiArCS8qIEZpbmQgdW51c2VkIG1pbm9yIG51bWJlciAqLwo+ICsJbXV0ZXhfbG9j aygmbWlub3JfbG9jayk7Cj4gKwlyZXQgPSBpZHJfYWxsb2MoJmRtYV9oZWFwX2lkciwgaGVhcCwg MCwgTlVNX0hFQVBfTUlOT1JTLCBHRlBfS0VSTkVMKTsKPiArCW11dGV4X3VubG9jaygmbWlub3Jf bG9jayk7CgpBZ2FpbiwgeGFycmF5LgoKQnV0IEkgd2lsbCBhc2sgeW91IHRvIGJhY2sgdXAsIHdo eSBuZWVkIGEgbWFqb3IgbnVtYmVyIGF0IGFsbD8gIFdoeSBub3QKanVzdCB1c2UgdGhlIG1pc2Mg c3Vic3lzdGVtPyAgSG93IG1hbnkgb2YgdGhlc2UgYXJlIHlvdSBnb2luZyB0byBoYXZlCm92ZXIg dGltZSBpbiBhICJub3JtYWwiIHN5c3RlbT8gIEhvdyBhYm91dCBhICJhYm5vcm1hbCBzeXN0ZW0i PwoKV2UgaGF2ZSBzZWVuIHBlb3BsZSBydW5uaW5nIEFuZHJvaWQgaW4gImNvbnRhaW5lcnMiIHN1 Y2ggdGhhdCB0aGV5Cm5lZWRlZCBiaW5kZXJmcyB0byBoYW5kbGUgaHVnZSBudW1iZXJzIG9mIGlu ZGl2aWR1YWwgYW5kcm9pZCBzeXN0ZW1zCnJ1bm5pbmcgYXQgdGhlIHNhbWUgdGltZS4gIFdpbGwg dGhpcyBhcGkgYnJlYWsgdGhvc2Ugc3lzdGVtcyBpZiB5b3UgaGF2ZQphIHRpbnkgbWF4aW11bSBu dW1iZXIgeW91IGFuIGFsbG9jYXRlPwoKPiArCWlmIChyZXQgPCAwKSB7Cj4gKwkJcHJfZXJyKCJk bWFfaGVhcDogVW5hYmxlIHRvIGdldCBtaW5vciBudW1iZXIgZm9yIGhlYXBcbiIpOwo+ICsJCXJl dHVybiByZXQ7Cj4gKwl9Cj4gKwloZWFwLT5taW5vciA9IHJldDsKPiArCj4gKwkvKiBDcmVhdGUg ZGV2aWNlICovCj4gKwloZWFwLT5oZWFwX2RldnQgPSBNS0RFVihNQUpPUihkbWFfaGVhcF9kZXZ0 KSwgaGVhcC0+bWlub3IpOwo+ICsJZGV2X3JldCA9IGRldmljZV9jcmVhdGUoZG1hX2hlYXBfY2xh c3MsCj4gKwkJCQlOVUxMLAo+ICsJCQkJaGVhcC0+aGVhcF9kZXZ0LAo+ICsJCQkJTlVMTCwKPiAr CQkJCWhlYXAtPm5hbWUpOwoKTm8gcGFyZW50PyAgQ2FuJ3QgaGFuZyB0aGlzIG9mZiBvZiBhbnl0 aGluZz8gIE9rLCBoYXZpbmcgaXQgc2hvdyB1cCBpbgovc3lzL2RldmljZXMvdmlydHVhbC8gaXMg cHJvYmFibHkgZ29vZCBlbm91Z2guCgo+ICsJaWYgKElTX0VSUihkZXZfcmV0KSkgewo+ICsJCXBy X2VycigiZG1hX2hlYXA6IFVuYWJsZSB0byBjcmVhdGUgY2hhciBkZXZpY2VcbiIpOwo+ICsJCXJl dHVybiBQVFJfRVJSKGRldl9yZXQpOwo+ICsJfQo+ICsKPiArCS8qIEFkZCBkZXZpY2UgKi8KPiAr CWNkZXZfaW5pdCgmaGVhcC0+aGVhcF9jZGV2LCAmZG1hX2hlYXBfZm9wcyk7Cj4gKwlyZXQgPSBj ZGV2X2FkZCgmaGVhcC0+aGVhcF9jZGV2LCBkbWFfaGVhcF9kZXZ0LCBOVU1fSEVBUF9NSU5PUlMp Owo+ICsJaWYgKHJldCA8IDApIHsKPiArCQlkZXZpY2VfZGVzdHJveShkbWFfaGVhcF9jbGFzcywg aGVhcC0+aGVhcF9kZXZ0KTsKPiArCQlwcl9lcnIoImRtYV9oZWFwOiBVbmFibGUgdG8gYWRkIGNo YXIgZGV2aWNlXG4iKTsKPiArCQlyZXR1cm4gcmV0Owo+ICsJfQo+ICsKPiArCXJldHVybiAwOwo+ ICt9Cj4gK0VYUE9SVF9TWU1CT0woZG1hX2hlYXBfYWRkKTsKCkVYUE9SVF9TWU1CT0xfR1BMKCkg cGxlYXNlPyAgRm9yIGNvcmUgc3R1ZmYgbGlrZSB0aGlzIGl0J3MgZ29vZC4KCj4gKwo+ICtzdGF0 aWMgaW50IGRtYV9oZWFwX2luaXQodm9pZCkKPiArewo+ICsJaW50IHJldDsKPiArCj4gKwlyZXQg PSBhbGxvY19jaHJkZXZfcmVnaW9uKCZkbWFfaGVhcF9kZXZ0LCAwLCBOVU1fSEVBUF9NSU5PUlMs IERFVk5BTUUpOwo+ICsJaWYgKHJldCkKPiArCQlyZXR1cm4gcmV0Owo+ICsKPiArCWRtYV9oZWFw X2NsYXNzID0gY2xhc3NfY3JlYXRlKFRISVNfTU9EVUxFLCBERVZOQU1FKTsKPiArCWlmIChJU19F UlIoZG1hX2hlYXBfY2xhc3MpKSB7Cj4gKwkJdW5yZWdpc3Rlcl9jaHJkZXZfcmVnaW9uKGRtYV9o ZWFwX2RldnQsIE5VTV9IRUFQX01JTk9SUyk7Cj4gKwkJcmV0dXJuIFBUUl9FUlIoZG1hX2hlYXBf Y2xhc3MpOwo+ICsJfQo+ICsKPiArCXJldHVybiAwOwo+ICt9Cj4gK3N1YnN5c19pbml0Y2FsbChk bWFfaGVhcF9pbml0KTsKCk92ZXJhbGwsIGxvb2tzIHNhbmUsIHRoZSBjb21tZW50cyBhYm92ZSBh cmUgYWxsIHJlYWxseSBtaW5vci4KCgo+IC0tLSAvZGV2L251bGwKPiArKysgYi9pbmNsdWRlL3Vh cGkvbGludXgvZG1hLWhlYXAuaAo+IEBAIC0wLDAgKzEsNTIgQEAKPiArLyogU1BEWC1MaWNlbnNl LUlkZW50aWZpZXI6IEdQTC0yLjAgKi8KCldyb25nIGxpY2Vuc2UgZm9yIGEgdWFwaSAuaCBmaWxl IDooCgp0aGFua3MsCgpncmVnIGstaApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5m by9kcmktZGV2ZWw=