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=-16.7 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,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 14050C433DB for ; Thu, 28 Jan 2021 16:26:29 +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 9DDD364DED for ; Thu, 28 Jan 2021 16:26:28 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9DDD364DED 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 5DEF16E99D; Thu, 28 Jan 2021 16:26:24 +0000 (UTC) Received: from mblankhorst.nl (mblankhorst.nl [IPv6:2a02:2308::216:3eff:fe92:dfa3]) by gabe.freedesktop.org (Postfix) with ESMTPS id 9E1376E993 for ; Thu, 28 Jan 2021 16:26:22 +0000 (UTC) From: Maarten Lankhorst To: intel-gfx@lists.freedesktop.org Date: Thu, 28 Jan 2021 17:25:16 +0100 Message-Id: <20210128162612.927917-8-maarten.lankhorst@linux.intel.com> X-Mailer: git-send-email 2.30.0 In-Reply-To: <20210128162612.927917-1-maarten.lankhorst@linux.intel.com> References: <20210128162612.927917-1-maarten.lankhorst@linux.intel.com> MIME-Version: 1.0 Subject: [Intel-gfx] [PATCH v7 07/63] drm/i915: Move HAS_STRUCT_PAGE to obj->flags X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Thomas=20Hellstr=C3=B6m?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" V2Ugd2FudCB0byByZW1vdmUgdGhlIGNoYW5naW5nIG9mIG9wcyBzdHJ1Y3R1cmUgZm9yIGF0dGFj aGluZwpwaHlzIHBhZ2VzLCBzbyB3ZSBuZWVkIHRvIGtpbGwgb2ZmIEhBU19TVFJVQ1RfUEFHRSBm cm9tIG9wcy0+ZmxhZ3MsCmFuZCBwdXQgaXQgaW4gdGhlIGJvLgoKVGhpcyB3aWxsIHJlbW92ZSBh IHBvdGVudGlhbCByYWNlIG9mIGRlcmVmZXJlbmNpbmcgdGhlIHdyb25nIG9iai0+b3BzCndpdGhv dXQgd3cgbXV0ZXggaGVsZC4KClNpZ25lZC1vZmYtYnk6IE1hYXJ0ZW4gTGFua2hvcnN0IDxtYWFy dGVuLmxhbmtob3JzdEBsaW51eC5pbnRlbC5jb20+ClJldmlld2VkLWJ5OiBUaG9tYXMgSGVsbHN0 csO2bSA8dGhvbWFzLmhlbGxzdHJvbUBsaW51eC5pbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUv ZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX2RtYWJ1Zi5jICAgICAgICAgICB8ICAyICstCiBkcml2ZXJz L2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1faW50ZXJuYWwuYyAgICAgICAgIHwgIDYgKysrLS0t CiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fbG1lbS5jICAgICAgICAgICAgIHwg IDQgKystLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX21tYW4uYyAgICAgICAg ICAgICB8ICA3ICsrKy0tLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9vYmpl Y3QuYyAgICAgICAgICAgfCAgNCArKystCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9n ZW1fb2JqZWN0LmggICAgICAgICAgIHwgIDUgKysrLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2dl bS9pOTE1X2dlbV9vYmplY3RfdHlwZXMuaCAgICAgfCAxMCArKysrKystLS0tCiBkcml2ZXJzL2dw dS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fcGFnZXMuYyAgICAgICAgICAgIHwgIDUgKystLS0KIGRy aXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9waHlzLmMgICAgICAgICAgICAgfCAgMiAr KwogZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX3JlZ2lvbi5jICAgICAgICAgICB8 ICA0ICstLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9yZWdpb24uaCAgICAg ICAgICAgfCAgMyArLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9zaG1lbS5j ICAgICAgICAgICAgfCAgOCArKysrLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVf Z2VtX3N0b2xlbi5jICAgICAgICAgICB8ICA0ICsrLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2dl bS9pOTE1X2dlbV91c2VycHRyLmMgICAgICAgICAgfCAgNiArKystLS0KIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2dlbS9zZWxmdGVzdHMvaHVnZV9nZW1fb2JqZWN0LmMgfCAgNCArKy0tCiBkcml2ZXJz L2dwdS9kcm0vaTkxNS9nZW0vc2VsZnRlc3RzL2h1Z2VfcGFnZXMuYyAgICAgIHwgMTAgKysrKyst LS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL3NlbGZ0ZXN0cy9pOTE1X2dlbV9tbWFuLmMg ICB8IDExICsrKystLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vc2VsZnRlc3RzL2k5 MTVfZ2VtX3BoeXMuYyAgIHwgMTIgKysrKysrKysrKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9n dnQvZG1hYnVmLmMgICAgICAgICAgICAgICAgICAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9p OTE1L3NlbGZ0ZXN0cy9pOTE1X2dlbV9ndHQuYyAgICAgICAgfCAgMiArLQogZHJpdmVycy9ncHUv ZHJtL2k5MTUvc2VsZnRlc3RzL21vY2tfcmVnaW9uLmMgICAgICAgICB8ICA0ICsrLS0KIDIxIGZp bGVzIGNoYW5nZWQsIDYzIGluc2VydGlvbnMoKyksIDUyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9kbWFidWYuYyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9kbWFidWYuYwppbmRleCA1Y2M4YTBiMjM4N2YuLjE5 NGQ4YmI5ZDcxOCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2Vt X2RtYWJ1Zi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9kbWFidWYu YwpAQCAtMjYxLDcgKzI2MSw3IEBAIHN0cnVjdCBkcm1fZ2VtX29iamVjdCAqaTkxNV9nZW1fcHJp bWVfaW1wb3J0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJfQogCiAJZHJtX2dlbV9wcml2YXRl X29iamVjdF9pbml0KGRldiwgJm9iai0+YmFzZSwgZG1hX2J1Zi0+c2l6ZSk7Ci0JaTkxNV9nZW1f b2JqZWN0X2luaXQob2JqLCAmaTkxNV9nZW1fb2JqZWN0X2RtYWJ1Zl9vcHMsICZsb2NrX2NsYXNz KTsKKwlpOTE1X2dlbV9vYmplY3RfaW5pdChvYmosICZpOTE1X2dlbV9vYmplY3RfZG1hYnVmX29w cywgJmxvY2tfY2xhc3MsIDApOwogCW9iai0+YmFzZS5pbXBvcnRfYXR0YWNoID0gYXR0YWNoOwog CW9iai0+YmFzZS5yZXN2ID0gZG1hX2J1Zi0+cmVzdjsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX2ludGVybmFsLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9nZW0vaTkxNV9nZW1faW50ZXJuYWwuYwppbmRleCBhZDIyZjQyNTQxYmQuLjIxY2M0MDg5N2Nh OCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX2ludGVybmFs LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX2ludGVybmFsLmMKQEAg LTEzOCw4ICsxMzgsNyBAQCBzdGF0aWMgdm9pZCBpOTE1X2dlbV9vYmplY3RfcHV0X3BhZ2VzX2lu dGVybmFsKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCiAKIHN0YXRpYyBjb25zdCBz dHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdF9vcHMgaTkxNV9nZW1fb2JqZWN0X2ludGVybmFsX29w cyA9IHsKIAkubmFtZSA9ICJpOTE1X2dlbV9vYmplY3RfaW50ZXJuYWwiLAotCS5mbGFncyA9IEk5 MTVfR0VNX09CSkVDVF9IQVNfU1RSVUNUX1BBR0UgfAotCQkgSTkxNV9HRU1fT0JKRUNUX0lTX1NI UklOS0FCTEUsCisJLmZsYWdzID0gSTkxNV9HRU1fT0JKRUNUX0lTX1NIUklOS0FCTEUsCiAJLmdl dF9wYWdlcyA9IGk5MTVfZ2VtX29iamVjdF9nZXRfcGFnZXNfaW50ZXJuYWwsCiAJLnB1dF9wYWdl cyA9IGk5MTVfZ2VtX29iamVjdF9wdXRfcGFnZXNfaW50ZXJuYWwsCiB9OwpAQCAtMTc4LDcgKzE3 Nyw4IEBAIGk5MTVfZ2VtX29iamVjdF9jcmVhdGVfaW50ZXJuYWwoc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmk5MTUsCiAJCXJldHVybiBFUlJfUFRSKC1FTk9NRU0pOwogCiAJZHJtX2dlbV9wcml2 YXRlX29iamVjdF9pbml0KCZpOTE1LT5kcm0sICZvYmotPmJhc2UsIHNpemUpOwotCWk5MTVfZ2Vt X29iamVjdF9pbml0KG9iaiwgJmk5MTVfZ2VtX29iamVjdF9pbnRlcm5hbF9vcHMsICZsb2NrX2Ns YXNzKTsKKwlpOTE1X2dlbV9vYmplY3RfaW5pdChvYmosICZpOTE1X2dlbV9vYmplY3RfaW50ZXJu YWxfb3BzLCAmbG9ja19jbGFzcywKKwkJCSAgICAgSTkxNV9CT19BTExPQ19TVFJVQ1RfUEFHRSk7 CiAKIAkvKgogCSAqIE1hcmsgdGhlIG9iamVjdCBhcyB2b2xhdGlsZSwgc3VjaCB0aGF0IHRoZSBw YWdlcyBhcmUgbWFya2VkIGFzCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0v aTkxNV9nZW1fbG1lbS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX2xtZW0u YwppbmRleCAxOTRmMzUzNDI3MTAuLmNlMWM4M2MxM2QwNSAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX2xtZW0uYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9nZW0vaTkxNV9nZW1fbG1lbS5jCkBAIC00MCwxMyArNDAsMTMgQEAgaW50IF9faTkxNV9nZW1f bG1lbV9vYmplY3RfaW5pdChzdHJ1Y3QgaW50ZWxfbWVtb3J5X3JlZ2lvbiAqbWVtLAogCXN0cnVj dCBkcm1faTkxNV9wcml2YXRlICppOTE1ID0gbWVtLT5pOTE1OwogCiAJZHJtX2dlbV9wcml2YXRl X29iamVjdF9pbml0KCZpOTE1LT5kcm0sICZvYmotPmJhc2UsIHNpemUpOwotCWk5MTVfZ2VtX29i amVjdF9pbml0KG9iaiwgJmk5MTVfZ2VtX2xtZW1fb2JqX29wcywgJmxvY2tfY2xhc3MpOworCWk5 MTVfZ2VtX29iamVjdF9pbml0KG9iaiwgJmk5MTVfZ2VtX2xtZW1fb2JqX29wcywgJmxvY2tfY2xh c3MsIGZsYWdzKTsKIAogCW9iai0+cmVhZF9kb21haW5zID0gSTkxNV9HRU1fRE9NQUlOX1dDIHwg STkxNV9HRU1fRE9NQUlOX0dUVDsKIAogCWk5MTVfZ2VtX29iamVjdF9zZXRfY2FjaGVfY29oZXJl bmN5KG9iaiwgSTkxNV9DQUNIRV9OT05FKTsKIAotCWk5MTVfZ2VtX29iamVjdF9pbml0X21lbW9y eV9yZWdpb24ob2JqLCBtZW0sIGZsYWdzKTsKKwlpOTE1X2dlbV9vYmplY3RfaW5pdF9tZW1vcnlf cmVnaW9uKG9iaiwgbWVtKTsKIAogCXJldHVybiAwOwogfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX21tYW4uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dl bS9pOTE1X2dlbV9tbWFuLmMKaW5kZXggZWMyOGE2Y2RlNDliLi5jMDAzNGQ4MTFlNTAgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9tbWFuLmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX21tYW4uYwpAQCAtMjUxLDcgKzI1MSw3IEBA IHN0YXRpYyB2bV9mYXVsdF90IHZtX2ZhdWx0X2NwdShzdHJ1Y3Qgdm1fZmF1bHQgKnZtZikKIAkJ Z290byBvdXQ7CiAKIAlpb21hcCA9IC0xOwotCWlmICghaTkxNV9nZW1fb2JqZWN0X3R5cGVfaGFz KG9iaiwgSTkxNV9HRU1fT0JKRUNUX0hBU19TVFJVQ1RfUEFHRSkpIHsKKwlpZiAoIWk5MTVfZ2Vt X29iamVjdF9oYXNfc3RydWN0X3BhZ2Uob2JqKSkgewogCQlpb21hcCA9IG9iai0+bW0ucmVnaW9u LT5pb21hcC5iYXNlOwogCQlpb21hcCAtPSBvYmotPm1tLnJlZ2lvbi0+cmVnaW9uLnN0YXJ0Owog CX0KQEAgLTY1Myw5ICs2NTMsOCBAQCBfX2Fzc2lnbl9tbWFwX29mZnNldChzdHJ1Y3QgZHJtX2Zp bGUgKmZpbGUsCiAJfQogCiAJaWYgKG1tYXBfdHlwZSAhPSBJOTE1X01NQVBfVFlQRV9HVFQgJiYK LQkgICAgIWk5MTVfZ2VtX29iamVjdF90eXBlX2hhcyhvYmosCi0JCQkJICAgICAgSTkxNV9HRU1f T0JKRUNUX0hBU19TVFJVQ1RfUEFHRSB8Ci0JCQkJICAgICAgSTkxNV9HRU1fT0JKRUNUX0hBU19J T01FTSkpIHsKKwkgICAgIWk5MTVfZ2VtX29iamVjdF9oYXNfc3RydWN0X3BhZ2Uob2JqKSAmJgor CSAgICAhaTkxNV9nZW1fb2JqZWN0X3R5cGVfaGFzKG9iaiwgSTkxNV9HRU1fT0JKRUNUX0hBU19J T01FTSkpIHsKIAkJZXJyID0gLUVOT0RFVjsKIAkJZ290byBvdXQ7CiAJfQpkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX29iamVjdC5jIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX29iamVjdC5jCmluZGV4IDcwZjc5ODQwNWY3Zi4uYjdmZTdl NGY2OWU0IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fb2Jq ZWN0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX29iamVjdC5jCkBA IC02MCw3ICs2MCw3IEBAIHZvaWQgaTkxNV9nZW1fb2JqZWN0X2ZyZWUoc3RydWN0IGRybV9pOTE1 X2dlbV9vYmplY3QgKm9iaikKIAogdm9pZCBpOTE1X2dlbV9vYmplY3RfaW5pdChzdHJ1Y3QgZHJt X2k5MTVfZ2VtX29iamVjdCAqb2JqLAogCQkJICBjb25zdCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29i amVjdF9vcHMgKm9wcywKLQkJCSAgc3RydWN0IGxvY2tfY2xhc3Nfa2V5ICprZXkpCisJCQkgIHN0 cnVjdCBsb2NrX2NsYXNzX2tleSAqa2V5LCB1bnNpZ25lZCBmbGFncykKIHsKIAlfX211dGV4X2lu aXQoJm9iai0+bW0ubG9jaywgb3BzLT5uYW1lID86ICJvYmotPm1tLmxvY2siLCBrZXkpOwogCkBA IC03OCw2ICs3OCw4IEBAIHZvaWQgaTkxNV9nZW1fb2JqZWN0X2luaXQoc3RydWN0IGRybV9pOTE1 X2dlbV9vYmplY3QgKm9iaiwKIAlpbml0X3JjdV9oZWFkKCZvYmotPnJjdSk7CiAKIAlvYmotPm9w cyA9IG9wczsKKwlHRU1fQlVHX09OKGZsYWdzICYgfkk5MTVfQk9fQUxMT0NfRkxBR1MpOworCW9i ai0+ZmxhZ3MgPSBmbGFnczsKIAogCW9iai0+bW0ubWFkdiA9IEk5MTVfTUFEVl9XSUxMTkVFRDsK IAlJTklUX1JBRElYX1RSRUUoJm9iai0+bW0uZ2V0X3BhZ2UucmFkaXgsIEdGUF9LRVJORUwgfCBf X0dGUF9OT1dBUk4pOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVf Z2VtX29iamVjdC5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX29iamVjdC5o CmluZGV4IDFhYmZjMTM0MjUwZS4uMzJkNjJmNWRjNDJlIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fb2JqZWN0LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvZ2VtL2k5MTVfZ2VtX29iamVjdC5oCkBAIC00OSw3ICs0OSw4IEBAIHZvaWQgaTkxNV9nZW1f b2JqZWN0X2ZyZWUoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaik7CiAKIHZvaWQgaTkx NV9nZW1fb2JqZWN0X2luaXQoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwKIAkJCSAg Y29uc3Qgc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3Rfb3BzICpvcHMsCi0JCQkgIHN0cnVjdCBs b2NrX2NsYXNzX2tleSAqa2V5KTsKKwkJCSAgc3RydWN0IGxvY2tfY2xhc3Nfa2V5ICprZXksCisJ CQkgIHVuc2lnbmVkIGFsbG9jX2ZsYWdzKTsKIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICoK IGk5MTVfZ2VtX29iamVjdF9jcmVhdGVfc2htZW0oc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5 MTUsCiAJCQkgICAgIHJlc291cmNlX3NpemVfdCBzaXplKTsKQEAgLTI0MSw3ICsyNDIsNyBAQCBp OTE1X2dlbV9vYmplY3RfdHlwZV9oYXMoY29uc3Qgc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3Qg Km9iaiwKIHN0YXRpYyBpbmxpbmUgYm9vbAogaTkxNV9nZW1fb2JqZWN0X2hhc19zdHJ1Y3RfcGFn ZShjb25zdCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqKQogewotCXJldHVybiBpOTE1 X2dlbV9vYmplY3RfdHlwZV9oYXMob2JqLCBJOTE1X0dFTV9PQkpFQ1RfSEFTX1NUUlVDVF9QQUdF KTsKKwlyZXR1cm4gb2JqLT5mbGFncyAmIEk5MTVfQk9fQUxMT0NfU1RSVUNUX1BBR0U7CiB9CiAK IHN0YXRpYyBpbmxpbmUgYm9vbApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2Vt L2k5MTVfZ2VtX29iamVjdF90eXBlcy5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVf Z2VtX29iamVjdF90eXBlcy5oCmluZGV4IDA0MzhlMDBkNGNhNy4uMzNiNTQ3MjdlMzA2IDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fb2JqZWN0X3R5cGVzLmgK KysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX29iamVjdF90eXBlcy5oCkBA IC0zMCw3ICszMCw2IEBAIHN0cnVjdCBpOTE1X2x1dF9oYW5kbGUgewogCiBzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX29iamVjdF9vcHMgewogCXVuc2lnbmVkIGludCBmbGFnczsKLSNkZWZpbmUgSTkxNV9H RU1fT0JKRUNUX0hBU19TVFJVQ1RfUEFHRQlCSVQoMCkKICNkZWZpbmUgSTkxNV9HRU1fT0JKRUNU X0hBU19JT01FTQlCSVQoMSkKICNkZWZpbmUgSTkxNV9HRU1fT0JKRUNUX0lTX1NIUklOS0FCTEUJ QklUKDIpCiAjZGVmaW5lIEk5MTVfR0VNX09CSkVDVF9JU19QUk9YWQlCSVQoMykKQEAgLTE3MSw5 ICsxNzAsMTIgQEAgc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgewogCXVuc2lnbmVkIGxvbmcg ZmxhZ3M7CiAjZGVmaW5lIEk5MTVfQk9fQUxMT0NfQ09OVElHVU9VUyBCSVQoMCkKICNkZWZpbmUg STkxNV9CT19BTExPQ19WT0xBVElMRSAgIEJJVCgxKQotI2RlZmluZSBJOTE1X0JPX0FMTE9DX0ZM QUdTIChJOTE1X0JPX0FMTE9DX0NPTlRJR1VPVVMgfCBJOTE1X0JPX0FMTE9DX1ZPTEFUSUxFKQot I2RlZmluZSBJOTE1X0JPX1JFQURPTkxZICAgICAgICAgQklUKDIpCi0jZGVmaW5lIEk5MTVfVElM SU5HX1FVSVJLX0JJVCAgICAzIC8qIHVua25vd24gc3dpenpsaW5nOyBkbyBub3QgcmVsZWFzZSEg Ki8KKyNkZWZpbmUgSTkxNV9CT19BTExPQ19TVFJVQ1RfUEFHRSBCSVQoMikKKyNkZWZpbmUgSTkx NV9CT19BTExPQ19GTEFHUyAoSTkxNV9CT19BTExPQ19DT05USUdVT1VTIHwgXAorCQkJICAgICBJ OTE1X0JPX0FMTE9DX1ZPTEFUSUxFIHwgXAorCQkJICAgICBJOTE1X0JPX0FMTE9DX1NUUlVDVF9Q QUdFKQorI2RlZmluZSBJOTE1X0JPX1JFQURPTkxZICAgICAgICAgQklUKDMpCisjZGVmaW5lIEk5 MTVfVElMSU5HX1FVSVJLX0JJVCAgICA0IC8qIHVua25vd24gc3dpenpsaW5nOyBkbyBub3QgcmVs ZWFzZSEgKi8KIAogCS8qCiAJICogSXMgdGhlIG9iamVjdCB0byBiZSBtYXBwZWQgYXMgcmVhZC1v bmx5IHRvIHRoZSBHUFUKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9pOTE1 X2dlbV9wYWdlcy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX3BhZ2VzLmMK aW5kZXggZDQ0YjcyZGQxM2ZlLi5iZjYxYjg4YTIxMTMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9wYWdlcy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2dlbS9pOTE1X2dlbV9wYWdlcy5jCkBAIC0zMzMsMTMgKzMzMywxMiBAQCB2b2lkICppOTE1X2dl bV9vYmplY3RfcGluX21hcChzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqLAogCQkJICAg ICAgZW51bSBpOTE1X21hcF90eXBlIHR5cGUpCiB7CiAJZW51bSBpOTE1X21hcF90eXBlIGhhc190 eXBlOwotCXVuc2lnbmVkIGludCBmbGFnczsKIAlib29sIHBpbm5lZDsKIAl2b2lkICpwdHI7CiAJ aW50IGVycjsKIAotCWZsYWdzID0gSTkxNV9HRU1fT0JKRUNUX0hBU19TVFJVQ1RfUEFHRSB8IEk5 MTVfR0VNX09CSkVDVF9IQVNfSU9NRU07Ci0JaWYgKCFpOTE1X2dlbV9vYmplY3RfdHlwZV9oYXMo b2JqLCBmbGFncykpCisJaWYgKCFpOTE1X2dlbV9vYmplY3RfaGFzX3N0cnVjdF9wYWdlKG9iaikg JiYKKwkgICAgIWk5MTVfZ2VtX29iamVjdF90eXBlX2hhcyhvYmosIEk5MTVfR0VNX09CSkVDVF9I QVNfSU9NRU0pKQogCQlyZXR1cm4gRVJSX1BUUigtRU5YSU8pOwogCiAJZXJyID0gbXV0ZXhfbG9j a19pbnRlcnJ1cHRpYmxlX25lc3RlZCgmb2JqLT5tbS5sb2NrLCBJOTE1X01NX0dFVF9QQUdFUyk7 CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fcGh5cy5jIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX3BoeXMuYwppbmRleCAzYzBiMTU3ZTJh MzUuLmQxZDlhODI0YzQ2ZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5 MTVfZ2VtX3BoeXMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fcGh5 cy5jCkBAIC0yNDAsNiArMjQwLDcgQEAgaW50IGk5MTVfZ2VtX29iamVjdF9hdHRhY2hfcGh5cyhz dHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqLCBpbnQgYWxpZ24pCiAJcGFnZXMgPSBfX2k5 MTVfZ2VtX29iamVjdF91bnNldF9wYWdlcyhvYmopOwogCiAJb2JqLT5vcHMgPSAmaTkxNV9nZW1f cGh5c19vcHM7CisJb2JqLT5mbGFncyAmPSB+STkxNV9CT19BTExPQ19TVFJVQ1RfUEFHRTsKIAog CWVyciA9IF9fX19pOTE1X2dlbV9vYmplY3RfZ2V0X3BhZ2VzKG9iaik7CiAJaWYgKGVycikKQEAg LTI1OCw2ICsyNTksNyBAQCBpbnQgaTkxNV9nZW1fb2JqZWN0X2F0dGFjaF9waHlzKHN0cnVjdCBk cm1faTkxNV9nZW1fb2JqZWN0ICpvYmosIGludCBhbGlnbikKIAogZXJyX3hmZXI6CiAJb2JqLT5v cHMgPSAmaTkxNV9nZW1fc2htZW1fb3BzOworCW9iai0+ZmxhZ3MgfD0gSTkxNV9CT19BTExPQ19T VFJVQ1RfUEFHRTsKIAlpZiAoIUlTX0VSUl9PUl9OVUxMKHBhZ2VzKSkgewogCQl1bnNpZ25lZCBp bnQgc2dfcGFnZV9zaXplcyA9IGk5MTVfc2dfcGFnZV9zaXplcyhwYWdlcy0+c2dsKTsKIApkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX3JlZ2lvbi5jIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX3JlZ2lvbi5jCmluZGV4IDc3ZGZhOTA4ZjE1 Ni4uNmE4NGZiNmRkZTI0IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkx NV9nZW1fcmVnaW9uLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX3Jl Z2lvbi5jCkBAIC0xMDYsMTMgKzEwNiwxMSBAQCBpOTE1X2dlbV9vYmplY3RfZ2V0X3BhZ2VzX2J1 ZGR5KHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmopCiB9CiAKIHZvaWQgaTkxNV9nZW1f b2JqZWN0X2luaXRfbWVtb3J5X3JlZ2lvbihzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2Jq LAotCQkJCQlzdHJ1Y3QgaW50ZWxfbWVtb3J5X3JlZ2lvbiAqbWVtLAotCQkJCQl1bnNpZ25lZCBs b25nIGZsYWdzKQorCQkJCQlzdHJ1Y3QgaW50ZWxfbWVtb3J5X3JlZ2lvbiAqbWVtKQogewogCUlO SVRfTElTVF9IRUFEKCZvYmotPm1tLmJsb2Nrcyk7CiAJb2JqLT5tbS5yZWdpb24gPSBpbnRlbF9t ZW1vcnlfcmVnaW9uX2dldChtZW0pOwogCi0Jb2JqLT5mbGFncyB8PSBmbGFnczsKIAlpZiAob2Jq LT5iYXNlLnNpemUgPD0gbWVtLT5taW5fcGFnZV9zaXplKQogCQlvYmotPmZsYWdzIHw9IEk5MTVf Qk9fQUxMT0NfQ09OVElHVU9VUzsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv Z2VtL2k5MTVfZ2VtX3JlZ2lvbi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2Vt X3JlZ2lvbi5oCmluZGV4IGYyZmY2ZjhiZmY3NC4uZWJkZGM4NmQ3OGY3IDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fcmVnaW9uLmgKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX3JlZ2lvbi5oCkBAIC0xNyw4ICsxNyw3IEBAIHZvaWQg aTkxNV9nZW1fb2JqZWN0X3B1dF9wYWdlc19idWRkeShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVj dCAqb2JqLAogCQkJCSAgICAgc3RydWN0IHNnX3RhYmxlICpwYWdlcyk7CiAKIHZvaWQgaTkxNV9n ZW1fb2JqZWN0X2luaXRfbWVtb3J5X3JlZ2lvbihzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAq b2JqLAotCQkJCQlzdHJ1Y3QgaW50ZWxfbWVtb3J5X3JlZ2lvbiAqbWVtLAotCQkJCQl1bnNpZ25l ZCBsb25nIGZsYWdzKTsKKwkJCQkJc3RydWN0IGludGVsX21lbW9yeV9yZWdpb24gKm1lbSk7CiB2 b2lkIGk5MTVfZ2VtX29iamVjdF9yZWxlYXNlX21lbW9yeV9yZWdpb24oc3RydWN0IGRybV9pOTE1 X2dlbV9vYmplY3QgKm9iaik7CiAKIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICoKZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9zaG1lbS5jIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX3NobWVtLmMKaW5kZXggY2Y4M2MyMDg2ODhjLi45 NWM2ZWNkNjQyMzQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9pOTE1X2dl bV9zaG1lbS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9pOTE1X2dlbV9zaG1lbS5j CkBAIC00MzAsOCArNDMwLDcgQEAgc3RhdGljIHZvaWQgc2htZW1fcmVsZWFzZShzdHJ1Y3QgZHJt X2k5MTVfZ2VtX29iamVjdCAqb2JqKQogCiBjb25zdCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVj dF9vcHMgaTkxNV9nZW1fc2htZW1fb3BzID0gewogCS5uYW1lID0gImk5MTVfZ2VtX29iamVjdF9z aG1lbSIsCi0JLmZsYWdzID0gSTkxNV9HRU1fT0JKRUNUX0hBU19TVFJVQ1RfUEFHRSB8Ci0JCSBJ OTE1X0dFTV9PQkpFQ1RfSVNfU0hSSU5LQUJMRSwKKwkuZmxhZ3MgPSBJOTE1X0dFTV9PQkpFQ1Rf SVNfU0hSSU5LQUJMRSwKIAogCS5nZXRfcGFnZXMgPSBzaG1lbV9nZXRfcGFnZXMsCiAJLnB1dF9w YWdlcyA9IHNobWVtX3B1dF9wYWdlcywKQEAgLTQ5MSw3ICs0OTAsOCBAQCBzdGF0aWMgaW50IHNo bWVtX29iamVjdF9pbml0KHN0cnVjdCBpbnRlbF9tZW1vcnlfcmVnaW9uICptZW0sCiAJbWFwcGlu Z19zZXRfZ2ZwX21hc2sobWFwcGluZywgbWFzayk7CiAJR0VNX0JVR19PTighKG1hcHBpbmdfZ2Zw X21hc2sobWFwcGluZykgJiBfX0dGUF9SRUNMQUlNKSk7CiAKLQlpOTE1X2dlbV9vYmplY3RfaW5p dChvYmosICZpOTE1X2dlbV9zaG1lbV9vcHMsICZsb2NrX2NsYXNzKTsKKwlpOTE1X2dlbV9vYmpl Y3RfaW5pdChvYmosICZpOTE1X2dlbV9zaG1lbV9vcHMsICZsb2NrX2NsYXNzLAorCQkJICAgICBJ OTE1X0JPX0FMTE9DX1NUUlVDVF9QQUdFKTsKIAogCW9iai0+d3JpdGVfZG9tYWluID0gSTkxNV9H RU1fRE9NQUlOX0NQVTsKIAlvYmotPnJlYWRfZG9tYWlucyA9IEk5MTVfR0VNX0RPTUFJTl9DUFU7 CkBAIC01MTUsNyArNTE1LDcgQEAgc3RhdGljIGludCBzaG1lbV9vYmplY3RfaW5pdChzdHJ1Y3Qg aW50ZWxfbWVtb3J5X3JlZ2lvbiAqbWVtLAogCiAJaTkxNV9nZW1fb2JqZWN0X3NldF9jYWNoZV9j b2hlcmVuY3kob2JqLCBjYWNoZV9sZXZlbCk7CiAKLQlpOTE1X2dlbV9vYmplY3RfaW5pdF9tZW1v cnlfcmVnaW9uKG9iaiwgbWVtLCAwKTsKKwlpOTE1X2dlbV9vYmplY3RfaW5pdF9tZW1vcnlfcmVn aW9uKG9iaiwgbWVtKTsKIAogCXJldHVybiAwOwogfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX3N0b2xlbi5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2Vt L2k5MTVfZ2VtX3N0b2xlbi5jCmluZGV4IGExZTE5N2E2ZTk5OS4uNTFjMmVmNmJkOGFjIDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fc3RvbGVuLmMKKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX3N0b2xlbi5jCkBAIC02MzAsNyArNjMw LDcgQEAgc3RhdGljIGludCBfX2k5MTVfZ2VtX29iamVjdF9jcmVhdGVfc3RvbGVuKHN0cnVjdCBp bnRlbF9tZW1vcnlfcmVnaW9uICptZW0sCiAJaW50IGVycjsKIAogCWRybV9nZW1fcHJpdmF0ZV9v YmplY3RfaW5pdCgmbWVtLT5pOTE1LT5kcm0sICZvYmotPmJhc2UsIHN0b2xlbi0+c2l6ZSk7Ci0J aTkxNV9nZW1fb2JqZWN0X2luaXQob2JqLCAmaTkxNV9nZW1fb2JqZWN0X3N0b2xlbl9vcHMsICZs b2NrX2NsYXNzKTsKKwlpOTE1X2dlbV9vYmplY3RfaW5pdChvYmosICZpOTE1X2dlbV9vYmplY3Rf c3RvbGVuX29wcywgJmxvY2tfY2xhc3MsIDApOwogCiAJb2JqLT5zdG9sZW4gPSBzdG9sZW47CiAJ b2JqLT5yZWFkX2RvbWFpbnMgPSBJOTE1X0dFTV9ET01BSU5fQ1BVIHwgSTkxNV9HRU1fRE9NQUlO X0dUVDsKQEAgLTY0MSw3ICs2NDEsNyBAQCBzdGF0aWMgaW50IF9faTkxNV9nZW1fb2JqZWN0X2Ny ZWF0ZV9zdG9sZW4oc3RydWN0IGludGVsX21lbW9yeV9yZWdpb24gKm1lbSwKIAlpZiAoZXJyKQog CQlyZXR1cm4gZXJyOwogCi0JaTkxNV9nZW1fb2JqZWN0X2luaXRfbWVtb3J5X3JlZ2lvbihvYmos IG1lbSwgMCk7CisJaTkxNV9nZW1fb2JqZWN0X2luaXRfbWVtb3J5X3JlZ2lvbihvYmosIG1lbSk7 CiAKIAlyZXR1cm4gMDsKIH0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9p OTE1X2dlbV91c2VycHRyLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fdXNl cnB0ci5jCmluZGV4IDNlNDc4NWMyZGZhMi4uMGY5MDI0YzYyYzA2IDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fdXNlcnB0ci5jCisrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2dlbS9pOTE1X2dlbV91c2VycHRyLmMKQEAgLTcwMiw4ICs3MDIsNyBAQCBpOTE1 X2dlbV91c2VycHRyX2RtYWJ1Zl9leHBvcnQoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9i aikKIAogc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0X29wcyBpOTE1X2dl bV91c2VycHRyX29wcyA9IHsKIAkubmFtZSA9ICJpOTE1X2dlbV9vYmplY3RfdXNlcnB0ciIsCi0J LmZsYWdzID0gSTkxNV9HRU1fT0JKRUNUX0hBU19TVFJVQ1RfUEFHRSB8Ci0JCSBJOTE1X0dFTV9P QkpFQ1RfSVNfU0hSSU5LQUJMRSB8CisJLmZsYWdzID0gSTkxNV9HRU1fT0JKRUNUX0lTX1NIUklO S0FCTEUgfAogCQkgSTkxNV9HRU1fT0JKRUNUX05PX01NQVAgfAogCQkgSTkxNV9HRU1fT0JKRUNU X0FTWU5DX0NBTkNFTCwKIAkuZ2V0X3BhZ2VzID0gaTkxNV9nZW1fdXNlcnB0cl9nZXRfcGFnZXMs CkBAIC03OTYsNyArNzk1LDggQEAgaTkxNV9nZW1fdXNlcnB0cl9pb2N0bChzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2LAogCQlyZXR1cm4gLUVOT01FTTsKIAogCWRybV9nZW1fcHJpdmF0ZV9vYmplY3Rf aW5pdChkZXYsICZvYmotPmJhc2UsIGFyZ3MtPnVzZXJfc2l6ZSk7Ci0JaTkxNV9nZW1fb2JqZWN0 X2luaXQob2JqLCAmaTkxNV9nZW1fdXNlcnB0cl9vcHMsICZsb2NrX2NsYXNzKTsKKwlpOTE1X2dl bV9vYmplY3RfaW5pdChvYmosICZpOTE1X2dlbV91c2VycHRyX29wcywgJmxvY2tfY2xhc3MsCisJ CQkgICAgIEk5MTVfQk9fQUxMT0NfU1RSVUNUX1BBR0UpOwogCW9iai0+cmVhZF9kb21haW5zID0g STkxNV9HRU1fRE9NQUlOX0NQVTsKIAlvYmotPndyaXRlX2RvbWFpbiA9IEk5MTVfR0VNX0RPTUFJ Tl9DUFU7CiAJaTkxNV9nZW1fb2JqZWN0X3NldF9jYWNoZV9jb2hlcmVuY3kob2JqLCBJOTE1X0NB Q0hFX0xMQyk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vc2VsZnRlc3Rz L2h1Z2VfZ2VtX29iamVjdC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL3NlbGZ0ZXN0cy9o dWdlX2dlbV9vYmplY3QuYwppbmRleCAyZmI1MDFhNzhhODUuLjBjOGVjZmRmNTQwNSAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL3NlbGZ0ZXN0cy9odWdlX2dlbV9vYmplY3Qu YworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vc2VsZnRlc3RzL2h1Z2VfZ2VtX29iamVj dC5jCkBAIC04OSw3ICs4OSw2IEBAIHN0YXRpYyB2b2lkIGh1Z2VfcHV0X3BhZ2VzKHN0cnVjdCBk cm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2k5MTVf Z2VtX29iamVjdF9vcHMgaHVnZV9vcHMgPSB7CiAJLm5hbWUgPSAiaHVnZS1nZW0iLAotCS5mbGFn cyA9IEk5MTVfR0VNX09CSkVDVF9IQVNfU1RSVUNUX1BBR0UsCiAJLmdldF9wYWdlcyA9IGh1Z2Vf Z2V0X3BhZ2VzLAogCS5wdXRfcGFnZXMgPSBodWdlX3B1dF9wYWdlcywKIH07CkBAIC0xMTUsNyAr MTE0LDggQEAgaHVnZV9nZW1fb2JqZWN0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1LAog CQlyZXR1cm4gRVJSX1BUUigtRU5PTUVNKTsKIAogCWRybV9nZW1fcHJpdmF0ZV9vYmplY3RfaW5p dCgmaTkxNS0+ZHJtLCAmb2JqLT5iYXNlLCBkbWFfc2l6ZSk7Ci0JaTkxNV9nZW1fb2JqZWN0X2lu aXQob2JqLCAmaHVnZV9vcHMsICZsb2NrX2NsYXNzKTsKKwlpOTE1X2dlbV9vYmplY3RfaW5pdChv YmosICZodWdlX29wcywgJmxvY2tfY2xhc3MsCisJCQkgICAgIEk5MTVfQk9fQUxMT0NfU1RSVUNU X1BBR0UpOwogCiAJb2JqLT5yZWFkX2RvbWFpbnMgPSBJOTE1X0dFTV9ET01BSU5fQ1BVOwogCW9i ai0+d3JpdGVfZG9tYWluID0gSTkxNV9HRU1fRE9NQUlOX0NQVTsKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2dlbS9zZWxmdGVzdHMvaHVnZV9wYWdlcy5jIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvZ2VtL3NlbGZ0ZXN0cy9odWdlX3BhZ2VzLmMKaW5kZXggYWFjZjQ4NTZjY2I0Li42 YzIyNDFiNzM4N2IgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9zZWxmdGVz dHMvaHVnZV9wYWdlcy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9zZWxmdGVzdHMv aHVnZV9wYWdlcy5jCkBAIC0xNDAsOCArMTQwLDcgQEAgc3RhdGljIHZvaWQgcHV0X2h1Z2VfcGFn ZXMoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwKIAogc3RhdGljIGNvbnN0IHN0cnVj dCBkcm1faTkxNV9nZW1fb2JqZWN0X29wcyBodWdlX3BhZ2Vfb3BzID0gewogCS5uYW1lID0gImh1 Z2UtZ2VtIiwKLQkuZmxhZ3MgPSBJOTE1X0dFTV9PQkpFQ1RfSEFTX1NUUlVDVF9QQUdFIHwKLQkJ IEk5MTVfR0VNX09CSkVDVF9JU19TSFJJTktBQkxFLAorCS5mbGFncyA9IEk5MTVfR0VNX09CSkVD VF9JU19TSFJJTktBQkxFLAogCS5nZXRfcGFnZXMgPSBnZXRfaHVnZV9wYWdlcywKIAkucHV0X3Bh Z2VzID0gcHV0X2h1Z2VfcGFnZXMsCiB9OwpAQCAtMTY4LDcgKzE2Nyw4IEBAIGh1Z2VfcGFnZXNf b2JqZWN0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1LAogCQlyZXR1cm4gRVJSX1BUUigt RU5PTUVNKTsKIAogCWRybV9nZW1fcHJpdmF0ZV9vYmplY3RfaW5pdCgmaTkxNS0+ZHJtLCAmb2Jq LT5iYXNlLCBzaXplKTsKLQlpOTE1X2dlbV9vYmplY3RfaW5pdChvYmosICZodWdlX3BhZ2Vfb3Bz LCAmbG9ja19jbGFzcyk7CisJaTkxNV9nZW1fb2JqZWN0X2luaXQob2JqLCAmaHVnZV9wYWdlX29w cywgJmxvY2tfY2xhc3MsCisJCQkgICAgIEk5MTVfQk9fQUxMT0NfU1RSVUNUX1BBR0UpOwogCiAJ aTkxNV9nZW1fb2JqZWN0X3NldF92b2xhdGlsZShvYmopOwogCkBAIC0zMTksOSArMzE5LDkgQEAg ZmFrZV9odWdlX3BhZ2VzX29iamVjdChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSwgdTY0 IHNpemUsIGJvb2wgc2luZ2xlKQogCWRybV9nZW1fcHJpdmF0ZV9vYmplY3RfaW5pdCgmaTkxNS0+ ZHJtLCAmb2JqLT5iYXNlLCBzaXplKTsKIAogCWlmIChzaW5nbGUpCi0JCWk5MTVfZ2VtX29iamVj dF9pbml0KG9iaiwgJmZha2Vfb3BzX3NpbmdsZSwgJmxvY2tfY2xhc3MpOworCQlpOTE1X2dlbV9v YmplY3RfaW5pdChvYmosICZmYWtlX29wc19zaW5nbGUsICZsb2NrX2NsYXNzLCAwKTsKIAllbHNl Ci0JCWk5MTVfZ2VtX29iamVjdF9pbml0KG9iaiwgJmZha2Vfb3BzLCAmbG9ja19jbGFzcyk7CisJ CWk5MTVfZ2VtX29iamVjdF9pbml0KG9iaiwgJmZha2Vfb3BzLCAmbG9ja19jbGFzcywgMCk7CiAK IAlpOTE1X2dlbV9vYmplY3Rfc2V0X3ZvbGF0aWxlKG9iaik7CiAKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2dlbS9zZWxmdGVzdHMvaTkxNV9nZW1fbW1hbi5jIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvZ2VtL3NlbGZ0ZXN0cy9pOTE1X2dlbV9tbWFuLmMKaW5kZXggZDQyOWM3NjQz ZmYyLi40NDkwOGM2OGUzMzEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9z ZWxmdGVzdHMvaTkxNV9nZW1fbW1hbi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9z ZWxmdGVzdHMvaTkxNV9nZW1fbW1hbi5jCkBAIC04MzUsOSArODM1LDggQEAgc3RhdGljIGJvb2wg Y2FuX21tYXAoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwgZW51bSBpOTE1X21tYXBf dHlwZSB0eXBlKQogCQlyZXR1cm4gZmFsc2U7CiAKIAlpZiAodHlwZSAhPSBJOTE1X01NQVBfVFlQ RV9HVFQgJiYKLQkgICAgIWk5MTVfZ2VtX29iamVjdF90eXBlX2hhcyhvYmosCi0JCQkJICAgICAg STkxNV9HRU1fT0JKRUNUX0hBU19TVFJVQ1RfUEFHRSB8Ci0JCQkJICAgICAgSTkxNV9HRU1fT0JK RUNUX0hBU19JT01FTSkpCisJICAgICFpOTE1X2dlbV9vYmplY3RfaGFzX3N0cnVjdF9wYWdlKG9i aikgJiYKKwkgICAgIWk5MTVfZ2VtX29iamVjdF90eXBlX2hhcyhvYmosIEk5MTVfR0VNX09CSkVD VF9IQVNfSU9NRU0pKQogCQlyZXR1cm4gZmFsc2U7CiAKIAlyZXR1cm4gdHJ1ZTsKQEAgLTk3Nywx MCArOTc2LDggQEAgc3RhdGljIGNvbnN0IGNoYXIgKnJlcHJfbW1hcF90eXBlKGVudW0gaTkxNV9t bWFwX3R5cGUgdHlwZSkKIAogc3RhdGljIGJvb2wgY2FuX2FjY2Vzcyhjb25zdCBzdHJ1Y3QgZHJt X2k5MTVfZ2VtX29iamVjdCAqb2JqKQogewotCXVuc2lnbmVkIGludCBmbGFncyA9Ci0JCUk5MTVf R0VNX09CSkVDVF9IQVNfU1RSVUNUX1BBR0UgfCBJOTE1X0dFTV9PQkpFQ1RfSEFTX0lPTUVNOwot Ci0JcmV0dXJuIGk5MTVfZ2VtX29iamVjdF90eXBlX2hhcyhvYmosIGZsYWdzKTsKKwlyZXR1cm4g aTkxNV9nZW1fb2JqZWN0X2hhc19zdHJ1Y3RfcGFnZShvYmopIHx8CisJICAgICAgIGk5MTVfZ2Vt X29iamVjdF90eXBlX2hhcyhvYmosIEk5MTVfR0VNX09CSkVDVF9IQVNfSU9NRU0pOwogfQogCiBz dGF0aWMgaW50IF9faWd0X21tYXBfYWNjZXNzKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1 LApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL3NlbGZ0ZXN0cy9pOTE1X2dl bV9waHlzLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vc2VsZnRlc3RzL2k5MTVfZ2VtX3Bo eXMuYwppbmRleCA4Y2VlNjhjNmE2ZGMuLmZiNmExNzcwMTMxMCAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvZ2VtL3NlbGZ0ZXN0cy9pOTE1X2dlbV9waHlzLmMKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvZ2VtL3NlbGZ0ZXN0cy9pOTE1X2dlbV9waHlzLmMKQEAgLTI1LDEyICsy NSwyNCBAQCBzdGF0aWMgaW50IG1vY2tfcGh5c19vYmplY3Qodm9pZCAqYXJnKQogCQlnb3RvIG91 dDsKIAl9CiAKKwlpZiAoIWk5MTVfZ2VtX29iamVjdF9oYXNfc3RydWN0X3BhZ2Uob2JqKSkgewor CQllcnIgPSAtRUlOVkFMOworCQlwcl9lcnIoInNobWVtIGhhcyBubyBzdHJ1Y3QgcGFnZVxuIik7 CisJCWdvdG8gb3V0X29iajsKKwl9CisKIAllcnIgPSBpOTE1X2dlbV9vYmplY3RfYXR0YWNoX3Bo eXMob2JqLCBQQUdFX1NJWkUpOwogCWlmIChlcnIpIHsKIAkJcHJfZXJyKCJpOTE1X2dlbV9vYmpl Y3RfYXR0YWNoX3BoeXMgZmFpbGVkLCBlcnI9JWRcbiIsIGVycik7CiAJCWdvdG8gb3V0X29iajsK IAl9CiAKKwlpZiAoaTkxNV9nZW1fb2JqZWN0X2hhc19zdHJ1Y3RfcGFnZShvYmopKSB7CisJCWVy ciA9IC1FSU5WQUw7CisJCXByX2Vycigic2htZW0gaGFzIGEgc3RydWN0IHBhZ2VcbiIpOworCQln b3RvIG91dF9vYmo7CisJfQorCiAJaWYgKG9iai0+b3BzICE9ICZpOTE1X2dlbV9waHlzX29wcykg ewogCQlwcl9lcnIoImk5MTVfZ2VtX29iamVjdF9hdHRhY2hfcGh5cyBkaWQgbm90IGNyZWF0ZSBh IHBoeXMgb2JqZWN0XG4iKTsKIAkJZXJyID0gLUVJTlZBTDsKZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2d2dC9kbWFidWYuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d2dC9kbWFi dWYuYwppbmRleCBjM2ViMzgzOGZlODguLmQ0Zjg4M2YzNWI5NSAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvZ3Z0L2RtYWJ1Zi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d2 dC9kbWFidWYuYwpAQCAtMjE4LDcgKzIxOCw3IEBAIHN0YXRpYyBzdHJ1Y3QgZHJtX2k5MTVfZ2Vt X29iamVjdCAqdmdwdV9jcmVhdGVfZ2VtKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAKIAlkcm1f Z2VtX3ByaXZhdGVfb2JqZWN0X2luaXQoZGV2LCAmb2JqLT5iYXNlLAogCQlyb3VuZHVwKGluZm8t PnNpemUsIFBBR0VfU0laRSkpOwotCWk5MTVfZ2VtX29iamVjdF9pbml0KG9iaiwgJmludGVsX3Zn cHVfZ2VtX29wcywgJmxvY2tfY2xhc3MpOworCWk5MTVfZ2VtX29iamVjdF9pbml0KG9iaiwgJmlu dGVsX3ZncHVfZ2VtX29wcywgJmxvY2tfY2xhc3MsIDApOwogCWk5MTVfZ2VtX29iamVjdF9zZXRf cmVhZG9ubHkob2JqKTsKIAogCW9iai0+cmVhZF9kb21haW5zID0gSTkxNV9HRU1fRE9NQUlOX0dU VDsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L3NlbGZ0ZXN0cy9pOTE1X2dlbV9n dHQuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L3NlbGZ0ZXN0cy9pOTE1X2dlbV9ndHQuYwppbmRl eCBjMWFkZWE4NzY1YTkuLjViZTZkY2Y0MzU3ZSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvc2VsZnRlc3RzL2k5MTVfZ2VtX2d0dC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L3NlbGZ0ZXN0cy9pOTE1X2dlbV9ndHQuYwpAQCAtMTIxLDcgKzEyMSw3IEBAIGZha2VfZG1hX29i amVjdChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSwgdTY0IHNpemUpCiAJCWdvdG8gZXJy OwogCiAJZHJtX2dlbV9wcml2YXRlX29iamVjdF9pbml0KCZpOTE1LT5kcm0sICZvYmotPmJhc2Us IHNpemUpOwotCWk5MTVfZ2VtX29iamVjdF9pbml0KG9iaiwgJmZha2Vfb3BzLCAmbG9ja19jbGFz cyk7CisJaTkxNV9nZW1fb2JqZWN0X2luaXQob2JqLCAmZmFrZV9vcHMsICZsb2NrX2NsYXNzLCAw KTsKIAogCWk5MTVfZ2VtX29iamVjdF9zZXRfdm9sYXRpbGUob2JqKTsKIApkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvc2VsZnRlc3RzL21vY2tfcmVnaW9uLmMgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9zZWxmdGVzdHMvbW9ja19yZWdpb24uYwppbmRleCAzYzYwMjE0MTUyNzQuLjVk MmQwMTBhMWUyMiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvc2VsZnRlc3RzL21v Y2tfcmVnaW9uLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvc2VsZnRlc3RzL21vY2tfcmVn aW9uLmMKQEAgLTI3LDEzICsyNywxMyBAQCBzdGF0aWMgaW50IG1vY2tfb2JqZWN0X2luaXQoc3Ry dWN0IGludGVsX21lbW9yeV9yZWdpb24gKm1lbSwKIAkJcmV0dXJuIC1FMkJJRzsKIAogCWRybV9n ZW1fcHJpdmF0ZV9vYmplY3RfaW5pdCgmaTkxNS0+ZHJtLCAmb2JqLT5iYXNlLCBzaXplKTsKLQlp OTE1X2dlbV9vYmplY3RfaW5pdChvYmosICZtb2NrX3JlZ2lvbl9vYmpfb3BzLCAmbG9ja19jbGFz cyk7CisJaTkxNV9nZW1fb2JqZWN0X2luaXQob2JqLCAmbW9ja19yZWdpb25fb2JqX29wcywgJmxv Y2tfY2xhc3MsIGZsYWdzKTsKIAogCW9iai0+cmVhZF9kb21haW5zID0gSTkxNV9HRU1fRE9NQUlO X0NQVSB8IEk5MTVfR0VNX0RPTUFJTl9HVFQ7CiAKIAlpOTE1X2dlbV9vYmplY3Rfc2V0X2NhY2hl X2NvaGVyZW5jeShvYmosIEk5MTVfQ0FDSEVfTk9ORSk7CiAKLQlpOTE1X2dlbV9vYmplY3RfaW5p dF9tZW1vcnlfcmVnaW9uKG9iaiwgbWVtLCBmbGFncyk7CisJaTkxNV9nZW1fb2JqZWN0X2luaXRf bWVtb3J5X3JlZ2lvbihvYmosIG1lbSk7CiAKIAlyZXR1cm4gMDsKIH0KLS0gCjIuMzAuMAoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1h aWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMu ZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==