From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lyude Paul Subject: [PATCH v7 05/20] drm/dp_mst: Rename drm_dp_mst_get_validated_(port|mstb)_ref and friends Date: Thu, 10 Jan 2019 19:53:28 -0500 Message-ID: <20190111005343.17443-6-lyude@redhat.com> References: <20190111005343.17443-1-lyude@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190111005343.17443-1-lyude-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: nouveau-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Nouveau" To: dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, intel-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: Jerry Zuo , Daniel Vetter , David Airlie , Harry Wentland , Juston Li List-Id: dri-devel@lists.freedesktop.org cy9kcm1fZHBfZ2V0X3ZhbGlkYXRlZF9wb3J0X3JlZi9kcm1fZHBfbXN0X3RvcG9sb2d5X2dldF9w b3J0X3ZhbGlkYXRlZC8Kcy9kcm1fZHBfcHV0X3BvcnQvZHJtX2RwX21zdF90b3BvbG9neV9wdXRf cG9ydC8Kcy9kcm1fZHBfZ2V0X3ZhbGlkYXRlZF9tc3RiX3JlZi9kcm1fZHBfbXN0X3RvcG9sb2d5 X2dldF9tc3RiX3ZhbGlkYXRlZC8Kcy9kcm1fZHBfcHV0X21zdF9icmFuY2hfZGV2aWNlL2RybV9k cF9tc3RfdG9wb2xvZ3lfcHV0X21zdGIvCgpUaGlzIGlzIGEgbXVjaCBtb3JlIGNvbnNpc3RlbnQg bmFtaW5nIHNjaGVtZSwgYW5kIHdpbGwgbWFrZSBldmVuIG1vcmUKc2Vuc2Ugb25jZSB3ZSByZWRl c2lnbiBob3cgdGhlIGN1cnJlbnQgcmVmY291bnRpbmcgc2NoZW1lIGhlcmUgd29ya3MuCgpTaWdu ZWQtb2ZmLWJ5OiBMeXVkZSBQYXVsIDxseXVkZUByZWRoYXQuY29tPgpSZXZpZXdlZC1ieTogRGFu aWVsIFZldHRlciA8ZGFuaWVsQGZmd2xsLmNoPgpSZXZpZXdlZC1ieTogSGFycnkgV2VudGxhbmQg PGhhcnJ5LndlbnRsYW5kQGFtZC5jb20+CkNjOiBEYXZpZCBBaXJsaWUgPGFpcmxpZWRAcmVkaGF0 LmNvbT4KQ2M6IEplcnJ5IFp1byA8SmVycnkuWnVvQGFtZC5jb20+CkNjOiBKdXN0b24gTGkgPGp1 c3Rvbi5saUBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2RybV9kcF9tc3RfdG9wb2xv Z3kuYyB8IDExNCArKysrKysrKysrKysrKy0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDYy IGluc2VydGlvbnMoKyksIDUyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9kcm1fZHBfbXN0X3RvcG9sb2d5LmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2RwX21zdF90 b3BvbG9neS5jCmluZGV4IDc1Y2NhNmE4NDNmYi4uMDc0ZTk4NTA5M2NhIDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vZHJtX2RwX21zdF90b3BvbG9neS5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9kcm1fZHBfbXN0X3RvcG9sb2d5LmMKQEAgLTQ2LDcgKzQ2LDcgQEAgc3RhdGljIGJvb2wgZHVt cF9kcF9wYXlsb2FkX3RhYmxlKHN0cnVjdCBkcm1fZHBfbXN0X3RvcG9sb2d5X21nciAqbWdyLAog CQkJCSAgY2hhciAqYnVmKTsKIHN0YXRpYyBpbnQgdGVzdF9jYWxjX3Bibl9tb2RlKHZvaWQpOwog Ci1zdGF0aWMgdm9pZCBkcm1fZHBfcHV0X3BvcnQoc3RydWN0IGRybV9kcF9tc3RfcG9ydCAqcG9y dCk7CitzdGF0aWMgdm9pZCBkcm1fZHBfbXN0X3RvcG9sb2d5X3B1dF9wb3J0KHN0cnVjdCBkcm1f ZHBfbXN0X3BvcnQgKnBvcnQpOwogCiBzdGF0aWMgaW50IGRybV9kcF9kcGNkX3dyaXRlX3BheWxv YWQoc3RydWN0IGRybV9kcF9tc3RfdG9wb2xvZ3lfbWdyICptZ3IsCiAJCQkJICAgICBpbnQgaWQs CkBAIC04ODgsNyArODg4LDcgQEAgc3RhdGljIHZvaWQgZHJtX2RwX2Rlc3Ryb3lfbXN0X2JyYW5j aF9kZXZpY2Uoc3RydWN0IGtyZWYgKmtyZWYpCiAJICovCiAJbGlzdF9mb3JfZWFjaF9lbnRyeV9z YWZlKHBvcnQsIHRtcCwgJm1zdGItPnBvcnRzLCBuZXh0KSB7CiAJCWxpc3RfZGVsKCZwb3J0LT5u ZXh0KTsKLQkJZHJtX2RwX3B1dF9wb3J0KHBvcnQpOworCQlkcm1fZHBfbXN0X3RvcG9sb2d5X3B1 dF9wb3J0KHBvcnQpOwogCX0KIAogCS8qIGRyb3AgYW55IHR4IHNsb3RzIG1zZyAqLwpAQCAtOTEx LDcgKzkxMSw3IEBAIHN0YXRpYyB2b2lkIGRybV9kcF9kZXN0cm95X21zdF9icmFuY2hfZGV2aWNl KHN0cnVjdCBrcmVmICprcmVmKQogCWtyZWZfcHV0KGtyZWYsIGRybV9kcF9mcmVlX21zdF9icmFu Y2hfZGV2aWNlKTsKIH0KIAotc3RhdGljIHZvaWQgZHJtX2RwX3B1dF9tc3RfYnJhbmNoX2Rldmlj ZShzdHJ1Y3QgZHJtX2RwX21zdF9icmFuY2ggKm1zdGIpCitzdGF0aWMgdm9pZCBkcm1fZHBfbXN0 X3RvcG9sb2d5X3B1dF9tc3RiKHN0cnVjdCBkcm1fZHBfbXN0X2JyYW5jaCAqbXN0YikKIHsKIAlr cmVmX3B1dCgmbXN0Yi0+a3JlZiwgZHJtX2RwX2Rlc3Ryb3lfbXN0X2JyYW5jaF9kZXZpY2UpOwog fQpAQCAtOTMwLDcgKzkzMCw3IEBAIHN0YXRpYyB2b2lkIGRybV9kcF9wb3J0X3RlYXJkb3duX3Bk dChzdHJ1Y3QgZHJtX2RwX21zdF9wb3J0ICpwb3J0LCBpbnQgb2xkX3BkdCkKIAljYXNlIERQX1BF RVJfREVWSUNFX01TVF9CUkFOQ0hJTkc6CiAJCW1zdGIgPSBwb3J0LT5tc3RiOwogCQlwb3J0LT5t c3RiID0gTlVMTDsKLQkJZHJtX2RwX3B1dF9tc3RfYnJhbmNoX2RldmljZShtc3RiKTsKKwkJZHJt X2RwX21zdF90b3BvbG9neV9wdXRfbXN0Yihtc3RiKTsKIAkJYnJlYWs7CiAJfQogfQpAQCAtOTcw LDEyICs5NzAsMTQgQEAgc3RhdGljIHZvaWQgZHJtX2RwX2Rlc3Ryb3lfcG9ydChzdHJ1Y3Qga3Jl ZiAqa3JlZikKIAlrZnJlZShwb3J0KTsKIH0KIAotc3RhdGljIHZvaWQgZHJtX2RwX3B1dF9wb3J0 KHN0cnVjdCBkcm1fZHBfbXN0X3BvcnQgKnBvcnQpCitzdGF0aWMgdm9pZCBkcm1fZHBfbXN0X3Rv cG9sb2d5X3B1dF9wb3J0KHN0cnVjdCBkcm1fZHBfbXN0X3BvcnQgKnBvcnQpCiB7CiAJa3JlZl9w dXQoJnBvcnQtPmtyZWYsIGRybV9kcF9kZXN0cm95X3BvcnQpOwogfQogCi1zdGF0aWMgc3RydWN0 IGRybV9kcF9tc3RfYnJhbmNoICpkcm1fZHBfbXN0X2dldF92YWxpZGF0ZWRfbXN0Yl9yZWZfbG9j a2VkKHN0cnVjdCBkcm1fZHBfbXN0X2JyYW5jaCAqbXN0Yiwgc3RydWN0IGRybV9kcF9tc3RfYnJh bmNoICp0b19maW5kKQorc3RhdGljIHN0cnVjdCBkcm1fZHBfbXN0X2JyYW5jaCAqCitkcm1fZHBf bXN0X3RvcG9sb2d5X2dldF9tc3RiX3ZhbGlkYXRlZF9sb2NrZWQoc3RydWN0IGRybV9kcF9tc3Rf YnJhbmNoICptc3RiLAorCQkJCQkgICAgICBzdHJ1Y3QgZHJtX2RwX21zdF9icmFuY2ggKnRvX2Zp bmQpCiB7CiAJc3RydWN0IGRybV9kcF9tc3RfcG9ydCAqcG9ydDsKIAlzdHJ1Y3QgZHJtX2RwX21z dF9icmFuY2ggKnJtc3RiOwpAQCAtOTg1LDcgKzk4Nyw4IEBAIHN0YXRpYyBzdHJ1Y3QgZHJtX2Rw X21zdF9icmFuY2ggKmRybV9kcF9tc3RfZ2V0X3ZhbGlkYXRlZF9tc3RiX3JlZl9sb2NrZWQoc3Ry dWN0CiAJfQogCWxpc3RfZm9yX2VhY2hfZW50cnkocG9ydCwgJm1zdGItPnBvcnRzLCBuZXh0KSB7 CiAJCWlmIChwb3J0LT5tc3RiKSB7Ci0JCQlybXN0YiA9IGRybV9kcF9tc3RfZ2V0X3ZhbGlkYXRl ZF9tc3RiX3JlZl9sb2NrZWQocG9ydC0+bXN0YiwgdG9fZmluZCk7CisJCQlybXN0YiA9IGRybV9k cF9tc3RfdG9wb2xvZ3lfZ2V0X21zdGJfdmFsaWRhdGVkX2xvY2tlZCgKKwkJCSAgICBwb3J0LT5t c3RiLCB0b19maW5kKTsKIAkJCWlmIChybXN0YikKIAkJCQlyZXR1cm4gcm1zdGI7CiAJCX0KQEAg LTk5MywxMiArOTk2LDE1IEBAIHN0YXRpYyBzdHJ1Y3QgZHJtX2RwX21zdF9icmFuY2ggKmRybV9k cF9tc3RfZ2V0X3ZhbGlkYXRlZF9tc3RiX3JlZl9sb2NrZWQoc3RydWN0CiAJcmV0dXJuIE5VTEw7 CiB9CiAKLXN0YXRpYyBzdHJ1Y3QgZHJtX2RwX21zdF9icmFuY2ggKmRybV9kcF9nZXRfdmFsaWRh dGVkX21zdGJfcmVmKHN0cnVjdCBkcm1fZHBfbXN0X3RvcG9sb2d5X21nciAqbWdyLCBzdHJ1Y3Qg ZHJtX2RwX21zdF9icmFuY2ggKm1zdGIpCitzdGF0aWMgc3RydWN0IGRybV9kcF9tc3RfYnJhbmNo ICoKK2RybV9kcF9tc3RfdG9wb2xvZ3lfZ2V0X21zdGJfdmFsaWRhdGVkKHN0cnVjdCBkcm1fZHBf bXN0X3RvcG9sb2d5X21nciAqbWdyLAorCQkJCSAgICAgICBzdHJ1Y3QgZHJtX2RwX21zdF9icmFu Y2ggKm1zdGIpCiB7CiAJc3RydWN0IGRybV9kcF9tc3RfYnJhbmNoICpybXN0YiA9IE5VTEw7CiAJ bXV0ZXhfbG9jaygmbWdyLT5sb2NrKTsKIAlpZiAobWdyLT5tc3RfcHJpbWFyeSkKLQkJcm1zdGIg PSBkcm1fZHBfbXN0X2dldF92YWxpZGF0ZWRfbXN0Yl9yZWZfbG9ja2VkKG1nci0+bXN0X3ByaW1h cnksIG1zdGIpOworCQlybXN0YiA9IGRybV9kcF9tc3RfdG9wb2xvZ3lfZ2V0X21zdGJfdmFsaWRh dGVkX2xvY2tlZCgKKwkJICAgIG1nci0+bXN0X3ByaW1hcnksIG1zdGIpOwogCW11dGV4X3VubG9j aygmbWdyLT5sb2NrKTsKIAlyZXR1cm4gcm1zdGI7CiB9CkBAIC0xMDIxLDcgKzEwMjcsOSBAQCBz dGF0aWMgc3RydWN0IGRybV9kcF9tc3RfcG9ydCAqZHJtX2RwX21zdF9nZXRfcG9ydF9yZWZfbG9j a2VkKHN0cnVjdCBkcm1fZHBfbXN0XwogCXJldHVybiBOVUxMOwogfQogCi1zdGF0aWMgc3RydWN0 IGRybV9kcF9tc3RfcG9ydCAqZHJtX2RwX2dldF92YWxpZGF0ZWRfcG9ydF9yZWYoc3RydWN0IGRy bV9kcF9tc3RfdG9wb2xvZ3lfbWdyICptZ3IsIHN0cnVjdCBkcm1fZHBfbXN0X3BvcnQgKnBvcnQp CitzdGF0aWMgc3RydWN0IGRybV9kcF9tc3RfcG9ydCAqCitkcm1fZHBfbXN0X3RvcG9sb2d5X2dl dF9wb3J0X3ZhbGlkYXRlZChzdHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9neV9tZ3IgKm1nciwKKwkJ CQkgICAgICAgc3RydWN0IGRybV9kcF9tc3RfcG9ydCAqcG9ydCkKIHsKIAlzdHJ1Y3QgZHJtX2Rw X21zdF9wb3J0ICpycG9ydCA9IE5VTEw7CiAJbXV0ZXhfbG9jaygmbWdyLT5sb2NrKTsKQEAgLTEy MTUsNyArMTIyMyw3IEBAIHN0YXRpYyB2b2lkIGRybV9kcF9hZGRfcG9ydChzdHJ1Y3QgZHJtX2Rw X21zdF9icmFuY2ggKm1zdGIsCiAJCQlsaXN0X2RlbCgmcG9ydC0+bmV4dCk7CiAJCQltdXRleF91 bmxvY2soJm1zdGItPm1nci0+bG9jayk7CiAJCQkvKiBkcm9wIHBvcnQgbGlzdCByZWZlcmVuY2Ug Ki8KLQkJCWRybV9kcF9wdXRfcG9ydChwb3J0KTsKKwkJCWRybV9kcF9tc3RfdG9wb2xvZ3lfcHV0 X3BvcnQocG9ydCk7CiAJCQlnb3RvIG91dDsKIAkJfQogCQlpZiAoKHBvcnQtPnBkdCA9PSBEUF9Q RUVSX0RFVklDRV9EUF9MRUdBQ1lfQ09OViB8fApAQCAtMTIzMCw3ICsxMjM4LDcgQEAgc3RhdGlj IHZvaWQgZHJtX2RwX2FkZF9wb3J0KHN0cnVjdCBkcm1fZHBfbXN0X2JyYW5jaCAqbXN0YiwKIAog b3V0OgogCS8qIHB1dCByZWZlcmVuY2UgdG8gdGhpcyBwb3J0ICovCi0JZHJtX2RwX3B1dF9wb3J0 KHBvcnQpOworCWRybV9kcF9tc3RfdG9wb2xvZ3lfcHV0X3BvcnQocG9ydCk7CiB9CiAKIHN0YXRp YyB2b2lkIGRybV9kcF91cGRhdGVfcG9ydChzdHJ1Y3QgZHJtX2RwX21zdF9icmFuY2ggKm1zdGIs CkBAIC0xMjY1LDcgKzEyNzMsNyBAQCBzdGF0aWMgdm9pZCBkcm1fZHBfdXBkYXRlX3BvcnQoc3Ry dWN0IGRybV9kcF9tc3RfYnJhbmNoICptc3RiLAogCQkJZG93b3JrID0gdHJ1ZTsKIAl9CiAKLQlk cm1fZHBfcHV0X3BvcnQocG9ydCk7CisJZHJtX2RwX21zdF90b3BvbG9neV9wdXRfcG9ydChwb3J0 KTsKIAlpZiAoZG93b3JrKQogCQlxdWV1ZV93b3JrKHN5c3RlbV9sb25nX3dxLCAmbXN0Yi0+bWdy LT53b3JrKTsKIApAQCAtMTM2OCwxMCArMTM3NiwxMSBAQCBzdGF0aWMgdm9pZCBkcm1fZHBfY2hl Y2tfYW5kX3NlbmRfbGlua19hZGRyZXNzKHN0cnVjdCBkcm1fZHBfbXN0X3RvcG9sb2d5X21nciAq bQogCQkJZHJtX2RwX3NlbmRfZW51bV9wYXRoX3Jlc291cmNlcyhtZ3IsIG1zdGIsIHBvcnQpOwog CiAJCWlmIChwb3J0LT5tc3RiKSB7Ci0JCQltc3RiX2NoaWxkID0gZHJtX2RwX2dldF92YWxpZGF0 ZWRfbXN0Yl9yZWYobWdyLCBwb3J0LT5tc3RiKTsKKwkJCW1zdGJfY2hpbGQgPSBkcm1fZHBfbXN0 X3RvcG9sb2d5X2dldF9tc3RiX3ZhbGlkYXRlZCgKKwkJCSAgICBtZ3IsIHBvcnQtPm1zdGIpOwog CQkJaWYgKG1zdGJfY2hpbGQpIHsKIAkJCQlkcm1fZHBfY2hlY2tfYW5kX3NlbmRfbGlua19hZGRy ZXNzKG1nciwgbXN0Yl9jaGlsZCk7Ci0JCQkJZHJtX2RwX3B1dF9tc3RfYnJhbmNoX2RldmljZSht c3RiX2NoaWxkKTsKKwkJCQlkcm1fZHBfbXN0X3RvcG9sb2d5X3B1dF9tc3RiKG1zdGJfY2hpbGQp OwogCQkJfQogCQl9CiAJfQpAQCAtMTM5MCw3ICsxMzk5LDcgQEAgc3RhdGljIHZvaWQgZHJtX2Rw X21zdF9saW5rX3Byb2JlX3dvcmsoc3RydWN0IHdvcmtfc3RydWN0ICp3b3JrKQogCW11dGV4X3Vu bG9jaygmbWdyLT5sb2NrKTsKIAlpZiAobXN0YikgewogCQlkcm1fZHBfY2hlY2tfYW5kX3NlbmRf bGlua19hZGRyZXNzKG1nciwgbXN0Yik7Ci0JCWRybV9kcF9wdXRfbXN0X2JyYW5jaF9kZXZpY2Uo bXN0Yik7CisJCWRybV9kcF9tc3RfdG9wb2xvZ3lfcHV0X21zdGIobXN0Yik7CiAJfQogfQogCkBA IC0xNzMyLDE5ICsxNzQxLDE5IEBAIHN0YXRpYyBpbnQgZHJtX2RwX3BheWxvYWRfc2VuZF9tc2co c3RydWN0IGRybV9kcF9tc3RfdG9wb2xvZ3lfbWdyICptZ3IsCiAJdTggc2lua3NbRFJNX0RQX01B WF9TRFBfU1RSRUFNU107CiAJaW50IGk7CiAKLQlwb3J0ID0gZHJtX2RwX2dldF92YWxpZGF0ZWRf cG9ydF9yZWYobWdyLCBwb3J0KTsKKwlwb3J0ID0gZHJtX2RwX21zdF90b3BvbG9neV9nZXRfcG9y dF92YWxpZGF0ZWQobWdyLCBwb3J0KTsKIAlpZiAoIXBvcnQpCiAJCXJldHVybiAtRUlOVkFMOwog CiAJcG9ydF9udW0gPSBwb3J0LT5wb3J0X251bTsKLQltc3RiID0gZHJtX2RwX2dldF92YWxpZGF0 ZWRfbXN0Yl9yZWYobWdyLCBwb3J0LT5wYXJlbnQpOworCW1zdGIgPSBkcm1fZHBfbXN0X3RvcG9s b2d5X2dldF9tc3RiX3ZhbGlkYXRlZChtZ3IsIHBvcnQtPnBhcmVudCk7CiAJaWYgKCFtc3RiKSB7 CiAJCW1zdGIgPSBkcm1fZHBfZ2V0X2xhc3RfY29ubmVjdGVkX3BvcnRfYW5kX21zdGIobWdyLAog CQkJCQkJCSAgICAgICBwb3J0LT5wYXJlbnQsCiAJCQkJCQkJICAgICAgICZwb3J0X251bSk7CiAK IAkJaWYgKCFtc3RiKSB7Ci0JCQlkcm1fZHBfcHV0X3BvcnQocG9ydCk7CisJCQlkcm1fZHBfbXN0 X3RvcG9sb2d5X3B1dF9wb3J0KHBvcnQpOwogCQkJcmV0dXJuIC1FSU5WQUw7CiAJCX0KIAl9CkBA IC0xNzc0LDggKzE3ODMsOCBAQCBzdGF0aWMgaW50IGRybV9kcF9wYXlsb2FkX3NlbmRfbXNnKHN0 cnVjdCBkcm1fZHBfbXN0X3RvcG9sb2d5X21nciAqbWdyLAogCX0KIAlrZnJlZSh0eG1zZyk7CiBm YWlsX3B1dDoKLQlkcm1fZHBfcHV0X21zdF9icmFuY2hfZGV2aWNlKG1zdGIpOwotCWRybV9kcF9w dXRfcG9ydChwb3J0KTsKKwlkcm1fZHBfbXN0X3RvcG9sb2d5X3B1dF9tc3RiKG1zdGIpOworCWRy bV9kcF9tc3RfdG9wb2xvZ3lfcHV0X3BvcnQocG9ydCk7CiAJcmV0dXJuIHJldDsKIH0KIApAQCAt MTc4NSwxMyArMTc5NCwxMyBAQCBpbnQgZHJtX2RwX3NlbmRfcG93ZXJfdXBkb3duX3BoeShzdHJ1 Y3QgZHJtX2RwX21zdF90b3BvbG9neV9tZ3IgKm1nciwKIAlzdHJ1Y3QgZHJtX2RwX3NpZGViYW5k X21zZ190eCAqdHhtc2c7CiAJaW50IGxlbiwgcmV0OwogCi0JcG9ydCA9IGRybV9kcF9nZXRfdmFs aWRhdGVkX3BvcnRfcmVmKG1nciwgcG9ydCk7CisJcG9ydCA9IGRybV9kcF9tc3RfdG9wb2xvZ3lf Z2V0X3BvcnRfdmFsaWRhdGVkKG1nciwgcG9ydCk7CiAJaWYgKCFwb3J0KQogCQlyZXR1cm4gLUVJ TlZBTDsKIAogCXR4bXNnID0ga3phbGxvYyhzaXplb2YoKnR4bXNnKSwgR0ZQX0tFUk5FTCk7CiAJ aWYgKCF0eG1zZykgewotCQlkcm1fZHBfcHV0X3BvcnQocG9ydCk7CisJCWRybV9kcF9tc3RfdG9w b2xvZ3lfcHV0X3BvcnQocG9ydCk7CiAJCXJldHVybiAtRU5PTUVNOwogCX0KIApAQCAtMTgwNyw3 ICsxODE2LDcgQEAgaW50IGRybV9kcF9zZW5kX3Bvd2VyX3VwZG93bl9waHkoc3RydWN0IGRybV9k cF9tc3RfdG9wb2xvZ3lfbWdyICptZ3IsCiAJCQlyZXQgPSAwOwogCX0KIAlrZnJlZSh0eG1zZyk7 Ci0JZHJtX2RwX3B1dF9wb3J0KHBvcnQpOworCWRybV9kcF9tc3RfdG9wb2xvZ3lfcHV0X3BvcnQo cG9ydCk7CiAKIAlyZXR1cm4gcmV0OwogfQpAQCAtMTg5Niw3ICsxOTA1LDggQEAgaW50IGRybV9k cF91cGRhdGVfcGF5bG9hZF9wYXJ0MShzdHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9neV9tZ3IgKm1n cikKIAkJaWYgKHZjcGkpIHsKIAkJCXBvcnQgPSBjb250YWluZXJfb2YodmNwaSwgc3RydWN0IGRy bV9kcF9tc3RfcG9ydCwKIAkJCQkJICAgIHZjcGkpOwotCQkJcG9ydCA9IGRybV9kcF9nZXRfdmFs aWRhdGVkX3BvcnRfcmVmKG1nciwgcG9ydCk7CisJCQlwb3J0ID0gZHJtX2RwX21zdF90b3BvbG9n eV9nZXRfcG9ydF92YWxpZGF0ZWQobWdyLAorCQkJCQkJCQkgICAgICBwb3J0KTsKIAkJCWlmICgh cG9ydCkgewogCQkJCW11dGV4X3VubG9jaygmbWdyLT5wYXlsb2FkX2xvY2spOwogCQkJCXJldHVy biAtRUlOVkFMOwpAQCAtMTkzMyw3ICsxOTQzLDcgQEAgaW50IGRybV9kcF91cGRhdGVfcGF5bG9h ZF9wYXJ0MShzdHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9neV9tZ3IgKm1ncikKIAkJY3VyX3Nsb3Rz ICs9IHJlcV9wYXlsb2FkLm51bV9zbG90czsKIAogCQlpZiAocG9ydCkKLQkJCWRybV9kcF9wdXRf cG9ydChwb3J0KTsKKwkJCWRybV9kcF9tc3RfdG9wb2xvZ3lfcHV0X3BvcnQocG9ydCk7CiAJfQog CiAJZm9yIChpID0gMDsgaSA8IG1nci0+bWF4X3BheWxvYWRzOyBpKyspIHsKQEAgLTIwMzIsNyAr MjA0Miw3IEBAIHN0YXRpYyBpbnQgZHJtX2RwX3NlbmRfZHBjZF93cml0ZShzdHJ1Y3QgZHJtX2Rw X21zdF90b3BvbG9neV9tZ3IgKm1nciwKIAlzdHJ1Y3QgZHJtX2RwX3NpZGViYW5kX21zZ190eCAq dHhtc2c7CiAJc3RydWN0IGRybV9kcF9tc3RfYnJhbmNoICptc3RiOwogCi0JbXN0YiA9IGRybV9k cF9nZXRfdmFsaWRhdGVkX21zdGJfcmVmKG1nciwgcG9ydC0+cGFyZW50KTsKKwltc3RiID0gZHJt X2RwX21zdF90b3BvbG9neV9nZXRfbXN0Yl92YWxpZGF0ZWQobWdyLCBwb3J0LT5wYXJlbnQpOwog CWlmICghbXN0YikKIAkJcmV0dXJuIC1FSU5WQUw7CiAKQEAgLTIwNTYsNyArMjA2Niw3IEBAIHN0 YXRpYyBpbnQgZHJtX2RwX3NlbmRfZHBjZF93cml0ZShzdHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9n eV9tZ3IgKm1nciwKIAl9CiAJa2ZyZWUodHhtc2cpOwogZmFpbF9wdXQ6Ci0JZHJtX2RwX3B1dF9t c3RfYnJhbmNoX2RldmljZShtc3RiKTsKKwlkcm1fZHBfbXN0X3RvcG9sb2d5X3B1dF9tc3RiKG1z dGIpOwogCXJldHVybiByZXQ7CiB9CiAKQEAgLTIyMDAsNyArMjIxMCw3IEBAIGludCBkcm1fZHBf bXN0X3RvcG9sb2d5X21ncl9zZXRfbXN0KHN0cnVjdCBkcm1fZHBfbXN0X3RvcG9sb2d5X21nciAq bWdyLCBib29sIG1zCiBvdXRfdW5sb2NrOgogCW11dGV4X3VubG9jaygmbWdyLT5sb2NrKTsKIAlp ZiAobXN0YikKLQkJZHJtX2RwX3B1dF9tc3RfYnJhbmNoX2RldmljZShtc3RiKTsKKwkJZHJtX2Rw X21zdF90b3BvbG9neV9wdXRfbXN0Yihtc3RiKTsKIAlyZXR1cm4gcmV0OwogCiB9CkBAIC0yMzY1 LDcgKzIzNzUsNyBAQCBzdGF0aWMgaW50IGRybV9kcF9tc3RfaGFuZGxlX2Rvd25fcmVwKHN0cnVj dCBkcm1fZHBfbXN0X3RvcG9sb2d5X21nciAqbWdyKQogCQkJICAgICAgIG1nci0+ZG93bl9yZXBf cmVjdi5pbml0aWFsX2hkci5sY3QsCiAJCQkJICAgICAgbWdyLT5kb3duX3JlcF9yZWN2LmluaXRp YWxfaGRyLnJhZFswXSwKIAkJCQkgICAgICBtZ3ItPmRvd25fcmVwX3JlY3YubXNnWzBdKTsKLQkJ CWRybV9kcF9wdXRfbXN0X2JyYW5jaF9kZXZpY2UobXN0Yik7CisJCQlkcm1fZHBfbXN0X3RvcG9s b2d5X3B1dF9tc3RiKG1zdGIpOwogCQkJbWVtc2V0KCZtZ3ItPmRvd25fcmVwX3JlY3YsIDAsIHNp emVvZihzdHJ1Y3QgZHJtX2RwX3NpZGViYW5kX21zZ19yeCkpOwogCQkJcmV0dXJuIDA7CiAJCX0K QEAgLTIzNzYsNyArMjM4Niw3IEBAIHN0YXRpYyBpbnQgZHJtX2RwX21zdF9oYW5kbGVfZG93bl9y ZXAoc3RydWN0IGRybV9kcF9tc3RfdG9wb2xvZ3lfbWdyICptZ3IpCiAJCX0KIAogCQltZW1zZXQo Jm1nci0+ZG93bl9yZXBfcmVjdiwgMCwgc2l6ZW9mKHN0cnVjdCBkcm1fZHBfc2lkZWJhbmRfbXNn X3J4KSk7Ci0JCWRybV9kcF9wdXRfbXN0X2JyYW5jaF9kZXZpY2UobXN0Yik7CisJCWRybV9kcF9t c3RfdG9wb2xvZ3lfcHV0X21zdGIobXN0Yik7CiAKIAkJbXV0ZXhfbG9jaygmbWdyLT5xbG9jayk7 CiAJCXR4bXNnLT5zdGF0ZSA9IERSTV9EUF9TSURFQkFORF9UWF9SWDsKQEAgLTI0NDksNyArMjQ1 OSw3IEBAIHN0YXRpYyBpbnQgZHJtX2RwX21zdF9oYW5kbGVfdXBfcmVxKHN0cnVjdCBkcm1fZHBf bXN0X3RvcG9sb2d5X21nciAqbWdyKQogCQl9CiAKIAkJaWYgKG1zdGIpCi0JCQlkcm1fZHBfcHV0 X21zdF9icmFuY2hfZGV2aWNlKG1zdGIpOworCQkJZHJtX2RwX21zdF90b3BvbG9neV9wdXRfbXN0 Yihtc3RiKTsKIAogCQltZW1zZXQoJm1nci0+dXBfcmVxX3JlY3YsIDAsIHNpemVvZihzdHJ1Y3Qg ZHJtX2RwX3NpZGViYW5kX21zZ19yeCkpOwogCX0KQEAgLTI1MDksNyArMjUxOSw3IEBAIGVudW0g ZHJtX2Nvbm5lY3Rvcl9zdGF0dXMgZHJtX2RwX21zdF9kZXRlY3RfcG9ydChzdHJ1Y3QgZHJtX2Nv bm5lY3RvciAqY29ubmVjdG9yCiAJZW51bSBkcm1fY29ubmVjdG9yX3N0YXR1cyBzdGF0dXMgPSBj b25uZWN0b3Jfc3RhdHVzX2Rpc2Nvbm5lY3RlZDsKIAogCS8qIHdlIG5lZWQgdG8gc2VhcmNoIGZv ciB0aGUgcG9ydCBpbiB0aGUgbWdyIGluIGNhc2UgaXRzIGdvbmUgKi8KLQlwb3J0ID0gZHJtX2Rw X2dldF92YWxpZGF0ZWRfcG9ydF9yZWYobWdyLCBwb3J0KTsKKwlwb3J0ID0gZHJtX2RwX21zdF90 b3BvbG9neV9nZXRfcG9ydF92YWxpZGF0ZWQobWdyLCBwb3J0KTsKIAlpZiAoIXBvcnQpCiAJCXJl dHVybiBjb25uZWN0b3Jfc3RhdHVzX2Rpc2Nvbm5lY3RlZDsKIApAQCAtMjUzNCw3ICsyNTQ0LDcg QEAgZW51bSBkcm1fY29ubmVjdG9yX3N0YXR1cyBkcm1fZHBfbXN0X2RldGVjdF9wb3J0KHN0cnVj dCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IKIAkJYnJlYWs7CiAJfQogb3V0OgotCWRybV9kcF9w dXRfcG9ydChwb3J0KTsKKwlkcm1fZHBfbXN0X3RvcG9sb2d5X3B1dF9wb3J0KHBvcnQpOwogCXJl dHVybiBzdGF0dXM7CiB9CiBFWFBPUlRfU1lNQk9MKGRybV9kcF9tc3RfZGV0ZWN0X3BvcnQpOwpA QCAtMjU1MSwxMSArMjU2MSwxMSBAQCBib29sIGRybV9kcF9tc3RfcG9ydF9oYXNfYXVkaW8oc3Ry dWN0IGRybV9kcF9tc3RfdG9wb2xvZ3lfbWdyICptZ3IsCiB7CiAJYm9vbCByZXQgPSBmYWxzZTsK IAotCXBvcnQgPSBkcm1fZHBfZ2V0X3ZhbGlkYXRlZF9wb3J0X3JlZihtZ3IsIHBvcnQpOworCXBv cnQgPSBkcm1fZHBfbXN0X3RvcG9sb2d5X2dldF9wb3J0X3ZhbGlkYXRlZChtZ3IsIHBvcnQpOwog CWlmICghcG9ydCkKIAkJcmV0dXJuIHJldDsKIAlyZXQgPSBwb3J0LT5oYXNfYXVkaW87Ci0JZHJt X2RwX3B1dF9wb3J0KHBvcnQpOworCWRybV9kcF9tc3RfdG9wb2xvZ3lfcHV0X3BvcnQocG9ydCk7 CiAJcmV0dXJuIHJldDsKIH0KIEVYUE9SVF9TWU1CT0woZHJtX2RwX21zdF9wb3J0X2hhc19hdWRp byk7CkBAIC0yNTc1LDcgKzI1ODUsNyBAQCBzdHJ1Y3QgZWRpZCAqZHJtX2RwX21zdF9nZXRfZWRp ZChzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLCBzdHJ1Y3QgZHJtX2RwXwogCXN0cnVj dCBlZGlkICplZGlkID0gTlVMTDsKIAogCS8qIHdlIG5lZWQgdG8gc2VhcmNoIGZvciB0aGUgcG9y dCBpbiB0aGUgbWdyIGluIGNhc2UgaXRzIGdvbmUgKi8KLQlwb3J0ID0gZHJtX2RwX2dldF92YWxp ZGF0ZWRfcG9ydF9yZWYobWdyLCBwb3J0KTsKKwlwb3J0ID0gZHJtX2RwX21zdF90b3BvbG9neV9n ZXRfcG9ydF92YWxpZGF0ZWQobWdyLCBwb3J0KTsKIAlpZiAoIXBvcnQpCiAJCXJldHVybiBOVUxM OwogCkBAIC0yNTg2LDcgKzI1OTYsNyBAQCBzdHJ1Y3QgZWRpZCAqZHJtX2RwX21zdF9nZXRfZWRp ZChzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLCBzdHJ1Y3QgZHJtX2RwXwogCQlkcm1f Y29ubmVjdG9yX3NldF90aWxlX3Byb3BlcnR5KGNvbm5lY3Rvcik7CiAJfQogCXBvcnQtPmhhc19h dWRpbyA9IGRybV9kZXRlY3RfbW9uaXRvcl9hdWRpbyhlZGlkKTsKLQlkcm1fZHBfcHV0X3BvcnQo cG9ydCk7CisJZHJtX2RwX21zdF90b3BvbG9neV9wdXRfcG9ydChwb3J0KTsKIAlyZXR1cm4gZWRp ZDsKIH0KIEVYUE9SVF9TWU1CT0woZHJtX2RwX21zdF9nZXRfZWRpZCk7CkBAIC0yNjU3LDcgKzI2 NjcsNyBAQCBpbnQgZHJtX2RwX2F0b21pY19maW5kX3ZjcGlfc2xvdHMoc3RydWN0IGRybV9hdG9t aWNfc3RhdGUgKnN0YXRlLAogCWlmIChJU19FUlIodG9wb2xvZ3lfc3RhdGUpKQogCQlyZXR1cm4g UFRSX0VSUih0b3BvbG9neV9zdGF0ZSk7CiAKLQlwb3J0ID0gZHJtX2RwX2dldF92YWxpZGF0ZWRf cG9ydF9yZWYobWdyLCBwb3J0KTsKKwlwb3J0ID0gZHJtX2RwX21zdF90b3BvbG9neV9nZXRfcG9y dF92YWxpZGF0ZWQobWdyLCBwb3J0KTsKIAlpZiAocG9ydCA9PSBOVUxMKQogCQlyZXR1cm4gLUVJ TlZBTDsKIAlyZXFfc2xvdHMgPSBESVZfUk9VTkRfVVAocGJuLCBtZ3ItPnBibl9kaXYpOwpAQCAt MjY2NSwxNCArMjY3NSwxNCBAQCBpbnQgZHJtX2RwX2F0b21pY19maW5kX3ZjcGlfc2xvdHMoc3Ry dWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlLAogCQkJcmVxX3Nsb3RzLCB0b3BvbG9neV9zdGF0 ZS0+YXZhaWxfc2xvdHMpOwogCiAJaWYgKHJlcV9zbG90cyA+IHRvcG9sb2d5X3N0YXRlLT5hdmFp bF9zbG90cykgewotCQlkcm1fZHBfcHV0X3BvcnQocG9ydCk7CisJCWRybV9kcF9tc3RfdG9wb2xv Z3lfcHV0X3BvcnQocG9ydCk7CiAJCXJldHVybiAtRU5PU1BDOwogCX0KIAogCXRvcG9sb2d5X3N0 YXRlLT5hdmFpbF9zbG90cyAtPSByZXFfc2xvdHM7CiAJRFJNX0RFQlVHX0tNUygidmNwaSBzbG90 cyBhdmFpbD0lZCIsIHRvcG9sb2d5X3N0YXRlLT5hdmFpbF9zbG90cyk7CiAKLQlkcm1fZHBfcHV0 X3BvcnQocG9ydCk7CisJZHJtX2RwX21zdF90b3BvbG9neV9wdXRfcG9ydChwb3J0KTsKIAlyZXR1 cm4gcmVxX3Nsb3RzOwogfQogRVhQT1JUX1NZTUJPTChkcm1fZHBfYXRvbWljX2ZpbmRfdmNwaV9z bG90cyk7CkBAIC0yNzIzLDcgKzI3MzMsNyBAQCBib29sIGRybV9kcF9tc3RfYWxsb2NhdGVfdmNw aShzdHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9neV9tZ3IgKm1nciwKIHsKIAlpbnQgcmV0OwogCi0J cG9ydCA9IGRybV9kcF9nZXRfdmFsaWRhdGVkX3BvcnRfcmVmKG1nciwgcG9ydCk7CisJcG9ydCA9 IGRybV9kcF9tc3RfdG9wb2xvZ3lfZ2V0X3BvcnRfdmFsaWRhdGVkKG1nciwgcG9ydCk7CiAJaWYg KCFwb3J0KQogCQlyZXR1cm4gZmFsc2U7CiAKQEAgLTI3MzQsNyArMjc0NCw3IEBAIGJvb2wgZHJt X2RwX21zdF9hbGxvY2F0ZV92Y3BpKHN0cnVjdCBkcm1fZHBfbXN0X3RvcG9sb2d5X21nciAqbWdy LAogCQlEUk1fREVCVUdfS01TKCJwYXlsb2FkOiB2Y3BpICVkIGFscmVhZHkgYWxsb2NhdGVkIGZv ciBwYm4gJWQgLSByZXF1ZXN0ZWQgcGJuICVkXG4iLAogCQkJICAgICAgcG9ydC0+dmNwaS52Y3Bp LCBwb3J0LT52Y3BpLnBibiwgcGJuKTsKIAkJaWYgKHBibiA9PSBwb3J0LT52Y3BpLnBibikgewot CQkJZHJtX2RwX3B1dF9wb3J0KHBvcnQpOworCQkJZHJtX2RwX21zdF90b3BvbG9neV9wdXRfcG9y dChwb3J0KTsKIAkJCXJldHVybiB0cnVlOwogCQl9CiAJfQpAQCAtMjc0OCw3ICsyNzU4LDcgQEAg Ym9vbCBkcm1fZHBfbXN0X2FsbG9jYXRlX3ZjcGkoc3RydWN0IGRybV9kcF9tc3RfdG9wb2xvZ3lf bWdyICptZ3IsCiAJRFJNX0RFQlVHX0tNUygiaW5pdGluZyB2Y3BpIGZvciBwYm49JWQgc2xvdHM9 JWRcbiIsCiAJCSAgICAgIHBibiwgcG9ydC0+dmNwaS5udW1fc2xvdHMpOwogCi0JZHJtX2RwX3B1 dF9wb3J0KHBvcnQpOworCWRybV9kcF9tc3RfdG9wb2xvZ3lfcHV0X3BvcnQocG9ydCk7CiAJcmV0 dXJuIHRydWU7CiBvdXQ6CiAJcmV0dXJuIGZhbHNlOwpAQCAtMjc1OCwxMiArMjc2OCwxMiBAQCBF WFBPUlRfU1lNQk9MKGRybV9kcF9tc3RfYWxsb2NhdGVfdmNwaSk7CiBpbnQgZHJtX2RwX21zdF9n ZXRfdmNwaV9zbG90cyhzdHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9neV9tZ3IgKm1nciwgc3RydWN0 IGRybV9kcF9tc3RfcG9ydCAqcG9ydCkKIHsKIAlpbnQgc2xvdHMgPSAwOwotCXBvcnQgPSBkcm1f ZHBfZ2V0X3ZhbGlkYXRlZF9wb3J0X3JlZihtZ3IsIHBvcnQpOworCXBvcnQgPSBkcm1fZHBfbXN0 X3RvcG9sb2d5X2dldF9wb3J0X3ZhbGlkYXRlZChtZ3IsIHBvcnQpOwogCWlmICghcG9ydCkKIAkJ cmV0dXJuIHNsb3RzOwogCiAJc2xvdHMgPSBwb3J0LT52Y3BpLm51bV9zbG90czsKLQlkcm1fZHBf cHV0X3BvcnQocG9ydCk7CisJZHJtX2RwX21zdF90b3BvbG9neV9wdXRfcG9ydChwb3J0KTsKIAly ZXR1cm4gc2xvdHM7CiB9CiBFWFBPUlRfU1lNQk9MKGRybV9kcF9tc3RfZ2V0X3ZjcGlfc2xvdHMp OwpAQCAtMjc3NywxMSArMjc4NywxMSBAQCBFWFBPUlRfU1lNQk9MKGRybV9kcF9tc3RfZ2V0X3Zj cGlfc2xvdHMpOwogICovCiB2b2lkIGRybV9kcF9tc3RfcmVzZXRfdmNwaV9zbG90cyhzdHJ1Y3Qg ZHJtX2RwX21zdF90b3BvbG9neV9tZ3IgKm1nciwgc3RydWN0IGRybV9kcF9tc3RfcG9ydCAqcG9y dCkKIHsKLQlwb3J0ID0gZHJtX2RwX2dldF92YWxpZGF0ZWRfcG9ydF9yZWYobWdyLCBwb3J0KTsK Kwlwb3J0ID0gZHJtX2RwX21zdF90b3BvbG9neV9nZXRfcG9ydF92YWxpZGF0ZWQobWdyLCBwb3J0 KTsKIAlpZiAoIXBvcnQpCiAJCXJldHVybjsKIAlwb3J0LT52Y3BpLm51bV9zbG90cyA9IDA7Ci0J ZHJtX2RwX3B1dF9wb3J0KHBvcnQpOworCWRybV9kcF9tc3RfdG9wb2xvZ3lfcHV0X3BvcnQocG9y dCk7CiB9CiBFWFBPUlRfU1lNQk9MKGRybV9kcF9tc3RfcmVzZXRfdmNwaV9zbG90cyk7CiAKQEAg LTI3OTMsNyArMjgwMyw3IEBAIEVYUE9SVF9TWU1CT0woZHJtX2RwX21zdF9yZXNldF92Y3BpX3Ns b3RzKTsKIHZvaWQgZHJtX2RwX21zdF9kZWFsbG9jYXRlX3ZjcGkoc3RydWN0IGRybV9kcF9tc3Rf dG9wb2xvZ3lfbWdyICptZ3IsCiAJCQkJc3RydWN0IGRybV9kcF9tc3RfcG9ydCAqcG9ydCkKIHsK LQlwb3J0ID0gZHJtX2RwX2dldF92YWxpZGF0ZWRfcG9ydF9yZWYobWdyLCBwb3J0KTsKKwlwb3J0 ID0gZHJtX2RwX21zdF90b3BvbG9neV9nZXRfcG9ydF92YWxpZGF0ZWQobWdyLCBwb3J0KTsKIAlp ZiAoIXBvcnQpCiAJCXJldHVybjsKIApAQCAtMjgwMiw3ICsyODEyLDcgQEAgdm9pZCBkcm1fZHBf bXN0X2RlYWxsb2NhdGVfdmNwaShzdHJ1Y3QgZHJtX2RwX21zdF90b3BvbG9neV9tZ3IgKm1nciwK IAlwb3J0LT52Y3BpLnBibiA9IDA7CiAJcG9ydC0+dmNwaS5hbGlnbmVkX3BibiA9IDA7CiAJcG9y dC0+dmNwaS52Y3BpID0gMDsKLQlkcm1fZHBfcHV0X3BvcnQocG9ydCk7CisJZHJtX2RwX21zdF90 b3BvbG9neV9wdXRfcG9ydChwb3J0KTsKIH0KIEVYUE9SVF9TWU1CT0woZHJtX2RwX21zdF9kZWFs bG9jYXRlX3ZjcGkpOwogCkBAIC0zMzAyLDcgKzMzMTIsNyBAQCBzdGF0aWMgaW50IGRybV9kcF9t c3RfaTJjX3hmZXIoc3RydWN0IGkyY19hZGFwdGVyICphZGFwdGVyLCBzdHJ1Y3QgaTJjX21zZyAq bXNncwogCXN0cnVjdCBkcm1fZHBfc2lkZWJhbmRfbXNnX3R4ICp0eG1zZyA9IE5VTEw7CiAJaW50 IHJldDsKIAotCW1zdGIgPSBkcm1fZHBfZ2V0X3ZhbGlkYXRlZF9tc3RiX3JlZihtZ3IsIHBvcnQt PnBhcmVudCk7CisJbXN0YiA9IGRybV9kcF9tc3RfdG9wb2xvZ3lfZ2V0X21zdGJfdmFsaWRhdGVk KG1nciwgcG9ydC0+cGFyZW50KTsKIAlpZiAoIW1zdGIpCiAJCXJldHVybiAtRVJFTU9URUlPOwog CkBAIC0zMzUyLDcgKzMzNjIsNyBAQCBzdGF0aWMgaW50IGRybV9kcF9tc3RfaTJjX3hmZXIoc3Ry dWN0IGkyY19hZGFwdGVyICphZGFwdGVyLCBzdHJ1Y3QgaTJjX21zZyAqbXNncwogCX0KIG91dDoK IAlrZnJlZSh0eG1zZyk7Ci0JZHJtX2RwX3B1dF9tc3RfYnJhbmNoX2RldmljZShtc3RiKTsKKwlk cm1fZHBfbXN0X3RvcG9sb2d5X3B1dF9tc3RiKG1zdGIpOwogCXJldHVybiByZXQ7CiB9CiAKLS0g CjIuMjAuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K Tm91dmVhdSBtYWlsaW5nIGxpc3QKTm91dmVhdUBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6 Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9ub3V2ZWF1Cg==