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.6 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, 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 89505C3A5A1 for ; Thu, 22 Aug 2019 14:02:44 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (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 2FA7422CE3 for ; Thu, 22 Aug 2019 14:02:44 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=bitdefender.onmicrosoft.com header.i=@bitdefender.onmicrosoft.com header.b="CzUdvZ8r" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 2FA7422CE3 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=bitdefender.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1i0nfZ-0006Tn-Va; Thu, 22 Aug 2019 14:02:29 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1i0nfY-0006Te-UI for xen-devel@lists.xenproject.org; Thu, 22 Aug 2019 14:02:29 +0000 X-Inumbo-ID: 792ad7e4-c4e5-11e9-8980-bc764e2007e4 Received: from EUR01-DB5-obe.outbound.protection.outlook.com (unknown [2a01:111:f400:fe02::703]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id 792ad7e4-c4e5-11e9-8980-bc764e2007e4; Thu, 22 Aug 2019 14:02:27 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jiJhj/xOAoremu6u9ESRReKtmnRY2+C7T76+tDamDRJlGJCnkqPBY4CiVpXdhCwwcy91zIjtB3aMLZcjouv8Ft/LQoOy7vIR0TMpwEcI/HFppoEH+cG/M6AJ2T3I0AzqmIrsR7KZdaK6xLlQu/et/VdnjYdX8XcnxXP7HdbgVP/4vxyEgOj1hXdaLRHu6qDNpGWbt+B6Fybhlhcl3+OZ61uXMtOiQZvKxsnZflwIN81MUdWetNLwOdW3yBwlOLMhXauHjGSNa0aLMWaxcFenfGLHmLtPPZ+S6g8Ir4U0ldc1GPSlHLVkGVtnz244iLKAGEFYXgcpxzueYzhMADvtew== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=rPALHPt1HIfgjmdF7S3+fMMnZ2QHXqky8WWp9AhT1MM=; b=YeMhU7dR1iWy9muXrzbZbHgP5+Hd9GYK1s/IBsSFGHZ2JoZTxXk/toYvqbc9uDGVS2fCOrSX7BL3u1kA4pv625nmwF3B9ozpX+lAtu9nIwmk0hjdGwWgmu8UGk9XYt6eIEh2615hTtdUmwNNDrSqa7JvvKYO0zZZhy03iqGuvevc6HkDUb9ziVFKYBQ6OYRXB3u+VlMl07ESuLdp7mB+4DudgK9t/NCfsaqdLb4nhATYzv5Yc9244ztZw7yvtC5vNWbCFKhIQ3XkEHL9TBesMq0X9ig2S0hLnkMq1lXVWPPFqOKuCilqyFMPCUSIP7+aRzzdzgRPdc7kf7OQIeRkTA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=bitdefender.com; dmarc=pass action=none header.from=bitdefender.com; dkim=pass header.d=bitdefender.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bitdefender.onmicrosoft.com; s=selector2-bitdefender-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=rPALHPt1HIfgjmdF7S3+fMMnZ2QHXqky8WWp9AhT1MM=; b=CzUdvZ8rwJXY/zhH5z+d0yVSpbs4k0yas6lts4oiuJhEmMaECwgGiTiI2VPAcT7ohpgda+K+fXto7SEBx2TD98lZd3PzbMPD+EeJvQDnYCLEoMi4qskeVv1+iC2Cei8+7D9+zCHlZT5WdSFzyHTdsDvE69z5TiMvTFF7DOtHWks= Received: from AM7PR02MB5750.eurprd02.prod.outlook.com (10.141.171.8) by AM7PR02MB5781.eurprd02.prod.outlook.com (10.141.172.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2178.16; Thu, 22 Aug 2019 14:02:25 +0000 Received: from AM7PR02MB5750.eurprd02.prod.outlook.com ([fe80::d422:432c:51e0:2d74]) by AM7PR02MB5750.eurprd02.prod.outlook.com ([fe80::d422:432c:51e0:2d74%4]) with mapi id 15.20.2178.020; Thu, 22 Aug 2019 14:02:25 +0000 From: Alexandru Stefan ISAILA To: "xen-devel@lists.xenproject.org" Thread-Topic: [PATCH v2] x86/mm: Add mem access rights to NPT Thread-Index: AQHVWPI5B/wD3XiZaECvNX3mnheiUA== Date: Thu, 22 Aug 2019 14:02:24 +0000 Message-ID: <20190822140210.24749-1-aisaila@bitdefender.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: PR0P264CA0113.FRAP264.PROD.OUTLOOK.COM (2603:10a6:100:19::29) To AM7PR02MB5750.eurprd02.prod.outlook.com (2603:10a6:20b:102::8) authentication-results: spf=none (sender IP is ) smtp.mailfrom=aisaila@bitdefender.com; x-ms-exchange-messagesentrepresentingtype: 1 x-mailer: git-send-email 2.17.1 x-originating-ip: [91.199.104.6] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 74e52043-aa7b-481c-e763-08d727095bf9 x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(5600166)(711020)(4605104)(1401327)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(2017052603328)(7193020); SRVR:AM7PR02MB5781; x-ms-traffictypediagnostic: AM7PR02MB5781:|AM7PR02MB5781: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8273; x-forefront-prvs: 01371B902F x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(396003)(346002)(376002)(366004)(136003)(39860400002)(199004)(189003)(316002)(2906002)(52116002)(7416002)(5660300002)(8936002)(66446008)(66556008)(64756008)(6916009)(486006)(6512007)(66946007)(8676002)(66476007)(6436002)(5640700003)(81156014)(4326008)(54906003)(50226002)(66066001)(81166006)(25786009)(102836004)(2351001)(36756003)(53936002)(305945005)(99286004)(30864003)(1076003)(476003)(14444005)(6506007)(386003)(2501003)(256004)(2616005)(478600001)(86362001)(6486002)(26005)(186003)(14454004)(7736002)(3846002)(6116002)(71190400001)(71200400001)(21314003); DIR:OUT; SFP:1102; SCL:1; SRVR:AM7PR02MB5781; H:AM7PR02MB5750.eurprd02.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: bitdefender.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: ZouNzKdNJ3M7mreS/Ng9zhmyS4SW8c5Kzasw7/tW4R7ITva4rbrhnMwNdQajuqziLA5Y6QHLeK3tyaUtz/5451cHG9IZ6INUMncCb6EXTmACHbdg81t2xWF49qb5heH2AiWR8OSQyBS9tQwYR2emxqtI9Dk/R3oOkLApPNmtMj7Ll+lLBT2a8XFKmLSDE/6JJEYpvkqMApFOjgfZDBew7yUSpbC04aU6427u7mS1Lr4+okYT7fttr5chmRZXy3gis9m61dyy1kRUgp0L2G/zTXyC9O9pqHYZZyvRDcOQLw7/bqlbZQP2T/5sO25MAUISApPer8vteDMipK2aGwcgJLFgCEPeBhybMYHhOVjwI6CHPBcci0dv0PrdgTSujL7m13C9mnRtxpa2Hcs9RFOMW4tfkPLN19thNr1qzo9819U= MIME-Version: 1.0 X-OriginatorOrg: bitdefender.com X-MS-Exchange-CrossTenant-Network-Message-Id: 74e52043-aa7b-481c-e763-08d727095bf9 X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Aug 2019 14:02:24.9399 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 487baf29-f1da-469a-9221-243f830c36f3 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: PgLIRFS7hNPSW5IpqC1c8LYwbUDseuhZ3VdWYqjPb2wTW566cr0p5tNiSND1xuLU0+aMYGn0sxRvR1Fc3jL6VSxpG7kzjmmAGnlNbUR1X4Y= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR02MB5781 Subject: [Xen-devel] [PATCH v2] x86/mm: Add mem access rights to NPT X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Petre Ovidiu PIRCALABU , "kevin.tian@intel.com" , "tamas@tklengyel.com" , "wl@xen.org" , "rcojocaru@bitdefender.com" , "george.dunlap@eu.citrix.com" , "andrew.cooper3@citrix.com" , George Dunlap , Alexandru Stefan ISAILA , "jbeulich@suse.com" , "jun.nakajima@intel.com" , "roger.pau@citrix.com" Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" VGhpcyBwYXRjaCBhZGRzIGFjY2VzcyBjb250cm9sIGZvciBOUFQgbW9kZS4KClRoZSBhY2Nlc3Mg cmlnaHRzIGFyZSBzdG9yZWQgaW4gdGhlIE5QVCBwMm0gdGFibGUgNTY6NTMuClRoZSBiaXRzIGFy ZSBmcmVlIGFmdGVyIGNsZWFyaW5nIHRoZSBJT01NVSBmbGFncyBbMV0uCgpNb2RpZnkgcDJtX3R5 cGVfdG9fZmxhZ3MoKSB0byBhY2NlcHQgYW5kIGludGVycHJldCBhbiBhY2Nlc3MgdmFsdWUsCnBh cmFsbGVsIHRvIHRoZSBlcHQgY29kZS4KCkFkZCBhIHNldF9kZWZhdWx0X2FjY2VzcygpIG1ldGhv ZCB0byB0aGUgcDJtLXB0IGFuZCBwMm0tZXB0IHZlcnNpb25zCm9mIHRoZSBwMm0gcmF0aGVyIHRo YW4gc2V0dGluZyBpdCBkaXJlY3RseSwgdG8gZGVhbCB3aXRoIGRpZmZlcmVudApkZWZhdWx0IHBl cm1pdHRlZCBhY2Nlc3MgdmFsdWVzLgoKWzFdIDg1NGE0OWE3NDg2YTAyZWRhZTViM2U1MzYxN2Jh Y2U1MjZlOWMxYjEKClNpZ25lZC1vZmYtYnk6IEFsZXhhbmRydSBJc2FpbGEgPGFpc2FpbGFAYml0 ZGVmZW5kZXIuY29tPgpTaWduZWQtb2ZmLWJ5OiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2UuZHVubGFw QGNpdHJpeC5jb20+CgotLS0KTm90ZTogVGVzdGVkIHdpdGggeGVuLWFjY2VzcyB3cml0ZS9leGVj CgpDaGFuZ2VzIHNpbmNlIFYxOgoJLSBSZW1vdmUgcmFkaXggdHJlZSBhbmQgc3RvcmUgYWNjZXNz IGJpdHMgaW4gTlBUIHAybSB0YWJsZS4KLS0tCiB4ZW4vYXJjaC94ODYvbW0vbWVtX2FjY2Vzcy5j IHwgICA3ICstLQogeGVuL2FyY2gveDg2L21tL3AybS1lcHQuYyAgICB8ICAgOSArKysKIHhlbi9h cmNoL3g4Ni9tbS9wMm0tcHQuYyAgICAgfCAxMTEgKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrLS0tLS0KIHhlbi9pbmNsdWRlL2FzbS14ODYvcDJtLmggICAgfCAgIDIgKwogNCBmaWxlcyBj aGFuZ2VkLCAxMDkgaW5zZXJ0aW9ucygrKSwgMjAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv eGVuL2FyY2gveDg2L21tL21lbV9hY2Nlc3MuYyBiL3hlbi9hcmNoL3g4Ni9tbS9tZW1fYWNjZXNz LmMKaW5kZXggMDE0NGY5MmI5OC4uZDhjYzdhNTBkZSAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2 L21tL21lbV9hY2Nlc3MuYworKysgYi94ZW4vYXJjaC94ODYvbW0vbWVtX2FjY2Vzcy5jCkBAIC0z NzQsMTAgKzM3NCw3IEBAIGxvbmcgcDJtX3NldF9tZW1fYWNjZXNzKHN0cnVjdCBkb21haW4gKmQs IGdmbl90IGdmbiwgdWludDMyX3QgbnIsCiAKICAgICAvKiBJZiByZXF1ZXN0IHRvIHNldCBkZWZh dWx0IGFjY2Vzcy4gKi8KICAgICBpZiAoIGdmbl9lcShnZm4sIElOVkFMSURfR0ZOKSApCi0gICAg ewotICAgICAgICBwMm0tPmRlZmF1bHRfYWNjZXNzID0gYTsKLSAgICAgICAgcmV0dXJuIDA7Ci0g ICAgfQorICAgICAgICByZXR1cm4gcDJtLT5zZXRfZGVmYXVsdF9hY2Nlc3MocDJtLCBhKTsKIAog ICAgIHAybV9sb2NrKHAybSk7CiAgICAgaWYgKCBhcDJtICkKQEAgLTUyMCw3ICs1MTcsNyBAQCB2 b2lkIGFyY2hfcDJtX3NldF9hY2Nlc3NfcmVxdWlyZWQoc3RydWN0IGRvbWFpbiAqZCwgYm9vbCBh Y2Nlc3NfcmVxdWlyZWQpCiAKIGJvb2wgcDJtX21lbV9hY2Nlc3Nfc2FuaXR5X2NoZWNrKGNvbnN0 IHN0cnVjdCBkb21haW4gKmQpCiB7Ci0gICAgcmV0dXJuIGlzX2h2bV9kb21haW4oZCkgJiYgY3B1 X2hhc192bXggJiYgaGFwX2VuYWJsZWQoZCk7CisgICAgcmV0dXJuIGlzX2h2bV9kb21haW4oZCkg JiYgaGFwX2VuYWJsZWQoZCk7CiB9CiAKIC8qCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvbW0v cDJtLWVwdC5jIGIveGVuL2FyY2gveDg2L21tL3AybS1lcHQuYwppbmRleCA2Yjg0NjhjNzkzLi5h NmYyMzQ3YmMxIDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvbW0vcDJtLWVwdC5jCisrKyBiL3hl bi9hcmNoL3g4Ni9tbS9wMm0tZXB0LmMKQEAgLTYyNCw2ICs2MjQsMTQgQEAgYm9vbF90IGVwdF9o YW5kbGVfbWlzY29uZmlnKHVpbnQ2NF90IGdwYSkKICAgICByZXR1cm4gc3B1cmlvdXMgPyAocmMg Pj0gMCkgOiAocmMgPiAwKTsKIH0KIAoraW50IGVwdF9zZXRfZGVmYXVsdF9hY2Nlc3Moc3RydWN0 IHAybV9kb21haW4gKnAybSwgcDJtX2FjY2Vzc190IHAybWEpCit7CisgICAgLyogQWxsIGFjY2Vz cyBpcyBwZXJtaXR0ZWQgKi8KKyAgICBwMm0tPmRlZmF1bHRfYWNjZXNzID0gcDJtYTsKKyAgICAK KyAgICByZXR1cm4gMDsKK30KKwogLyoKICAqIGVwdF9zZXRfZW50cnkoKSBjb21wdXRlcyAnbmVl ZF9tb2RpZnlfdnRkX3RhYmxlJyBmb3IgaXRzZWxmLAogICogYnkgb2JzZXJ2aW5nIHdoZXRoZXIg YW55IGdmbi0+bWZuIHRyYW5zbGF0aW9ucyBhcmUgbW9kaWZpZWQuCkBAIC0xMjIyLDYgKzEyMzAs NyBAQCBpbnQgZXB0X3AybV9pbml0KHN0cnVjdCBwMm1fZG9tYWluICpwMm0pCiAgICAgcDJtLT5j aGFuZ2VfZW50cnlfdHlwZV9nbG9iYWwgPSBlcHRfY2hhbmdlX2VudHJ5X3R5cGVfZ2xvYmFsOwog ICAgIHAybS0+Y2hhbmdlX2VudHJ5X3R5cGVfcmFuZ2UgPSBlcHRfY2hhbmdlX2VudHJ5X3R5cGVf cmFuZ2U7CiAgICAgcDJtLT5tZW1vcnlfdHlwZV9jaGFuZ2VkID0gZXB0X21lbW9yeV90eXBlX2No YW5nZWQ7CisgICAgcDJtLT5zZXRfZGVmYXVsdF9hY2Nlc3MgPSBlcHRfc2V0X2RlZmF1bHRfYWNj ZXNzOwogICAgIHAybS0+YXVkaXRfcDJtID0gTlVMTDsKICAgICBwMm0tPnRsYl9mbHVzaCA9IGVw dF90bGJfZmx1c2g7CiAKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9tbS9wMm0tcHQuYyBiL3hl bi9hcmNoL3g4Ni9tbS9wMm0tcHQuYwppbmRleCAzYTBhNTAwZDY2Li43Zjc5ZWFjOTc5IDEwMDY0 NAotLS0gYS94ZW4vYXJjaC94ODYvbW0vcDJtLXB0LmMKKysrIGIveGVuL2FyY2gveDg2L21tL3Ay bS1wdC5jCkBAIC02MywxMCArNjMsMTMgQEAKICNkZWZpbmUgbmVlZHNfcmVjYWxjKGxldmVsLCBl bnQpIF9uZWVkc19yZWNhbGMobGV2ZWwjI2VfZ2V0X2ZsYWdzKGVudCkpCiAjZGVmaW5lIHZhbGlk X3JlY2FsYyhsZXZlbCwgZW50KSAoIShsZXZlbCMjZV9nZXRfZmxhZ3MoZW50KSAmIF9QQUdFX0FD Q0VTU0VEKSkKIAorI2RlZmluZSBfUEFHRV9BQ0NFU1NfQklUUyAgKDB4MWUwMCkgLyogbWVtX2Fj Y2VzcyByaWdodHMgMTY6MTMgKi8KKwogc3RhdGljIHVuc2lnbmVkIGxvbmcgcDJtX3R5cGVfdG9f ZmxhZ3MoY29uc3Qgc3RydWN0IHAybV9kb21haW4gKnAybSwKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHAybV90eXBlX3QgdCwKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIG1mbl90IG1mbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHVuc2lnbmVkIGludCBsZXZlbCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHVuc2lnbmVkIGludCBsZXZlbCwKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHAybV9hY2Nlc3NfdCBhY2Nlc3MpCiB7CiAgICAgdW5zaWduZWQgbG9u ZyBmbGFncyA9ICh1bnNpZ25lZCBsb25nKSh0ICYgMHg3ZikgPDwgMTI7CiAKQEAgLTc5LDIzICs4 MiwyOCBAQCBzdGF0aWMgdW5zaWduZWQgbG9uZyBwMm1fdHlwZV90b19mbGFncyhjb25zdCBzdHJ1 Y3QgcDJtX2RvbWFpbiAqcDJtLAogICAgIGNhc2UgcDJtX3JhbV9wYWdlZDoKICAgICBjYXNlIHAy bV9yYW1fcGFnaW5nX2luOgogICAgIGRlZmF1bHQ6Ci0gICAgICAgIHJldHVybiBmbGFncyB8IF9Q QUdFX05YX0JJVDsKKyAgICAgICAgZmxhZ3MgfD0gX1BBR0VfTlhfQklUOworICAgICAgICBicmVh azsKICAgICBjYXNlIHAybV9ncmFudF9tYXBfcm86Ci0gICAgICAgIHJldHVybiBmbGFncyB8IFAy TV9CQVNFX0ZMQUdTIHwgX1BBR0VfTlhfQklUOworICAgICAgICBmbGFncyB8PSBQMk1fQkFTRV9G TEFHUyB8IF9QQUdFX05YX0JJVDsKKyAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBwMm1faW9yZXFf c2VydmVyOgogICAgICAgICBmbGFncyB8PSBQMk1fQkFTRV9GTEFHUyB8IF9QQUdFX1JXIHwgX1BB R0VfTlhfQklUOwogICAgICAgICBpZiAoIHAybS0+aW9yZXEuZmxhZ3MgJiBYRU5fRE1PUF9JT1JF UV9NRU1fQUNDRVNTX1dSSVRFICkKLSAgICAgICAgICAgIHJldHVybiBmbGFncyAmIH5fUEFHRV9S VzsKLSAgICAgICAgcmV0dXJuIGZsYWdzOworICAgICAgICAgICAgZmxhZ3MgJj0gfl9QQUdFX1JX OworICAgICAgICBicmVhazsKICAgICBjYXNlIHAybV9yYW1fcm86CiAgICAgY2FzZSBwMm1fcmFt X2xvZ2RpcnR5OgogICAgIGNhc2UgcDJtX3JhbV9zaGFyZWQ6Ci0gICAgICAgIHJldHVybiBmbGFn cyB8IFAyTV9CQVNFX0ZMQUdTOworICAgICAgICBmbGFncyB8PSBQMk1fQkFTRV9GTEFHUzsKKyAg ICAgICAgYnJlYWs7CiAgICAgY2FzZSBwMm1fcmFtX3J3OgotICAgICAgICByZXR1cm4gZmxhZ3Mg fCBQMk1fQkFTRV9GTEFHUyB8IF9QQUdFX1JXOworICAgICAgICBmbGFncyB8PSBQMk1fQkFTRV9G TEFHUyB8IF9QQUdFX1JXOworICAgICAgICBicmVhazsKICAgICBjYXNlIHAybV9ncmFudF9tYXBf cnc6CiAgICAgY2FzZSBwMm1fbWFwX2ZvcmVpZ246Ci0gICAgICAgIHJldHVybiBmbGFncyB8IFAy TV9CQVNFX0ZMQUdTIHwgX1BBR0VfUlcgfCBfUEFHRV9OWF9CSVQ7CisgICAgICAgIGZsYWdzIHw9 IFAyTV9CQVNFX0ZMQUdTIHwgX1BBR0VfUlcgfCBfUEFHRV9OWF9CSVQ7CisgICAgICAgIGJyZWFr OwogICAgIGNhc2UgcDJtX21taW9fZGlyZWN0OgogICAgICAgICBpZiAoICFyYW5nZXNldF9jb250 YWluc19zaW5nbGV0b24obW1pb19yb19yYW5nZXMsIG1mbl94KG1mbikpICkKICAgICAgICAgICAg IGZsYWdzIHw9IF9QQUdFX1JXOwpAQCAtMTA0LDggKzExMiwzMiBAQCBzdGF0aWMgdW5zaWduZWQg bG9uZyBwMm1fdHlwZV90b19mbGFncyhjb25zdCBzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJtLAogICAg ICAgICAgICAgZmxhZ3MgfD0gX1BBR0VfUFdUOwogICAgICAgICAgICAgQVNTRVJUKCFsZXZlbCk7 CiAgICAgICAgIH0KLSAgICAgICAgcmV0dXJuIGZsYWdzIHwgUDJNX0JBU0VfRkxBR1MgfCBfUEFH RV9QQ0Q7CisgICAgICAgIGZsYWdzIHw9IFAyTV9CQVNFX0ZMQUdTIHwgX1BBR0VfUENEOworICAg ICAgICBicmVhazsKICAgICB9CisKKyAgICBzd2l0Y2ggKCBhY2Nlc3MgKQorICAgIHsKKyAgICBj YXNlIHAybV9hY2Nlc3NfcjoKKyAgICAgICAgZmxhZ3MgfD0gX1BBR0VfTlhfQklUOworICAgICAg ICBmbGFncyAmPSB+X1BBR0VfUlc7CisgICAgICAgIGJyZWFrOworICAgIGNhc2UgcDJtX2FjY2Vz c19ydzoKKyAgICAgICAgZmxhZ3MgfD0gX1BBR0VfTlhfQklUOworICAgICAgICBicmVhazsKKyAg ICBjYXNlIHAybV9hY2Nlc3Nfcng6CisgICAgY2FzZSBwMm1fYWNjZXNzX3J4MnJ3OgorICAgICAg ICBmbGFncyAmPSB+KF9QQUdFX05YX0JJVCB8IF9QQUdFX1JXKTsKKyAgICAgICAgYnJlYWs7Cisg ICAgY2FzZSBwMm1fYWNjZXNzX3g6CisgICAgICAgIGZsYWdzICY9IH5fUEFHRV9SVzsKKyAgICAg ICAgYnJlYWs7CisgICAgY2FzZSBwMm1fYWNjZXNzX3J3eDoKKyAgICBkZWZhdWx0OgorICAgICAg ICBicmVhazsKKyAgICB9CisKKyAgICByZXR1cm4gZmxhZ3M7CiB9CiAKIApAQCAtMTUyLDYgKzE4 NCwxNyBAQCBwMm1fZnJlZV9lbnRyeShzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJtLCBsMV9wZ2VudHJ5 X3QgKnAybV9lbnRyeSwgaW50IHBhZ2Vfb3JkZXIpCiAgICAgcDJtX2ZyZWVfcHRwKHAybSwgbDFl X2dldF9wYWdlKCpwMm1fZW50cnkpKTsKIH0KIAorc3RhdGljIHZvaWQgcDJtX3NldF9hY2Nlc3Mo aW50cHRlX3QgKmVudHJ5LCBwMm1fYWNjZXNzX3QgYWNjZXNzKQoreworICAgICplbnRyeSB8PSBw dXRfcHRlX2ZsYWdzKChnZXRfcHRlX2ZsYWdzKCplbnRyeSkgJiB+X1BBR0VfQUNDRVNTX0JJVFMp IHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAoTUFTS19JTlNSKGFjY2VzcywgX1BBR0Vf QUNDRVNTX0JJVFMpKSk7Cit9CisKK3N0YXRpYyBwMm1fYWNjZXNzX3QgcDJtX2dldF9hY2Nlc3Mo aW50cHRlX3QgZW50cnkpCit7CisgICAgcmV0dXJuIChwMm1fYWNjZXNzX3QpKE1BU0tfRVhUUihn ZXRfcHRlX2ZsYWdzKGVudHJ5KSwgX1BBR0VfQUNDRVNTX0JJVFMpKTsKK30KKwogLy8gV2FsayBv bmUgbGV2ZWwgb2YgdGhlIFAyTSB0YWJsZSwgYWxsb2NhdGluZyBhIG5ldyB0YWJsZSBpZiByZXF1 aXJlZC4KIC8vIFJldHVybnMgMCBvbiBlcnJvci4KIC8vCkBAIC0yMjYsNiArMjY5LDcgQEAgcDJt X25leHRfbGV2ZWwoc3RydWN0IHAybV9kb21haW4gKnAybSwgdm9pZCAqKnRhYmxlLAogICAgICAg ICB7CiAgICAgICAgICAgICBuZXdfZW50cnkgPSBsMWVfZnJvbV9wZm4ocGZuIHwgKGkgPDwgKChs ZXZlbCAtIDEpICogUEFHRVRBQkxFX09SREVSKSksCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgZmxhZ3MpOworICAgICAgICAgICAgcDJtX3NldF9hY2Nlc3MoJm5ld19lbnRy eS5sMSwgcDJtLT5kZWZhdWx0X2FjY2Vzcyk7CiAgICAgICAgICAgICByYyA9IHAybS0+d3JpdGVf cDJtX2VudHJ5KHAybSwgZ2ZuLCBsMV9lbnRyeSArIGksIG5ld19lbnRyeSwgbGV2ZWwpOwogICAg ICAgICAgICAgaWYgKCByYyApCiAgICAgICAgICAgICB7CkBAIC0yMzcsNiArMjgxLDcgQEAgcDJt X25leHRfbGV2ZWwoc3RydWN0IHAybV9kb21haW4gKnAybSwgdm9pZCAqKnRhYmxlLAogICAgICAg ICB1bm1hcF9kb21haW5fcGFnZShsMV9lbnRyeSk7CiAKICAgICAgICAgbmV3X2VudHJ5ID0gbDFl X2Zyb21fbWZuKG1mbiwgUDJNX0JBU0VfRkxBR1MgfCBfUEFHRV9SVyk7CisgICAgICAgIHAybV9z ZXRfYWNjZXNzKCZuZXdfZW50cnkubDEsIHAybS0+ZGVmYXVsdF9hY2Nlc3MpOwogICAgICAgICBy YyA9IHAybS0+d3JpdGVfcDJtX2VudHJ5KHAybSwgZ2ZuLCBwMm1fZW50cnksIG5ld19lbnRyeSwK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXZlbCArIDEpOwogICAgICAgICBp ZiAoIHJjICkKQEAgLTQyNSw4ICs0NzAsOSBAQCBzdGF0aWMgaW50IGRvX3JlY2FsYyhzdHJ1Y3Qg cDJtX2RvbWFpbiAqcDJtLCB1bnNpZ25lZCBsb25nIGdmbikKICAgICAgICAgaWYgKCBudCAhPSBv dCApCiAgICAgICAgIHsKICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgbWZuID0gbDFlX2dldF9w Zm4oZSk7CisgICAgICAgICAgICBwMm1fYWNjZXNzX3QgYSA9IHAybV9nZXRfYWNjZXNzKGUubDEp OwogICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBmbGFncyA9IHAybV90eXBlX3RvX2ZsYWdzKHAy bSwgbnQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgX21mbihtZm4pLCBsZXZlbCk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgX21mbihtZm4pLCBsZXZlbCwgYSk7CiAKICAgICAgICAgICAgIGlm ICggbGV2ZWwgKQogICAgICAgICAgICAgewpAQCAtNDc0LDYgKzUyMCwzMiBAQCBpbnQgcDJtX3B0 X2hhbmRsZV9kZWZlcnJlZF9jaGFuZ2VzKHVpbnQ2NF90IGdwYSkKICAgICByZXR1cm4gcmM7CiB9 CiAKK3N0YXRpYyBpbnQgcDJtX3B0X2NoZWNrX2FjY2VzcyhwMm1fYWNjZXNzX3QgcDJtYSkKK3sK KyAgICBzd2l0Y2ggKCBwMm1hICkKKyAgICB7CisgICAgY2FzZSBwMm1fYWNjZXNzX246CisgICAg Y2FzZSBwMm1fYWNjZXNzX3c6CisgICAgY2FzZSBwMm1fYWNjZXNzX3d4OgorICAgIGNhc2UgcDJt X2FjY2Vzc19uMnJ3eDoKKyAgICAgICAgcmV0dXJuIC1FSU5WQUw7CisgICAgZGVmYXVsdDoKKyAg ICAgICAgYnJlYWs7CisgICAgfQorICAgIHJldHVybiAwOworfQorCitzdGF0aWMgaW50IHAybV9w dF9zZXRfZGVmYXVsdF9hY2Nlc3Moc3RydWN0IHAybV9kb21haW4gKnAybSwKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBwMm1fYWNjZXNzX3QgcDJtYSkKK3sKKyAgICBpbnQg cmMgPSBwMm1fcHRfY2hlY2tfYWNjZXNzKHAybWEpOworCisgICAgaWYgKCAhcmMgKQorICAgICAg ICBwMm0tPmRlZmF1bHRfYWNjZXNzID0gcDJtYTsKKworICAgIHJldHVybiByYzsKK30KKwogLyog Q2hlY2tzIG9ubHkgYXBwbGljYWJsZSB0byBlbnRyaWVzIHdpdGggb3JkZXIgPiBQQUdFX09SREVS XzRLICovCiBzdGF0aWMgdm9pZCBjaGVja19lbnRyeShtZm5fdCBtZm4sIHAybV90eXBlX3QgbmV3 LCBwMm1fdHlwZV90IG9sZCwKICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBv cmRlcikKQEAgLTUxNCw2ICs1ODYsOSBAQCBwMm1fcHRfc2V0X2VudHJ5KHN0cnVjdCBwMm1fZG9t YWluICpwMm0sIGdmbl90IGdmbl8sIG1mbl90IG1mbiwKICAgICBpZiAoICFzdmUgKQogICAgICAg ICByZXR1cm4gLUVPUE5PVFNVUFA7CiAKKyAgICBpZiAoIChyYyA9IHAybV9wdF9jaGVja19hY2Nl c3MocDJtYSkpICkKKyAgICAgICAgcmV0dXJuIHJjOworCiAgICAgaWYgKCB0Yl9pbml0X2RvbmUg KQogICAgIHsKICAgICAgICAgc3RydWN0IHsKQEAgLTU2NCwxMCArNjM5LDExIEBAIHAybV9wdF9z ZXRfZW50cnkoc3RydWN0IHAybV9kb21haW4gKnAybSwgZ2ZuX3QgZ2ZuXywgbWZuX3QgbWZuLAog ICAgICAgICBjaGVja19lbnRyeShtZm4sIHAybXQsIHAybV9mbGFnc190b190eXBlKGZsYWdzKSwg cGFnZV9vcmRlcik7CiAgICAgICAgIGwzZV9jb250ZW50ID0gbWZuX3ZhbGlkKG1mbikgfHwgcDJt X2FsbG93c19pbnZhbGlkX21mbihwMm10KQogICAgICAgICAgICAgPyBwMm1fbDNlX2Zyb21fcGZu KG1mbl94KG1mbiksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcDJtX3R5cGVfdG9f ZmxhZ3MocDJtLCBwMm10LCBtZm4sIDIpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHAybV90eXBlX3RvX2ZsYWdzKHAybSwgcDJtdCwgbWZuLCAyLCBwMm1hKSkKICAgICAgICAgICAg IDogbDNlX2VtcHR5KCk7CiAgICAgICAgIGVudHJ5X2NvbnRlbnQubDEgPSBsM2VfY29udGVudC5s MzsKIAorICAgICAgICBwMm1fc2V0X2FjY2VzcygmZW50cnlfY29udGVudC5sMSwgcDJtYSk7CiAg ICAgICAgIHJjID0gcDJtLT53cml0ZV9wMm1fZW50cnkocDJtLCBnZm4sIHAybV9lbnRyeSwgZW50 cnlfY29udGVudCwgMyk7CiAgICAgICAgIC8qIE5COiBwYWdpbmdfd3JpdGVfcDJtX2VudHJ5KCkg aGFuZGxlcyB0bGIgZmx1c2hlcyBwcm9wZXJseSAqLwogICAgICAgICBpZiAoIHJjICkKQEAgLTU5 NywxMCArNjczLDExIEBAIHAybV9wdF9zZXRfZW50cnkoc3RydWN0IHAybV9kb21haW4gKnAybSwg Z2ZuX3QgZ2ZuXywgbWZuX3QgbWZuLAogCiAgICAgICAgIGlmICggbWZuX3ZhbGlkKG1mbikgfHwg cDJtX2FsbG93c19pbnZhbGlkX21mbihwMm10KSApCiAgICAgICAgICAgICBlbnRyeV9jb250ZW50 ID0gcDJtX2wxZV9mcm9tX3BmbihtZm5feChtZm4pLAotICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBwMm1fdHlwZV90b19mbGFncyhwMm0sIHAybXQsIG1mbiwgMCkpOwor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwMm1fdHlwZV90b19mbGFn cyhwMm0sIHAybXQsIG1mbiwgMCwgcDJtYSkpOwogICAgICAgICBlbHNlCiAgICAgICAgICAgICBl bnRyeV9jb250ZW50ID0gbDFlX2VtcHR5KCk7CiAKKyAgICAgICAgcDJtX3NldF9hY2Nlc3MoJmVu dHJ5X2NvbnRlbnQubDEsIHAybWEpOwogICAgICAgICAvKiBsZXZlbCAxIGVudHJ5ICovCiAgICAg ICAgIHJjID0gcDJtLT53cml0ZV9wMm1fZW50cnkocDJtLCBnZm4sIHAybV9lbnRyeSwgZW50cnlf Y29udGVudCwgMSk7CiAgICAgICAgIC8qIE5COiBwYWdpbmdfd3JpdGVfcDJtX2VudHJ5KCkgaGFu ZGxlcyB0bGIgZmx1c2hlcyBwcm9wZXJseSAqLwpAQCAtNjI1LDEwICs3MDIsMTEgQEAgcDJtX3B0 X3NldF9lbnRyeShzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJtLCBnZm5fdCBnZm5fLCBtZm5fdCBtZm4s CiAgICAgICAgIGNoZWNrX2VudHJ5KG1mbiwgcDJtdCwgcDJtX2ZsYWdzX3RvX3R5cGUoZmxhZ3Mp LCBwYWdlX29yZGVyKTsKICAgICAgICAgbDJlX2NvbnRlbnQgPSBtZm5fdmFsaWQobWZuKSB8fCBw Mm1fYWxsb3dzX2ludmFsaWRfbWZuKHAybXQpCiAgICAgICAgICAgICA/IHAybV9sMmVfZnJvbV9w Zm4obWZuX3gobWZuKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwMm1fdHlwZV90 b19mbGFncyhwMm0sIHAybXQsIG1mbiwgMSkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgcDJtX3R5cGVfdG9fZmxhZ3MocDJtLCBwMm10LCBtZm4sIDEsIHAybWEpKQogICAgICAgICAg ICAgOiBsMmVfZW1wdHkoKTsKICAgICAgICAgZW50cnlfY29udGVudC5sMSA9IGwyZV9jb250ZW50 LmwyOwogCisgICAgICAgIHAybV9zZXRfYWNjZXNzKCZlbnRyeV9jb250ZW50LmwxLCBwMm1hKTsK ICAgICAgICAgcmMgPSBwMm0tPndyaXRlX3AybV9lbnRyeShwMm0sIGdmbiwgcDJtX2VudHJ5LCBl bnRyeV9jb250ZW50LCAyKTsKICAgICAgICAgLyogTkI6IHBhZ2luZ193cml0ZV9wMm1fZW50cnko KSBoYW5kbGVzIHRsYiBmbHVzaGVzIHByb3Blcmx5ICovCiAgICAgICAgIGlmICggcmMgKQpAQCAt Njc2LDggKzc1NCw3IEBAIHAybV9wdF9nZXRfZW50cnkoc3RydWN0IHAybV9kb21haW4gKnAybSwg Z2ZuX3QgZ2ZuXywKICAgICAgKiBYWFggT25jZSB3ZSBzdGFydCBleHBsaWNpdGx5IHJlZ2lzdGVy aW5nIE1NSU8gcmVnaW9ucyBpbiB0aGUgcDJtIAogICAgICAqIFhYWCB3ZSB3aWxsIHJldHVybiBw Mm1faW52YWxpZCBmb3IgdW5tYXBwZWQgZ2ZucyAqLwogICAgICp0ID0gcDJtX21taW9fZG07Ci0g ICAgLyogTm90IGltcGxlbWVudGVkIGV4Y2VwdCB3aXRoIEVQVCAqLwotICAgICphID0gcDJtX2Fj Y2Vzc19yd3g7IAorICAgICphID0gcDJtX2FjY2Vzc19uOwogCiAgICAgaWYgKCBnZm4gPiBwMm0t Pm1heF9tYXBwZWRfcGZuICkKICAgICB7CkBAIC03NDAsNiArODE3LDcgQEAgcG9kX3JldHJ5X2wz OgogICAgICAgICAgICAgICAgICAgICAgICBsMV90YWJsZV9vZmZzZXQoYWRkcikpOwogICAgICAg ICAgICAgKnQgPSBwMm1fcmVjYWxjX3R5cGUocmVjYWxjIHx8IF9uZWVkc19yZWNhbGMoZmxhZ3Mp LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcDJtX2ZsYWdzX3RvX3R5cGUoZmxh Z3MpLCBwMm0sIGdmbik7CisgICAgICAgICAgICAqYSA9IHAybV9nZXRfYWNjZXNzKGwzZS0+bDMp OwogICAgICAgICAgICAgdW5tYXBfZG9tYWluX3BhZ2UobDNlKTsKIAogICAgICAgICAgICAgQVNT RVJUKG1mbl92YWxpZChtZm4pIHx8ICFwMm1faXNfcmFtKCp0KSk7CkBAIC03NzksNiArODU3LDcg QEAgcG9kX3JldHJ5X2wyOgogICAgICAgICBtZm4gPSBfbWZuKGwyZV9nZXRfcGZuKCpsMmUpICsg bDFfdGFibGVfb2Zmc2V0KGFkZHIpKTsKICAgICAgICAgKnQgPSBwMm1fcmVjYWxjX3R5cGUocmVj YWxjIHx8IF9uZWVkc19yZWNhbGMoZmxhZ3MpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBwMm1fZmxhZ3NfdG9fdHlwZShmbGFncyksIHAybSwgZ2ZuKTsKKyAgICAgICAgKmEgPSBwMm1f Z2V0X2FjY2VzcyhsMmUtPmwyKTsKICAgICAgICAgdW5tYXBfZG9tYWluX3BhZ2UobDJlKTsKICAg ICAgICAgCiAgICAgICAgIEFTU0VSVChtZm5fdmFsaWQobWZuKSB8fCAhcDJtX2lzX3JhbSgqdCkp OwpAQCAtODE1LDYgKzg5NCw3IEBAIHBvZF9yZXRyeV9sMToKICAgICB9CiAgICAgbWZuID0gbDFl X2dldF9tZm4oKmwxZSk7CiAgICAgKnQgPSBwMm1fcmVjYWxjX3R5cGUocmVjYWxjIHx8IF9uZWVk c19yZWNhbGMoZmxhZ3MpLCBsMXQsIHAybSwgZ2ZuKTsKKyAgICAqYSA9IHAybV9nZXRfYWNjZXNz KGwxZS0+bDEpOwogICAgIHVubWFwX2RvbWFpbl9wYWdlKGwxZSk7CiAKICAgICBBU1NFUlQobWZu X3ZhbGlkKG1mbikgfHwgIXAybV9pc19hbnlfcmFtKCp0KSB8fCBwMm1faXNfcGFnaW5nKCp0KSk7 CkBAIC0xMDYzLDYgKzExNDMsNyBAQCB2b2lkIHAybV9wdF9pbml0KHN0cnVjdCBwMm1fZG9tYWlu ICpwMm0pCiAgICAgcDJtLT5jaGFuZ2VfZW50cnlfdHlwZV9nbG9iYWwgPSBwMm1fcHRfY2hhbmdl X2VudHJ5X3R5cGVfZ2xvYmFsOwogICAgIHAybS0+Y2hhbmdlX2VudHJ5X3R5cGVfcmFuZ2UgPSBw Mm1fcHRfY2hhbmdlX2VudHJ5X3R5cGVfcmFuZ2U7CiAgICAgcDJtLT53cml0ZV9wMm1fZW50cnkg PSBwYWdpbmdfd3JpdGVfcDJtX2VudHJ5OworICAgIHAybS0+c2V0X2RlZmF1bHRfYWNjZXNzID0g cDJtX3B0X3NldF9kZWZhdWx0X2FjY2VzczsKICNpZiBQMk1fQVVESVQKICAgICBwMm0tPmF1ZGl0 X3AybSA9IHAybV9wdF9hdWRpdF9wMm07CiAjZWxzZQpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUv YXNtLXg4Ni9wMm0uaCBiL3hlbi9pbmNsdWRlL2FzbS14ODYvcDJtLmgKaW5kZXggOTQyODVkYjFi NC4uMzJlNzEwNjdiNyAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9wMm0uaAorKysg Yi94ZW4vaW5jbHVkZS9hc20teDg2L3AybS5oCkBAIC0yNjksNiArMjY5LDggQEAgc3RydWN0IHAy bV9kb21haW4gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5z aWduZWQgbG9uZyBnZm4sIGwxX3BnZW50cnlfdCAqcCwKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGwxX3BnZW50cnlfdCBuZXcsIHVuc2lnbmVkIGludCBsZXZlbCk7 CiAgICAgbG9uZyAgICAgICAgICAgICAgICgqYXVkaXRfcDJtKShzdHJ1Y3QgcDJtX2RvbWFpbiAq cDJtKTsKKyAgICBpbnQgICAgICAgICAgICAgICAgKCpzZXRfZGVmYXVsdF9hY2Nlc3MpKHN0cnVj dCBwMm1fZG9tYWluICpwMm0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBwMm1fYWNjZXNzX3QgcDJtYSk7CiAKICAgICAvKgogICAgICAqIFAyTSB1cGRhdGVz IG1heSByZXF1aXJlIFRMQnMgdG8gYmUgZmx1c2hlZCAoaW52YWxpZGF0ZWQpLgotLSAKMi4xNy4x CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRl dmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9s aXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA==