From mboxrd@z Thu Jan 1 00:00:00 1970 From: Cihangir Akturk Subject: [PATCH v3 15/28] drm/msm: switch to drm_*_get(), drm_*_put() helpers Date: Fri, 11 Aug 2017 15:33:01 +0300 Message-ID: <1502454794-28558-16-git-send-email-cakturk@gmail.com> References: <1502454794-28558-1-git-send-email-cakturk@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1502454794-28558-1-git-send-email-cakturk-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: freedreno-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Freedreno" Cc: David Airlie , Daniel Vetter , Liviu Dudau , dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, Philippe Cornu , Sushmita Susheelendra , Eric Anholt , =?UTF-8?q?Ville=20Syrj=C3=A4l=C3=A4?= , Rob Herring , Thomas Hellstrom , Laurent Pinchart , Arnd Bergmann , Masahiro Yamada , linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Maarten Lankhorst , Archit Taneja , Russell King , Cihangir Akturk , freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Rob Clark , daniel-/w4YWyX8dFk@public.gmane.orgJordan Crouse List-Id: linux-arm-msm@vger.kernel.org VXNlIGRybV8qX2dldCgpIGFuZCBkcm1fKl9wdXQoKSBoZWxwZXJzIGluc3RlYWQgb2YgZHJtXypf cmVmZXJlbmNlKCkKYW5kIGRybV8qX3VucmVmZXJlbmNlKCkgaGVscGVycy4KCmRybV8qX3JlZmVy ZW5jZSgpIGFuZCBkcm1fKl91bnJlZmVyZW5jZSgpIGZ1bmN0aW9ucyBhcmUganVzdApjb21wYXRp YmlsaXR5IGFsaWFzIGZvciBkcm1fKl9nZXQoKSBhbmQgZHJtXypfcHV0KCkgYW5kIHNob3VsZCBu b3QgYmUKdXNlZCBieSBuZXcgY29kZS4gU28gY29udmVydCBhbGwgdXNlcnMgb2YgY29tcGF0aWJp bGl0eSBmdW5jdGlvbnMgdG8KdXNlIHRoZSBuZXcgQVBJcy4KCkdlbmVyYXRlZCBieTogc2NyaXB0 cy9jb2NjaW5lbGxlL2FwaS9kcm0tZ2V0LXB1dC5jb2NjaQoKU2lnbmVkLW9mZi1ieTogQ2loYW5n aXIgQWt0dXJrIDxjYWt0dXJrQGdtYWlsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vbXNtL2Fk cmVuby9hNXh4X2dwdS5jICAgICB8IDEwICsrKysrLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9tc20v YWRyZW5vL2E1eHhfcG93ZXIuYyAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5v L2FkcmVub19ncHUuYyAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDQvbWRw NF9jcnRjLmMgIHwgIDYgKysrLS0tCiBkcml2ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHA0L21kcDRf a21zLmMgICB8ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHA1L21kcDVfY3J0Yy5j ICB8ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHA1L21kcDVfcGxhbmUuYyB8ICA0 ICsrLS0KIGRyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2Rydi5jICAgICAgICAgICAgIHwgIDggKysr Ky0tLS0KIGRyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2ZiLmMgICAgICAgICAgICAgIHwgIDQgKyst LQogZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZmJkZXYuYyAgICAgICAgICAgfCAgMiArLQogZHJp dmVycy9ncHUvZHJtL21zbS9tc21fZ2VtLmMgICAgICAgICAgICAgfCAgOCArKysrLS0tLQogZHJp dmVycy9ncHUvZHJtL21zbS9tc21fZ2VtX3N1Ym1pdC5jICAgICAgfCAgNCArKy0tCiBkcml2ZXJz L2dwdS9kcm0vbXNtL21zbV9ncHUuYyAgICAgICAgICAgICB8ICA0ICsrLS0KIGRyaXZlcnMvZ3B1 L2RybS9tc20vbXNtX3JpbmdidWZmZXIuYyAgICAgIHwgIDIgKy0KIDE0IGZpbGVzIGNoYW5nZWQs IDMwIGluc2VydGlvbnMoKyksIDMwIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9tc20vYWRyZW5vL2E1eHhfZ3B1LmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVu by9hNXh4X2dwdS5jCmluZGV4IGI0YjU0ZjEuLjEyZDBmOWMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS9tc20vYWRyZW5vL2E1eHhfZ3B1LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9h ZHJlbm8vYTV4eF9ncHUuYwpAQCAtMzAzLDcgKzMwMyw3IEBAIHN0YXRpYyBzdHJ1Y3QgZHJtX2dl bV9vYmplY3QgKmE1eHhfdWNvZGVfbG9hZF9ibyhzdHJ1Y3QgbXNtX2dwdSAqZ3B1LAogCiAJcHRy ID0gbXNtX2dlbV9nZXRfdmFkZHIoYm8pOwogCWlmICghcHRyKSB7Ci0JCWRybV9nZW1fb2JqZWN0 X3VucmVmZXJlbmNlKGJvKTsKKwkJZHJtX2dlbV9vYmplY3RfcHV0KGJvKTsKIAkJcmV0dXJuIEVS Ul9QVFIoLUVOT01FTSk7CiAJfQogCkBAIC0zMTEsNyArMzExLDcgQEAgc3RhdGljIHN0cnVjdCBk cm1fZ2VtX29iamVjdCAqYTV4eF91Y29kZV9sb2FkX2JvKHN0cnVjdCBtc21fZ3B1ICpncHUsCiAJ CWludCByZXQgPSBtc21fZ2VtX2dldF9pb3ZhKGJvLCBncHUtPmFzcGFjZSwgaW92YSk7CiAKIAkJ aWYgKHJldCkgewotCQkJZHJtX2dlbV9vYmplY3RfdW5yZWZlcmVuY2UoYm8pOworCQkJZHJtX2dl bV9vYmplY3RfcHV0KGJvKTsKIAkJCXJldHVybiBFUlJfUFRSKHJldCk7CiAJCX0KIAl9CkBAIC02 OTcsMTkgKzY5NywxOSBAQCBzdGF0aWMgdm9pZCBhNXh4X2Rlc3Ryb3koc3RydWN0IG1zbV9ncHUg KmdwdSkKIAlpZiAoYTV4eF9ncHUtPnBtNF9ibykgewogCQlpZiAoYTV4eF9ncHUtPnBtNF9pb3Zh KQogCQkJbXNtX2dlbV9wdXRfaW92YShhNXh4X2dwdS0+cG00X2JvLCBncHUtPmFzcGFjZSk7Ci0J CWRybV9nZW1fb2JqZWN0X3VucmVmZXJlbmNlX3VubG9ja2VkKGE1eHhfZ3B1LT5wbTRfYm8pOwor CQlkcm1fZ2VtX29iamVjdF9wdXRfdW5sb2NrZWQoYTV4eF9ncHUtPnBtNF9ibyk7CiAJfQogCiAJ aWYgKGE1eHhfZ3B1LT5wZnBfYm8pIHsKIAkJaWYgKGE1eHhfZ3B1LT5wZnBfaW92YSkKIAkJCW1z bV9nZW1fcHV0X2lvdmEoYTV4eF9ncHUtPnBmcF9ibywgZ3B1LT5hc3BhY2UpOwotCQlkcm1fZ2Vt X29iamVjdF91bnJlZmVyZW5jZV91bmxvY2tlZChhNXh4X2dwdS0+cGZwX2JvKTsKKwkJZHJtX2dl bV9vYmplY3RfcHV0X3VubG9ja2VkKGE1eHhfZ3B1LT5wZnBfYm8pOwogCX0KIAogCWlmIChhNXh4 X2dwdS0+Z3BtdV9ibykgewogCQlpZiAoYTV4eF9ncHUtPmdwbXVfaW92YSkKIAkJCW1zbV9nZW1f cHV0X2lvdmEoYTV4eF9ncHUtPmdwbXVfYm8sIGdwdS0+YXNwYWNlKTsKLQkJZHJtX2dlbV9vYmpl Y3RfdW5yZWZlcmVuY2VfdW5sb2NrZWQoYTV4eF9ncHUtPmdwbXVfYm8pOworCQlkcm1fZ2VtX29i amVjdF9wdXRfdW5sb2NrZWQoYTV4eF9ncHUtPmdwbXVfYm8pOwogCX0KIAogCWFkcmVub19ncHVf Y2xlYW51cChhZHJlbm9fZ3B1KTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRy ZW5vL2E1eHhfcG93ZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2E1eHhfcG93ZXIu YwppbmRleCA4N2FmNmVlLi4zMzMzNjIwIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNt L2FkcmVuby9hNXh4X3Bvd2VyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYTV4 eF9wb3dlci5jCkBAIC0zMzAsNyArMzMwLDcgQEAgdm9pZCBhNXh4X2dwbXVfdWNvZGVfaW5pdChz dHJ1Y3QgbXNtX2dwdSAqZ3B1KQogCWlmIChhNXh4X2dwdS0+Z3BtdV9pb3ZhKQogCQltc21fZ2Vt X3B1dF9pb3ZhKGE1eHhfZ3B1LT5ncG11X2JvLCBncHUtPmFzcGFjZSk7CiAJaWYgKGE1eHhfZ3B1 LT5ncG11X2JvKQotCQlkcm1fZ2VtX29iamVjdF91bnJlZmVyZW5jZShhNXh4X2dwdS0+Z3BtdV9i byk7CisJCWRybV9nZW1fb2JqZWN0X3B1dChhNXh4X2dwdS0+Z3BtdV9ibyk7CiAKIAlhNXh4X2dw dS0+Z3BtdV9ibyA9IE5VTEw7CiAJYTV4eF9ncHUtPmdwbXVfaW92YSA9IDA7CmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hZHJlbm9fZ3B1LmMgYi9kcml2ZXJzL2dwdS9k cm0vbXNtL2FkcmVuby9hZHJlbm9fZ3B1LmMKaW5kZXggZjFhYjI3MC4uMTVkZTgyMSAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYWRyZW5vX2dwdS5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9tc20vYWRyZW5vL2FkcmVub19ncHUuYwpAQCAtNDMzLDcgKzQzMyw3IEBAIHZv aWQgYWRyZW5vX2dwdV9jbGVhbnVwKHN0cnVjdCBhZHJlbm9fZ3B1ICphZHJlbm9fZ3B1KQogCQlp ZiAoYWRyZW5vX2dwdS0+bWVtcHRyc19pb3ZhKQogCQkJbXNtX2dlbV9wdXRfaW92YShhZHJlbm9f Z3B1LT5tZW1wdHJzX2JvLCBncHUtPmFzcGFjZSk7CiAKLQkJZHJtX2dlbV9vYmplY3RfdW5yZWZl cmVuY2VfdW5sb2NrZWQoYWRyZW5vX2dwdS0+bWVtcHRyc19ibyk7CisJCWRybV9nZW1fb2JqZWN0 X3B1dF91bmxvY2tlZChhZHJlbm9fZ3B1LT5tZW1wdHJzX2JvKTsKIAl9CiAJcmVsZWFzZV9maXJt d2FyZShhZHJlbm9fZ3B1LT5wbTQpOwogCXJlbGVhc2VfZmlybXdhcmUoYWRyZW5vX2dwdS0+cGZw KTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDQvbWRwNF9jcnRjLmMg Yi9kcml2ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHA0L21kcDRfY3J0Yy5jCmluZGV4IDQ3ZmEyYWIu LjVkNGFiYTEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDQvbWRwNF9j cnRjLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRwNC9tZHA0X2NydGMuYwpAQCAt MTI5LDcgKzEyOSw3IEBAIHN0YXRpYyB2b2lkIHVucmVmX2N1cnNvcl93b3JrZXIoc3RydWN0IGRy bV9mbGlwX3dvcmsgKndvcmssIHZvaWQgKnZhbCkKIAlzdHJ1Y3QgbXNtX2ttcyAqa21zID0gJm1k cDRfa21zLT5iYXNlLmJhc2U7CiAKIAltc21fZ2VtX3B1dF9pb3ZhKHZhbCwga21zLT5hc3BhY2Up OwotCWRybV9nZW1fb2JqZWN0X3VucmVmZXJlbmNlX3VubG9ja2VkKHZhbCk7CisJZHJtX2dlbV9v YmplY3RfcHV0X3VubG9ja2VkKHZhbCk7CiB9CiAKIHN0YXRpYyB2b2lkIG1kcDRfY3J0Y19kZXN0 cm95KHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKQEAgLTM3NSw3ICszNzUsNyBAQCBzdGF0aWMgdm9p ZCB1cGRhdGVfY3Vyc29yKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKIAogCQlpZiAobmV4dF9ibykg ewogCQkJLyogdGFrZSBhIG9iaiByZWYgKyBpb3ZhIHJlZiB3aGVuIHdlIHN0YXJ0IHNjYW5uaW5n IG91dDogKi8KLQkJCWRybV9nZW1fb2JqZWN0X3JlZmVyZW5jZShuZXh0X2JvKTsKKwkJCWRybV9n ZW1fb2JqZWN0X2dldChuZXh0X2JvKTsKIAkJCW1zbV9nZW1fZ2V0X2lvdmEobmV4dF9ibywga21z LT5hc3BhY2UsICZpb3ZhKTsKIAogCQkJLyogZW5hYmxlIGN1cnNvcjogKi8KQEAgLTQ2MCw3ICs0 NjAsNyBAQCBzdGF0aWMgaW50IG1kcDRfY3J0Y19jdXJzb3Jfc2V0KHN0cnVjdCBkcm1fY3J0YyAq Y3J0YywKIAlyZXR1cm4gMDsKIAogZmFpbDoKLQlkcm1fZ2VtX29iamVjdF91bnJlZmVyZW5jZV91 bmxvY2tlZChjdXJzb3JfYm8pOworCWRybV9nZW1fb2JqZWN0X3B1dF91bmxvY2tlZChjdXJzb3Jf Ym8pOwogCXJldHVybiByZXQ7CiB9CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20v bWRwL21kcDQvbWRwNF9rbXMuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDQvbWRwNF9r bXMuYwppbmRleCBmN2YwODc0Li40YjY0NmJmIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v bXNtL21kcC9tZHA0L21kcDRfa21zLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRw NC9tZHA0X2ttcy5jCkBAIC0xNjQsNyArMTY0LDcgQEAgc3RhdGljIHZvaWQgbWRwNF9kZXN0cm95 KHN0cnVjdCBtc21fa21zICprbXMpCiAKIAlpZiAobWRwNF9rbXMtPmJsYW5rX2N1cnNvcl9pb3Zh KQogCQltc21fZ2VtX3B1dF9pb3ZhKG1kcDRfa21zLT5ibGFua19jdXJzb3JfYm8sIGttcy0+YXNw YWNlKTsKLQlkcm1fZ2VtX29iamVjdF91bnJlZmVyZW5jZV91bmxvY2tlZChtZHA0X2ttcy0+Ymxh bmtfY3Vyc29yX2JvKTsKKwlkcm1fZ2VtX29iamVjdF9wdXRfdW5sb2NrZWQobWRwNF9rbXMtPmJs YW5rX2N1cnNvcl9ibyk7CiAKIAlpZiAoYXNwYWNlKSB7CiAJCWFzcGFjZS0+bW11LT5mdW5jcy0+ ZGV0YWNoKGFzcGFjZS0+bW11LApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAv bWRwNS9tZHA1X2NydGMuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDUvbWRwNV9jcnRj LmMKaW5kZXggNWUzYmM3Mi4uN2FhNDI0MSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21z bS9tZHAvbWRwNS9tZHA1X2NydGMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHA1 L21kcDVfY3J0Yy5jCkBAIC0xNjMsNyArMTYzLDcgQEAgc3RhdGljIHZvaWQgdW5yZWZfY3Vyc29y X3dvcmtlcihzdHJ1Y3QgZHJtX2ZsaXBfd29yayAqd29yaywgdm9pZCAqdmFsKQogCXN0cnVjdCBt c21fa21zICprbXMgPSAmbWRwNV9rbXMtPmJhc2UuYmFzZTsKIAogCW1zbV9nZW1fcHV0X2lvdmEo dmFsLCBrbXMtPmFzcGFjZSk7Ci0JZHJtX2dlbV9vYmplY3RfdW5yZWZlcmVuY2VfdW5sb2NrZWQo dmFsKTsKKwlkcm1fZ2VtX29iamVjdF9wdXRfdW5sb2NrZWQodmFsKTsKIH0KIAogc3RhdGljIHZv aWQgbWRwNV9jcnRjX2Rlc3Ryb3koc3RydWN0IGRybV9jcnRjICpjcnRjKQpkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRwNS9tZHA1X3BsYW5lLmMgYi9kcml2ZXJzL2dwdS9k cm0vbXNtL21kcC9tZHA1L21kcDVfcGxhbmUuYwppbmRleCA4MTgyNDRhLi5jZjRkNjNlIDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHA1L21kcDVfcGxhbmUuYworKysgYi9k cml2ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHA1L21kcDVfcGxhbmUuYwpAQCAtMTk0LDcgKzE5NCw3 IEBAIHN0YXRpYyB2b2lkIG1kcDVfcGxhbmVfcmVzZXQoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUp CiAJc3RydWN0IG1kcDVfcGxhbmVfc3RhdGUgKm1kcDVfc3RhdGU7CiAKIAlpZiAocGxhbmUtPnN0 YXRlICYmIHBsYW5lLT5zdGF0ZS0+ZmIpCi0JCWRybV9mcmFtZWJ1ZmZlcl91bnJlZmVyZW5jZShw bGFuZS0+c3RhdGUtPmZiKTsKKwkJZHJtX2ZyYW1lYnVmZmVyX3B1dChwbGFuZS0+c3RhdGUtPmZi KTsKIAogCWtmcmVlKHRvX21kcDVfcGxhbmVfc3RhdGUocGxhbmUtPnN0YXRlKSk7CiAJbWRwNV9z dGF0ZSA9IGt6YWxsb2Moc2l6ZW9mKCptZHA1X3N0YXRlKSwgR0ZQX0tFUk5FTCk7CkBAIC0yMzcs NyArMjM3LDcgQEAgc3RhdGljIHZvaWQgbWRwNV9wbGFuZV9kZXN0cm95X3N0YXRlKHN0cnVjdCBk cm1fcGxhbmUgKnBsYW5lLAogCXN0cnVjdCBtZHA1X3BsYW5lX3N0YXRlICpwc3RhdGUgPSB0b19t ZHA1X3BsYW5lX3N0YXRlKHN0YXRlKTsKIAogCWlmIChzdGF0ZS0+ZmIpCi0JCWRybV9mcmFtZWJ1 ZmZlcl91bnJlZmVyZW5jZShzdGF0ZS0+ZmIpOworCQlkcm1fZnJhbWVidWZmZXJfcHV0KHN0YXRl LT5mYik7CiAKIAlrZnJlZShwc3RhdGUpOwogfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L21zbS9tc21fZHJ2LmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9kcnYuYwppbmRleCBmNDlm NmFjLi5iYTNjNTgxIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9kcnYuYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9kcnYuYwpAQCAtNjY0LDcgKzY2NCw3IEBAIHN0 YXRpYyBpbnQgbXNtX2lvY3RsX2dlbV9jcHVfcHJlcChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2 b2lkICpkYXRhLAogCiAJcmV0ID0gbXNtX2dlbV9jcHVfcHJlcChvYmosIGFyZ3MtPm9wLCAmdGlt ZW91dCk7CiAKLQlkcm1fZ2VtX29iamVjdF91bnJlZmVyZW5jZV91bmxvY2tlZChvYmopOworCWRy bV9nZW1fb2JqZWN0X3B1dF91bmxvY2tlZChvYmopOwogCiAJcmV0dXJuIHJldDsKIH0KQEAgLTY4 Miw3ICs2ODIsNyBAQCBzdGF0aWMgaW50IG1zbV9pb2N0bF9nZW1fY3B1X2Zpbmkoc3RydWN0IGRy bV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKIAogCXJldCA9IG1zbV9nZW1fY3B1X2Zpbmkob2Jq KTsKIAotCWRybV9nZW1fb2JqZWN0X3VucmVmZXJlbmNlX3VubG9ja2VkKG9iaik7CisJZHJtX2dl bV9vYmplY3RfcHV0X3VubG9ja2VkKG9iaik7CiAKIAlyZXR1cm4gcmV0OwogfQpAQCAtNzIyLDcg KzcyMiw3IEBAIHN0YXRpYyBpbnQgbXNtX2lvY3RsX2dlbV9pbmZvKHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYsIHZvaWQgKmRhdGEsCiAJCWFyZ3MtPm9mZnNldCA9IG1zbV9nZW1fbW1hcF9vZmZzZXQo b2JqKTsKIAl9CiAKLQlkcm1fZ2VtX29iamVjdF91bnJlZmVyZW5jZV91bmxvY2tlZChvYmopOwor CWRybV9nZW1fb2JqZWN0X3B1dF91bmxvY2tlZChvYmopOwogCiAJcmV0dXJuIHJldDsKIH0KQEAg LTc3Niw3ICs3NzYsNyBAQCBzdGF0aWMgaW50IG1zbV9pb2N0bF9nZW1fbWFkdmlzZShzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAogCQlyZXQgPSAwOwogCX0KIAotCWRybV9nZW1f b2JqZWN0X3VucmVmZXJlbmNlKG9iaik7CisJZHJtX2dlbV9vYmplY3RfcHV0KG9iaik7CiAKIHVu bG9jazoKIAltdXRleF91bmxvY2soJmRldi0+c3RydWN0X211dGV4KTsKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9tc20vbXNtX2ZiLmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9mYi5j CmluZGV4IDZlY2I3YjEuLjBhMmI0YmIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20v bXNtX2ZiLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZmIuYwpAQCAtNTAsNyArNTAs NyBAQCBzdGF0aWMgdm9pZCBtc21fZnJhbWVidWZmZXJfZGVzdHJveShzdHJ1Y3QgZHJtX2ZyYW1l YnVmZmVyICpmYikKIAlmb3IgKGkgPSAwOyBpIDwgbjsgaSsrKSB7CiAJCXN0cnVjdCBkcm1fZ2Vt X29iamVjdCAqYm8gPSBtc21fZmItPnBsYW5lc1tpXTsKIAotCQlkcm1fZ2VtX29iamVjdF91bnJl ZmVyZW5jZV91bmxvY2tlZChibyk7CisJCWRybV9nZW1fb2JqZWN0X3B1dF91bmxvY2tlZChibyk7 CiAJfQogCiAJa2ZyZWUobXNtX2ZiKTsKQEAgLTE1Nyw3ICsxNTcsNyBAQCBzdHJ1Y3QgZHJtX2Zy YW1lYnVmZmVyICptc21fZnJhbWVidWZmZXJfY3JlYXRlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYs CiAKIG91dF91bnJlZjoKIAlmb3IgKGkgPSAwOyBpIDwgbjsgaSsrKQotCQlkcm1fZ2VtX29iamVj dF91bnJlZmVyZW5jZV91bmxvY2tlZChib3NbaV0pOworCQlkcm1fZ2VtX29iamVjdF9wdXRfdW5s b2NrZWQoYm9zW2ldKTsKIAlyZXR1cm4gRVJSX1BUUihyZXQpOwogfQogCmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vbXNtL21zbV9mYmRldi5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tc21f ZmJkZXYuYwppbmRleCA5YzAwZmVkLi5kOTU5MDY0IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vbXNtL21zbV9mYmRldi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2ZiZGV2LmMK QEAgLTExMiw3ICsxMTIsNyBAQCBzdGF0aWMgaW50IG1zbV9mYmRldl9jcmVhdGUoc3RydWN0IGRy bV9mYl9oZWxwZXIgKmhlbHBlciwKIAkJLyogbm90ZTogaWYgZmIgY3JlYXRpb24gZmFpbGVkLCB3 ZSBjYW4ndCByZWx5IG9uIGZiIGRlc3Ryb3kKIAkJICogdG8gdW5yZWYgdGhlIGJvOgogCQkgKi8K LQkJZHJtX2dlbV9vYmplY3RfdW5yZWZlcmVuY2VfdW5sb2NrZWQoZmJkZXYtPmJvKTsKKwkJZHJt X2dlbV9vYmplY3RfcHV0X3VubG9ja2VkKGZiZGV2LT5ibyk7CiAJCXJldCA9IFBUUl9FUlIoZmIp OwogCQlnb3RvIGZhaWw7CiAJfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9tc21f Z2VtLmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9nZW0uYwppbmRleCA2NWYzNTU0Li45OGRi ZjIyIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9nZW0uYworKysgYi9kcml2 ZXJzL2dwdS9kcm0vbXNtL21zbV9nZW0uYwpAQCAtNDYyLDcgKzQ2Miw3IEBAIGludCBtc21fZ2Vt X2R1bWJfbWFwX29mZnNldChzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUsIHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYsCiAKIAkqb2Zmc2V0ID0gbXNtX2dlbV9tbWFwX29mZnNldChvYmopOwogCi0JZHJtX2dl bV9vYmplY3RfdW5yZWZlcmVuY2VfdW5sb2NrZWQob2JqKTsKKwlkcm1fZ2VtX29iamVjdF9wdXRf dW5sb2NrZWQob2JqKTsKIAogZmFpbDoKIAlyZXR1cm4gcmV0OwpAQCAtODM5LDcgKzgzOSw3IEBA IGludCBtc21fZ2VtX25ld19oYW5kbGUoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGRy bV9maWxlICpmaWxlLAogCXJldCA9IGRybV9nZW1faGFuZGxlX2NyZWF0ZShmaWxlLCBvYmosIGhh bmRsZSk7CiAKIAkvKiBkcm9wIHJlZmVyZW5jZSBmcm9tIGFsbG9jYXRlIC0gaGFuZGxlIGhvbGRz IGl0IG5vdyAqLwotCWRybV9nZW1fb2JqZWN0X3VucmVmZXJlbmNlX3VubG9ja2VkKG9iaik7CisJ ZHJtX2dlbV9vYmplY3RfcHV0X3VubG9ja2VkKG9iaik7CiAKIAlyZXR1cm4gcmV0OwogfQpAQCAt OTU1LDcgKzk1NSw3IEBAIHN0YXRpYyBzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKl9tc21fZ2VtX25l dyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCXJldHVybiBvYmo7CiAKIGZhaWw6Ci0JZHJtX2dl bV9vYmplY3RfdW5yZWZlcmVuY2VfdW5sb2NrZWQob2JqKTsKKwlkcm1fZ2VtX29iamVjdF9wdXRf dW5sb2NrZWQob2JqKTsKIAlyZXR1cm4gRVJSX1BUUihyZXQpOwogfQogCkBAIC0xMDE1LDYgKzEw MTUsNiBAQCBzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKm1zbV9nZW1faW1wb3J0KHN0cnVjdCBkcm1f ZGV2aWNlICpkZXYsCiAJcmV0dXJuIG9iajsKIAogZmFpbDoKLQlkcm1fZ2VtX29iamVjdF91bnJl ZmVyZW5jZV91bmxvY2tlZChvYmopOworCWRybV9nZW1fb2JqZWN0X3B1dF91bmxvY2tlZChvYmop OwogCXJldHVybiBFUlJfUFRSKHJldCk7CiB9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v bXNtL21zbV9nZW1fc3VibWl0LmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9nZW1fc3VibWl0 LmMKaW5kZXggNmJmY2E3NC4uNTk5ODJjZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21z bS9tc21fZ2VtX3N1Ym1pdC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2dlbV9zdWJt aXQuYwpAQCAtMTM5LDcgKzEzOSw3IEBAIHN0YXRpYyBpbnQgc3VibWl0X2xvb2t1cF9vYmplY3Rz KHN0cnVjdCBtc21fZ2VtX3N1Ym1pdCAqc3VibWl0LAogCQkJZ290byBvdXRfdW5sb2NrOwogCQl9 CiAKLQkJZHJtX2dlbV9vYmplY3RfcmVmZXJlbmNlKG9iaik7CisJCWRybV9nZW1fb2JqZWN0X2dl dChvYmopOwogCiAJCXN1Ym1pdC0+Ym9zW2ldLm9iaiA9IG1zbV9vYmo7CiAKQEAgLTM3NSw3ICsz NzUsNyBAQCBzdGF0aWMgdm9pZCBzdWJtaXRfY2xlYW51cChzdHJ1Y3QgbXNtX2dlbV9zdWJtaXQg KnN1Ym1pdCkKIAkJc3RydWN0IG1zbV9nZW1fb2JqZWN0ICptc21fb2JqID0gc3VibWl0LT5ib3Nb aV0ub2JqOwogCQlzdWJtaXRfdW5sb2NrX3VucGluX2JvKHN1Ym1pdCwgaSk7CiAJCWxpc3RfZGVs X2luaXQoJm1zbV9vYmotPnN1Ym1pdF9lbnRyeSk7Ci0JCWRybV9nZW1fb2JqZWN0X3VucmVmZXJl bmNlKCZtc21fb2JqLT5iYXNlKTsKKwkJZHJtX2dlbV9vYmplY3RfcHV0KCZtc21fb2JqLT5iYXNl KTsKIAl9CiAKIAl3d19hY3F1aXJlX2ZpbmkoJnN1Ym1pdC0+dGlja2V0KTsKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2dwdS5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tc21f Z3B1LmMKaW5kZXggOWYzZGJjMi4uMGQ3YzU4YiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJt L21zbS9tc21fZ3B1LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fZ3B1LmMKQEAgLTQx Nyw3ICs0MTcsNyBAQCBzdGF0aWMgdm9pZCByZXRpcmVfc3VibWl0KHN0cnVjdCBtc21fZ3B1ICpn cHUsIHN0cnVjdCBtc21fZ2VtX3N1Ym1pdCAqc3VibWl0KQogCQkvKiBtb3ZlIHRvIGluYWN0aXZl OiAqLwogCQltc21fZ2VtX21vdmVfdG9faW5hY3RpdmUoJm1zbV9vYmotPmJhc2UpOwogCQltc21f Z2VtX3B1dF9pb3ZhKCZtc21fb2JqLT5iYXNlLCBncHUtPmFzcGFjZSk7Ci0JCWRybV9nZW1fb2Jq ZWN0X3VucmVmZXJlbmNlKCZtc21fb2JqLT5iYXNlKTsKKwkJZHJtX2dlbV9vYmplY3RfcHV0KCZt c21fb2JqLT5iYXNlKTsKIAl9CiAKIAlwbV9ydW50aW1lX21hcmtfbGFzdF9idXN5KCZncHUtPnBk ZXYtPmRldik7CkBAIC00OTYsNyArNDk2LDcgQEAgdm9pZCBtc21fZ3B1X3N1Ym1pdChzdHJ1Y3Qg bXNtX2dwdSAqZ3B1LCBzdHJ1Y3QgbXNtX2dlbV9zdWJtaXQgKnN1Ym1pdCwKIAkJV0FSTl9PTihp c19hY3RpdmUobXNtX29iaikgJiYgKG1zbV9vYmotPmdwdSAhPSBncHUpKTsKIAogCQkvKiBzdWJt aXQgdGFrZXMgYSByZWZlcmVuY2UgdG8gdGhlIGJvIGFuZCBpb3ZhIHVudGlsIHJldGlyZWQ6ICov Ci0JCWRybV9nZW1fb2JqZWN0X3JlZmVyZW5jZSgmbXNtX29iai0+YmFzZSk7CisJCWRybV9nZW1f b2JqZWN0X2dldCgmbXNtX29iai0+YmFzZSk7CiAJCW1zbV9nZW1fZ2V0X2lvdmEoJm1zbV9vYmot PmJhc2UsCiAJCQkJc3VibWl0LT5ncHUtPmFzcGFjZSwgJmlvdmEpOwogCmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vbXNtL21zbV9yaW5nYnVmZmVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNt L21zbV9yaW5nYnVmZmVyLmMKaW5kZXggNzkxYmNhMy4uMmJhOTc4YiAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL21zbS9tc21fcmluZ2J1ZmZlci5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9t c20vbXNtX3JpbmdidWZmZXIuYwpAQCAtNjIsNyArNjIsNyBAQCB2b2lkIG1zbV9yaW5nYnVmZmVy X2Rlc3Ryb3koc3RydWN0IG1zbV9yaW5nYnVmZmVyICpyaW5nKQogewogCWlmIChyaW5nLT5ibykg ewogCQltc21fZ2VtX3B1dF92YWRkcihyaW5nLT5ibyk7Ci0JCWRybV9nZW1fb2JqZWN0X3VucmVm ZXJlbmNlX3VubG9ja2VkKHJpbmctPmJvKTsKKwkJZHJtX2dlbV9vYmplY3RfcHV0X3VubG9ja2Vk KHJpbmctPmJvKTsKIAl9CiAJa2ZyZWUocmluZyk7CiB9Ci0tIAoyLjcuNAoKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KRnJlZWRyZW5vIG1haWxpbmcgbGlz dApGcmVlZHJlbm9AbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0 b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZnJlZWRyZW5vCg==