From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.7 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id C2BB0C2BC73 for ; Wed, 4 Dec 2019 18:06:05 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 9183720675 for ; Wed, 4 Dec 2019 18:06:05 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9183720675 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id CC8096F472; Wed, 4 Dec 2019 18:06:04 +0000 (UTC) Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by gabe.freedesktop.org (Postfix) with ESMTPS id 72B886F472 for ; Wed, 4 Dec 2019 18:06:00 +0000 (UTC) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga106.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 04 Dec 2019 10:05:59 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.69,278,1571727600"; d="scan'208";a="263026322" Received: from stinkbox.fi.intel.com (HELO stinkbox) ([10.237.72.174]) by FMSMGA003.fm.intel.com with SMTP; 04 Dec 2019 10:05:57 -0800 Received: by stinkbox (sSMTP sendmail emulation); Wed, 04 Dec 2019 20:05:56 +0200 From: Ville Syrjala To: intel-gfx@lists.freedesktop.org Date: Wed, 4 Dec 2019 20:05:42 +0200 Message-Id: <20191204180549.1267-3-ville.syrjala@linux.intel.com> X-Mailer: git-send-email 2.23.0 In-Reply-To: <20191204180549.1267-1-ville.syrjala@linux.intel.com> References: <20191204180549.1267-1-ville.syrjala@linux.intel.com> MIME-Version: 1.0 Subject: [Intel-gfx] [PATCH 2/9] drm/i915: Pass intel_connector to intel_attached_*() X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KCkxp ZmUgaXMgdXN1YWxseSBlYXNpZXIgd2hlbiB3ZSBwYXNzIGFyb3VuZCBpbnRlbF8gdHlwZXMgaW5z dGVhZApvZiBkcm1fIHR5cGVzLiBJbiB0aGlzIGNhc2UgaXQgbWlnaHQgbm90IGJlLCBidXQgSSB0 aGluayBiZWluZwpjb25zaXN0ZW50IGlzIGEgZ29vZCB0aGluZyBhbnl3YXkuIEFsc28gc29tZSBv ZiB0aGlzIG1pZ2h0IGdldApjbGVhbmVkIHVwIGEgYml0IG1vcmUgbGF0ZXIgYXMgd2Uga2VlcCBw cm9wYWdhdGluZyB0aGUgaW50ZWxfCnR5cGVzIGZ1cnRoZXIuCgpAZmluZEAKaWRlbnRpZmllciBG ID1+ICJeaW50ZWxfYXR0YWNoZWRfLioiOwppZGVudGlmaWVyIEM7CkBACkYoc3RydWN0IGRybV9j b25uZWN0b3IgKkMpCnsKLi4uCn0KCkBACmlkZW50aWZpZXIgZmluZC5GOwppZGVudGlmaWVyIGZp bmQuQzsKQEAKRigKLSBzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqQworIHN0cnVjdCBpbnRlbF9jb25u ZWN0b3IgKmNvbm5lY3RvcgogICkKewo8Li4uCi0gQworICZjb25uZWN0b3ItPmJhc2UKLi4uPgp9 CgpAQAppZGVudGlmaWVyIGZpbmQuRjsKZXhwcmVzc2lvbiBDOwpAQAotIEYoQykKKyBGKHRvX2lu dGVsX2Nvbm5lY3RvcihDKSkKCkBACmV4cHJlc3Npb24gQzsKQEAKLSB0b19pbnRlbF9jb25uZWN0 b3IoJkMtPmJhc2UpCisgQwoKU2lnbmVkLW9mZi1ieTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5z eXJqYWxhQGxpbnV4LmludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5 L2ludGVsX2NydC5jICAgICAgfCAxMiArKysrKy0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9k aXNwbGF5L2ludGVsX2Rpc3BsYXkuYyAgfCAgOCArKystLS0tCiAuLi4vZHJtL2k5MTUvZGlzcGxh eS9pbnRlbF9kaXNwbGF5X3R5cGVzLmggICAgfCAgNiArKy0tLQogZHJpdmVycy9ncHUvZHJtL2k5 MTUvZGlzcGxheS9pbnRlbF9kcC5jICAgICAgIHwgMTYgKysrKysrKy0tLS0tLS0KIGRyaXZlcnMv Z3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZHZvLmMgICAgICB8ICA4ICsrKy0tLS0KIGRyaXZl cnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfaGRtaS5jICAgICB8IDE2ICsrKysrKystLS0t LS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3Nkdm8uYyAgICAgfCAyMiAr KysrKysrKystLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3R2 LmMgICAgICAgfCAgNiArKy0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kZWJ1Z2ZzLmMg ICAgICAgICAgIHwgMTQgKysrKysrLS0tLS0tCiA5IGZpbGVzIGNoYW5nZWQsIDU0IGluc2VydGlv bnMoKyksIDU0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2Rpc3BsYXkvaW50ZWxfY3J0LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVs X2NydC5jCmluZGV4IDdhMmQzNjkwNTE1NS4uNDdmY2VlY2VhOWY4IDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2NydC5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2Rpc3BsYXkvaW50ZWxfY3J0LmMKQEAgLTY1LDcgKzY1LDcgQEAgc3RhdGljIHN0cnVj dCBpbnRlbF9jcnQgKmludGVsX2VuY29kZXJfdG9fY3J0KHN0cnVjdCBpbnRlbF9lbmNvZGVyICpl bmNvZGVyKQogCXJldHVybiBjb250YWluZXJfb2YoZW5jb2Rlciwgc3RydWN0IGludGVsX2NydCwg YmFzZSk7CiB9CiAKLXN0YXRpYyBzdHJ1Y3QgaW50ZWxfY3J0ICppbnRlbF9hdHRhY2hlZF9jcnQo c3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikKK3N0YXRpYyBzdHJ1Y3QgaW50ZWxfY3J0 ICppbnRlbF9hdHRhY2hlZF9jcnQoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yKQog ewogCXJldHVybiBpbnRlbF9lbmNvZGVyX3RvX2NydChpbnRlbF9hdHRhY2hlZF9lbmNvZGVyKGNv bm5lY3RvcikpOwogfQpAQCAtNDIyLDcgKzQyMiw3IEBAIHN0YXRpYyBpbnQgaHN3X2NydF9jb21w dXRlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKIHN0YXRpYyBib29sIGlu dGVsX2lyb25sYWtlX2NydF9kZXRlY3RfaG90cGx1ZyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29u bmVjdG9yKQogewogCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjb25uZWN0b3ItPmRldjsKLQlz dHJ1Y3QgaW50ZWxfY3J0ICpjcnQgPSBpbnRlbF9hdHRhY2hlZF9jcnQoY29ubmVjdG9yKTsKKwlz dHJ1Y3QgaW50ZWxfY3J0ICpjcnQgPSBpbnRlbF9hdHRhY2hlZF9jcnQodG9faW50ZWxfY29ubmVj dG9yKGNvbm5lY3RvcikpOwogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRv X2k5MTUoZGV2KTsKIAl1MzIgYWRwYTsKIAlib29sIHJldDsKQEAgLTQ2OSw3ICs0NjksNyBAQCBz dGF0aWMgYm9vbCBpbnRlbF9pcm9ubGFrZV9jcnRfZGV0ZWN0X2hvdHBsdWcoc3RydWN0IGRybV9j b25uZWN0b3IgKmNvbm5lY3RvcikKIHN0YXRpYyBib29sIHZhbGxleXZpZXdfY3J0X2RldGVjdF9o b3RwbHVnKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCiB7CiAJc3RydWN0IGRybV9k ZXZpY2UgKmRldiA9IGNvbm5lY3Rvci0+ZGV2OwotCXN0cnVjdCBpbnRlbF9jcnQgKmNydCA9IGlu dGVsX2F0dGFjaGVkX2NydChjb25uZWN0b3IpOworCXN0cnVjdCBpbnRlbF9jcnQgKmNydCA9IGlu dGVsX2F0dGFjaGVkX2NydCh0b19pbnRlbF9jb25uZWN0b3IoY29ubmVjdG9yKSk7CiAJc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShkZXYpOwogCWJvb2wgcmVlbmFi bGVfaHBkOwogCXUzMiBhZHBhOwpAQCAtNjAxLDcgKzYwMSw3IEBAIHN0YXRpYyBpbnQgaW50ZWxf Y3J0X2RkY19nZXRfbW9kZXMoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKIAogc3Rh dGljIGJvb2wgaW50ZWxfY3J0X2RldGVjdF9kZGMoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5l Y3RvcikKIHsKLQlzdHJ1Y3QgaW50ZWxfY3J0ICpjcnQgPSBpbnRlbF9hdHRhY2hlZF9jcnQoY29u bmVjdG9yKTsKKwlzdHJ1Y3QgaW50ZWxfY3J0ICpjcnQgPSBpbnRlbF9hdHRhY2hlZF9jcnQodG9f aW50ZWxfY29ubmVjdG9yKGNvbm5lY3RvcikpOwogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpk ZXZfcHJpdiA9IHRvX2k5MTUoY3J0LT5iYXNlLmJhc2UuZGV2KTsKIAlzdHJ1Y3QgZWRpZCAqZWRp ZDsKIAlzdHJ1Y3QgaTJjX2FkYXB0ZXIgKmkyYzsKQEAgLTc4Nyw3ICs3ODcsNyBAQCBpbnRlbF9j cnRfZGV0ZWN0KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCiAJCSBib29sIGZvcmNl KQogewogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoY29ubmVj dG9yLT5kZXYpOwotCXN0cnVjdCBpbnRlbF9jcnQgKmNydCA9IGludGVsX2F0dGFjaGVkX2NydChj b25uZWN0b3IpOworCXN0cnVjdCBpbnRlbF9jcnQgKmNydCA9IGludGVsX2F0dGFjaGVkX2NydCh0 b19pbnRlbF9jb25uZWN0b3IoY29ubmVjdG9yKSk7CiAJc3RydWN0IGludGVsX2VuY29kZXIgKmlu dGVsX2VuY29kZXIgPSAmY3J0LT5iYXNlOwogCWludGVsX3dha2VyZWZfdCB3YWtlcmVmOwogCWlu dCBzdGF0dXMsIHJldDsKQEAgLTg3OCw3ICs4NzgsNyBAQCBzdGF0aWMgaW50IGludGVsX2NydF9n ZXRfbW9kZXMoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikKIHsKIAlzdHJ1Y3QgZHJt X2RldmljZSAqZGV2ID0gY29ubmVjdG9yLT5kZXY7CiAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2ID0gdG9faTkxNShkZXYpOwotCXN0cnVjdCBpbnRlbF9jcnQgKmNydCA9IGludGVs X2F0dGFjaGVkX2NydChjb25uZWN0b3IpOworCXN0cnVjdCBpbnRlbF9jcnQgKmNydCA9IGludGVs X2F0dGFjaGVkX2NydCh0b19pbnRlbF9jb25uZWN0b3IoY29ubmVjdG9yKSk7CiAJc3RydWN0IGlu dGVsX2VuY29kZXIgKmludGVsX2VuY29kZXIgPSAmY3J0LT5iYXNlOwogCWludGVsX3dha2VyZWZf dCB3YWtlcmVmOwogCXN0cnVjdCBpMmNfYWRhcHRlciAqaTJjOwpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYwppbmRleCBlYjA1MDVhNjZlYTguLjk5YWJjNTUz YThhYiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNw bGF5LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMK QEAgLTYxOTcsNyArNjE5Nyw3IEBAIGludGVsX2Nvbm5lY3Rvcl9wcmltYXJ5X2VuY29kZXIoc3Ry dWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yKQogCWlmIChjb25uZWN0b3ItPm1zdF9wb3J0 KQogCQlyZXR1cm4gJmRwX3RvX2RpZ19wb3J0KGNvbm5lY3Rvci0+bXN0X3BvcnQpLT5iYXNlOwog Ci0JZW5jb2RlciA9IGludGVsX2F0dGFjaGVkX2VuY29kZXIoJmNvbm5lY3Rvci0+YmFzZSk7CisJ ZW5jb2RlciA9IGludGVsX2F0dGFjaGVkX2VuY29kZXIoY29ubmVjdG9yKTsKIAlXQVJOX09OKCFl bmNvZGVyKTsKIAogCXJldHVybiBlbmNvZGVyOwpAQCAtMTEzNzYsNyArMTEzNzYsNyBAQCBpbnQg aW50ZWxfZ2V0X2xvYWRfZGV0ZWN0X3BpcGUoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3Rv ciwKIHsKIAlzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0YzsKIAlzdHJ1Y3QgaW50ZWxfZW5j b2RlciAqaW50ZWxfZW5jb2RlciA9Ci0JCWludGVsX2F0dGFjaGVkX2VuY29kZXIoY29ubmVjdG9y KTsKKwkJaW50ZWxfYXR0YWNoZWRfZW5jb2Rlcih0b19pbnRlbF9jb25uZWN0b3IoY29ubmVjdG9y KSk7CiAJc3RydWN0IGRybV9jcnRjICpwb3NzaWJsZV9jcnRjOwogCXN0cnVjdCBkcm1fZW5jb2Rl ciAqZW5jb2RlciA9ICZpbnRlbF9lbmNvZGVyLT5iYXNlOwogCXN0cnVjdCBkcm1fY3J0YyAqY3J0 YyA9IE5VTEw7CkBAIC0xMTUzMCw3ICsxMTUzMCw3IEBAIHZvaWQgaW50ZWxfcmVsZWFzZV9sb2Fk X2RldGVjdF9waXBlKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCiAJCQkJICAgIHN0 cnVjdCBkcm1fbW9kZXNldF9hY3F1aXJlX2N0eCAqY3R4KQogewogCXN0cnVjdCBpbnRlbF9lbmNv ZGVyICppbnRlbF9lbmNvZGVyID0KLQkJaW50ZWxfYXR0YWNoZWRfZW5jb2Rlcihjb25uZWN0b3Ip OworCQlpbnRlbF9hdHRhY2hlZF9lbmNvZGVyKHRvX2ludGVsX2Nvbm5lY3Rvcihjb25uZWN0b3Ip KTsKIAlzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIgPSAmaW50ZWxfZW5jb2Rlci0+YmFzZTsK IAlzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUgPSBvbGQtPnJlc3RvcmVfc3RhdGU7CiAJ aW50IHJldDsKQEAgLTE0NTA1LDcgKzE0NTA1LDcgQEAgc3RhdGljIHZvaWQgaW50ZWxfc2V0X2Rw X3RwX2N0bF9ub3JtYWwoc3RydWN0IGludGVsX2NydGMgKmNydGMsCiAJCWlmIChjb25uX3N0YXRl LT5jcnRjID09ICZjcnRjLT5iYXNlKQogCQkJYnJlYWs7CiAJfQotCWludGVsX2RwID0gZW5jX3Rv X2ludGVsX2RwKCZpbnRlbF9hdHRhY2hlZF9lbmNvZGVyKGNvbm4pLT5iYXNlKTsKKwlpbnRlbF9k cCA9IGVuY190b19pbnRlbF9kcCgmaW50ZWxfYXR0YWNoZWRfZW5jb2Rlcih0b19pbnRlbF9jb25u ZWN0b3IoY29ubikpLT5iYXNlKTsKIAlpbnRlbF9kcF9zdG9wX2xpbmtfdHJhaW4oaW50ZWxfZHAp OwogfQogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rp c3BsYXlfdHlwZXMuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlzcGxh eV90eXBlcy5oCmluZGV4IDgzZWEwNDE0OWI3Ny4uNGQ4OWRlNWE0OTY0IDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfdHlwZXMuaAorKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfdHlwZXMuaApAQCAtMTQz NSw5ICsxNDM1LDkgQEAgc3RydWN0IGludGVsX2xvYWRfZGV0ZWN0X3BpcGUgewogfTsKIAogc3Rh dGljIGlubGluZSBzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqCi1pbnRlbF9hdHRhY2hlZF9lbmNvZGVy KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCitpbnRlbF9hdHRhY2hlZF9lbmNvZGVy KHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3RvcikKIHsKLQlyZXR1cm4gdG9faW50ZWxf Y29ubmVjdG9yKGNvbm5lY3RvciktPmVuY29kZXI7CisJcmV0dXJuIGNvbm5lY3Rvci0+ZW5jb2Rl cjsKIH0KIAogc3RhdGljIGlubGluZSBib29sIGludGVsX2VuY29kZXJfaXNfZGlnX3BvcnQoc3Ry dWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIpCkBAIC0xNDY4LDcgKzE0NjgsNyBAQCBlbmNfdG9f ZGlnX3BvcnQoc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVyKQogc3RhdGljIGlubGluZSBzdHJ1 Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICoKIGNvbm5fdG9fZGlnX3BvcnQoc3RydWN0IGludGVsX2Nv bm5lY3RvciAqY29ubmVjdG9yKQogewotCXJldHVybiBlbmNfdG9fZGlnX3BvcnQoJmludGVsX2F0 dGFjaGVkX2VuY29kZXIoJmNvbm5lY3Rvci0+YmFzZSktPmJhc2UpOworCXJldHVybiBlbmNfdG9f ZGlnX3BvcnQoJmludGVsX2F0dGFjaGVkX2VuY29kZXIoY29ubmVjdG9yKS0+YmFzZSk7CiB9CiAK IHN0YXRpYyBpbmxpbmUgc3RydWN0IGludGVsX2RwX21zdF9lbmNvZGVyICoKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZHAuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2Rpc3BsYXkvaW50ZWxfZHAuYwppbmRleCAwZjQ5NjExNWMzNDUuLjY2OGI2MzZmY2Zh YSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kcC5jCisr KyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZHAuYwpAQCAtMTQ2LDcgKzE0 Niw3IEBAIGJvb2wgaW50ZWxfZHBfaXNfZWRwKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHApCiAJ cmV0dXJuIGludGVsX2RpZ19wb3J0LT5iYXNlLnR5cGUgPT0gSU5URUxfT1VUUFVUX0VEUDsKIH0K IAotc3RhdGljIHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfYXR0YWNoZWRfZHAoc3RydWN0IGRybV9j b25uZWN0b3IgKmNvbm5lY3RvcikKK3N0YXRpYyBzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2F0dGFj aGVkX2RwKHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3RvcikKIHsKIAlyZXR1cm4gZW5j X3RvX2ludGVsX2RwKCZpbnRlbF9hdHRhY2hlZF9lbmNvZGVyKGNvbm5lY3RvciktPmJhc2UpOwog fQpAQCAtNjE0LDcgKzYxNCw3IEBAIHN0YXRpYyBlbnVtIGRybV9tb2RlX3N0YXR1cwogaW50ZWxf ZHBfbW9kZV92YWxpZChzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAogCQkgICAgc3Ry dWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUpCiB7Ci0Jc3RydWN0IGludGVsX2RwICppbnRlbF9k cCA9IGludGVsX2F0dGFjaGVkX2RwKGNvbm5lY3Rvcik7CisJc3RydWN0IGludGVsX2RwICppbnRl bF9kcCA9IGludGVsX2F0dGFjaGVkX2RwKHRvX2ludGVsX2Nvbm5lY3Rvcihjb25uZWN0b3IpKTsK IAlzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICppbnRlbF9jb25uZWN0b3IgPSB0b19pbnRlbF9jb25u ZWN0b3IoY29ubmVjdG9yKTsKIAlzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqZml4ZWRfbW9kZSA9 IGludGVsX2Nvbm5lY3Rvci0+cGFuZWwuZml4ZWRfbW9kZTsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNvbm5lY3Rvci0+ZGV2KTsKQEAgLTI5OTYsNyArMjk5 Niw3IEBAIHZvaWQgaW50ZWxfZWRwX2JhY2tsaWdodF9vZmYoY29uc3Qgc3RydWN0IGRybV9jb25u ZWN0b3Jfc3RhdGUgKm9sZF9jb25uX3N0YXRlKQogc3RhdGljIHZvaWQgaW50ZWxfZWRwX2JhY2ts aWdodF9wb3dlcihzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpjb25uZWN0b3IsCiAJCQkJICAgICAg Ym9vbCBlbmFibGUpCiB7Ci0Jc3RydWN0IGludGVsX2RwICppbnRlbF9kcCA9IGludGVsX2F0dGFj aGVkX2RwKCZjb25uZWN0b3ItPmJhc2UpOworCXN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHAgPSBp bnRlbF9hdHRhY2hlZF9kcChjb25uZWN0b3IpOwogCWludGVsX3dha2VyZWZfdCB3YWtlcmVmOwog CWJvb2wgaXNfZW5hYmxlZDsKIApAQCAtNTYxMSw3ICs1NjExLDcgQEAgaW50ZWxfZHBfZGV0ZWN0 KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCiAJCWJvb2wgZm9yY2UpCiB7CiAJc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShjb25uZWN0b3ItPmRldik7 Ci0Jc3RydWN0IGludGVsX2RwICppbnRlbF9kcCA9IGludGVsX2F0dGFjaGVkX2RwKGNvbm5lY3Rv cik7CisJc3RydWN0IGludGVsX2RwICppbnRlbF9kcCA9IGludGVsX2F0dGFjaGVkX2RwKHRvX2lu dGVsX2Nvbm5lY3Rvcihjb25uZWN0b3IpKTsKIAlzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICpk aWdfcG9ydCA9IGRwX3RvX2RpZ19wb3J0KGludGVsX2RwKTsKIAlzdHJ1Y3QgaW50ZWxfZW5jb2Rl ciAqZW5jb2RlciA9ICZkaWdfcG9ydC0+YmFzZTsKIAllbnVtIGRybV9jb25uZWN0b3Jfc3RhdHVz IHN0YXR1czsKQEAgLTU3MTUsNyArNTcxNSw3IEBAIGludGVsX2RwX2RldGVjdChzdHJ1Y3QgZHJt X2Nvbm5lY3RvciAqY29ubmVjdG9yLAogc3RhdGljIHZvaWQKIGludGVsX2RwX2ZvcmNlKHN0cnVj dCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCiB7Ci0Jc3RydWN0IGludGVsX2RwICppbnRlbF9k cCA9IGludGVsX2F0dGFjaGVkX2RwKGNvbm5lY3Rvcik7CisJc3RydWN0IGludGVsX2RwICppbnRl bF9kcCA9IGludGVsX2F0dGFjaGVkX2RwKHRvX2ludGVsX2Nvbm5lY3Rvcihjb25uZWN0b3IpKTsK IAlzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICpkaWdfcG9ydCA9IGRwX3RvX2RpZ19wb3J0KGlu dGVsX2RwKTsKIAlzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqaW50ZWxfZW5jb2RlciA9ICZkaWdfcG9y dC0+YmFzZTsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGlu dGVsX2VuY29kZXItPmJhc2UuZGV2KTsKQEAgLTU3NTAsNyArNTc1MCw3IEBAIHN0YXRpYyBpbnQg aW50ZWxfZHBfZ2V0X21vZGVzKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCiAJfQog CiAJLyogaWYgZURQIGhhcyBubyBFRElELCBmYWxsIGJhY2sgdG8gZml4ZWQgbW9kZSAqLwotCWlm IChpbnRlbF9kcF9pc19lZHAoaW50ZWxfYXR0YWNoZWRfZHAoY29ubmVjdG9yKSkgJiYKKwlpZiAo aW50ZWxfZHBfaXNfZWRwKGludGVsX2F0dGFjaGVkX2RwKHRvX2ludGVsX2Nvbm5lY3Rvcihjb25u ZWN0b3IpKSkgJiYKIAkgICAgaW50ZWxfY29ubmVjdG9yLT5wYW5lbC5maXhlZF9tb2RlKSB7CiAJ CXN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICptb2RlOwogCkBAIC01NzY4LDcgKzU3NjgsNyBAQCBz dGF0aWMgaW50IGludGVsX2RwX2dldF9tb2RlcyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVj dG9yKQogc3RhdGljIGludAogaW50ZWxfZHBfY29ubmVjdG9yX3JlZ2lzdGVyKHN0cnVjdCBkcm1f Y29ubmVjdG9yICpjb25uZWN0b3IpCiB7Ci0Jc3RydWN0IGludGVsX2RwICppbnRlbF9kcCA9IGlu dGVsX2F0dGFjaGVkX2RwKGNvbm5lY3Rvcik7CisJc3RydWN0IGludGVsX2RwICppbnRlbF9kcCA9 IGludGVsX2F0dGFjaGVkX2RwKHRvX2ludGVsX2Nvbm5lY3Rvcihjb25uZWN0b3IpKTsKIAlpbnQg cmV0OwogCiAJcmV0ID0gaW50ZWxfY29ubmVjdG9yX3JlZ2lzdGVyKGNvbm5lY3Rvcik7CkBAIC01 NzkwLDcgKzU3OTAsNyBAQCBpbnRlbF9kcF9jb25uZWN0b3JfcmVnaXN0ZXIoc3RydWN0IGRybV9j b25uZWN0b3IgKmNvbm5lY3RvcikKIHN0YXRpYyB2b2lkCiBpbnRlbF9kcF9jb25uZWN0b3JfdW5y ZWdpc3RlcihzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQogewotCXN0cnVjdCBpbnRl bF9kcCAqaW50ZWxfZHAgPSBpbnRlbF9hdHRhY2hlZF9kcChjb25uZWN0b3IpOworCXN0cnVjdCBp bnRlbF9kcCAqaW50ZWxfZHAgPSBpbnRlbF9hdHRhY2hlZF9kcCh0b19pbnRlbF9jb25uZWN0b3Io Y29ubmVjdG9yKSk7CiAKIAlkcm1fZHBfY2VjX3VucmVnaXN0ZXJfY29ubmVjdG9yKCZpbnRlbF9k cC0+YXV4KTsKIAlkcm1fZHBfYXV4X3VucmVnaXN0ZXIoJmludGVsX2RwLT5hdXgpOwpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kdm8uYyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZHZvLmMKaW5kZXggYTc0ZGM1YjkxNWQxLi44NmEz MzdjOWQ4NWQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxf ZHZvLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kdm8uYwpAQCAt MTI1LDcgKzEyNSw3IEBAIHN0YXRpYyBzdHJ1Y3QgaW50ZWxfZHZvICplbmNfdG9fZHZvKHN0cnVj dCBpbnRlbF9lbmNvZGVyICplbmNvZGVyKQogCXJldHVybiBjb250YWluZXJfb2YoZW5jb2Rlciwg c3RydWN0IGludGVsX2R2bywgYmFzZSk7CiB9CiAKLXN0YXRpYyBzdHJ1Y3QgaW50ZWxfZHZvICpp bnRlbF9hdHRhY2hlZF9kdm8oc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikKK3N0YXRp YyBzdHJ1Y3QgaW50ZWxfZHZvICppbnRlbF9hdHRhY2hlZF9kdm8oc3RydWN0IGludGVsX2Nvbm5l Y3RvciAqY29ubmVjdG9yKQogewogCXJldHVybiBlbmNfdG9fZHZvKGludGVsX2F0dGFjaGVkX2Vu Y29kZXIoY29ubmVjdG9yKSk7CiB9CkBAIC0xMzQsNyArMTM0LDcgQEAgc3RhdGljIGJvb2wgaW50 ZWxfZHZvX2Nvbm5lY3Rvcl9nZXRfaHdfc3RhdGUoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29u bmVjdG9yKQogewogCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjb25uZWN0b3ItPmJhc2UuZGV2 OwogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZGV2KTsKLQlz dHJ1Y3QgaW50ZWxfZHZvICppbnRlbF9kdm8gPSBpbnRlbF9hdHRhY2hlZF9kdm8oJmNvbm5lY3Rv ci0+YmFzZSk7CisJc3RydWN0IGludGVsX2R2byAqaW50ZWxfZHZvID0gaW50ZWxfYXR0YWNoZWRf ZHZvKGNvbm5lY3Rvcik7CiAJdTMyIHRtcDsKIAogCXRtcCA9IEk5MTVfUkVBRChpbnRlbF9kdm8t PmRldi5kdm9fcmVnKTsKQEAgLTIyMCw3ICsyMjAsNyBAQCBzdGF0aWMgZW51bSBkcm1fbW9kZV9z dGF0dXMKIGludGVsX2R2b19tb2RlX3ZhbGlkKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0 b3IsCiAJCSAgICAgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUpCiB7Ci0Jc3RydWN0IGlu dGVsX2R2byAqaW50ZWxfZHZvID0gaW50ZWxfYXR0YWNoZWRfZHZvKGNvbm5lY3Rvcik7CisJc3Ry dWN0IGludGVsX2R2byAqaW50ZWxfZHZvID0gaW50ZWxfYXR0YWNoZWRfZHZvKHRvX2ludGVsX2Nv bm5lY3Rvcihjb25uZWN0b3IpKTsKIAljb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqZml4 ZWRfbW9kZSA9CiAJCXRvX2ludGVsX2Nvbm5lY3Rvcihjb25uZWN0b3IpLT5wYW5lbC5maXhlZF9t b2RlOwogCWludCBtYXhfZG90Y2xrID0gdG9faTkxNShjb25uZWN0b3ItPmRldiktPm1heF9kb3Rj bGtfZnJlcTsKQEAgLTMxMSw3ICszMTEsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9kdm9fcHJlX2Vu YWJsZShzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKIHN0YXRpYyBlbnVtIGRybV9jb25u ZWN0b3Jfc3RhdHVzCiBpbnRlbF9kdm9fZGV0ZWN0KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25u ZWN0b3IsIGJvb2wgZm9yY2UpCiB7Ci0Jc3RydWN0IGludGVsX2R2byAqaW50ZWxfZHZvID0gaW50 ZWxfYXR0YWNoZWRfZHZvKGNvbm5lY3Rvcik7CisJc3RydWN0IGludGVsX2R2byAqaW50ZWxfZHZv ID0gaW50ZWxfYXR0YWNoZWRfZHZvKHRvX2ludGVsX2Nvbm5lY3Rvcihjb25uZWN0b3IpKTsKIAlE Uk1fREVCVUdfS01TKCJbQ09OTkVDVE9SOiVkOiVzXVxuIiwKIAkJICAgICAgY29ubmVjdG9yLT5i YXNlLmlkLCBjb25uZWN0b3ItPm5hbWUpOwogCXJldHVybiBpbnRlbF9kdm8tPmRldi5kZXZfb3Bz LT5kZXRlY3QoJmludGVsX2R2by0+ZGV2KTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2Rpc3BsYXkvaW50ZWxfaGRtaS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9p bnRlbF9oZG1pLmMKaW5kZXggYTg5YTA5YjI1MjYwLi5hOGRlYjQ3ODlmMDQgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfaGRtaS5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfaGRtaS5jCkBAIC05Miw3ICs5Miw3IEBAIHN0cnVj dCBpbnRlbF9oZG1pICplbmNfdG9faW50ZWxfaGRtaShzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29k ZXIpCiAJcmV0dXJuICZpbnRlbF9kaWdfcG9ydC0+aGRtaTsKIH0KIAotc3RhdGljIHN0cnVjdCBp bnRlbF9oZG1pICppbnRlbF9hdHRhY2hlZF9oZG1pKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25u ZWN0b3IpCitzdGF0aWMgc3RydWN0IGludGVsX2hkbWkgKmludGVsX2F0dGFjaGVkX2hkbWkoc3Ry dWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yKQogewogCXJldHVybiBlbmNfdG9faW50ZWxf aGRtaSgmaW50ZWxfYXR0YWNoZWRfZW5jb2Rlcihjb25uZWN0b3IpLT5iYXNlKTsKIH0KQEAgLTIx NjAsNyArMjE2MCw3IEBAIHN0YXRpYyBlbnVtIGRybV9tb2RlX3N0YXR1cwogaW50ZWxfaGRtaV9t b2RlX3ZhbGlkKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCiAJCSAgICAgIHN0cnVj dCBkcm1fZGlzcGxheV9tb2RlICptb2RlKQogewotCXN0cnVjdCBpbnRlbF9oZG1pICpoZG1pID0g aW50ZWxfYXR0YWNoZWRfaGRtaShjb25uZWN0b3IpOworCXN0cnVjdCBpbnRlbF9oZG1pICpoZG1p ID0gaW50ZWxfYXR0YWNoZWRfaGRtaSh0b19pbnRlbF9jb25uZWN0b3IoY29ubmVjdG9yKSk7CiAJ c3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGludGVsX2hkbWlfdG9fZGV2KGhkbWkpOwogCXN0cnVj dCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZGV2KTsKIAllbnVtIGRybV9t b2RlX3N0YXR1cyBzdGF0dXM7CkBAIC0yNDk2LDcgKzI0OTYsNyBAQCBpbnQgaW50ZWxfaGRtaV9j b21wdXRlX2NvbmZpZyhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciwKIHN0YXRpYyB2b2lk CiBpbnRlbF9oZG1pX3Vuc2V0X2VkaWQoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikK IHsKLQlzdHJ1Y3QgaW50ZWxfaGRtaSAqaW50ZWxfaGRtaSA9IGludGVsX2F0dGFjaGVkX2hkbWko Y29ubmVjdG9yKTsKKwlzdHJ1Y3QgaW50ZWxfaGRtaSAqaW50ZWxfaGRtaSA9IGludGVsX2F0dGFj aGVkX2hkbWkodG9faW50ZWxfY29ubmVjdG9yKGNvbm5lY3RvcikpOwogCiAJaW50ZWxfaGRtaS0+ aGFzX2hkbWlfc2luayA9IGZhbHNlOwogCWludGVsX2hkbWktPmhhc19hdWRpbyA9IGZhbHNlOwpA QCAtMjUxMiw3ICsyNTEyLDcgQEAgc3RhdGljIHZvaWQKIGludGVsX2hkbWlfZHBfZHVhbF9tb2Rl X2RldGVjdChzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLCBib29sIGhhc19lZGlkKQog ewogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoY29ubmVjdG9y LT5kZXYpOwotCXN0cnVjdCBpbnRlbF9oZG1pICpoZG1pID0gaW50ZWxfYXR0YWNoZWRfaGRtaShj b25uZWN0b3IpOworCXN0cnVjdCBpbnRlbF9oZG1pICpoZG1pID0gaW50ZWxfYXR0YWNoZWRfaGRt aSh0b19pbnRlbF9jb25uZWN0b3IoY29ubmVjdG9yKSk7CiAJZW51bSBwb3J0IHBvcnQgPSBoZG1p X3RvX2RpZ19wb3J0KGhkbWkpLT5iYXNlLnBvcnQ7CiAJc3RydWN0IGkyY19hZGFwdGVyICphZGFw dGVyID0KIAkJaW50ZWxfZ21idXNfZ2V0X2FkYXB0ZXIoZGV2X3ByaXYsIGhkbWktPmRkY19idXMp OwpAQCAtMjU1OSw3ICsyNTU5LDcgQEAgc3RhdGljIGJvb2wKIGludGVsX2hkbWlfc2V0X2VkaWQo c3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikKIHsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNvbm5lY3Rvci0+ZGV2KTsKLQlzdHJ1Y3QgaW50ZWxf aGRtaSAqaW50ZWxfaGRtaSA9IGludGVsX2F0dGFjaGVkX2hkbWkoY29ubmVjdG9yKTsKKwlzdHJ1 Y3QgaW50ZWxfaGRtaSAqaW50ZWxfaGRtaSA9IGludGVsX2F0dGFjaGVkX2hkbWkodG9faW50ZWxf Y29ubmVjdG9yKGNvbm5lY3RvcikpOwogCWludGVsX3dha2VyZWZfdCB3YWtlcmVmOwogCXN0cnVj dCBlZGlkICplZGlkOwogCWJvb2wgY29ubmVjdGVkID0gZmFsc2U7CkBAIC0yNjAwLDcgKzI2MDAs NyBAQCBpbnRlbF9oZG1pX2RldGVjdChzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLCBi b29sIGZvcmNlKQogewogCWVudW0gZHJtX2Nvbm5lY3Rvcl9zdGF0dXMgc3RhdHVzID0gY29ubmVj dG9yX3N0YXR1c19kaXNjb25uZWN0ZWQ7CiAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2ID0gdG9faTkxNShjb25uZWN0b3ItPmRldik7Ci0Jc3RydWN0IGludGVsX2hkbWkgKmludGVs X2hkbWkgPSBpbnRlbF9hdHRhY2hlZF9oZG1pKGNvbm5lY3Rvcik7CisJc3RydWN0IGludGVsX2hk bWkgKmludGVsX2hkbWkgPSBpbnRlbF9hdHRhY2hlZF9oZG1pKHRvX2ludGVsX2Nvbm5lY3Rvcihj b25uZWN0b3IpKTsKIAlzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlciA9ICZoZG1pX3RvX2Rp Z19wb3J0KGludGVsX2hkbWkpLT5iYXNlOwogCWludGVsX3dha2VyZWZfdCB3YWtlcmVmOwogCkBA IC0yNzcyLDcgKzI3NzIsNyBAQCBzdGF0aWMgc3RydWN0IGkyY19hZGFwdGVyICoKIGludGVsX2hk bWlfZ2V0X2kyY19hZGFwdGVyKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCiB7CiAJ c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShjb25uZWN0b3ItPmRl dik7Ci0Jc3RydWN0IGludGVsX2hkbWkgKmludGVsX2hkbWkgPSBpbnRlbF9hdHRhY2hlZF9oZG1p KGNvbm5lY3Rvcik7CisJc3RydWN0IGludGVsX2hkbWkgKmludGVsX2hkbWkgPSBpbnRlbF9hdHRh Y2hlZF9oZG1pKHRvX2ludGVsX2Nvbm5lY3Rvcihjb25uZWN0b3IpKTsKIAogCXJldHVybiBpbnRl bF9nbWJ1c19nZXRfYWRhcHRlcihkZXZfcHJpdiwgaW50ZWxfaGRtaS0+ZGRjX2J1cyk7CiB9CkBA IC0yODE2LDcgKzI4MTYsNyBAQCBpbnRlbF9oZG1pX2Nvbm5lY3Rvcl9yZWdpc3RlcihzdHJ1Y3Qg ZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQogCiBzdGF0aWMgdm9pZCBpbnRlbF9oZG1pX2Rlc3Ry b3koc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikKIHsKLQlzdHJ1Y3QgY2VjX25vdGlm aWVyICpuID0gaW50ZWxfYXR0YWNoZWRfaGRtaShjb25uZWN0b3IpLT5jZWNfbm90aWZpZXI7CisJ c3RydWN0IGNlY19ub3RpZmllciAqbiA9IGludGVsX2F0dGFjaGVkX2hkbWkodG9faW50ZWxfY29u bmVjdG9yKGNvbm5lY3RvcikpLT5jZWNfbm90aWZpZXI7CiAKIAljZWNfbm90aWZpZXJfY29ubl91 bnJlZ2lzdGVyKG4pOwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5 L2ludGVsX3Nkdm8uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfc2R2by5j CmluZGV4IDg3NThlZTJhNDQ0Mi4uZTg4MTlmZDIxZTAzIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3Nkdm8uYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9kaXNwbGF5L2ludGVsX3Nkdm8uYwpAQCAtMTgwLDcgKzE4MCw3IEBAIHN0YXRpYyBzdHJ1Y3Qg aW50ZWxfc2R2byAqdG9fc2R2byhzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2RlcikKIAlyZXR1 cm4gY29udGFpbmVyX29mKGVuY29kZXIsIHN0cnVjdCBpbnRlbF9zZHZvLCBiYXNlKTsKIH0KIAot c3RhdGljIHN0cnVjdCBpbnRlbF9zZHZvICppbnRlbF9hdHRhY2hlZF9zZHZvKHN0cnVjdCBkcm1f Y29ubmVjdG9yICpjb25uZWN0b3IpCitzdGF0aWMgc3RydWN0IGludGVsX3Nkdm8gKmludGVsX2F0 dGFjaGVkX3Nkdm8oc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yKQogewogCXJldHVy biB0b19zZHZvKGludGVsX2F0dGFjaGVkX2VuY29kZXIoY29ubmVjdG9yKSk7CiB9CkBAIC0xNTUx LDcgKzE1NTEsNyBAQCBzdGF0aWMgYm9vbCBpbnRlbF9zZHZvX2Nvbm5lY3Rvcl9nZXRfaHdfc3Rh dGUoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yKQogewogCXN0cnVjdCBpbnRlbF9z ZHZvX2Nvbm5lY3RvciAqaW50ZWxfc2R2b19jb25uZWN0b3IgPQogCQl0b19pbnRlbF9zZHZvX2Nv bm5lY3RvcigmY29ubmVjdG9yLT5iYXNlKTsKLQlzdHJ1Y3QgaW50ZWxfc2R2byAqaW50ZWxfc2R2 byA9IGludGVsX2F0dGFjaGVkX3Nkdm8oJmNvbm5lY3Rvci0+YmFzZSk7CisJc3RydWN0IGludGVs X3Nkdm8gKmludGVsX3Nkdm8gPSBpbnRlbF9hdHRhY2hlZF9zZHZvKGNvbm5lY3Rvcik7CiAJdTE2 IGFjdGl2ZV9vdXRwdXRzID0gMDsKIAogCWludGVsX3Nkdm9fZ2V0X2FjdGl2ZV9vdXRwdXRzKGlu dGVsX3Nkdm8sICZhY3RpdmVfb3V0cHV0cyk7CkBAIC0xODIzLDcgKzE4MjMsNyBAQCBzdGF0aWMg ZW51bSBkcm1fbW9kZV9zdGF0dXMKIGludGVsX3Nkdm9fbW9kZV92YWxpZChzdHJ1Y3QgZHJtX2Nv bm5lY3RvciAqY29ubmVjdG9yLAogCQkgICAgICBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9k ZSkKIHsKLQlzdHJ1Y3QgaW50ZWxfc2R2byAqaW50ZWxfc2R2byA9IGludGVsX2F0dGFjaGVkX3Nk dm8oY29ubmVjdG9yKTsKKwlzdHJ1Y3QgaW50ZWxfc2R2byAqaW50ZWxfc2R2byA9IGludGVsX2F0 dGFjaGVkX3Nkdm8odG9faW50ZWxfY29ubmVjdG9yKGNvbm5lY3RvcikpOwogCXN0cnVjdCBpbnRl bF9zZHZvX2Nvbm5lY3RvciAqaW50ZWxfc2R2b19jb25uZWN0b3IgPQogCQl0b19pbnRlbF9zZHZv X2Nvbm5lY3Rvcihjb25uZWN0b3IpOwogCWludCBtYXhfZG90Y2xrID0gdG9faTkxNShjb25uZWN0 b3ItPmRldiktPm1heF9kb3RjbGtfZnJlcTsKQEAgLTE5NDEsNyArMTk0MSw3IEBAIGludGVsX3Nk dm9fbXVsdGlmdW5jX2VuY29kZXIoc3RydWN0IGludGVsX3Nkdm8gKmludGVsX3Nkdm8pCiBzdGF0 aWMgc3RydWN0IGVkaWQgKgogaW50ZWxfc2R2b19nZXRfZWRpZChzdHJ1Y3QgZHJtX2Nvbm5lY3Rv ciAqY29ubmVjdG9yKQogewotCXN0cnVjdCBpbnRlbF9zZHZvICpzZHZvID0gaW50ZWxfYXR0YWNo ZWRfc2R2byhjb25uZWN0b3IpOworCXN0cnVjdCBpbnRlbF9zZHZvICpzZHZvID0gaW50ZWxfYXR0 YWNoZWRfc2R2byh0b19pbnRlbF9jb25uZWN0b3IoY29ubmVjdG9yKSk7CiAJcmV0dXJuIGRybV9n ZXRfZWRpZChjb25uZWN0b3IsICZzZHZvLT5kZGMpOwogfQogCkBAIC0xOTU5LDcgKzE5NTksNyBA QCBpbnRlbF9zZHZvX2dldF9hbmFsb2dfZWRpZChzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVj dG9yKQogc3RhdGljIGVudW0gZHJtX2Nvbm5lY3Rvcl9zdGF0dXMKIGludGVsX3Nkdm9fdG1kc19z aW5rX2RldGVjdChzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQogewotCXN0cnVjdCBp bnRlbF9zZHZvICppbnRlbF9zZHZvID0gaW50ZWxfYXR0YWNoZWRfc2R2byhjb25uZWN0b3IpOwor CXN0cnVjdCBpbnRlbF9zZHZvICppbnRlbF9zZHZvID0gaW50ZWxfYXR0YWNoZWRfc2R2byh0b19p bnRlbF9jb25uZWN0b3IoY29ubmVjdG9yKSk7CiAJc3RydWN0IGludGVsX3Nkdm9fY29ubmVjdG9y ICppbnRlbF9zZHZvX2Nvbm5lY3RvciA9CiAJCXRvX2ludGVsX3Nkdm9fY29ubmVjdG9yKGNvbm5l Y3Rvcik7CiAJZW51bSBkcm1fY29ubmVjdG9yX3N0YXR1cyBzdGF0dXM7CkBAIC0yMDI4LDcgKzIw MjgsNyBAQCBzdGF0aWMgZW51bSBkcm1fY29ubmVjdG9yX3N0YXR1cwogaW50ZWxfc2R2b19kZXRl Y3Qoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwgYm9vbCBmb3JjZSkKIHsKIAl1MTYg cmVzcG9uc2U7Ci0Jc3RydWN0IGludGVsX3Nkdm8gKmludGVsX3Nkdm8gPSBpbnRlbF9hdHRhY2hl ZF9zZHZvKGNvbm5lY3Rvcik7CisJc3RydWN0IGludGVsX3Nkdm8gKmludGVsX3Nkdm8gPSBpbnRl bF9hdHRhY2hlZF9zZHZvKHRvX2ludGVsX2Nvbm5lY3Rvcihjb25uZWN0b3IpKTsKIAlzdHJ1Y3Qg aW50ZWxfc2R2b19jb25uZWN0b3IgKmludGVsX3Nkdm9fY29ubmVjdG9yID0gdG9faW50ZWxfc2R2 b19jb25uZWN0b3IoY29ubmVjdG9yKTsKIAllbnVtIGRybV9jb25uZWN0b3Jfc3RhdHVzIHJldDsK IApAQCAtMjE3NSw3ICsyMTc1LDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fZGlzcGxheV9t b2RlIHNkdm9fdHZfbW9kZXNbXSA9IHsKIAogc3RhdGljIHZvaWQgaW50ZWxfc2R2b19nZXRfdHZf bW9kZXMoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikKIHsKLQlzdHJ1Y3QgaW50ZWxf c2R2byAqaW50ZWxfc2R2byA9IGludGVsX2F0dGFjaGVkX3Nkdm8oY29ubmVjdG9yKTsKKwlzdHJ1 Y3QgaW50ZWxfc2R2byAqaW50ZWxfc2R2byA9IGludGVsX2F0dGFjaGVkX3Nkdm8odG9faW50ZWxf Y29ubmVjdG9yKGNvbm5lY3RvcikpOwogCWNvbnN0IHN0cnVjdCBkcm1fY29ubmVjdG9yX3N0YXRl ICpjb25uX3N0YXRlID0gY29ubmVjdG9yLT5zdGF0ZTsKIAlzdHJ1Y3QgaW50ZWxfc2R2b19zZHR2 X3Jlc29sdXRpb25fcmVxdWVzdCB0dl9yZXM7CiAJdTMyIHJlcGx5ID0gMCwgZm9ybWF0X21hcCA9 IDA7CkBAIC0yMjE1LDcgKzIyMTUsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9zZHZvX2dldF90dl9t b2RlcyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQogCiBzdGF0aWMgdm9pZCBpbnRl bF9zZHZvX2dldF9sdmRzX21vZGVzKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCiB7 Ci0Jc3RydWN0IGludGVsX3Nkdm8gKmludGVsX3Nkdm8gPSBpbnRlbF9hdHRhY2hlZF9zZHZvKGNv bm5lY3Rvcik7CisJc3RydWN0IGludGVsX3Nkdm8gKmludGVsX3Nkdm8gPSBpbnRlbF9hdHRhY2hl ZF9zZHZvKHRvX2ludGVsX2Nvbm5lY3Rvcihjb25uZWN0b3IpKTsKIAlzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNvbm5lY3Rvci0+ZGV2KTsKIAlzdHJ1Y3QgZHJt X2Rpc3BsYXlfbW9kZSAqbmV3bW9kZTsKIApAQCAtMjM3OSw3ICsyMzc5LDcgQEAgaW50ZWxfc2R2 b19jb25uZWN0b3JfYXRvbWljX3NldF9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29u bmVjdG9yLAogc3RhdGljIGludAogaW50ZWxfc2R2b19jb25uZWN0b3JfcmVnaXN0ZXIoc3RydWN0 IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikKIHsKLQlzdHJ1Y3QgaW50ZWxfc2R2byAqc2R2byA9 IGludGVsX2F0dGFjaGVkX3Nkdm8oY29ubmVjdG9yKTsKKwlzdHJ1Y3QgaW50ZWxfc2R2byAqc2R2 byA9IGludGVsX2F0dGFjaGVkX3Nkdm8odG9faW50ZWxfY29ubmVjdG9yKGNvbm5lY3RvcikpOwog CWludCByZXQ7CiAKIAlyZXQgPSBpbnRlbF9jb25uZWN0b3JfcmVnaXN0ZXIoY29ubmVjdG9yKTsK QEAgLTIzOTQsNyArMjM5NCw3IEBAIGludGVsX3Nkdm9fY29ubmVjdG9yX3JlZ2lzdGVyKHN0cnVj dCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCiBzdGF0aWMgdm9pZAogaW50ZWxfc2R2b19jb25u ZWN0b3JfdW5yZWdpc3RlcihzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQogewotCXN0 cnVjdCBpbnRlbF9zZHZvICpzZHZvID0gaW50ZWxfYXR0YWNoZWRfc2R2byhjb25uZWN0b3IpOwor CXN0cnVjdCBpbnRlbF9zZHZvICpzZHZvID0gaW50ZWxfYXR0YWNoZWRfc2R2byh0b19pbnRlbF9j b25uZWN0b3IoY29ubmVjdG9yKSk7CiAKIAlzeXNmc19yZW1vdmVfbGluaygmY29ubmVjdG9yLT5r ZGV2LT5rb2JqLAogCQkJICBzZHZvLT5kZGMuZGV2LmtvYmoubmFtZSk7CkBAIC0yOTMyLDcgKzI5 MzIsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9zZHZvX291dHB1dF9jbGVhbnVwKHN0cnVjdCBpbnRl bF9zZHZvICppbnRlbF9zZHZvKQogCiAJbGlzdF9mb3JfZWFjaF9lbnRyeV9zYWZlKGNvbm5lY3Rv ciwgdG1wLAogCQkJCSAmZGV2LT5tb2RlX2NvbmZpZy5jb25uZWN0b3JfbGlzdCwgaGVhZCkgewot CQlpZiAoaW50ZWxfYXR0YWNoZWRfZW5jb2Rlcihjb25uZWN0b3IpID09ICZpbnRlbF9zZHZvLT5i YXNlKSB7CisJCWlmIChpbnRlbF9hdHRhY2hlZF9lbmNvZGVyKHRvX2ludGVsX2Nvbm5lY3Rvcihj b25uZWN0b3IpKSA9PSAmaW50ZWxfc2R2by0+YmFzZSkgewogCQkJZHJtX2Nvbm5lY3Rvcl91bnJl Z2lzdGVyKGNvbm5lY3Rvcik7CiAJCQlpbnRlbF9jb25uZWN0b3JfZGVzdHJveShjb25uZWN0b3Ip OwogCQl9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3R2 LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3R2LmMKaW5kZXggNTA3MDM1 MzY0MzZjLi41Y2QwNzE5NzU4ZDkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rp c3BsYXkvaW50ZWxfdHYuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVs X3R2LmMKQEAgLTg5OCw3ICs4OTgsNyBAQCBzdGF0aWMgc3RydWN0IGludGVsX3R2ICplbmNfdG9f dHYoc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIpCiAJcmV0dXJuIGNvbnRhaW5lcl9vZihl bmNvZGVyLCBzdHJ1Y3QgaW50ZWxfdHYsIGJhc2UpOwogfQogCi1zdGF0aWMgc3RydWN0IGludGVs X3R2ICppbnRlbF9hdHRhY2hlZF90dihzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQor c3RhdGljIHN0cnVjdCBpbnRlbF90diAqaW50ZWxfYXR0YWNoZWRfdHYoc3RydWN0IGludGVsX2Nv bm5lY3RvciAqY29ubmVjdG9yKQogewogCXJldHVybiBlbmNfdG9fdHYoaW50ZWxfYXR0YWNoZWRf ZW5jb2Rlcihjb25uZWN0b3IpKTsKIH0KQEAgLTE2NjIsNyArMTY2Miw3IEBAIGludGVsX3R2X2Rl dGVjdF90eXBlKHN0cnVjdCBpbnRlbF90diAqaW50ZWxfdHYsCiAgKi8KIHN0YXRpYyB2b2lkIGlu dGVsX3R2X2ZpbmRfYmV0dGVyX2Zvcm1hdChzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9y KQogewotCXN0cnVjdCBpbnRlbF90diAqaW50ZWxfdHYgPSBpbnRlbF9hdHRhY2hlZF90dihjb25u ZWN0b3IpOworCXN0cnVjdCBpbnRlbF90diAqaW50ZWxfdHYgPSBpbnRlbF9hdHRhY2hlZF90dih0 b19pbnRlbF9jb25uZWN0b3IoY29ubmVjdG9yKSk7CiAJY29uc3Qgc3RydWN0IHR2X21vZGUgKnR2 X21vZGUgPSBpbnRlbF90dl9tb2RlX2ZpbmQoY29ubmVjdG9yLT5zdGF0ZSk7CiAJaW50IGk7CiAK QEAgLTE2ODksNyArMTY4OSw3IEBAIGludGVsX3R2X2RldGVjdChzdHJ1Y3QgZHJtX2Nvbm5lY3Rv ciAqY29ubmVjdG9yLAogCQlzdHJ1Y3QgZHJtX21vZGVzZXRfYWNxdWlyZV9jdHggKmN0eCwKIAkJ Ym9vbCBmb3JjZSkKIHsKLQlzdHJ1Y3QgaW50ZWxfdHYgKmludGVsX3R2ID0gaW50ZWxfYXR0YWNo ZWRfdHYoY29ubmVjdG9yKTsKKwlzdHJ1Y3QgaW50ZWxfdHYgKmludGVsX3R2ID0gaW50ZWxfYXR0 YWNoZWRfdHYodG9faW50ZWxfY29ubmVjdG9yKGNvbm5lY3RvcikpOwogCWVudW0gZHJtX2Nvbm5l Y3Rvcl9zdGF0dXMgc3RhdHVzOwogCWludCB0eXBlOwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVi dWdmcy5jCmluZGV4IGViODBhMmM0YjU1Yi4uNGY1NDNjY2VjMTVkIDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVnZnMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2RlYnVnZnMuYwpAQCAtMjAyMCw3ICsyMDIwLDcgQEAgc3RhdGljIGludCBpOTE1X3Bz cl9zaW5rX3N0YXR1c19zaG93KHN0cnVjdCBzZXFfZmlsZSAqbSwgdm9pZCAqZGF0YSkKIAlzdHJ1 Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yID0gbS0+cHJpdmF0ZTsKIAlzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNvbm5lY3Rvci0+ZGV2KTsKIAlzdHJ1Y3Qg aW50ZWxfZHAgKmludGVsX2RwID0KLQkJZW5jX3RvX2ludGVsX2RwKCZpbnRlbF9hdHRhY2hlZF9l bmNvZGVyKGNvbm5lY3RvciktPmJhc2UpOworCQllbmNfdG9faW50ZWxfZHAoJmludGVsX2F0dGFj aGVkX2VuY29kZXIodG9faW50ZWxfY29ubmVjdG9yKGNvbm5lY3RvcikpLT5iYXNlKTsKIAlpbnQg cmV0OwogCiAJaWYgKCFDQU5fUFNSKGRldl9wcml2KSkgewpAQCAtMzA1NSw3ICszMDU1LDcgQEAg c3RhdGljIGludCBpOTE1X2RwX21zdF9pbmZvKHN0cnVjdCBzZXFfZmlsZSAqbSwgdm9pZCAqdW51 c2VkKQogCQlpZiAoY29ubmVjdG9yLT5jb25uZWN0b3JfdHlwZSAhPSBEUk1fTU9ERV9DT05ORUNU T1JfRGlzcGxheVBvcnQpCiAJCQljb250aW51ZTsKIAotCQlpbnRlbF9lbmNvZGVyID0gaW50ZWxf YXR0YWNoZWRfZW5jb2Rlcihjb25uZWN0b3IpOworCQlpbnRlbF9lbmNvZGVyID0gaW50ZWxfYXR0 YWNoZWRfZW5jb2Rlcih0b19pbnRlbF9jb25uZWN0b3IoY29ubmVjdG9yKSk7CiAJCWlmICghaW50 ZWxfZW5jb2RlciB8fCBpbnRlbF9lbmNvZGVyLT50eXBlID09IElOVEVMX09VVFBVVF9EUF9NU1Qp CiAJCQljb250aW51ZTsKIApAQCAtNDE4NSw3ICs0MTg1LDcgQEAgc3RhdGljIGludCBpOTE1X2Ry cnNfY3RsX3NldCh2b2lkICpkYXRhLCB1NjQgdmFsKQogCQkJICAgICAgZHJtX2Nvbm5lY3Rvcl9t YXNrKGNvbm5lY3RvcikpKQogCQkJCWNvbnRpbnVlOwogCi0JCQllbmNvZGVyID0gaW50ZWxfYXR0 YWNoZWRfZW5jb2Rlcihjb25uZWN0b3IpOworCQkJZW5jb2RlciA9IGludGVsX2F0dGFjaGVkX2Vu Y29kZXIodG9faW50ZWxfY29ubmVjdG9yKGNvbm5lY3RvcikpOwogCQkJaWYgKGVuY29kZXItPnR5 cGUgIT0gSU5URUxfT1VUUFVUX0VEUCkKIAkJCQljb250aW51ZTsKIApAQCAtNDM5Niw3ICs0Mzk2 LDcgQEAgc3RhdGljIGludCBpOTE1X2RwY2Rfc2hvdyhzdHJ1Y3Qgc2VxX2ZpbGUgKm0sIHZvaWQg KmRhdGEpCiB7CiAJc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciA9IG0tPnByaXZhdGU7 CiAJc3RydWN0IGludGVsX2RwICppbnRlbF9kcCA9Ci0JCWVuY190b19pbnRlbF9kcCgmaW50ZWxf YXR0YWNoZWRfZW5jb2Rlcihjb25uZWN0b3IpLT5iYXNlKTsKKwkJZW5jX3RvX2ludGVsX2RwKCZp bnRlbF9hdHRhY2hlZF9lbmNvZGVyKHRvX2ludGVsX2Nvbm5lY3Rvcihjb25uZWN0b3IpKS0+YmFz ZSk7CiAJdTggYnVmWzE2XTsKIAlzc2l6ZV90IGVycjsKIAlpbnQgaTsKQEAgLTQ0MzEsNyArNDQz MSw3IEBAIHN0YXRpYyBpbnQgaTkxNV9wYW5lbF9zaG93KHN0cnVjdCBzZXFfZmlsZSAqbSwgdm9p ZCAqZGF0YSkKIHsKIAlzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yID0gbS0+cHJpdmF0 ZTsKIAlzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwID0KLQkJZW5jX3RvX2ludGVsX2RwKCZpbnRl bF9hdHRhY2hlZF9lbmNvZGVyKGNvbm5lY3RvciktPmJhc2UpOworCQllbmNfdG9faW50ZWxfZHAo JmludGVsX2F0dGFjaGVkX2VuY29kZXIodG9faW50ZWxfY29ubmVjdG9yKGNvbm5lY3RvcikpLT5i YXNlKTsKIAogCWlmIChjb25uZWN0b3ItPnN0YXR1cyAhPSBjb25uZWN0b3Jfc3RhdHVzX2Nvbm5l Y3RlZCkKIAkJcmV0dXJuIC1FTk9ERVY7CkBAIC00NTA5LDcgKzQ1MDksNyBAQCBzdGF0aWMgaW50 IGk5MTVfZHNjX2ZlY19zdXBwb3J0X3Nob3coc3RydWN0IHNlcV9maWxlICptLCB2b2lkICpkYXRh KQogCQl9IGVsc2UgaWYgKHJldCkgewogCQkJYnJlYWs7CiAJCX0KLQkJaW50ZWxfZHAgPSBlbmNf dG9faW50ZWxfZHAoJmludGVsX2F0dGFjaGVkX2VuY29kZXIoY29ubmVjdG9yKS0+YmFzZSk7CisJ CWludGVsX2RwID0gZW5jX3RvX2ludGVsX2RwKCZpbnRlbF9hdHRhY2hlZF9lbmNvZGVyKHRvX2lu dGVsX2Nvbm5lY3Rvcihjb25uZWN0b3IpKS0+YmFzZSk7CiAJCWNydGNfc3RhdGUgPSB0b19pbnRl bF9jcnRjX3N0YXRlKGNydGMtPnN0YXRlKTsKIAkJc2VxX3ByaW50ZihtLCAiRFNDX0VuYWJsZWQ6 ICVzXG4iLAogCQkJICAgeWVzbm8oY3J0Y19zdGF0ZS0+ZHNjLmNvbXByZXNzaW9uX2VuYWJsZSkp OwpAQCAtNDUzNiw3ICs0NTM2LDcgQEAgc3RhdGljIHNzaXplX3QgaTkxNV9kc2NfZmVjX3N1cHBv cnRfd3JpdGUoc3RydWN0IGZpbGUgKmZpbGUsCiAJaW50IHJldDsKIAlzdHJ1Y3QgZHJtX2Nvbm5l Y3RvciAqY29ubmVjdG9yID0KIAkJKChzdHJ1Y3Qgc2VxX2ZpbGUgKilmaWxlLT5wcml2YXRlX2Rh dGEpLT5wcml2YXRlOwotCXN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVyID0gaW50ZWxfYXR0 YWNoZWRfZW5jb2Rlcihjb25uZWN0b3IpOworCXN0cnVjdCBpbnRlbF9lbmNvZGVyICplbmNvZGVy ID0gaW50ZWxfYXR0YWNoZWRfZW5jb2Rlcih0b19pbnRlbF9jb25uZWN0b3IoY29ubmVjdG9yKSk7 CiAJc3RydWN0IGludGVsX2RwICppbnRlbF9kcCA9IGVuY190b19pbnRlbF9kcCgmZW5jb2Rlci0+ YmFzZSk7CiAKIAlpZiAobGVuID09IDApCi0tIAoyLjIzLjAKCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwt Z2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9t YWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA==