From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jordan Crouse Subject: [PATCH 5/6] drm/msm: Add msm_gem_get_and_pin_iova() Date: Wed, 31 Oct 2018 11:05:51 -0600 Message-ID: <20181031170552.32542-6-jcrouse@codeaurora.org> References: <20181031170552.32542-1-jcrouse@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20181031170552.32542-1-jcrouse-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: freedreno-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Freedreno" To: freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, hoegsberg-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org, dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: linux-arm-msm@vger.kernel.org QWRkIGEgbmV3IGZ1bmN0aW9uIHRvIGdldCBhbmQgcGluIHRoZSBpb3ZhIG1lbW9yeSBpbiBvbmUK c3RlcCAoYmFzaWNhbGx5IHJlbmFtaW5nIHRoZSBvbGQgbXNtX2dlbV9nZXRfaW92YSBmdW5jdGlv bikKYW5kIHN3aXRjaCBtc21fZ2VtX2dldF9pb3ZhKCkgdG8gb25seSBhbGxvY2F0ZSBhbiBpb3Zh IGJ1dApub3QgbWFwIGl0IGluIHRoZSBJT01NVS4gVGhpcyBpcyBvbmx5IGN1cnJlbnRseSB1c2Vk IGJ5Cm1zbV9pb2N0bF9nZW1faW5mbygpIHNpbmNlIGFsbCBvdGhlciB1c2VycyBvZiBvZiB0aGUg aW92YQpleHBlY3QgdGhhdCB0aGUgbWVtb3J5IGJlIGltbWVkaWF0ZWx5IGF2YWlsYWJsZS4KClNp Z25lZC1vZmYtYnk6IEpvcmRhbiBDcm91c2UgPGpjcm91c2VAY29kZWF1cm9yYS5vcmc+Ci0tLQog ZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYWRyZW5vX2dwdS5jICAgfCAgMyArKy0KIGRyaXZl cnMvZ3B1L2RybS9tc20vZGlzcC9tZHA0L21kcDRfY3J0Yy5jIHwgIDQgKystLQogZHJpdmVycy9n cHUvZHJtL21zbS9kaXNwL21kcDQvbWRwNF9rbXMuYyAgfCAgMiArLQogZHJpdmVycy9ncHUvZHJt L21zbS9kaXNwL21kcDUvbWRwNV9jcnRjLmMgfCAgMiArLQogZHJpdmVycy9ncHUvZHJtL21zbS9k c2kvZHNpX2hvc3QuYyAgICAgICAgfCAgMiArLQogZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZHJ2 LmMgICAgICAgICAgICAgfCAgNCArKysrCiBkcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9kcnYuaCAg ICAgICAgICAgICB8ICAyICsrCiBkcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9mYi5jICAgICAgICAg ICAgICB8ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9mYmRldi5jICAgICAgICAgICB8 ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9nZW0uYyAgICAgICAgICAgICB8IDI0ICsr KysrKysrKysrKysrKysrKy0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9nZW1fc3VibWl0 LmMgICAgICB8ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9ncHUuYyAgICAgICAgICAg ICB8ICAyICstCiAxMiBmaWxlcyBjaGFuZ2VkLCAzNiBpbnNlcnRpb25zKCspLCAxNSBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hZHJlbm9fZ3B1 LmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hZHJlbm9fZ3B1LmMKaW5kZXggMTQxMDYy ZmJiNGM4Li4zYzI5ODg1MTRmYzUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRy ZW5vL2FkcmVub19ncHUuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hZHJlbm9f Z3B1LmMKQEAgLTIwOSw3ICsyMDksOCBAQCBpbnQgYWRyZW5vX2h3X2luaXQoc3RydWN0IG1zbV9n cHUgKmdwdSkKIAkJaWYgKCFyaW5nKQogCQkJY29udGludWU7CiAKLQkJcmV0ID0gbXNtX2dlbV9n ZXRfaW92YShyaW5nLT5ibywgZ3B1LT5hc3BhY2UsICZyaW5nLT5pb3ZhKTsKKwkJcmV0ID0gbXNt X2dlbV9nZXRfYW5kX3Bpbl9pb3ZhKHJpbmctPmJvLCBncHUtPmFzcGFjZSwKKwkJCSZyaW5nLT5p b3ZhKTsKIAkJaWYgKHJldCkgewogCQkJcmluZy0+aW92YSA9IDA7CiAJCQlEUk1fREVWX0VSUk9S KGdwdS0+ZGV2LT5kZXYsCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvbWRw NC9tZHA0X2NydGMuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9tZHA0L21kcDRfY3J0Yy5j CmluZGV4IGI5MTcwNmNlZTJiOC4uZWY2ODg0ZjFmYzM0IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vbXNtL2Rpc3AvbWRwNC9tZHA0X2NydGMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNt L2Rpc3AvbWRwNC9tZHA0X2NydGMuYwpAQCAtMzg0LDcgKzM4NCw3IEBAIHN0YXRpYyB2b2lkIHVw ZGF0ZV9jdXJzb3Ioc3RydWN0IGRybV9jcnRjICpjcnRjKQogCQlpZiAobmV4dF9ibykgewogCQkJ LyogdGFrZSBhIG9iaiByZWYgKyBpb3ZhIHJlZiB3aGVuIHdlIHN0YXJ0IHNjYW5uaW5nIG91dDog Ki8KIAkJCWRybV9nZW1fb2JqZWN0X2dldChuZXh0X2JvKTsKLQkJCW1zbV9nZW1fZ2V0X2lvdmEo bmV4dF9ibywga21zLT5hc3BhY2UsICZpb3ZhKTsKKwkJCW1zbV9nZW1fZ2V0X2FuZF9waW5faW92 YShuZXh0X2JvLCBrbXMtPmFzcGFjZSwgJmlvdmEpOwogCiAJCQkvKiBlbmFibGUgY3Vyc29yOiAq LwogCQkJbWRwNF93cml0ZShtZHA0X2ttcywgUkVHX01EUDRfRE1BX0NVUlNPUl9TSVpFKGRtYSks CkBAIC00NDIsNyArNDQyLDcgQEAgc3RhdGljIGludCBtZHA0X2NydGNfY3Vyc29yX3NldChzdHJ1 Y3QgZHJtX2NydGMgKmNydGMsCiAJfQogCiAJaWYgKGN1cnNvcl9ibykgewotCQlyZXQgPSBtc21f Z2VtX2dldF9pb3ZhKGN1cnNvcl9ibywga21zLT5hc3BhY2UsICZpb3ZhKTsKKwkJcmV0ID0gbXNt X2dlbV9nZXRfYW5kX3Bpbl9pb3ZhKGN1cnNvcl9ibywga21zLT5hc3BhY2UsICZpb3ZhKTsKIAkJ aWYgKHJldCkKIAkJCWdvdG8gZmFpbDsKIAl9IGVsc2UgewpkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL21zbS9kaXNwL21kcDQvbWRwNF9rbXMuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlz cC9tZHA0L21kcDRfa21zLmMKaW5kZXggNDgxYzBkMjMxMTQ5Li45ZmQ2YjliMmRiY2IgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9tZHA0L21kcDRfa21zLmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL21zbS9kaXNwL21kcDQvbWRwNF9rbXMuYwpAQCAtNTM4LDcgKzUzOCw3IEBA IHN0cnVjdCBtc21fa21zICptZHA0X2ttc19pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJ CWdvdG8gZmFpbDsKIAl9CiAKLQlyZXQgPSBtc21fZ2VtX2dldF9pb3ZhKG1kcDRfa21zLT5ibGFu a19jdXJzb3JfYm8sIGttcy0+YXNwYWNlLAorCXJldCA9IG1zbV9nZW1fZ2V0X2FuZF9waW5faW92 YShtZHA0X2ttcy0+YmxhbmtfY3Vyc29yX2JvLCBrbXMtPmFzcGFjZSwKIAkJCSZtZHA0X2ttcy0+ YmxhbmtfY3Vyc29yX2lvdmEpOwogCWlmIChyZXQpIHsKIAkJRFJNX0RFVl9FUlJPUihkZXYtPmRl diwgImNvdWxkIG5vdCBwaW4gYmxhbmstY3Vyc29yIGJvOiAlZFxuIiwgcmV0KTsKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9tZHA1L21kcDVfY3J0Yy5jIGIvZHJpdmVycy9n cHUvZHJtL21zbS9kaXNwL21kcDUvbWRwNV9jcnRjLmMKaW5kZXggNDEzYjUyMjExMDE3Li5jN2Nj Mjc2NTc1ZmIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9tZHA1L21kcDVf Y3J0Yy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9tZHA1L21kcDVfY3J0Yy5jCkBA IC05MDMsNyArOTAzLDcgQEAgc3RhdGljIGludCBtZHA1X2NydGNfY3Vyc29yX3NldChzdHJ1Y3Qg ZHJtX2NydGMgKmNydGMsCiAJaWYgKCFjdXJzb3JfYm8pCiAJCXJldHVybiAtRU5PRU5UOwogCi0J cmV0ID0gbXNtX2dlbV9nZXRfaW92YShjdXJzb3JfYm8sIGttcy0+YXNwYWNlLAorCXJldCA9IG1z bV9nZW1fZ2V0X2FuZF9waW5faW92YShjdXJzb3JfYm8sIGttcy0+YXNwYWNlLAogCQkJJm1kcDVf Y3J0Yy0+Y3Vyc29yLmlvdmEpOwogCWlmIChyZXQpCiAJCXJldHVybiAtRUlOVkFMOwpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9kc2kvZHNpX2hvc3QuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9tc20vZHNpL2RzaV9ob3N0LmMKaW5kZXggZWJhOTAxNTg0MDM1Li45OTEyMjc2N2FiZjQgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZHNpL2RzaV9ob3N0LmMKKysrIGIvZHJpdmVy cy9ncHUvZHJtL21zbS9kc2kvZHNpX2hvc3QuYwpAQCAtMTI0OCw3ICsxMjQ4LDcgQEAgaW50IGRz aV9kbWFfYmFzZV9nZXRfNmcoc3RydWN0IG1zbV9kc2lfaG9zdCAqbXNtX2hvc3QsIHVpbnQ2NF90 ICpkbWFfYmFzZSkKIAlpZiAoIWRtYV9iYXNlKQogCQlyZXR1cm4gLUVJTlZBTDsKIAotCXJldHVy biBtc21fZ2VtX2dldF9pb3ZhKG1zbV9ob3N0LT50eF9nZW1fb2JqLAorCXJldHVybiBtc21fZ2Vt X2dldF9hbmRfcGluX2lvdmEobXNtX2hvc3QtPnR4X2dlbV9vYmosCiAJCQkJcHJpdi0+a21zLT5h c3BhY2UsIGRtYV9iYXNlKTsKIH0KIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9t c21fZHJ2LmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9kcnYuYwppbmRleCA5YzlmN2ZmNjk2 MGIuLmYyZWJmYjliYTBlNCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZHJ2 LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZHJ2LmMKQEAgLTg0OSw2ICs4NDksMTAg QEAgc3RhdGljIGludCBtc21faW9jdGxfZ2VtX2luZm9faW92YShzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2LAogCWlmICghcHJpdi0+Z3B1KQogCQlyZXR1cm4gLUVJTlZBTDsKIAorCS8qCisJICogRG9u J3QgcGluIHRoZSBtZW1vcnkgaGVyZSAtIGp1c3QgZ2V0IGFuIGFkZHJlc3Mgc28gdGhhdCB1c2Vy c3BhY2UgY2FuCisJICogYmUgcHJvZHVjdGl2ZQorCSAqLwogCXJldHVybiBtc21fZ2VtX2dldF9p b3ZhKG9iaiwgcHJpdi0+Z3B1LT5hc3BhY2UsIGlvdmEpOwogfQogCmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vbXNtL21zbV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2Rydi5o CmluZGV4IDYzYjI4YjY5YjJhYi4uNDM3MjUwNWEwYmRhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vbXNtL21zbV9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9kcnYuaApA QCAtMjcxLDYgKzI3MSw4IEBAIHZtX2ZhdWx0X3QgbXNtX2dlbV9mYXVsdChzdHJ1Y3Qgdm1fZmF1 bHQgKnZtZik7CiB1aW50NjRfdCBtc21fZ2VtX21tYXBfb2Zmc2V0KHN0cnVjdCBkcm1fZ2VtX29i amVjdCAqb2JqKTsKIGludCBtc21fZ2VtX2dldF9pb3ZhKHN0cnVjdCBkcm1fZ2VtX29iamVjdCAq b2JqLAogCQlzdHJ1Y3QgbXNtX2dlbV9hZGRyZXNzX3NwYWNlICphc3BhY2UsIHVpbnQ2NF90ICpp b3ZhKTsKK2ludCBtc21fZ2VtX2dldF9hbmRfcGluX2lvdmEoc3RydWN0IGRybV9nZW1fb2JqZWN0 ICpvYmosCisJCXN0cnVjdCBtc21fZ2VtX2FkZHJlc3Nfc3BhY2UgKmFzcGFjZSwgdWludDY0X3Qg KmlvdmEpOwogdWludDY0X3QgbXNtX2dlbV9pb3ZhKHN0cnVjdCBkcm1fZ2VtX29iamVjdCAqb2Jq LAogCQlzdHJ1Y3QgbXNtX2dlbV9hZGRyZXNzX3NwYWNlICphc3BhY2UpOwogc3RydWN0IHBhZ2Ug Kiptc21fZ2VtX2dldF9wYWdlcyhzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKm9iaik7CmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9mYi5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9t c21fZmIuYwppbmRleCA0NzUxOTFmY2Y0MTIuLjRlMWU0MzVkYjVhNiAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL21zbS9tc21fZmIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9m Yi5jCkBAIC02Niw3ICs2Niw3IEBAIGludCBtc21fZnJhbWVidWZmZXJfcHJlcGFyZShzdHJ1Y3Qg ZHJtX2ZyYW1lYnVmZmVyICpmYiwKIAl1aW50NjRfdCBpb3ZhOwogCiAJZm9yIChpID0gMDsgaSA8 IG47IGkrKykgewotCQlyZXQgPSBtc21fZ2VtX2dldF9pb3ZhKGZiLT5vYmpbaV0sIGFzcGFjZSwg JmlvdmEpOworCQlyZXQgPSBtc21fZ2VtX2dldF9hbmRfcGluX2lvdmEoZmItPm9ialtpXSwgYXNw YWNlLCAmaW92YSk7CiAJCURCRygiRkJbJXVdOiBpb3ZhWyVkXTogJTA4bGx4ICglZCkiLCBmYi0+ YmFzZS5pZCwgaSwgaW92YSwgcmV0KTsKIAkJaWYgKHJldCkKIAkJCXJldHVybiByZXQ7CmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9mYmRldi5jIGIvZHJpdmVycy9ncHUvZHJt L21zbS9tc21fZmJkZXYuYwppbmRleCBmOTRjYmJiZjM4MzQuLmMwM2U4NjBiYTczNyAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZmJkZXYuYworKysgYi9kcml2ZXJzL2dwdS9k cm0vbXNtL21zbV9mYmRldi5jCkBAIC0xMDQsNyArMTA0LDcgQEAgc3RhdGljIGludCBtc21fZmJk ZXZfY3JlYXRlKHN0cnVjdCBkcm1fZmJfaGVscGVyICpoZWxwZXIsCiAJICogaW4gcGFuaWMgKGll LiBsb2NrLXNhZmUsIGV0Yykgd2UgY291bGQgYXZvaWQgcGlubmluZyB0aGUKIAkgKiBidWZmZXIg bm93OgogCSAqLwotCXJldCA9IG1zbV9nZW1fZ2V0X2lvdmEoYm8sIHByaXYtPmttcy0+YXNwYWNl LCAmcGFkZHIpOworCXJldCA9IG1zbV9nZW1fZ2V0X2FuZF9waW5faW92YShibywgcHJpdi0+a21z LT5hc3BhY2UsICZwYWRkcik7CiAJaWYgKHJldCkgewogCQlEUk1fREVWX0VSUk9SKGRldi0+ZGV2 LCAiZmFpbGVkIHRvIGdldCBidWZmZXIgb2JqIGlvdmE6ICVkXG4iLCByZXQpOwogCQlnb3RvIGZh aWxfdW5sb2NrOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZ2VtLmMgYi9k cml2ZXJzL2dwdS9kcm0vbXNtL21zbV9nZW0uYwppbmRleCA4MDVhMzAwZjg2NjMuLmE3ZTUxMDAx ODc5YiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZ2VtLmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL21zbS9tc21fZ2VtLmMKQEAgLTQwOCw5ICs0MDgsOCBAQCBzdGF0aWMgaW50 IG1zbV9nZW1fcGluX2lvdmEoc3RydWN0IGRybV9nZW1fb2JqZWN0ICpvYmosCiAJCQlvYmotPnNp emUgPj4gUEFHRV9TSElGVCk7CiB9CiAKLQotLyogZ2V0IGlvdmEsIHRha2luZyBhIHJlZmVyZW5j ZS4gIFNob3VsZCBoYXZlIGEgbWF0Y2hpbmcgcHV0ICovCi1pbnQgbXNtX2dlbV9nZXRfaW92YShz dHJ1Y3QgZHJtX2dlbV9vYmplY3QgKm9iaiwKKy8qIGdldCBpb3ZhIGFuZCBwaW4gaXQuIFNob3Vs ZCBoYXZlIGEgbWF0Y2hpbmcgcHV0ICovCitpbnQgbXNtX2dlbV9nZXRfYW5kX3Bpbl9pb3ZhKHN0 cnVjdCBkcm1fZ2VtX29iamVjdCAqb2JqLAogCQlzdHJ1Y3QgbXNtX2dlbV9hZGRyZXNzX3NwYWNl ICphc3BhY2UsIHVpbnQ2NF90ICppb3ZhKQogewogCXN0cnVjdCBtc21fZ2VtX29iamVjdCAqbXNt X29iaiA9IHRvX21zbV9ibyhvYmopOwpAQCAtNDMxLDggKzQzMCwyMyBAQCBpbnQgbXNtX2dlbV9n ZXRfaW92YShzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKm9iaiwKIAlyZXR1cm4gcmV0OwogfQogCisv KiBHZXQgYW4gaW92YSBidXQgZG9uJ3QgcGluIHRoZSBtZW1vcnkgYmVoaW5kIGl0ICovCitpbnQg bXNtX2dlbV9nZXRfaW92YShzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKm9iaiwKKwkJc3RydWN0IG1z bV9nZW1fYWRkcmVzc19zcGFjZSAqYXNwYWNlLCB1aW50NjRfdCAqaW92YSkKK3sKKwlzdHJ1Y3Qg bXNtX2dlbV9vYmplY3QgKm1zbV9vYmogPSB0b19tc21fYm8ob2JqKTsKKwlpbnQgcmV0OworCisJ bXV0ZXhfbG9jaygmbXNtX29iai0+bG9jayk7CisJcmV0ID0gbXNtX2dlbV9nZXRfaW92YV9sb2Nr ZWQob2JqLCBhc3BhY2UsIGlvdmEpOworCW11dGV4X3VubG9jaygmbXNtX29iai0+bG9jayk7CisK KwlyZXR1cm4gcmV0OworfQorCisKIC8qIGdldCBpb3ZhIHdpdGhvdXQgdGFraW5nIGEgcmVmZXJl bmNlLCB1c2VkIGluIHBsYWNlcyB3aGVyZSB5b3UgaGF2ZQotICogYWxyZWFkeSBkb25lIGEgJ21z bV9nZW1fZ2V0X2lvdmEoKScuCisgKiBhbHJlYWR5IGRvbmUgYSAnbXNtX2dlbV9nZXRfYW5kX3Bp bl9pb3ZhJyBvciAnbXNtX2dlbV9nZXRfaW92YScKICAqLwogdWludDY0X3QgbXNtX2dlbV9pb3Zh KHN0cnVjdCBkcm1fZ2VtX29iamVjdCAqb2JqLAogCQlzdHJ1Y3QgbXNtX2dlbV9hZGRyZXNzX3Nw YWNlICphc3BhY2UpCkBAIC0xMDcyLDcgKzEwODYsNyBAQCBzdGF0aWMgdm9pZCAqX21zbV9nZW1f a2VybmVsX25ldyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB1aW50MzJfdCBzaXplLAogCQlyZXR1 cm4gRVJSX0NBU1Qob2JqKTsKIAogCWlmIChpb3ZhKSB7Ci0JCXJldCA9IG1zbV9nZW1fZ2V0X2lv dmEob2JqLCBhc3BhY2UsIGlvdmEpOworCQlyZXQgPSBtc21fZ2VtX2dldF9hbmRfcGluX2lvdmEo b2JqLCBhc3BhY2UsIGlvdmEpOwogCQlpZiAocmV0KSB7CiAJCQlkcm1fZ2VtX29iamVjdF9wdXQo b2JqKTsKIAkJCXJldHVybiBFUlJfUFRSKHJldCk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vbXNtL21zbV9nZW1fc3VibWl0LmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9nZW1fc3Vi bWl0LmMKaW5kZXggNjY2NzNlYTliZjZmLi5kYTkwNzI2MDY2MGMgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9tc20vbXNtX2dlbV9zdWJtaXQuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNt L21zbV9nZW1fc3VibWl0LmMKQEAgLTI2OSw3ICsyNjksNyBAQCBzdGF0aWMgaW50IHN1Ym1pdF9w aW5fb2JqZWN0cyhzdHJ1Y3QgbXNtX2dlbV9zdWJtaXQgKnN1Ym1pdCkKIAkJdWludDY0X3QgaW92 YTsKIAogCQkvKiBpZiBsb2NraW5nIHN1Y2NlZWRlZCwgcGluIGJvOiAqLwotCQlyZXQgPSBtc21f Z2VtX2dldF9pb3ZhKCZtc21fb2JqLT5iYXNlLAorCQlyZXQgPSBtc21fZ2VtX2dldF9hbmRfcGlu X2lvdmEoJm1zbV9vYmotPmJhc2UsCiAJCQkJc3VibWl0LT5ncHUtPmFzcGFjZSwgJmlvdmEpOwog CiAJCWlmIChyZXQpCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9ncHUuYyBi L2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2dwdS5jCmluZGV4IDcxYTJkNDMxNjYzZi4uMTNkYWI5 NTI3YmRhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9ncHUuYworKysgYi9k cml2ZXJzL2dwdS9kcm0vbXNtL21zbV9ncHUuYwpAQCAtNzU0LDcgKzc1NCw3IEBAIHZvaWQgbXNt X2dwdV9zdWJtaXQoc3RydWN0IG1zbV9ncHUgKmdwdSwgc3RydWN0IG1zbV9nZW1fc3VibWl0ICpz dWJtaXQsCiAKIAkJLyogc3VibWl0IHRha2VzIGEgcmVmZXJlbmNlIHRvIHRoZSBibyBhbmQgaW92 YSB1bnRpbCByZXRpcmVkOiAqLwogCQlkcm1fZ2VtX29iamVjdF9nZXQoJm1zbV9vYmotPmJhc2Up OwotCQltc21fZ2VtX2dldF9pb3ZhKCZtc21fb2JqLT5iYXNlLAorCQltc21fZ2VtX2dldF9hbmRf cGluX2lvdmEoJm1zbV9vYmotPmJhc2UsCiAJCQkJc3VibWl0LT5ncHUtPmFzcGFjZSwgJmlvdmEp OwogCiAJCWlmIChzdWJtaXQtPmJvc1tpXS5mbGFncyAmIE1TTV9TVUJNSVRfQk9fV1JJVEUpCi0t IAoyLjE4LjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CkZyZWVkcmVubyBtYWlsaW5nIGxpc3QKRnJlZWRyZW5vQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpo dHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ZyZWVkcmVubwo=