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=-4.0 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY, URIBL_BLOCKED autolearn=no 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 21B58C0650E for ; Mon, 1 Jul 2019 12:00:54 +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 DF76D21721 for ; Mon, 1 Jul 2019 12:00:53 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org DF76D21721 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=suse.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 1hhuzD-0006xp-3L; Mon, 01 Jul 2019 12:00:43 +0000 Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hhuzB-0006xi-KS for xen-devel@lists.xenproject.org; Mon, 01 Jul 2019 12:00:41 +0000 X-Inumbo-ID: d828fd1f-9bf7-11e9-8980-bc764e045a96 Received: from m9a0001g.houston.softwaregrp.com (unknown [15.124.64.66]) by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS id d828fd1f-9bf7-11e9-8980-bc764e045a96; Mon, 01 Jul 2019 12:00:40 +0000 (UTC) Received: FROM m9a0001g.houston.softwaregrp.com (15.121.0.190) BY m9a0001g.houston.softwaregrp.com WITH ESMTP; Mon, 1 Jul 2019 12:00:34 +0000 Received: from M4W0335.microfocus.com (2002:f78:1193::f78:1193) by M9W0067.microfocus.com (2002:f79:be::f79:be) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1591.10; Mon, 1 Jul 2019 11:57:01 +0000 Received: from NAM04-SN1-obe.outbound.protection.outlook.com (15.124.8.13) by M4W0335.microfocus.com (15.120.17.147) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1591.10 via Frontend Transport; Mon, 1 Jul 2019 11:57:01 +0000 ARC-Seal: i=1; a=rsa-sha256; s=testarcselector01; d=microsoft.com; cv=none; b=n9tm08Od10ZrrHvOsf0cBrUloS4doDkzcCB3PXCzoY8es7g1FE4z2+ISYWU9oEUgrXpXIy++vzNYhdwRuU29O9L4aXu1CRFK9B2k21qzO0pVmyRqGpSu/CZj0ciU9AOA+O9GzAVZUVLBzr9C+pCEetD0rVm8xuDAKJ48CZ1EYuM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=testarcselector01; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=qTUGigzST22Ggd455lqtF5NFTnRxZPs3CFBkXe3JsFE=; b=khP4QZHpopE596g45wNkK30qEc2dm2LY1drYtx8aSDNILRtaXbanmsq/Vvel5iCvHdnOoT31RSRiuyLJFZuvM89vJN291I1rWbrtxMDnL+mCben8vhH/o7ZDdc7fP321AyWnlXlUDG0VwY3CNUaSPJ28rvoSP8YKjK1bvpMv4O0= ARC-Authentication-Results: i=1; test.office365.com 1;spf=none;dmarc=none;dkim=none;arc=none Received: from BY5PR18MB3394.namprd18.prod.outlook.com (10.255.139.95) by BY5PR18MB3364.namprd18.prod.outlook.com (10.255.139.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2008.16; Mon, 1 Jul 2019 11:57:00 +0000 Received: from BY5PR18MB3394.namprd18.prod.outlook.com ([fe80::2005:4b02:1d60:d1bc]) by BY5PR18MB3394.namprd18.prod.outlook.com ([fe80::2005:4b02:1d60:d1bc%3]) with mapi id 15.20.2008.020; Mon, 1 Jul 2019 11:57:00 +0000 From: Jan Beulich To: "xen-devel@lists.xenproject.org" Thread-Topic: [PATCH 3/6] x86emul: generalize invlpg() hook Thread-Index: AQHVMAQWFrGa6GRq1E+F8G5BxEVueQ== Date: Mon, 1 Jul 2019 11:56:59 +0000 Message-ID: <77e4d1ce-5f6b-958f-a5ce-e54f45144749@suse.com> References: <2d69ac51-9c4a-96f9-fd37-578658076571@suse.com> In-Reply-To: <2d69ac51-9c4a-96f9-fd37-578658076571@suse.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: DB6PR05CA0002.eurprd05.prod.outlook.com (2603:10a6:6:14::15) To BY5PR18MB3394.namprd18.prod.outlook.com (2603:10b6:a03:194::31) authentication-results: spf=none (sender IP is ) smtp.mailfrom=JBeulich@suse.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [87.234.252.170] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 10018ca3-662f-4352-ad77-08d6fe1b3931 x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600148)(711020)(4605104)(1401327)(2017052603328)(7193020); SRVR:BY5PR18MB3364; x-ms-traffictypediagnostic: BY5PR18MB3364: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-forefront-prvs: 00851CA28B x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(4636009)(346002)(39860400002)(396003)(376002)(366004)(136003)(189003)(199004)(81156014)(76176011)(6916009)(6506007)(26005)(7736002)(8936002)(81166006)(305945005)(80792005)(8676002)(102836004)(99286004)(386003)(72206003)(2906002)(256004)(31686004)(2501003)(25786009)(316002)(52116002)(14444005)(36756003)(14454004)(66066001)(73956011)(5660300002)(5640700003)(66446008)(3846002)(71190400001)(11346002)(6512007)(486006)(71200400001)(6436002)(66946007)(478600001)(66556008)(6486002)(6116002)(86362001)(53936002)(2351001)(476003)(4326008)(68736007)(31696002)(54906003)(66476007)(64756008)(2616005)(186003)(446003); DIR:OUT; SFP:1102; SCL:1; SRVR:BY5PR18MB3364; H:BY5PR18MB3394.namprd18.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: suse.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: rkJJAx7TA45dXw38i753m/dWBbKg1bIcxMXAu5F+1/bD1eqD0zpm4LoTESIl966PxngDh4QbrI5pNOb3iIl3rANFp2IYE45GpMafUMC7vwJL1dP4QgLffIdp4X4VbpfxuSfX0i3sl4sDMVFWfj0on23YS02TOZkERgqvLUUe6uJuicTXZGI/mLynNaEXA2o9mA2wNrUQUipHlFeI3tIGAldXyCbAMLCe9LY1Jae8I4QQYj5BNPUVeK7JFHHgyGDkqeLDLFEj0uF3+8lqM6jw3wgBoTDsPuiSlWpcdCh8OqS98LEeJykuoMHcG1cWVL4nTdipb8WEI+ml/WDPRCuFDJ//Yg2SAcOMeyy17jAH/rm+w8UQi+49PvDRpyKSzsoOc7EjSOJrQU30F1EQEtFSm/zQ/3x2/SHmg4notbDAb6c= Content-ID: <3F0A9A7085C48940B4D7EB2D529B5821@namprd18.prod.outlook.com> MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 10018ca3-662f-4352-ad77-08d6fe1b3931 X-MS-Exchange-CrossTenant-originalarrivaltime: 01 Jul 2019 11:56:59.8681 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 856b813c-16e5-49a5-85ec-6f081e13b527 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: JBeulich@suse.com X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR18MB3364 X-OriginatorOrg: suse.com Subject: [Xen-devel] [PATCH 3/6] x86emul: generalize invlpg() hook 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: Andrew Cooper , Paul Durrant , Wei Liu , RogerPau Monne Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" VGhlIGhvb2sgaXMgYWxyZWFkeSBpbiB1c2UgZm9yIElOVkxQR0EgYXMgd2VsbC4gUmVuYW1lIHRo ZSBob29rIGFuZCBhZGQNCnBhcmFtZXRlcnMuIEZvciB0aGUgbW9tZW50IElOVkxQR0Egd2l0aCBh IG5vbi16ZXJvIEFTSUQgcmVtYWlucw0KdW5zdXBwb3J0ZWQsIGJ1dCB0aGUgVE9ETyBpdGVtIGdl dHMgcHVzaGVkIGludG8gdGhlIGFjdHVhbCBob29rIGhhbmRsZXIuDQoNClNpZ25lZC1vZmYtYnk6 IEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNvbT4NCi0tLQ0KdjI6IE5ldy4NCg0KLS0tIGEv dG9vbHMvZnV6ei94ODZfaW5zdHJ1Y3Rpb25fZW11bGF0b3IvZnV6ei1lbXVsLmMNCisrKyBiL3Rv b2xzL2Z1enoveDg2X2luc3RydWN0aW9uX2VtdWxhdG9yL2Z1enotZW11bC5jDQpAQCAtMzcwLDE2 ICszNzAsMjMgQEAgc3RhdGljIGludCBmdXp6X2NtcHhjaGcoDQogICAgICByZXR1cm4gbWF5YmVf ZmFpbChjdHh0LCAiY21weGNoZyIsIHRydWUpOw0KICB9DQogIA0KLXN0YXRpYyBpbnQgZnV6el9p bnZscGcoDQotICAgIGVudW0geDg2X3NlZ21lbnQgc2VnLA0KLSAgICB1bnNpZ25lZCBsb25nIG9m ZnNldCwNCitzdGF0aWMgaW50IGZ1enpfdGxiX29wKA0KKyAgICBlbnVtIHg4NmVtdWxfdGxiX29w IG9wLA0KKyAgICB1bnNpZ25lZCBsb25nIGFkZHIsDQorICAgIHVuc2lnbmVkIGxvbmcgYXV4LA0K ICAgICAgc3RydWN0IHg4Nl9lbXVsYXRlX2N0eHQgKmN0eHQpDQogIHsNCi0gICAgLyogaW52bHBn KCksIHVubGlrZSBhbGwgb3RoZXIgaG9va3MsIG1heSBiZSBjYWxsZWQgd2l0aCB4ODZfc2VnX25v bmUuICovDQotICAgIGFzc2VydChpc194ODZfdXNlcl9zZWdtZW50KHNlZykgfHwgc2VnID09IHg4 Nl9zZWdfbm9uZSk7DQotICAgIGFzc2VydChjdHh0LT5hZGRyX3NpemUgPT0gNjQgfHwgIShvZmZz ZXQgPj4gMzIpKTsNCisgICAgc3dpdGNoICggb3AgKQ0KKyAgICB7DQorICAgIGNhc2UgeDg2ZW11 bF9pbnZscGc6DQorICAgICAgICBhc3NlcnQoaXNfeDg2X3VzZXJfc2VnbWVudChhdXgpKTsNCisg ICAgICAgIC8qIGZhbGwgdGhyb3VnaCAqLw0KKyAgICBjYXNlIHg4NmVtdWxfaW52bHBnYToNCisg ICAgICAgIGFzc2VydChjdHh0LT5hZGRyX3NpemUgPT0gNjQgfHwgIShhZGRyID4+IDMyKSk7DQor ICAgICAgICBicmVhazsNCisgICAgfQ0KICANCi0gICAgcmV0dXJuIG1heWJlX2ZhaWwoY3R4dCwg ImludmxwZyIsIGZhbHNlKTsNCisgICAgcmV0dXJuIG1heWJlX2ZhaWwoY3R4dCwgIlRMQi1tYW5h Z2VtZW50IiwgZmFsc2UpOw0KICB9DQogIA0KICBzdGF0aWMgaW50IGZ1enpfY2FjaGVfb3AoDQpA QCAtNjI0LDcgKzYzMSw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgeDg2X2VtdWxhdGVfb3BzIGFs bF8NCiAgICAgIFNFVChyZWFkX21zciksDQogICAgICBTRVQod3JpdGVfbXNyKSwNCiAgICAgIFNF VChjYWNoZV9vcCksDQotICAgIFNFVChpbnZscGcpLA0KKyAgICBTRVQodGxiX29wKSwNCiAgICAg IC5nZXRfZnB1ICAgID0gZW11bF90ZXN0X2dldF9mcHUsDQogICAgICAucHV0X2ZwdSAgICA9IGVt dWxfdGVzdF9wdXRfZnB1LA0KICAgICAgLmNwdWlkICAgICAgPSBlbXVsX3Rlc3RfY3B1aWQsDQpA QCAtNzMzLDEyICs3NDAsMTIgQEAgZW51bSB7DQogICAgICBIT09LX3JlYWRfbXNyLA0KICAgICAg SE9PS193cml0ZV9tc3IsDQogICAgICBIT09LX2NhY2hlX29wLA0KKyAgICBIT09LX3RsYl9vcCwN CiAgICAgIEhPT0tfY3B1aWQsDQogICAgICBIT09LX2luamVjdF9od19leGNlcHRpb24sDQogICAg ICBIT09LX2luamVjdF9zd19pbnRlcnJ1cHQsDQogICAgICBIT09LX2dldF9mcHUsDQogICAgICBI T09LX3B1dF9mcHUsDQotICAgIEhPT0tfaW52bHBnLA0KICAgICAgSE9PS192bWZ1bmMsDQogICAg ICBDQU5PTklDQUxJWkVfcmlwLA0KICAgICAgQ0FOT05JQ0FMSVpFX3JzcCwNCkBAIC03NzcsOSAr Nzg0LDkgQEAgc3RhdGljIHZvaWQgZGlzYWJsZV9ob29rcyhzdHJ1Y3QgeDg2X2VtdQ0KICAgICAg TUFZQkVfRElTQUJMRV9IT09LKHJlYWRfbXNyKTsNCiAgICAgIE1BWUJFX0RJU0FCTEVfSE9PSyh3 cml0ZV9tc3IpOw0KICAgICAgTUFZQkVfRElTQUJMRV9IT09LKGNhY2hlX29wKTsNCisgICAgTUFZ QkVfRElTQUJMRV9IT09LKHRsYl9vcCk7DQogICAgICBNQVlCRV9ESVNBQkxFX0hPT0soY3B1aWQp Ow0KICAgICAgTUFZQkVfRElTQUJMRV9IT09LKGdldF9mcHUpOw0KLSAgICBNQVlCRV9ESVNBQkxF X0hPT0soaW52bHBnKTsNCiAgfQ0KICANCiAgLyoNCi0tLSBhL3hlbi9hcmNoL3g4Ni9odm0vZW11 bGF0ZS5jDQorKysgYi94ZW4vYXJjaC94ODYvaHZtL2VtdWxhdGUuYw0KQEAgLTIzMzksMzYgKzIz MzksNTMgQEAgc3RhdGljIHZvaWQgaHZtZW11bF9wdXRfZnB1KA0KICAgICAgfQ0KICB9DQogIA0K LXN0YXRpYyBpbnQgaHZtZW11bF9pbnZscGcoDQotICAgIGVudW0geDg2X3NlZ21lbnQgc2VnLA0K LSAgICB1bnNpZ25lZCBsb25nIG9mZnNldCwNCitzdGF0aWMgaW50IGh2bWVtdWxfdGxiX29wKA0K KyAgICBlbnVtIHg4NmVtdWxfdGxiX29wIG9wLA0KKyAgICB1bnNpZ25lZCBsb25nIGFkZHIsDQor ICAgIHVuc2lnbmVkIGxvbmcgYXV4LA0KICAgICAgc3RydWN0IHg4Nl9lbXVsYXRlX2N0eHQgKmN0 eHQpDQogIHsNCiAgICAgIHN0cnVjdCBodm1fZW11bGF0ZV9jdHh0ICpodm1lbXVsX2N0eHQgPQ0K ICAgICAgICAgIGNvbnRhaW5lcl9vZihjdHh0LCBzdHJ1Y3QgaHZtX2VtdWxhdGVfY3R4dCwgY3R4 dCk7DQotICAgIHVuc2lnbmVkIGxvbmcgYWRkciwgcmVwcyA9IDE7DQotICAgIGludCByYzsNCi0N Ci0gICAgcmMgPSBodm1lbXVsX3ZpcnR1YWxfdG9fbGluZWFyKA0KLSAgICAgICAgc2VnLCBvZmZz ZXQsIDEsICZyZXBzLCBodm1fYWNjZXNzX25vbmUsIGh2bWVtdWxfY3R4dCwgJmFkZHIpOw0KKyAg ICB1bnNpZ25lZCBsb25nIHJlcHMgPSAxOw0KKyAgICBpbnQgcmMgPSBYODZFTVVMX09LQVk7DQog IA0KLSAgICBpZiAoIHJjID09IFg4NkVNVUxfRVhDRVBUSU9OICkNCisgICAgc3dpdGNoICggb3Ag KQ0KICAgICAgew0KLSAgICAgICAgLyoNCi0gICAgICAgICAqIGBpbnZscGdgIHRha2VzIHNlZ21l bnQgYmFzZXMgaW50byBhY2NvdW50LCBidXQgaXMgbm90IHN1YmplY3QgdG8NCi0gICAgICAgICAq IGZhdWx0cyBmcm9tIHNlZ21lbnQgdHlwZS9saW1pdCBjaGVja3MsIGFuZCBpcyBzcGVjaWZpZWQg YXMgYSBOT1ANCi0gICAgICAgICAqIHdoZW4gaXNzdWVkIG9uIG5vbi1jYW5vbmljYWwgYWRkcmVz c2VzLg0KLSAgICAgICAgICoNCi0gICAgICAgICAqIGh2bWVtdWxfdmlydHVhbF90b19saW5lYXIo KSByYWlzZXMgZXhjZXB0aW9ucyBmb3IgdHlwZS9saW1pdA0KLSAgICAgICAgICogdmlvbGF0aW9u cywgc28gc3F1YXNoIHRoZW0uDQotICAgICAgICAgKi8NCi0gICAgICAgIHg4Nl9lbXVsX3Jlc2V0 X2V2ZW50KGN0eHQpOw0KLSAgICAgICAgcmMgPSBYODZFTVVMX09LQVk7DQorICAgIGNhc2UgeDg2 ZW11bF9pbnZscGc6DQorICAgICAgICByYyA9IGh2bWVtdWxfdmlydHVhbF90b19saW5lYXIoYXV4 LCBhZGRyLCAxLCAmcmVwcywgaHZtX2FjY2Vzc19ub25lLA0KKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGh2bWVtdWxfY3R4dCwgJmFkZHIpOw0KKw0KKyAgICAgICAgaWYg KCByYyA9PSBYODZFTVVMX0VYQ0VQVElPTiApDQorICAgICAgICB7DQorICAgICAgICAgICAgLyoN CisgICAgICAgICAgICAgKiBgaW52bHBnYCB0YWtlcyBzZWdtZW50IGJhc2VzIGludG8gYWNjb3Vu dCwgYnV0IGlzIG5vdCBzdWJqZWN0DQorICAgICAgICAgICAgICogdG8gZmF1bHRzIGZyb20gc2Vn bWVudCB0eXBlL2xpbWl0IGNoZWNrcywgYW5kIGlzIHNwZWNpZmllZCBhcw0KKyAgICAgICAgICAg ICAqIGEgTk9QIHdoZW4gaXNzdWVkIG9uIG5vbi1jYW5vbmljYWwgYWRkcmVzc2VzLg0KKyAgICAg ICAgICAgICAqDQorICAgICAgICAgICAgICogaHZtZW11bF92aXJ0dWFsX3RvX2xpbmVhcigpIHJh aXNlcyBleGNlcHRpb25zIGZvciB0eXBlL2xpbWl0DQorICAgICAgICAgICAgICogdmlvbGF0aW9u cywgc28gc3F1YXNoIHRoZW0uDQorICAgICAgICAgICAgICovDQorICAgICAgICAgICAgeDg2X2Vt dWxfcmVzZXRfZXZlbnQoY3R4dCk7DQorICAgICAgICAgICAgcmMgPSBYODZFTVVMX09LQVk7DQor ICAgICAgICB9DQorDQorICAgICAgICBpZiAoIHJjID09IFg4NkVNVUxfT0tBWSApDQorICAgICAg ICAgICAgcGFnaW5nX2ludmxwZyhjdXJyZW50LCBhZGRyKTsNCisgICAgICAgIGJyZWFrOw0KKw0K KyAgICBjYXNlIHg4NmVtdWxfaW52bHBnYToNCisgICAgICAgIC8qIFRPRE86IFN1cHBvcnQgQVNJ RHMuICovDQorICAgICAgICBpZiAoICFhdXggKQ0KKyAgICAgICAgICAgIHBhZ2luZ19pbnZscGco Y3VycmVudCwgYWRkcik7DQorICAgICAgICBlbHNlDQorICAgICAgICB7DQorICAgICAgICAgICAg eDg2X2VtdWxfaHdfZXhjZXB0aW9uKFRSQVBfaW52YWxpZF9vcCwgWDg2X0VWRU5UX05PX0VDLCBj dHh0KTsNCisgICAgICAgICAgICByYyA9IFg4NkVNVUxfRVhDRVBUSU9OOw0KKyAgICAgICAgfQ0K KyAgICAgICAgYnJlYWs7DQogICAgICB9DQogIA0KLSAgICBpZiAoIHJjID09IFg4NkVNVUxfT0tB WSApDQotICAgICAgICBwYWdpbmdfaW52bHBnKGN1cnJlbnQsIGFkZHIpOw0KLQ0KICAgICAgcmV0 dXJuIHJjOw0KICB9DQogIA0KQEAgLTI0MDgsMTAgKzI0MjUsMTAgQEAgc3RhdGljIGNvbnN0IHN0 cnVjdCB4ODZfZW11bGF0ZV9vcHMgaHZtXw0KICAgICAgLnJlYWRfbXNyICAgICAgPSBodm1lbXVs X3JlYWRfbXNyLA0KICAgICAgLndyaXRlX21zciAgICAgPSBodm1lbXVsX3dyaXRlX21zciwNCiAg ICAgIC5jYWNoZV9vcCAgICAgID0gaHZtZW11bF9jYWNoZV9vcCwNCisgICAgLnRsYl9vcCAgICAg ICAgPSBodm1lbXVsX3RsYl9vcCwNCiAgICAgIC5jcHVpZCAgICAgICAgID0geDg2ZW11bF9jcHVp ZCwNCiAgICAgIC5nZXRfZnB1ICAgICAgID0gaHZtZW11bF9nZXRfZnB1LA0KICAgICAgLnB1dF9m cHUgICAgICAgPSBodm1lbXVsX3B1dF9mcHUsDQotICAgIC5pbnZscGcgICAgICAgID0gaHZtZW11 bF9pbnZscGcsDQogICAgICAudm1mdW5jICAgICAgICA9IGh2bWVtdWxfdm1mdW5jLA0KICB9Ow0K ICANCkBAIC0yNDM1LDEwICsyNDUyLDEwIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgeDg2X2VtdWxh dGVfb3BzIGh2bV8NCiAgICAgIC5yZWFkX21zciAgICAgID0gaHZtZW11bF9yZWFkX21zciwNCiAg ICAgIC53cml0ZV9tc3IgICAgID0gaHZtZW11bF93cml0ZV9tc3JfZGlzY2FyZCwNCiAgICAgIC5j YWNoZV9vcCAgICAgID0gaHZtZW11bF9jYWNoZV9vcF9kaXNjYXJkLA0KKyAgICAudGxiX29wICAg ICAgICA9IGh2bWVtdWxfdGxiX29wLA0KICAgICAgLmNwdWlkICAgICAgICAgPSB4ODZlbXVsX2Nw dWlkLA0KICAgICAgLmdldF9mcHUgICAgICAgPSBodm1lbXVsX2dldF9mcHUsDQogICAgICAucHV0 X2ZwdSAgICAgICA9IGh2bWVtdWxfcHV0X2ZwdSwNCi0gICAgLmludmxwZyAgICAgICAgPSBodm1l bXVsX2ludmxwZywNCiAgICAgIC52bWZ1bmMgICAgICAgID0gaHZtZW11bF92bWZ1bmMsDQogIH07 DQogIA0KLS0tIGEveGVuL2FyY2gveDg2L3g4Nl9lbXVsYXRlL3g4Nl9lbXVsYXRlLmMNCisrKyBi L3hlbi9hcmNoL3g4Ni94ODZfZW11bGF0ZS94ODZfZW11bGF0ZS5jDQpAQCAtNTU5MCwxMCArNTU5 MCw5IEBAIHg4Nl9lbXVsYXRlKA0KICAgICAgICAgICAgICBnZW5lcmF0ZV9leGNlcHRpb25faWYo IShtc3JfdmFsICYgRUZFUl9TVk1FKSB8fA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIWluX3Byb3Rtb2RlKGN0eHQsIG9wcyksIEVYQ19VRCk7DQogICAgICAgICAgICAgIGdl bmVyYXRlX2V4Y2VwdGlvbl9pZighbW9kZV9yaW5nMCgpLCBFWENfR1AsIDApOw0KLSAgICAgICAg ICAgIGdlbmVyYXRlX2V4Y2VwdGlvbl9pZihfcmVncy5lY3gsIEVYQ19VRCk7IC8qIFRPRE86IFN1 cHBvcnQgQVNJRHMuICovDQotICAgICAgICAgICAgZmFpbF9pZihvcHMtPmludmxwZyA9PSBOVUxM KTsNCi0gICAgICAgICAgICBpZiAoIChyYyA9IG9wcy0+aW52bHBnKHg4Nl9zZWdfbm9uZSwgdHJ1 bmNhdGVfZWEoX3JlZ3MucihheCkpLA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgY3R4dCkpICkNCisgICAgICAgICAgICBmYWlsX2lmKCFvcHMtPnRsYl9vcCk7DQorICAgICAg ICAgICAgaWYgKCAocmMgPSBvcHMtPnRsYl9vcCh4ODZlbXVsX2ludmxwZ2EsIHRydW5jYXRlX2Vh KF9yZWdzLnIoYXgpKSwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9yZWdz LmVjeCwgY3R4dCkpICE9IFg4NkVNVUxfT0tBWSApDQogICAgICAgICAgICAgICAgICBnb3RvIGRv bmU7DQogICAgICAgICAgICAgIGJyZWFrOw0KICANCkBAIC01NzQ3LDggKzU3NDYsOSBAQCB4ODZf ZW11bGF0ZSgNCiAgICAgICAgICBjYXNlIEdSUDdfTUVNKDcpOiAvKiBpbnZscGcgKi8NCiAgICAg ICAgICAgICAgQVNTRVJUKGVhLnR5cGUgPT0gT1BfTUVNKTsNCiAgICAgICAgICAgICAgZ2VuZXJh dGVfZXhjZXB0aW9uX2lmKCFtb2RlX3JpbmcwKCksIEVYQ19HUCwgMCk7DQotICAgICAgICAgICAg ZmFpbF9pZihvcHMtPmludmxwZyA9PSBOVUxMKTsNCi0gICAgICAgICAgICBpZiAoIChyYyA9IG9w cy0+aW52bHBnKGVhLm1lbS5zZWcsIGVhLm1lbS5vZmYsIGN0eHQpKSApDQorICAgICAgICAgICAg ZmFpbF9pZighb3BzLT50bGJfb3ApOw0KKyAgICAgICAgICAgIGlmICggKHJjID0gb3BzLT50bGJf b3AoeDg2ZW11bF9pbnZscGcsIGVhLm1lbS5vZmYsIGVhLm1lbS5zZWcsDQorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBjdHh0KSkgIT0gWDg2RU1VTF9PS0FZICkNCiAgICAgICAg ICAgICAgICAgIGdvdG8gZG9uZTsNCiAgICAgICAgICAgICAgYnJlYWs7DQogIA0KLS0tIGEveGVu L2FyY2gveDg2L3g4Nl9lbXVsYXRlL3g4Nl9lbXVsYXRlLmgNCisrKyBiL3hlbi9hcmNoL3g4Ni94 ODZfZW11bGF0ZS94ODZfZW11bGF0ZS5oDQpAQCAtMTg1LDYgKzE4NSwxMSBAQCBlbnVtIHg4NmVt dWxfY2FjaGVfb3Agew0KICAgICAgeDg2ZW11bF93Ym5vaW52ZCwNCiAgfTsNCiAgDQorZW51bSB4 ODZlbXVsX3RsYl9vcCB7DQorICAgIHg4NmVtdWxfaW52bHBnLA0KKyAgICB4ODZlbXVsX2ludmxw Z2EsDQorfTsNCisNCiAgc3RydWN0IHg4Nl9lbXVsYXRlX3N0YXRlOw0KICANCiAgLyoNCkBAIC00 NzIsNiArNDc3LDE5IEBAIHN0cnVjdCB4ODZfZW11bGF0ZV9vcHMNCiAgICAgICAgICB1bnNpZ25l ZCBsb25nIG9mZnNldCwNCiAgICAgICAgICBzdHJ1Y3QgeDg2X2VtdWxhdGVfY3R4dCAqY3R4dCk7 DQogIA0KKyAgICAvKg0KKyAgICAgKiB0bGJfb3A6IEludmFsaWRhdGUgcGFnaW5nIHN0cnVjdHVy ZXMgd2hpY2ggbWFwIGFkZHJlc3NlZCBieXRlLg0KKyAgICAgKg0KKyAgICAgKiBAYWRkciBhbmQg QGF1eCBoYXZlIEBvcC1zcGVjaWZpYyBtZWFuaW5nOg0KKyAgICAgKiAtIElOVkxQRzogIEBhdXg6 QGFkZHIgcmVwcmVzZW50IHNlZzpvZmZzZXQNCisgICAgICogLSBJTlZMUEdBOiBAYWRkciBpcyB0 aGUgbGluZWFyIGFkZHJlc3MsIEBhdXggdGhlIEFTSUQNCisgICAgICovDQorICAgIGludCAoKnRs Yl9vcCkoDQorICAgICAgICBlbnVtIHg4NmVtdWxfdGxiX29wIG9wLA0KKyAgICAgICAgdW5zaWdu ZWQgbG9uZyBhZGRyLA0KKyAgICAgICAgdW5zaWduZWQgbG9uZyBhdXgsDQorICAgICAgICBzdHJ1 Y3QgeDg2X2VtdWxhdGVfY3R4dCAqY3R4dCk7DQorDQogICAgICAvKiBjcHVpZDogRW11bGF0ZSBD UFVJRCB2aWEgZ2l2ZW4gc2V0IG9mIEVBWC1FRFggaW5wdXRzL291dHB1dHMuICovDQogICAgICBp bnQgKCpjcHVpZCkoDQogICAgICAgICAgdWludDMyX3QgbGVhZiwNCkBAIC00OTksMTIgKzUxNyw2 IEBAIHN0cnVjdCB4ODZfZW11bGF0ZV9vcHMNCiAgICAgICAgICBlbnVtIHg4Nl9lbXVsYXRlX2Zw dV90eXBlIGJhY2tvdXQsDQogICAgICAgICAgY29uc3Qgc3RydWN0IHg4Nl9lbXVsX2ZwdV9hdXgg KmF1eCk7DQogIA0KLSAgICAvKiBpbnZscGc6IEludmFsaWRhdGUgcGFnaW5nIHN0cnVjdHVyZXMg d2hpY2ggbWFwIGFkZHJlc3NlZCBieXRlLiAqLw0KLSAgICBpbnQgKCppbnZscGcpKA0KLSAgICAg ICAgZW51bSB4ODZfc2VnbWVudCBzZWcsDQotICAgICAgICB1bnNpZ25lZCBsb25nIG9mZnNldCwN Ci0gICAgICAgIHN0cnVjdCB4ODZfZW11bGF0ZV9jdHh0ICpjdHh0KTsNCi0NCiAgICAgIC8qIHZt ZnVuYzogRW11bGF0ZSBWTUZVTkMgdmlhIGdpdmVuIHNldCBvZiBFQVggRUNYIGlucHV0cyAqLw0K ICAgICAgaW50ICgqdm1mdW5jKSgNCiAgICAgICAgICBzdHJ1Y3QgeDg2X2VtdWxhdGVfY3R4dCAq Y3R4dCk7DQoNCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f Clhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0 dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw=