From mboxrd@z Thu Jan 1 00:00:00 1970 From: John Stultz Subject: [PATCH v5 3/5] dma-buf: heaps: Add system heap to dmabuf heaps Date: Fri, 7 Jun 2019 03:07:17 +0000 Message-ID: <20190607030719.77286-4-john.stultz@linaro.org> References: <20190607030719.77286-1-john.stultz@linaro.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-pf1-x441.google.com (mail-pf1-x441.google.com [IPv6:2607:f8b0:4864:20::441]) by gabe.freedesktop.org (Postfix) with ESMTPS id 834F689A9F for ; Fri, 7 Jun 2019 03:07:29 +0000 (UTC) Received: by mail-pf1-x441.google.com with SMTP id q10so325374pff.9 for ; Thu, 06 Jun 2019 20:07:29 -0700 (PDT) In-Reply-To: <20190607030719.77286-1-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: lkml Cc: Sudipto Paul , Vincent Donnefort , Chenbo Feng , Alistair Strachan , Liam Mark , Christoph Hellwig , dri-devel@lists.freedesktop.org, "Andrew F . Davis" , Pratik Patel List-Id: dri-devel@lists.freedesktop.org VGhpcyBwYXRjaCBhZGRzIHN5c3RlbSBoZWFwIHRvIHRoZSBkbWEtYnVmIGhlYXBzIGZyYW1ld29y ay4KClRoaXMgYWxsb3dzIGFwcGxpY2F0aW9ucyB0byBnZXQgYSBwYWdlLWFsbG9jYXRvciBiYWNr ZWQgZG1hLWJ1Zgpmb3Igbm9uLWNvbnRpZ3VvdXMgbWVtb3J5LgoKVGhpcyBjb2RlIGlzIGFuIGV2 b2x1dGlvbiBvZiB0aGUgQW5kcm9pZCBJT04gaW1wbGVtZW50YXRpb24sIHNvCnRoYW5rcyB0byBp dHMgb3JpZ2luYWwgYXV0aG9ycyBhbmQgbWFpbnRhaW50ZXJzOgogIFJlYmVjY2EgU2NodWx0eiBa YXZpbiwgQ29saW4gQ3Jvc3MsIExhdXJhIEFiYm90dCwgYW5kIG90aGVycyEKCkNjOiBMYXVyYSBB YmJvdHQgPGxhYmJvdHRAcmVkaGF0LmNvbT4KQ2M6IEJlbmphbWluIEdhaWduYXJkIDxiZW5qYW1p bi5nYWlnbmFyZEBsaW5hcm8ub3JnPgpDYzogU3VtaXQgU2Vtd2FsIDxzdW1pdC5zZW13YWxAbGlu YXJvLm9yZz4KQ2M6IExpYW0gTWFyayA8bG1hcmtAY29kZWF1cm9yYS5vcmc+CkNjOiBQcmF0aWsg UGF0ZWwgPHByYXRpa3BAY29kZWF1cm9yYS5vcmc+CkNjOiBCcmlhbiBTdGFya2V5IDxCcmlhbi5T dGFya2V5QGFybS5jb20+CkNjOiBWaW5jZW50IERvbm5lZm9ydCA8VmluY2VudC5Eb25uZWZvcnRA YXJtLmNvbT4KQ2M6IFN1ZGlwdG8gUGF1bCA8U3VkaXB0by5QYXVsQGFybS5jb20+CkNjOiBBbmRy ZXcgRi4gRGF2aXMgPGFmZEB0aS5jb20+CkNjOiBDaHJpc3RvcGggSGVsbHdpZyA8aGNoQGluZnJh ZGVhZC5vcmc+CkNjOiBDaGVuYm8gRmVuZyA8ZmVuZ2NAZ29vZ2xlLmNvbT4KQ2M6IEFsaXN0YWly IFN0cmFjaGFuIDxhc3RyYWNoYW5AZ29vZ2xlLmNvbT4KQ2M6IGRyaS1kZXZlbEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKUmV2aWV3ZWQtYnk6IEJlbmphbWluIEdhaWduYXJkIDxiZW5qYW1pbi5nYWln bmFyZEBsaW5hcm8ub3JnPgpTaWduZWQtb2ZmLWJ5OiBKb2huIFN0dWx0eiA8am9obi5zdHVsdHpA bGluYXJvLm9yZz4KQ2hhbmdlLUlkOiBJNGRjNWZmNTRjY2IxZjdjYTNhYzg2NzU2NjExMTRjYTMz ODEzNjU0YgotLS0KdjI6CiogU3dpdGNoIGFsbG9jYXRlIHRvIHJldHVybiBkbWFidWYgZmQKKiBT aW1wbGlmeSBpbml0IGNvZGUKKiBDaGVja3BhdGNoIGZpeHVwcwoqIERyb3BlZCBkZWFkIHN5c3Rl bS1jb250aWcgY29kZQp2MzoKKiBXaGl0ZXNwYWNlIGZpeHVwcyBmcm9tIEJlbmphbWluCiogTWFr ZSBzdXJlIHdlJ3JlIHplcm9pbmcgdGhlIGFsbG9jYXRlZCBwYWdlcyAoZnJvbSBMaWFtKQoqIFVz ZSBQQUdFX0FMSUdOKCkgY29uc2lzdGVudGx5IChzdWdnZXN0ZWQgYnkgQnJpYW4pCiogRm9sZCBp biBuZXcgcmVnaXN0cmF0aW9uIHN0eWxlIGZyb20gQW5kcmV3CiogQXZvaWQgbmVlZGxlc3MgZHlu YW1pYyBhbGxvY2F0aW9uIG9mIHN5c19oZWFwIChzdWdnZXN0ZWQgYnkKICBDaHJpc3RvcGgpCiog TWlub3IgY2xlYW51cHMKKiBGb2xkZWQgaW4gY2hhbmdlcyBmcm9tIEFuZHJldyB0byB1c2Ugc2lt cGxpZmllZCBwYWdlIGxpc3QKICBmcm9tIHRoZSBoZWFwIGhlbHBlcnMKdjQ6CiogT3B0aW1pemF0 aW9uIHRvIGFsbG9jYXRlIHBhZ2VzIGluIGNodW5rcywgc2ltaWxhciB0byBvbGQKICBwYWdlcG9v bCBjb2RlCiogVXNlIGZkX2ZsYWdzIHdoZW4gY3JlYXRpbmcgZG1hYnVmIGZkIChTdWdnZXN0ZWQg YnkgQmVuamFtaW4pCnY1OgoqIEJhY2sgb3V0IGxhcmdlIG9yZGVyIHBhZ2UgYWxsb2NhdGlvbnMg KHdhcyBsZWFraW5nIG1lbW9yeSwKICBhcyB0aGUgcGFnZSBhcnJheSBkaWRuJ3QgcHJvcGVybHkg dHJhY2sgb3JkZXIgc2l6ZSkKLS0tCiBkcml2ZXJzL2RtYS1idWYvS2NvbmZpZyAgICAgICAgICAg ICB8ICAgMiArCiBkcml2ZXJzL2RtYS1idWYvaGVhcHMvS2NvbmZpZyAgICAgICB8ICAgNiArKwog ZHJpdmVycy9kbWEtYnVmL2hlYXBzL01ha2VmaWxlICAgICAgfCAgIDEgKwogZHJpdmVycy9kbWEt YnVmL2hlYXBzL3N5c3RlbV9oZWFwLmMgfCAxMjMgKysrKysrKysrKysrKysrKysrKysrKysrKysr KwogNCBmaWxlcyBjaGFuZ2VkLCAxMzIgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0 IGRyaXZlcnMvZG1hLWJ1Zi9oZWFwcy9LY29uZmlnCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVy cy9kbWEtYnVmL2hlYXBzL3N5c3RlbV9oZWFwLmMKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2RtYS1i dWYvS2NvbmZpZyBiL2RyaXZlcnMvZG1hLWJ1Zi9LY29uZmlnCmluZGV4IDliOTNmODZmNTk3Yy4u NDM0Y2ZlNjQ2ZGFkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2RtYS1idWYvS2NvbmZpZworKysgYi9k cml2ZXJzL2RtYS1idWYvS2NvbmZpZwpAQCAtNDcsNCArNDcsNiBAQCBtZW51Y29uZmlnIERNQUJV Rl9IRUFQUwogCSAgdGhpcyBhbGxvd3MgdXNlcnNwYWNlIHRvIGFsbG9jYXRlIGRtYS1idWZzIHRo YXQgY2FuIGJlIHNoYXJlZCBiZXR3ZWVuCiAJICBkcml2ZXJzLgogCitzb3VyY2UgImRyaXZlcnMv ZG1hLWJ1Zi9oZWFwcy9LY29uZmlnIgorCiBlbmRtZW51CmRpZmYgLS1naXQgYS9kcml2ZXJzL2Rt YS1idWYvaGVhcHMvS2NvbmZpZyBiL2RyaXZlcnMvZG1hLWJ1Zi9oZWFwcy9LY29uZmlnCm5ldyBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uMjA1MDUyNzQ0MTY5Ci0tLSAvZGV2 L251bGwKKysrIGIvZHJpdmVycy9kbWEtYnVmL2hlYXBzL0tjb25maWcKQEAgLTAsMCArMSw2IEBA Citjb25maWcgRE1BQlVGX0hFQVBTX1NZU1RFTQorCWJvb2wgIkRNQS1CVUYgU3lzdGVtIEhlYXAi CisJZGVwZW5kcyBvbiBETUFCVUZfSEVBUFMKKwloZWxwCisJICBDaG9vc2UgdGhpcyBvcHRpb24g dG8gZW5hYmxlIHRoZSBzeXN0ZW0gZG1hYnVmIGhlYXAuIFRoZSBzeXN0ZW0gaGVhcAorCSAgaXMg YmFja2VkIGJ5IHBhZ2VzIGZyb20gdGhlIGJ1ZGR5IGFsbG9jYXRvci4gSWYgaW4gZG91YnQsIHNh eSBZLgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9kbWEtYnVmL2hlYXBzL01ha2VmaWxlIGIvZHJpdmVy cy9kbWEtYnVmL2hlYXBzL01ha2VmaWxlCmluZGV4IGRlNDk4OTgxMTJkYi4uZDE4MDhlY2EyNTgx IDEwMDY0NAotLS0gYS9kcml2ZXJzL2RtYS1idWYvaGVhcHMvTWFrZWZpbGUKKysrIGIvZHJpdmVy cy9kbWEtYnVmL2hlYXBzL01ha2VmaWxlCkBAIC0xLDIgKzEsMyBAQAogIyBTUERYLUxpY2Vuc2Ut SWRlbnRpZmllcjogR1BMLTIuMAogb2JqLXkJCQkJCSs9IGhlYXAtaGVscGVycy5vCitvYmotJChD T05GSUdfRE1BQlVGX0hFQVBTX1NZU1RFTSkJKz0gc3lzdGVtX2hlYXAubwpkaWZmIC0tZ2l0IGEv ZHJpdmVycy9kbWEtYnVmL2hlYXBzL3N5c3RlbV9oZWFwLmMgYi9kcml2ZXJzL2RtYS1idWYvaGVh cHMvc3lzdGVtX2hlYXAuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAu Ljg2MzgzNDQ5OWNlMQotLS0gL2Rldi9udWxsCisrKyBiL2RyaXZlcnMvZG1hLWJ1Zi9oZWFwcy9z eXN0ZW1faGVhcC5jCkBAIC0wLDAgKzEsMTIzIEBACisvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmll cjogR1BMLTIuMAorLyoKKyAqIERNQUJVRiBTeXN0ZW0gaGVhcCBleHBvcnRlcgorICoKKyAqIENv cHlyaWdodCAoQykgMjAxMSBHb29nbGUsIEluYy4KKyAqIENvcHlyaWdodCAoQykgMjAxOSBMaW5h cm8gTHRkLgorICovCisKKyNpbmNsdWRlIDxhc20vcGFnZS5oPgorI2luY2x1ZGUgPGxpbnV4L2Rt YS1idWYuaD4KKyNpbmNsdWRlIDxsaW51eC9kbWEtbWFwcGluZy5oPgorI2luY2x1ZGUgPGxpbnV4 L2RtYS1oZWFwLmg+CisjaW5jbHVkZSA8bGludXgvZXJyLmg+CisjaW5jbHVkZSA8bGludXgvaGln aG1lbS5oPgorI2luY2x1ZGUgPGxpbnV4L21tLmg+CisjaW5jbHVkZSA8bGludXgvc2NhdHRlcmxp c3QuaD4KKyNpbmNsdWRlIDxsaW51eC9zbGFiLmg+CisKKyNpbmNsdWRlICJoZWFwLWhlbHBlcnMu aCIKKworc3RydWN0IHN5c3RlbV9oZWFwIHsKKwlzdHJ1Y3QgZG1hX2hlYXAgKmhlYXA7Cit9IHN5 c19oZWFwOworCisKK3N0YXRpYyB2b2lkIHN5c3RlbV9oZWFwX2ZyZWUoc3RydWN0IGhlYXBfaGVs cGVyX2J1ZmZlciAqYnVmZmVyKQoreworCXBnb2ZmX3QgcGc7CisKKwlmb3IgKHBnID0gMDsgcGcg PCBidWZmZXItPnBhZ2Vjb3VudDsgcGcrKykKKwkJX19mcmVlX3BhZ2UoYnVmZmVyLT5wYWdlc1tw Z10pOworCWtmcmVlKGJ1ZmZlci0+cGFnZXMpOworCWtmcmVlKGJ1ZmZlcik7Cit9CisKK3N0YXRp YyBpbnQgc3lzdGVtX2hlYXBfYWxsb2NhdGUoc3RydWN0IGRtYV9oZWFwICpoZWFwLAorCQkJCXVu c2lnbmVkIGxvbmcgbGVuLAorCQkJCXVuc2lnbmVkIGxvbmcgZmRfZmxhZ3MsCisJCQkJdW5zaWdu ZWQgbG9uZyBoZWFwX2ZsYWdzKQoreworCXN0cnVjdCBoZWFwX2hlbHBlcl9idWZmZXIgKmhlbHBl cl9idWZmZXI7CisJREVGSU5FX0RNQV9CVUZfRVhQT1JUX0lORk8oZXhwX2luZm8pOworCXVuc2ln bmVkIGxvbmcgc2l6ZV9yZW1haW5pbmcgPSBsZW47CisJc3RydWN0IGRtYV9idWYgKmRtYWJ1ZjsK KwlpbnQgcmV0ID0gLUVOT01FTTsKKwlwZ29mZl90IHBnOworCisJaGVscGVyX2J1ZmZlciA9IGt6 YWxsb2Moc2l6ZW9mKCpoZWxwZXJfYnVmZmVyKSwgR0ZQX0tFUk5FTCk7CisJaWYgKCFoZWxwZXJf YnVmZmVyKQorCQlyZXR1cm4gLUVOT01FTTsKKworCUlOSVRfSEVBUF9IRUxQRVJfQlVGRkVSKGhl bHBlcl9idWZmZXIsIHN5c3RlbV9oZWFwX2ZyZWUpOworCWhlbHBlcl9idWZmZXItPmhlYXBfYnVm ZmVyLmZsYWdzID0gaGVhcF9mbGFnczsKKwloZWxwZXJfYnVmZmVyLT5oZWFwX2J1ZmZlci5oZWFw ID0gaGVhcDsKKwloZWxwZXJfYnVmZmVyLT5oZWFwX2J1ZmZlci5zaXplID0gbGVuOworCisJaGVs cGVyX2J1ZmZlci0+cGFnZWNvdW50ID0gbGVuIC8gUEFHRV9TSVpFOworCWhlbHBlcl9idWZmZXIt PnBhZ2VzID0ga21hbGxvY19hcnJheShoZWxwZXJfYnVmZmVyLT5wYWdlY291bnQsCisJCQkJCSAg ICAgc2l6ZW9mKCpoZWxwZXJfYnVmZmVyLT5wYWdlcyksCisJCQkJCSAgICAgR0ZQX0tFUk5FTCk7 CisJaWYgKCFoZWxwZXJfYnVmZmVyLT5wYWdlcykgeworCQlyZXQgPSAtRU5PTUVNOworCQlnb3Rv IGVycjA7CisJfQorCisJZm9yIChwZyA9IDA7IHBnIDwgaGVscGVyX2J1ZmZlci0+cGFnZWNvdW50 OyBwZysrKSB7CisJCWhlbHBlcl9idWZmZXItPnBhZ2VzW3BnXSA9IGFsbG9jX3BhZ2UoR0ZQX0tF Uk5FTCB8IF9fR0ZQX1pFUk8pOworCQlpZiAoIWhlbHBlcl9idWZmZXItPnBhZ2VzW3BnXSkKKwkJ CWdvdG8gZXJyMTsKKwl9CisKKwkvKiBjcmVhdGUgdGhlIGRtYWJ1ZiAqLworCWV4cF9pbmZvLm9w cyA9ICZoZWFwX2hlbHBlcl9vcHM7CisJZXhwX2luZm8uc2l6ZSA9IGxlbjsKKwlleHBfaW5mby5m bGFncyA9IGZkX2ZsYWdzOworCWV4cF9pbmZvLnByaXYgPSAmaGVscGVyX2J1ZmZlci0+aGVhcF9i dWZmZXI7CisJZG1hYnVmID0gZG1hX2J1Zl9leHBvcnQoJmV4cF9pbmZvKTsKKwlpZiAoSVNfRVJS KGRtYWJ1ZikpIHsKKwkJcmV0ID0gUFRSX0VSUihkbWFidWYpOworCQlnb3RvIGVycjE7CisJfQor CisJaGVscGVyX2J1ZmZlci0+aGVhcF9idWZmZXIuZG1hYnVmID0gZG1hYnVmOworCisJcmV0ID0g ZG1hX2J1Zl9mZChkbWFidWYsIGZkX2ZsYWdzKTsKKwlpZiAocmV0IDwgMCkgeworCQlkbWFfYnVm X3B1dChkbWFidWYpOworCQkvKiBqdXN0IHJldHVybiwgYXMgcHV0IHdpbGwgY2FsbCByZWxlYXNl IGFuZCB0aGF0IHdpbGwgZnJlZSAqLworCQlyZXR1cm4gcmV0OworCX0KKworCXJldHVybiByZXQ7 CisKK2VycjE6CisJd2hpbGUgKHBnID4gMCkKKwkJX19mcmVlX3BhZ2UoaGVscGVyX2J1ZmZlci0+ cGFnZXNbLS1wZ10pOworCWtmcmVlKGhlbHBlcl9idWZmZXItPnBhZ2VzKTsKK2VycjA6CisJa2Zy ZWUoaGVscGVyX2J1ZmZlcik7CisKKwlyZXR1cm4gLUVOT01FTTsKK30KKworc3RhdGljIHN0cnVj dCBkbWFfaGVhcF9vcHMgc3lzdGVtX2hlYXBfb3BzID0geworCS5hbGxvY2F0ZSA9IHN5c3RlbV9o ZWFwX2FsbG9jYXRlLAorfTsKKworc3RhdGljIGludCBzeXN0ZW1faGVhcF9jcmVhdGUodm9pZCkK K3sKKwlzdHJ1Y3QgZG1hX2hlYXBfZXhwb3J0X2luZm8gZXhwX2luZm87CisJaW50IHJldCA9IDA7 CisKKwlleHBfaW5mby5uYW1lID0gInN5c3RlbV9oZWFwIjsKKwlleHBfaW5mby5vcHMgPSAmc3lz dGVtX2hlYXBfb3BzOworCWV4cF9pbmZvLnByaXYgPSAmc3lzX2hlYXA7CisKKwlzeXNfaGVhcC5o ZWFwID0gZG1hX2hlYXBfYWRkKCZleHBfaW5mbyk7CisJaWYgKElTX0VSUihzeXNfaGVhcC5oZWFw KSkKKwkJcmV0ID0gUFRSX0VSUihzeXNfaGVhcC5oZWFwKTsKKworCXJldHVybiByZXQ7Cit9Citk ZXZpY2VfaW5pdGNhbGwoc3lzdGVtX2hlYXBfY3JlYXRlKTsKLS0gCjIuMTcuMQoKX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcg bGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRl c2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVs