From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jordan Crouse Subject: [PATCH 06/11] drm/msm/dpu: Cleanup callers of dpu_hw_blk_init Date: Thu, 18 Oct 2018 13:58:31 -0600 Message-ID: <20181018195836.15885-7-jcrouse@codeaurora.org> References: <20181018195836.15885-1-jcrouse@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20181018195836.15885-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, seanpaul-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org, abhinavk-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org, dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: linux-arm-msm@vger.kernel.org T3V0c2lkZSBvZiBzdXBlcmZsdW91cyBwYXJhbWV0ZXIgY2hlY2tzIHRoZSBkcHVfaHdfYmxrX2lu aXQoKQpkb2Vzbid0IGhhdmUgYW55IGZhaWx1cmUgcGF0aHMuIFN3aXRjaCBpdCBvdmVyIHRvIGJl IGEgdm9pZApmdW5jdGlvbiBhbmQgd2UgY2FuIHJlbW92ZSBlcnJvciBoYW5kbGluZyBwYXRocyBp biBhbGwgdGhlIGZ1bmN0aW9ucwp0aGF0IGNhbGwgaXQuIFdoaWxlIHdlJ3JlIGluIHRob3NlIGZ1 bmN0aW9ucyByZW1vdmUgdW5uZWVkZWQKaW5pdGlhbGl6YXRpb24gZm9yIGEgc3RhdGljIHZhcmlh YmxlLgoKU2lnbmVkLW9mZi1ieTogSm9yZGFuIENyb3VzZSA8amNyb3VzZUBjb2RlYXVyb3JhLm9y Zz4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfaHdfYmxrLmMgICAgfCAx MCArLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2h3X2Jsay5oICAg IHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9od19jdGwuYyAgICB8 IDE3ICsrLS0tLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfaHdf aW50Zi5jICAgfCAxNyArKy0tLS0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2Rw dTEvZHB1X2h3X2xtLmMgICAgIHwgMjMgKystLS0tLS0tLS0tLS0tLS0tLQogZHJpdmVycy9ncHUv ZHJtL21zbS9kaXNwL2RwdTEvZHB1X2h3X2xtLmggICAgIHwgIDUgLS0tLQogLi4uL2dwdS9kcm0v bXNtL2Rpc3AvZHB1MS9kcHVfaHdfcGluZ3BvbmcuYyAgIHwgMTcgKystLS0tLS0tLS0tLS0KIGRy aXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9od19zc3BwLmMgICB8IDE3ICsrLS0tLS0t LS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfaHdfdG9wLmMgICAgfCAx NyArKy0tLS0tLS0tLS0tLQogOSBmaWxlcyBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspLCAxMTEg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEv ZHB1X2h3X2Jsay5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2h3X2Jsay5j CmluZGV4IDU4ZDI5ZTQzZmFlZi4uOTJmMWM0MjQxYjlhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfaHdfYmxrLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21z bS9kaXNwL2RwdTEvZHB1X2h3X2Jsay5jCkBAIC0zMCwxNiArMzAsMTAgQEAgc3RhdGljIExJU1Rf SEVBRChkcHVfaHdfYmxrX2xpc3QpOwogICogQHR5cGU6IGh3IGJsb2NrIHR5cGUgLSBlbnVtIGRw dV9od19ibGtfdHlwZQogICogQGlkOiBpbnN0YW5jZSBpZCBvZiB0aGUgaHcgYmxvY2sKICAqIEBv cHM6IFBvaW50ZXIgdG8gYmxvY2sgb3BlcmF0aW9ucwotICogcmV0dXJuOiAwIGlmIHN1Y2Nlc3M7 IGVycm9yIGNvZGUgb3RoZXJ3aXNlCiAgKi8KLWludCBkcHVfaHdfYmxrX2luaXQoc3RydWN0IGRw dV9od19ibGsgKmh3X2JsaywgdTMyIHR5cGUsIGludCBpZCwKK3ZvaWQgZHB1X2h3X2Jsa19pbml0 KHN0cnVjdCBkcHVfaHdfYmxrICpod19ibGssIHUzMiB0eXBlLCBpbnQgaWQsCiAJCXN0cnVjdCBk cHVfaHdfYmxrX29wcyAqb3BzKQogewotCWlmICghaHdfYmxrKSB7Ci0JCXByX2VycigiaW52YWxp ZCBwYXJhbWV0ZXJzXG4iKTsKLQkJcmV0dXJuIC1FSU5WQUw7Ci0JfQotCiAJSU5JVF9MSVNUX0hF QUQoJmh3X2Jsay0+bGlzdCk7CiAJaHdfYmxrLT50eXBlID0gdHlwZTsKIAlod19ibGstPmlkID0g aWQ7CkBAIC01MSw4ICs0NSw2IEBAIGludCBkcHVfaHdfYmxrX2luaXQoc3RydWN0IGRwdV9od19i bGsgKmh3X2JsaywgdTMyIHR5cGUsIGludCBpZCwKIAltdXRleF9sb2NrKCZkcHVfaHdfYmxrX2xv Y2spOwogCWxpc3RfYWRkKCZod19ibGstPmxpc3QsICZkcHVfaHdfYmxrX2xpc3QpOwogCW11dGV4 X3VubG9jaygmZHB1X2h3X2Jsa19sb2NrKTsKLQotCXJldHVybiAwOwogfQogCiAvKioKZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9od19ibGsuaCBiL2RyaXZl cnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9od19ibGsuaAppbmRleCAwZjRjYThhZjFlYzUu LjE5MzRjMmY3ZThmYSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEv ZHB1X2h3X2Jsay5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9od19i bGsuaApAQCAtNDQsNyArNDQsNyBAQCBzdHJ1Y3QgZHB1X2h3X2JsayB7CiAJc3RydWN0IGRwdV9o d19ibGtfb3BzIG9wczsKIH07CiAKLWludCBkcHVfaHdfYmxrX2luaXQoc3RydWN0IGRwdV9od19i bGsgKmh3X2JsaywgdTMyIHR5cGUsIGludCBpZCwKK3ZvaWQgZHB1X2h3X2Jsa19pbml0KHN0cnVj dCBkcHVfaHdfYmxrICpod19ibGssIHUzMiB0eXBlLCBpbnQgaWQsCiAJCXN0cnVjdCBkcHVfaHdf YmxrX29wcyAqb3BzKTsKIHZvaWQgZHB1X2h3X2Jsa19kZXN0cm95KHN0cnVjdCBkcHVfaHdfYmxr ICpod19ibGspOwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9k cHVfaHdfY3RsLmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfaHdfY3RsLmMK aW5kZXggNGFhYjA0MzM1YzZkLi4xMDY4YjRiNzk0MGYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9tc20vZGlzcC9kcHUxL2RwdV9od19jdGwuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNt L2Rpc3AvZHB1MS9kcHVfaHdfY3RsLmMKQEAgLTQ4MywxMCArNDgzLDcgQEAgc3RhdGljIHZvaWQg X3NldHVwX2N0bF9vcHMoc3RydWN0IGRwdV9od19jdGxfb3BzICpvcHMsCiAJb3BzLT5nZXRfYml0 bWFza19pbnRmID0gZHB1X2h3X2N0bF9nZXRfYml0bWFza19pbnRmOwogfTsKIAotc3RhdGljIHN0 cnVjdCBkcHVfaHdfYmxrX29wcyBkcHVfaHdfb3BzID0gewotCS5zdGFydCA9IE5VTEwsCi0JLnN0 b3AgPSBOVUxMLAotfTsKK3N0YXRpYyBzdHJ1Y3QgZHB1X2h3X2Jsa19vcHMgZHB1X2h3X29wczsK IAogc3RydWN0IGRwdV9od19jdGwgKmRwdV9od19jdGxfaW5pdChlbnVtIGRwdV9jdGwgaWR4LAog CQl2b2lkIF9faW9tZW0gKmFkZHIsCkBAIC00OTQsNyArNDkxLDYgQEAgc3RydWN0IGRwdV9od19j dGwgKmRwdV9od19jdGxfaW5pdChlbnVtIGRwdV9jdGwgaWR4LAogewogCXN0cnVjdCBkcHVfaHdf Y3RsICpjOwogCXN0cnVjdCBkcHVfY3RsX2NmZyAqY2ZnOwotCWludCByYzsKIAogCWMgPSBremFs bG9jKHNpemVvZigqYyksIEdGUF9LRVJORUwpOwogCWlmICghYykKQEAgLTUxMywxOCArNTA5LDkg QEAgc3RydWN0IGRwdV9od19jdGwgKmRwdV9od19jdGxfaW5pdChlbnVtIGRwdV9jdGwgaWR4LAog CWMtPm1peGVyX2NvdW50ID0gbS0+bWl4ZXJfY291bnQ7CiAJYy0+bWl4ZXJfaHdfY2FwcyA9IG0t Pm1peGVyOwogCi0JcmMgPSBkcHVfaHdfYmxrX2luaXQoJmMtPmJhc2UsIERQVV9IV19CTEtfQ1RM LCBpZHgsICZkcHVfaHdfb3BzKTsKLQlpZiAocmMpIHsKLQkJRFBVX0VSUk9SKCJmYWlsZWQgdG8g aW5pdCBodyBibGsgJWRcbiIsIHJjKTsKLQkJZ290byBibGtfaW5pdF9lcnJvcjsKLQl9CisJZHB1 X2h3X2Jsa19pbml0KCZjLT5iYXNlLCBEUFVfSFdfQkxLX0NUTCwgaWR4LCAmZHB1X2h3X29wcyk7 CiAKIAlyZXR1cm4gYzsKLQotYmxrX2luaXRfZXJyb3I6Ci0Ja3pmcmVlKGMpOwotCi0JcmV0dXJu IEVSUl9QVFIocmMpOwogfQogCiB2b2lkIGRwdV9od19jdGxfZGVzdHJveShzdHJ1Y3QgZHB1X2h3 X2N0bCAqY3R4KQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1 X2h3X2ludGYuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9od19pbnRmLmMK aW5kZXggNjk1ZDI3YTczMGU4Li5mNmE4M2RhYTM4NWIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9tc20vZGlzcC9kcHUxL2RwdV9od19pbnRmLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21z bS9kaXNwL2RwdTEvZHB1X2h3X2ludGYuYwpAQCAtMjY0LDEwICsyNjQsNyBAQCBzdGF0aWMgdm9p ZCBfc2V0dXBfaW50Zl9vcHMoc3RydWN0IGRwdV9od19pbnRmX29wcyAqb3BzLAogCW9wcy0+Z2V0 X2xpbmVfY291bnQgPSBkcHVfaHdfaW50Zl9nZXRfbGluZV9jb3VudDsKIH0KIAotc3RhdGljIHN0 cnVjdCBkcHVfaHdfYmxrX29wcyBkcHVfaHdfb3BzID0gewotCS5zdGFydCA9IE5VTEwsCi0JLnN0 b3AgPSBOVUxMLAotfTsKK3N0YXRpYyBzdHJ1Y3QgZHB1X2h3X2Jsa19vcHMgZHB1X2h3X29wczsK IAogc3RydWN0IGRwdV9od19pbnRmICpkcHVfaHdfaW50Zl9pbml0KGVudW0gZHB1X2ludGYgaWR4 LAogCQl2b2lkIF9faW9tZW0gKmFkZHIsCkBAIC0yNzUsNyArMjcyLDYgQEAgc3RydWN0IGRwdV9o d19pbnRmICpkcHVfaHdfaW50Zl9pbml0KGVudW0gZHB1X2ludGYgaWR4LAogewogCXN0cnVjdCBk cHVfaHdfaW50ZiAqYzsKIAlzdHJ1Y3QgZHB1X2ludGZfY2ZnICpjZmc7Ci0JaW50IHJjOwogCiAJ YyA9IGt6YWxsb2Moc2l6ZW9mKCpjKSwgR0ZQX0tFUk5FTCk7CiAJaWYgKCFjKQpAQCAtMjk2LDE4 ICsyOTIsOSBAQCBzdHJ1Y3QgZHB1X2h3X2ludGYgKmRwdV9od19pbnRmX2luaXQoZW51bSBkcHVf aW50ZiBpZHgsCiAJYy0+bWRzcyA9IG07CiAJX3NldHVwX2ludGZfb3BzKCZjLT5vcHMsIGMtPmNh cC0+ZmVhdHVyZXMpOwogCi0JcmMgPSBkcHVfaHdfYmxrX2luaXQoJmMtPmJhc2UsIERQVV9IV19C TEtfSU5URiwgaWR4LCAmZHB1X2h3X29wcyk7Ci0JaWYgKHJjKSB7Ci0JCURQVV9FUlJPUigiZmFp bGVkIHRvIGluaXQgaHcgYmxrICVkXG4iLCByYyk7Ci0JCWdvdG8gYmxrX2luaXRfZXJyb3I7Ci0J fQorCWRwdV9od19ibGtfaW5pdCgmYy0+YmFzZSwgRFBVX0hXX0JMS19JTlRGLCBpZHgsICZkcHVf aHdfb3BzKTsKIAogCXJldHVybiBjOwotCi1ibGtfaW5pdF9lcnJvcjoKLQlremZyZWUoYyk7Ci0K LQlyZXR1cm4gRVJSX1BUUihyYyk7CiB9CiAKIHZvaWQgZHB1X2h3X2ludGZfZGVzdHJveShzdHJ1 Y3QgZHB1X2h3X2ludGYgKmludGYpCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rp c3AvZHB1MS9kcHVfaHdfbG0uYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9o d19sbS5jCmluZGV4IGM3NmI1Y2M5NDlmYi4uMDE4ZGYyYzNiN2VkIDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfaHdfbG0uYworKysgYi9kcml2ZXJzL2dwdS9k cm0vbXNtL2Rpc3AvZHB1MS9kcHVfaHdfbG0uYwpAQCAtMTU2LDExICsxNTYsNiBAQCBzdGF0aWMg dm9pZCBkcHVfaHdfbG1fc2V0dXBfY29sb3IzKHN0cnVjdCBkcHVfaHdfbWl4ZXIgKmN0eCwKIAlE UFVfUkVHX1dSSVRFKGMsIExNX09QX01PREUsIG9wX21vZGUpOwogfQogCi1zdGF0aWMgdm9pZCBk cHVfaHdfbG1fZ2Moc3RydWN0IGRwdV9od19taXhlciAqbWl4ZXIsCi0JCQl2b2lkICpjZmcpCi17 Ci19Ci0KIHN0YXRpYyB2b2lkIF9zZXR1cF9taXhlcl9vcHMoc3RydWN0IGRwdV9tZHNzX2NmZyAq bSwKIAkJc3RydWN0IGRwdV9od19sbV9vcHMgKm9wcywKIAkJdW5zaWduZWQgbG9uZyBmZWF0dXJl cykKQEAgLTE3MiwxMyArMTY3LDkgQEAgc3RhdGljIHZvaWQgX3NldHVwX21peGVyX29wcyhzdHJ1 Y3QgZHB1X21kc3NfY2ZnICptLAogCQlvcHMtPnNldHVwX2JsZW5kX2NvbmZpZyA9IGRwdV9od19s bV9zZXR1cF9ibGVuZF9jb25maWc7CiAJb3BzLT5zZXR1cF9hbHBoYV9vdXQgPSBkcHVfaHdfbG1f c2V0dXBfY29sb3IzOwogCW9wcy0+c2V0dXBfYm9yZGVyX2NvbG9yID0gZHB1X2h3X2xtX3NldHVw X2JvcmRlcl9jb2xvcjsKLQlvcHMtPnNldHVwX2djID0gZHB1X2h3X2xtX2djOwogfTsKIAotc3Rh dGljIHN0cnVjdCBkcHVfaHdfYmxrX29wcyBkcHVfaHdfb3BzID0gewotCS5zdGFydCA9IE5VTEws Ci0JLnN0b3AgPSBOVUxMLAotfTsKK3N0YXRpYyBzdHJ1Y3QgZHB1X2h3X2Jsa19vcHMgZHB1X2h3 X29wczsKIAogc3RydWN0IGRwdV9od19taXhlciAqZHB1X2h3X2xtX2luaXQoZW51bSBkcHVfbG0g aWR4LAogCQl2b2lkIF9faW9tZW0gKmFkZHIsCkBAIC0xODYsNyArMTc3LDYgQEAgc3RydWN0IGRw dV9od19taXhlciAqZHB1X2h3X2xtX2luaXQoZW51bSBkcHVfbG0gaWR4LAogewogCXN0cnVjdCBk cHVfaHdfbWl4ZXIgKmM7CiAJc3RydWN0IGRwdV9sbV9jZmcgKmNmZzsKLQlpbnQgcmM7CiAKIAlj ID0ga3phbGxvYyhzaXplb2YoKmMpLCBHRlBfS0VSTkVMKTsKIAlpZiAoIWMpCkBAIC0yMDMsMTgg KzE5Myw5IEBAIHN0cnVjdCBkcHVfaHdfbWl4ZXIgKmRwdV9od19sbV9pbml0KGVudW0gZHB1X2xt IGlkeCwKIAljLT5jYXAgPSBjZmc7CiAJX3NldHVwX21peGVyX29wcyhtLCAmYy0+b3BzLCBjLT5j YXAtPmZlYXR1cmVzKTsKIAotCXJjID0gZHB1X2h3X2Jsa19pbml0KCZjLT5iYXNlLCBEUFVfSFdf QkxLX0xNLCBpZHgsICZkcHVfaHdfb3BzKTsKLQlpZiAocmMpIHsKLQkJRFBVX0VSUk9SKCJmYWls ZWQgdG8gaW5pdCBodyBibGsgJWRcbiIsIHJjKTsKLQkJZ290byBibGtfaW5pdF9lcnJvcjsKLQl9 CisJZHB1X2h3X2Jsa19pbml0KCZjLT5iYXNlLCBEUFVfSFdfQkxLX0xNLCBpZHgsICZkcHVfaHdf b3BzKTsKIAogCXJldHVybiBjOwotCi1ibGtfaW5pdF9lcnJvcjoKLQlremZyZWUoYyk7Ci0KLQly ZXR1cm4gRVJSX1BUUihyYyk7CiB9CiAKIHZvaWQgZHB1X2h3X2xtX2Rlc3Ryb3koc3RydWN0IGRw dV9od19taXhlciAqbG0pCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1 MS9kcHVfaHdfbG0uaCBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9od19sbS5o CmluZGV4IDIwMGNkODc0YjY4My4uMjc2OTkwMDBhYWNhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfaHdfbG0uaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNt L2Rpc3AvZHB1MS9kcHVfaHdfbG0uaApAQCAtNjEsMTEgKzYxLDYgQEAgc3RydWN0IGRwdV9od19s bV9vcHMgewogCXZvaWQgKCpzZXR1cF9ib3JkZXJfY29sb3IpKHN0cnVjdCBkcHVfaHdfbWl4ZXIg KmN0eCwKIAkJc3RydWN0IGRwdV9tZHNzX2NvbG9yICpjb2xvciwKIAkJdTggYm9yZGVyX2VuKTsK LQkvKioKLQkgKiBzZXR1cF9nYyA6IGVuYWJsZS9kaXNhYmxlIGdhbW1hIGNvcnJlY3Rpb24gZmVh dHVyZQotCSAqLwotCXZvaWQgKCpzZXR1cF9nYykoc3RydWN0IGRwdV9od19taXhlciAqbWl4ZXIs Ci0JCQl2b2lkICpjZmcpOwogfTsKIAogc3RydWN0IGRwdV9od19taXhlciB7CmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfaHdfcGluZ3BvbmcuYyBiL2RyaXZl cnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9od19waW5ncG9uZy5jCmluZGV4IGNmYzkzODE2 MDc4Zi4uM2JkZjQ3ZWQxODQ1IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3Av ZHB1MS9kcHVfaHdfcGluZ3BvbmcuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1 MS9kcHVfaHdfcGluZ3BvbmcuYwpAQCAtMTk5LDEwICsxOTksNyBAQCBzdGF0aWMgdm9pZCBfc2V0 dXBfcGluZ3Bvbmdfb3BzKHN0cnVjdCBkcHVfaHdfcGluZ3Bvbmdfb3BzICpvcHMsCiAJb3BzLT5n ZXRfbGluZV9jb3VudCA9IGRwdV9od19wcF9nZXRfbGluZV9jb3VudDsKIH07CiAKLXN0YXRpYyBz dHJ1Y3QgZHB1X2h3X2Jsa19vcHMgZHB1X2h3X29wcyA9IHsKLQkuc3RhcnQgPSBOVUxMLAotCS5z dG9wID0gTlVMTCwKLX07CitzdGF0aWMgc3RydWN0IGRwdV9od19ibGtfb3BzIGRwdV9od19vcHM7 CiAKIHN0cnVjdCBkcHVfaHdfcGluZ3BvbmcgKmRwdV9od19waW5ncG9uZ19pbml0KGVudW0gZHB1 X3Bpbmdwb25nIGlkeCwKIAkJdm9pZCBfX2lvbWVtICphZGRyLApAQCAtMjEwLDcgKzIwNyw2IEBA IHN0cnVjdCBkcHVfaHdfcGluZ3BvbmcgKmRwdV9od19waW5ncG9uZ19pbml0KGVudW0gZHB1X3Bp bmdwb25nIGlkeCwKIHsKIAlzdHJ1Y3QgZHB1X2h3X3Bpbmdwb25nICpjOwogCXN0cnVjdCBkcHVf cGluZ3BvbmdfY2ZnICpjZmc7Ci0JaW50IHJjOwogCiAJYyA9IGt6YWxsb2Moc2l6ZW9mKCpjKSwg R0ZQX0tFUk5FTCk7CiAJaWYgKCFjKQpAQCAtMjI2LDE4ICsyMjIsOSBAQCBzdHJ1Y3QgZHB1X2h3 X3Bpbmdwb25nICpkcHVfaHdfcGluZ3BvbmdfaW5pdChlbnVtIGRwdV9waW5ncG9uZyBpZHgsCiAJ Yy0+Y2FwcyA9IGNmZzsKIAlfc2V0dXBfcGluZ3Bvbmdfb3BzKCZjLT5vcHMsIGMtPmNhcHMpOwog Ci0JcmMgPSBkcHVfaHdfYmxrX2luaXQoJmMtPmJhc2UsIERQVV9IV19CTEtfUElOR1BPTkcsIGlk eCwgJmRwdV9od19vcHMpOwotCWlmIChyYykgewotCQlEUFVfRVJST1IoImZhaWxlZCB0byBpbml0 IGh3IGJsayAlZFxuIiwgcmMpOwotCQlnb3RvIGJsa19pbml0X2Vycm9yOwotCX0KKwlkcHVfaHdf YmxrX2luaXQoJmMtPmJhc2UsIERQVV9IV19CTEtfUElOR1BPTkcsIGlkeCwgJmRwdV9od19vcHMp OwogCiAJcmV0dXJuIGM7Ci0KLWJsa19pbml0X2Vycm9yOgotCWt6ZnJlZShjKTsKLQotCXJldHVy biBFUlJfUFRSKHJjKTsKIH0KIAogdm9pZCBkcHVfaHdfcGluZ3BvbmdfZGVzdHJveShzdHJ1Y3Qg ZHB1X2h3X3Bpbmdwb25nICpwcCkKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlz cC9kcHUxL2RwdV9od19zc3BwLmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVf aHdfc3NwcC5jCmluZGV4IDgyOTc5NjNkMmM0Yy4uM2ViZGYyOTJkOGYyIDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfaHdfc3NwcC5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9od19zc3BwLmMKQEAgLTY5NiwxMCArNjk2LDcgQEAg c3RhdGljIHN0cnVjdCBkcHVfc3NwcF9jZmcgKl9zc3BwX29mZnNldChlbnVtIGRwdV9zc3BwIHNz cHAsCiAJcmV0dXJuIEVSUl9QVFIoLUVOT01FTSk7CiB9CiAKLXN0YXRpYyBzdHJ1Y3QgZHB1X2h3 X2Jsa19vcHMgZHB1X2h3X29wcyA9IHsKLQkuc3RhcnQgPSBOVUxMLAotCS5zdG9wID0gTlVMTCwK LX07CitzdGF0aWMgc3RydWN0IGRwdV9od19ibGtfb3BzIGRwdV9od19vcHM7CiAKIHN0cnVjdCBk cHVfaHdfcGlwZSAqZHB1X2h3X3NzcHBfaW5pdChlbnVtIGRwdV9zc3BwIGlkeCwKIAkJdm9pZCBf X2lvbWVtICphZGRyLCBzdHJ1Y3QgZHB1X21kc3NfY2ZnICpjYXRhbG9nLApAQCAtNzA3LDcgKzcw NCw2IEBAIHN0cnVjdCBkcHVfaHdfcGlwZSAqZHB1X2h3X3NzcHBfaW5pdChlbnVtIGRwdV9zc3Bw IGlkeCwKIHsKIAlzdHJ1Y3QgZHB1X2h3X3BpcGUgKmh3X3BpcGU7CiAJc3RydWN0IGRwdV9zc3Bw X2NmZyAqY2ZnOwotCWludCByYzsKIAogCWlmICghYWRkciB8fCAhY2F0YWxvZykKIAkJcmV0dXJu IEVSUl9QVFIoLUVJTlZBTCk7CkBAIC03MjksMTggKzcyNSw5IEBAIHN0cnVjdCBkcHVfaHdfcGlw ZSAqZHB1X2h3X3NzcHBfaW5pdChlbnVtIGRwdV9zc3BwIGlkeCwKIAlod19waXBlLT5jYXAgPSBj Zmc7CiAJX3NldHVwX2xheWVyX29wcyhod19waXBlLCBod19waXBlLT5jYXAtPmZlYXR1cmVzKTsK IAotCXJjID0gZHB1X2h3X2Jsa19pbml0KCZod19waXBlLT5iYXNlLCBEUFVfSFdfQkxLX1NTUFAs IGlkeCwgJmRwdV9od19vcHMpOwotCWlmIChyYykgewotCQlEUFVfRVJST1IoImZhaWxlZCB0byBp bml0IGh3IGJsayAlZFxuIiwgcmMpOwotCQlnb3RvIGJsa19pbml0X2Vycm9yOwotCX0KKwlkcHVf aHdfYmxrX2luaXQoJmh3X3BpcGUtPmJhc2UsIERQVV9IV19CTEtfU1NQUCwgaWR4LCAmZHB1X2h3 X29wcyk7CiAKIAlyZXR1cm4gaHdfcGlwZTsKLQotYmxrX2luaXRfZXJyb3I6Ci0Ja3pmcmVlKGh3 X3BpcGUpOwotCi0JcmV0dXJuIEVSUl9QVFIocmMpOwogfQogCiB2b2lkIGRwdV9od19zc3BwX2Rl c3Ryb3koc3RydWN0IGRwdV9od19waXBlICpjdHgpCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vbXNtL2Rpc3AvZHB1MS9kcHVfaHdfdG9wLmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3Av ZHB1MS9kcHVfaHdfdG9wLmMKaW5kZXggZjdlMGY2NjFhOGJiLi5hMDQxNTk3YmI4NDkgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9od190b3AuYworKysgYi9k cml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfaHdfdG9wLmMKQEAgLTMyMSwxMCArMzIx LDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBkcHVfbWRwX2NmZyAqX3RvcF9vZmZzZXQoZW51bSBk cHVfbWRwIG1kcCwKIAlyZXR1cm4gRVJSX1BUUigtRUlOVkFMKTsKIH0KIAotc3RhdGljIHN0cnVj dCBkcHVfaHdfYmxrX29wcyBkcHVfaHdfb3BzID0gewotCS5zdGFydCA9IE5VTEwsCi0JLnN0b3Ag PSBOVUxMLAotfTsKK3N0YXRpYyBzdHJ1Y3QgZHB1X2h3X2Jsa19vcHMgZHB1X2h3X29wczsKIAog c3RydWN0IGRwdV9od19tZHAgKmRwdV9od19tZHB0b3BfaW5pdChlbnVtIGRwdV9tZHAgaWR4LAog CQl2b2lkIF9faW9tZW0gKmFkZHIsCkBAIC0zMzIsNyArMzI5LDYgQEAgc3RydWN0IGRwdV9od19t ZHAgKmRwdV9od19tZHB0b3BfaW5pdChlbnVtIGRwdV9tZHAgaWR4LAogewogCXN0cnVjdCBkcHVf aHdfbWRwICptZHA7CiAJY29uc3Qgc3RydWN0IGRwdV9tZHBfY2ZnICpjZmc7Ci0JaW50IHJjOwog CiAJaWYgKCFhZGRyIHx8ICFtKQogCQlyZXR1cm4gRVJSX1BUUigtRUlOVkFMKTsKQEAgLTM1NCwx OCArMzUwLDkgQEAgc3RydWN0IGRwdV9od19tZHAgKmRwdV9od19tZHB0b3BfaW5pdChlbnVtIGRw dV9tZHAgaWR4LAogCW1kcC0+Y2FwcyA9IGNmZzsKIAlfc2V0dXBfbWRwX29wcygmbWRwLT5vcHMs IG1kcC0+Y2Fwcy0+ZmVhdHVyZXMpOwogCi0JcmMgPSBkcHVfaHdfYmxrX2luaXQoJm1kcC0+YmFz ZSwgRFBVX0hXX0JMS19UT1AsIGlkeCwgJmRwdV9od19vcHMpOwotCWlmIChyYykgewotCQlEUFVf RVJST1IoImZhaWxlZCB0byBpbml0IGh3IGJsayAlZFxuIiwgcmMpOwotCQlnb3RvIGJsa19pbml0 X2Vycm9yOwotCX0KKwlkcHVfaHdfYmxrX2luaXQoJm1kcC0+YmFzZSwgRFBVX0hXX0JMS19UT1As IGlkeCwgJmRwdV9od19vcHMpOwogCiAJcmV0dXJuIG1kcDsKLQotYmxrX2luaXRfZXJyb3I6Ci0J a3pmcmVlKG1kcCk7Ci0KLQlyZXR1cm4gRVJSX1BUUihyYyk7CiB9CiAKIHZvaWQgZHB1X2h3X21k cF9kZXN0cm95KHN0cnVjdCBkcHVfaHdfbWRwICptZHApCi0tIAoyLjE4LjAKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkZyZWVkcmVubyBtYWlsaW5nIGxp c3QKRnJlZWRyZW5vQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ZyZWVkcmVubwo=