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=-8.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 4BCECC31E51 for ; Tue, 18 Jun 2019 11:54:36 +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 139EF2085A for ; Tue, 18 Jun 2019 11:54:35 +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="dwyv9x+L" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 139EF2085A 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 1hdCgw-0004um-LS; Tue, 18 Jun 2019 11:54:22 +0000 Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hdCgv-0004ub-64 for xen-devel@lists.xenproject.org; Tue, 18 Jun 2019 11:54:21 +0000 X-Inumbo-ID: cd3b97af-91bf-11e9-8980-bc764e045a96 Received: from EUR02-HE1-obe.outbound.protection.outlook.com (unknown [40.107.1.125]) by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS id cd3b97af-91bf-11e9-8980-bc764e045a96; Tue, 18 Jun 2019 11:54:19 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bitdefender.onmicrosoft.com; s=selector1-bitdefender-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+pccwpvk3cxmmHmux/mkq4+0HbwU9QENIhgLyBEBsjE=; b=dwyv9x+L1aEQKgqnkEwCMMG6Q1OfXGD4Aa6UEyJj7f00GCelq/Hg268OC4bc9GLQaMPwMoELbW2uVO2Rg+BjBF+HiFkMc5i1jWBxaPjyRqID1b8vFmBI4cufMs0iyMQpu/t6/+YIsGHy+OJLb5YNgstBOdvcFPWke5ru7W0H+EU= Received: from VI1PR0202MB2928.eurprd02.prod.outlook.com (10.171.106.11) by VI1PR0202MB3343.eurprd02.prod.outlook.com (52.134.16.11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1987.12; Tue, 18 Jun 2019 11:54:16 +0000 Received: from VI1PR0202MB2928.eurprd02.prod.outlook.com ([fe80::647b:2795:a1b:ee09]) by VI1PR0202MB2928.eurprd02.prod.outlook.com ([fe80::647b:2795:a1b:ee09%5]) with mapi id 15.20.1987.014; Tue, 18 Jun 2019 11:54:16 +0000 From: Alexandru Stefan ISAILA To: "xen-devel@lists.xenproject.org" Thread-Topic: [PATCH v1] x86/mm: Clean IOMMU flags from p2m-pt code Thread-Index: AQHVJcyNF0rcLAooGkWvUTAvg3olXQ== Date: Tue, 18 Jun 2019 11:54:16 +0000 Message-ID: <20190618115401.15044-1-aisaila@bitdefender.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: PR0P264CA0166.FRAP264.PROD.OUTLOOK.COM (2603:10a6:100:1b::34) To VI1PR0202MB2928.eurprd02.prod.outlook.com (2603:10a6:800:e3::11) 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: 74316e77-5bb6-4658-abcf-08d6f3e3b01e x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600148)(711020)(4605104)(1401327)(2017052603328)(7193020); SRVR:VI1PR0202MB3343; x-ms-traffictypediagnostic: VI1PR0202MB3343:|VI1PR0202MB3343: x-ms-exchange-purlcount: 1 x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-forefront-prvs: 007271867D x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(39860400002)(366004)(396003)(346002)(376002)(136003)(199004)(189003)(6306002)(36756003)(52116002)(81166006)(81156014)(186003)(8676002)(4326008)(316002)(5660300002)(6512007)(26005)(478600001)(2501003)(25786009)(2351001)(1076003)(6916009)(99286004)(2906002)(8936002)(107886003)(486006)(53936002)(3846002)(256004)(50226002)(6116002)(14444005)(64756008)(66556008)(5640700003)(73956011)(66946007)(66476007)(6436002)(71190400001)(2616005)(102836004)(68736007)(7736002)(71200400001)(14454004)(86362001)(305945005)(386003)(6506007)(66446008)(66066001)(54906003)(476003)(6486002); DIR:OUT; SFP:1102; SCL:1; SRVR:VI1PR0202MB3343; H:VI1PR0202MB2928.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: Yb8fVP1lIMQJRZ74FQtgO+vd7DRerDEMZXf+Ui5aX2ZdCYhbypCglIcUMS2hCEUPftq2yshup7ooy5NxAwppn7DxHBs/mJ7BfgRWaoDuJ9mhzUPlE3UZQ3JUl3PhFGuSjdvEVaKBOUtOKDo5mbjjeckFLib789aIKQBYyPUvGEJKvvmOXM1sDQG+4Y/FsQ7/FUvkDYUcW3nIsBjNGNbFW3yRJljZeBySZl/B8h1b5KsbJTAfrWi0vcAZFtkiPnsexM4BoZO7mN5FYg0XqX52OcyvK1EdEl7e96CjngCtcVVZWMI5dzxtkvDkuZHAtiDfaGHe9PmN7zVSJqJp7xIRlMIUwMquKJseNBfKi6usdxVK6vt98qiNzn4Sp21PNB79EjkdnmL02mncu+os+B0nPQWGt4zrwPBD9Ic/hWfxY2s= MIME-Version: 1.0 X-OriginatorOrg: bitdefender.com X-MS-Exchange-CrossTenant-Network-Message-Id: 74316e77-5bb6-4658-abcf-08d6f3e3b01e X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Jun 2019 11:54:16.0922 (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: aisaila@bbu.bitdefender.biz X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0202MB3343 Subject: [Xen-devel] [PATCH v1] x86/mm: Clean IOMMU flags from p2m-pt code 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: "wl@xen.org" , "george.dunlap@eu.citrix.com" , "andrew.cooper3@citrix.com" , "jbeulich@suse.com" , Alexandru Stefan ISAILA , "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" QXQgdGhlIG1vbWVudCB0aGUgSU9NTVUgZmxhZ3MgYXJlIG5vdCB1c2VkIGluIHAybS1wdCBhbmQg Y291bGQgYmUgdXNlZA0Kb24gb3RoZXIgYXBwbGljYXRpb24uDQoNClRoaXMgcGF0Y2ggYWltcyB0 byBjbGVhbiB0aGUgdXNlIG9mIElPTU1VIGZsYWdzIG9uIHRoZSBBTUQgcDJtIHNpZGUuDQoNClNp Z25lZC1vZmYtYnk6IEFsZXhhbmRydSBJc2FpbGEgPGFpc2FpbGFAYml0ZGVmZW5kZXIuY29tPg0K U3VnZ2VzdGVkLWJ5OiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2UuZHVubGFwQGNpdHJpeC5jb20+DQot LS0NCiB4ZW4vYXJjaC94ODYvbW0vcDJtLXB0LmMgfCA4NSArKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tDQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgODIg ZGVsZXRpb25zKC0pDQoNCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvbW0vcDJtLXB0LmMgYi94 ZW4vYXJjaC94ODYvbW0vcDJtLXB0LmMNCmluZGV4IGNhZmM5ZjI5OWIuLmNlNmQ3Y2RmOWIgMTAw NjQ0DQotLS0gYS94ZW4vYXJjaC94ODYvbW0vcDJtLXB0LmMNCisrKyBiL3hlbi9hcmNoL3g4Ni9t bS9wMm0tcHQuYw0KQEAgLTI0LDcgKzI0LDYgQEANCiAgKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3Jh bTsgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+Lg0KICAqLw0KIA0K LSNpbmNsdWRlIDx4ZW4vaW9tbXUuaD4NCiAjaW5jbHVkZSA8eGVuL3ZtX2V2ZW50Lmg+DQogI2lu Y2x1ZGUgPHhlbi9ldmVudC5oPg0KICNpbmNsdWRlIDx4ZW4vdHJhY2UuaD4NCkBAIC0zNiwxMyAr MzUsMTIgQEANCiAjaW5jbHVkZSA8YXNtL3AybS5oPg0KICNpbmNsdWRlIDxhc20vbWVtX3NoYXJp bmcuaD4NCiAjaW5jbHVkZSA8YXNtL2h2bS9uZXN0ZWRodm0uaD4NCi0jaW5jbHVkZSA8YXNtL2h2 bS9zdm0vYW1kLWlvbW11LXByb3RvLmg+DQogDQogI2luY2x1ZGUgIm1tLWxvY2tzLmgiDQogDQog LyoNCiAgKiBXZSBtYXkgc3RvcmUgSU5WQUxJRF9NRk4gaW4gUFRFcy4gIFdlIG5lZWQgdG8gY2xp cCB0aGlzIHRvIGF2b2lkIHRyYW1wbGluZw0KLSAqIG92ZXIgaGlnaGVyLW9yZGVyIGJpdHMgKE5Y LCBwMm0gdHlwZSwgSU9NTVUgZmxhZ3MpLiAgV2Ugc2VlbSB0byBub3QgbmVlZA0KKyAqIG92ZXIg aGlnaGVyLW9yZGVyIGJpdHMgKE5YLCBwMm0gdHlwZSkuICBXZSBzZWVtIHRvIG5vdCBuZWVkDQog ICogdG8gdW5jbGlwIG9uIHRoZSByZWFkIHBhdGgsIGFzIGNhbGxlcnMgYXJlIGNvbmNlcm5lZCBv bmx5IHdpdGggcDJtIHR5cGUgaW4NCiAgKiBzdWNoIGNhc2VzLg0KICAqLw0KQEAgLTE2NSwxNiAr MTYzLDYgQEAgcDJtX2ZyZWVfZW50cnkoc3RydWN0IHAybV9kb21haW4gKnAybSwgbDFfcGdlbnRy eV90ICpwMm1fZW50cnksIGludCBwYWdlX29yZGVyKQ0KIC8vIFJldHVybnMgMCBvbiBlcnJvci4N CiAvLw0KIA0KLS8qIEFNRCBJT01NVTogQ29udmVydCBuZXh0IGxldmVsIGJpdHMgYW5kIHIvdyBi aXRzIGludG8gMjQgYml0cyBwMm0gZmxhZ3MgKi8NCi0jZGVmaW5lIGlvbW11X25sZXZlbF90b19m bGFncyhubCwgZikgKCgoKG5sKSAmIDB4NykgPDwgOSApfCgoKGYpICYgMHgzKSA8PCAyMSkpDQot DQotc3RhdGljIHZvaWQgcDJtX2FkZF9pb21tdV9mbGFncyhsMV9wZ2VudHJ5X3QgKnAybV9lbnRy eSwNCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBubGV2ZWws IHVuc2lnbmVkIGludCBmbGFncykNCi17DQotICAgIGlmICggaW9tbXVfaGFwX3B0X3NoYXJlICkN Ci0gICAgICAgIGwxZV9hZGRfZmxhZ3MoKnAybV9lbnRyeSwgaW9tbXVfbmxldmVsX3RvX2ZsYWdz KG5sZXZlbCwgZmxhZ3MpKTsNCi19DQotDQogLyogUmV0dXJuczogMCBmb3Igc3VjY2VzcywgLWVy cm5vIGZvciBmYWlsdXJlICovDQogc3RhdGljIGludA0KIHAybV9uZXh0X2xldmVsKHN0cnVjdCBw Mm1fZG9tYWluICpwMm0sIHZvaWQgKip0YWJsZSwNCkBAIC0yMDMsNyArMTkxLDYgQEAgcDJtX25l eHRfbGV2ZWwoc3RydWN0IHAybV9kb21haW4gKnAybSwgdm9pZCAqKnRhYmxlLA0KIA0KICAgICAg ICAgbmV3X2VudHJ5ID0gbDFlX2Zyb21fbWZuKG1mbiwgUDJNX0JBU0VfRkxBR1MgfCBfUEFHRV9S Vyk7DQogDQotICAgICAgICBwMm1fYWRkX2lvbW11X2ZsYWdzKCZuZXdfZW50cnksIGxldmVsLCBJ T01NVUZfcmVhZGFibGV8SU9NTVVGX3dyaXRhYmxlKTsNCiAgICAgICAgIHJjID0gcDJtLT53cml0 ZV9wMm1fZW50cnkocDJtLCBnZm4sIHAybV9lbnRyeSwgbmV3X2VudHJ5LCBsZXZlbCArIDEpOw0K ICAgICAgICAgaWYgKCByYyApDQogICAgICAgICAgICAgZ290byBlcnJvcjsNCkBAIC0yNDIsMTMg KzIyOSw2IEBAIHAybV9uZXh0X2xldmVsKHN0cnVjdCBwMm1fZG9tYWluICpwMm0sIHZvaWQgKip0 YWJsZSwNCiANCiAgICAgICAgIGwxX2VudHJ5ID0gbWFwX2RvbWFpbl9wYWdlKG1mbik7DQogDQot ICAgICAgICAvKiBJbmhlcml0IG9yaWdpbmFsIElPTU1VIHBlcm1pc3Npb25zLCBidXQgdXBkYXRl IE5leHQgTGV2ZWwuICovDQotICAgICAgICBpZiAoIGlvbW11X2hhcF9wdF9zaGFyZSApDQotICAg ICAgICB7DQotICAgICAgICAgICAgZmxhZ3MgJj0gfmlvbW11X25sZXZlbF90b19mbGFncyh+MCwg MCk7DQotICAgICAgICAgICAgZmxhZ3MgfD0gaW9tbXVfbmxldmVsX3RvX2ZsYWdzKGxldmVsIC0g MSwgMCk7DQotICAgICAgICB9DQotDQogICAgICAgICBmb3IgKCBpID0gMDsgaSA8ICgxdSA8PCBQ QUdFVEFCTEVfT1JERVIpOyBpKysgKQ0KICAgICAgICAgew0KICAgICAgICAgICAgIG5ld19lbnRy eSA9IGwxZV9mcm9tX3BmbihwZm4gfCAoaSA8PCAoKGxldmVsIC0gMSkgKiBQQUdFVEFCTEVfT1JE RVIpKSwNCkBAIC0yNjQsOCArMjQ0LDYgQEAgcDJtX25leHRfbGV2ZWwoc3RydWN0IHAybV9kb21h aW4gKnAybSwgdm9pZCAqKnRhYmxlLA0KICAgICAgICAgdW5tYXBfZG9tYWluX3BhZ2UobDFfZW50 cnkpOw0KIA0KICAgICAgICAgbmV3X2VudHJ5ID0gbDFlX2Zyb21fbWZuKG1mbiwgUDJNX0JBU0Vf RkxBR1MgfCBfUEFHRV9SVyk7DQotICAgICAgICBwMm1fYWRkX2lvbW11X2ZsYWdzKCZuZXdfZW50 cnksIGxldmVsLA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBJT01NVUZfcmVhZGFibGV8 SU9NTVVGX3dyaXRhYmxlKTsNCiAgICAgICAgIHJjID0gcDJtLT53cml0ZV9wMm1fZW50cnkocDJt LCBnZm4sIHAybV9lbnRyeSwgbmV3X2VudHJ5LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBsZXZlbCArIDEpOw0KICAgICAgICAgaWYgKCByYyApDQpAQCAtNDcwLDkgKzQ0OCw2 IEBAIHN0YXRpYyBpbnQgZG9fcmVjYWxjKHN0cnVjdCBwMm1fZG9tYWluICpwMm0sIHVuc2lnbmVk IGxvbmcgZ2ZuKQ0KICAgICAgICAgICAgIH0NCiANCiAgICAgICAgICAgICBlID0gbDFlX2Zyb21f cGZuKG1mbiwgZmxhZ3MpOw0KLSAgICAgICAgICAgIHAybV9hZGRfaW9tbXVfZmxhZ3MoJmUsIGxl dmVsLA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG50ID09IHAybV9yYW1fcncp DQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IElPTU1VRl9yZWFkYWJsZXxJT01N VUZfd3JpdGFibGUgOiAwKTsNCiAgICAgICAgICAgICBBU1NFUlQoIW5lZWRzX3JlY2FsYyhsMSwg ZSkpOw0KICAgICAgICAgfQ0KICAgICAgICAgZWxzZQ0KQEAgLTU0MCwxOCArNTE1LDcgQEAgcDJt X3B0X3NldF9lbnRyeShzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJtLCBnZm5fdCBnZm5fLCBtZm5fdCBt Zm4sDQogICAgIGwyX3BnZW50cnlfdCBsMmVfY29udGVudDsNCiAgICAgbDNfcGdlbnRyeV90IGwz ZV9jb250ZW50Ow0KICAgICBpbnQgcmM7DQotICAgIHVuc2lnbmVkIGludCBpb21tdV9wdGVfZmxh Z3MgPSBwMm1fZ2V0X2lvbW11X2ZsYWdzKHAybXQsIG1mbik7DQotICAgIC8qDQotICAgICAqIG9s ZF9tZm4gYW5kIGlvbW11X29sZF9mbGFncyBjb250cm9sIHBvc3NpYmxlIGZsdXNoL3VwZGF0ZSBu ZWVkcyBvbiB0aGUNCi0gICAgICogSU9NTVU6IFdlIG5lZWQgdG8gZmx1c2ggd2hlbiBNRk4gb3Ig ZmxhZ3MgKGkuZS4gcGVybWlzc2lvbnMpIGNoYW5nZS4NCi0gICAgICogaW9tbXVfb2xkX2ZsYWdz IGJlaW5nIGluaXRpYWxpemVkIHRvIHplcm8gY292ZXJzIHRoZSBjYXNlIG9mIHRoZSBlbnRyeQ0K LSAgICAgKiBnZXR0aW5nIHJlcGxhY2VkIGJlaW5nIGEgbm9uLXByZXNlbnQgKGxlYWYgb3IgaW50 ZXJtZWRpYXRlKSBvbmUuIEZvcg0KLSAgICAgKiBwcmVzZW50IGxlYWYgZW50cmllcyB0aGUgcmVh bCB2YWx1ZSB3aWxsIGdldCBjYWxjdWxhdGVkIGJlbG93LCB3aGlsZQ0KLSAgICAgKiBmb3IgcHJl c2VudCBpbnRlcm1lZGlhdGUgZW50cmllcyB+MCAoZ3VhcmFudGVlZCAhPSBpb21tdV9wdGVfZmxh Z3MpDQotICAgICAqIHdpbGwgYmUgdXNlZCAodG8gY292ZXIgYWxsIGNhc2VzIG9mIHdoYXQgdGhl IGxlYWYgZW50cmllcyB1bmRlcm5lYXRoDQotICAgICAqIHRoZSBpbnRlcm1lZGlhdGUgb25lIG1p Z2h0IGJlKS4NCi0gICAgICovDQotICAgIHVuc2lnbmVkIGludCBmbGFncywgaW9tbXVfb2xkX2Zs YWdzID0gMDsNCisgICAgdW5zaWduZWQgaW50IGZsYWdzOw0KICAgICB1bnNpZ25lZCBsb25nIG9s ZF9tZm4gPSBtZm5feChJTlZBTElEX01GTik7DQogDQogICAgIGlmICggIXN2ZSApDQpAQCAtNTk5 LDE3ICs1NjMsOSBAQCBwMm1fcHRfc2V0X2VudHJ5KHN0cnVjdCBwMm1fZG9tYWluICpwMm0sIGdm bl90IGdmbl8sIG1mbl90IG1mbiwNCiAgICAgICAgIGlmICggZmxhZ3MgJiBfUEFHRV9QUkVTRU5U ICkNCiAgICAgICAgIHsNCiAgICAgICAgICAgICBpZiAoIGZsYWdzICYgX1BBR0VfUFNFICkNCi0g ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgIG9sZF9tZm4gPSBsMWVfZ2V0X3BmbigqcDJt X2VudHJ5KTsNCi0gICAgICAgICAgICAgICAgaW9tbXVfb2xkX2ZsYWdzID0NCi0gICAgICAgICAg ICAgICAgICAgIHAybV9nZXRfaW9tbXVfZmxhZ3MocDJtX2ZsYWdzX3RvX3R5cGUoZmxhZ3MpLA0K LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfbWZuKG9sZF9tZm4pKTsN Ci0gICAgICAgICAgICB9DQogICAgICAgICAgICAgZWxzZQ0KLSAgICAgICAgICAgIHsNCi0gICAg ICAgICAgICAgICAgaW9tbXVfb2xkX2ZsYWdzID0gfjA7DQogICAgICAgICAgICAgICAgIGludGVy bWVkaWF0ZV9lbnRyeSA9ICpwMm1fZW50cnk7DQotICAgICAgICAgICAgfQ0KICAgICAgICAgfQ0K IA0KICAgICAgICAgY2hlY2tfZW50cnkobWZuLCBwMm10LCBwMm1fZmxhZ3NfdG9fdHlwZShmbGFn cyksIHBhZ2Vfb3JkZXIpOw0KQEAgLTYxOSw5ICs1NzUsNiBAQCBwMm1fcHRfc2V0X2VudHJ5KHN0 cnVjdCBwMm1fZG9tYWluICpwMm0sIGdmbl90IGdmbl8sIG1mbl90IG1mbiwNCiAgICAgICAgICAg ICA6IGwzZV9lbXB0eSgpOw0KICAgICAgICAgZW50cnlfY29udGVudC5sMSA9IGwzZV9jb250ZW50 LmwzOw0KIA0KLSAgICAgICAgaWYgKCBlbnRyeV9jb250ZW50LmwxICE9IDAgKQ0KLSAgICAgICAg ICAgIHAybV9hZGRfaW9tbXVfZmxhZ3MoJmVudHJ5X2NvbnRlbnQsIDAsIGlvbW11X3B0ZV9mbGFn cyk7DQotDQogICAgICAgICByYyA9IHAybS0+d3JpdGVfcDJtX2VudHJ5KHAybSwgZ2ZuLCBwMm1f ZW50cnksIGVudHJ5X2NvbnRlbnQsIDMpOw0KICAgICAgICAgLyogTkI6IHBhZ2luZ193cml0ZV9w Mm1fZW50cnkoKSBoYW5kbGVzIHRsYiBmbHVzaGVzIHByb3Blcmx5ICovDQogICAgICAgICBpZiAo IHJjICkNCkBAIC02NDgsOSArNjAxLDYgQEAgcDJtX3B0X3NldF9lbnRyeShzdHJ1Y3QgcDJtX2Rv bWFpbiAqcDJtLCBnZm5fdCBnZm5fLCBtZm5fdCBtZm4sDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAwLCBMMV9QQUdFVEFCTEVfRU5UUklFUyk7DQogICAgICAgICBBU1NFUlQo cDJtX2VudHJ5KTsNCiAgICAgICAgIG9sZF9tZm4gPSBsMWVfZ2V0X3BmbigqcDJtX2VudHJ5KTsN Ci0gICAgICAgIGlvbW11X29sZF9mbGFncyA9DQotICAgICAgICAgICAgcDJtX2dldF9pb21tdV9m bGFncyhwMm1fZmxhZ3NfdG9fdHlwZShsMWVfZ2V0X2ZsYWdzKCpwMm1fZW50cnkpKSwNCi0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9tZm4ob2xkX21mbikpOw0KIA0KICAgICAgICAg aWYgKCBtZm5fdmFsaWQobWZuKSB8fCBwMm1fYWxsb3dzX2ludmFsaWRfbWZuKHAybXQpICkNCiAg ICAgICAgICAgICBlbnRyeV9jb250ZW50ID0gcDJtX2wxZV9mcm9tX3BmbihtZm5feChtZm4pLA0K QEAgLTY1OCw5ICs2MDgsNiBAQCBwMm1fcHRfc2V0X2VudHJ5KHN0cnVjdCBwMm1fZG9tYWluICpw Mm0sIGdmbl90IGdmbl8sIG1mbl90IG1mbiwNCiAgICAgICAgIGVsc2UNCiAgICAgICAgICAgICBl bnRyeV9jb250ZW50ID0gbDFlX2VtcHR5KCk7DQogDQotICAgICAgICBpZiAoIGVudHJ5X2NvbnRl bnQubDEgIT0gMCApDQotICAgICAgICAgICAgcDJtX2FkZF9pb21tdV9mbGFncygmZW50cnlfY29u dGVudCwgMCwgaW9tbXVfcHRlX2ZsYWdzKTsNCi0NCiAgICAgICAgIC8qIGxldmVsIDEgZW50cnkg Ki8NCiAgICAgICAgIHJjID0gcDJtLT53cml0ZV9wMm1fZW50cnkocDJtLCBnZm4sIHAybV9lbnRy eSwgZW50cnlfY29udGVudCwgMSk7DQogICAgICAgICAvKiBOQjogcGFnaW5nX3dyaXRlX3AybV9l bnRyeSgpIGhhbmRsZXMgdGxiIGZsdXNoZXMgcHJvcGVybHkgKi8NCkBAIC02NzcsMTcgKzYyNCw5 IEBAIHAybV9wdF9zZXRfZW50cnkoc3RydWN0IHAybV9kb21haW4gKnAybSwgZ2ZuX3QgZ2ZuXywg bWZuX3QgbWZuLA0KICAgICAgICAgaWYgKCBmbGFncyAmIF9QQUdFX1BSRVNFTlQgKQ0KICAgICAg ICAgew0KICAgICAgICAgICAgIGlmICggZmxhZ3MgJiBfUEFHRV9QU0UgKQ0KLSAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgb2xkX21mbiA9IGwxZV9nZXRfcGZuKCpwMm1fZW50cnkpOw0K LSAgICAgICAgICAgICAgICBpb21tdV9vbGRfZmxhZ3MgPQ0KLSAgICAgICAgICAgICAgICAgICAg cDJtX2dldF9pb21tdV9mbGFncyhwMm1fZmxhZ3NfdG9fdHlwZShmbGFncyksDQotICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9tZm4ob2xkX21mbikpOw0KLSAgICAgICAg ICAgIH0NCiAgICAgICAgICAgICBlbHNlDQotICAgICAgICAgICAgew0KLSAgICAgICAgICAgICAg ICBpb21tdV9vbGRfZmxhZ3MgPSB+MDsNCiAgICAgICAgICAgICAgICAgaW50ZXJtZWRpYXRlX2Vu dHJ5ID0gKnAybV9lbnRyeTsNCi0gICAgICAgICAgICB9DQogICAgICAgICB9DQogDQogICAgICAg ICBjaGVja19lbnRyeShtZm4sIHAybXQsIHAybV9mbGFnc190b190eXBlKGZsYWdzKSwgcGFnZV9v cmRlcik7DQpAQCAtNjk3LDkgKzYzNiw2IEBAIHAybV9wdF9zZXRfZW50cnkoc3RydWN0IHAybV9k b21haW4gKnAybSwgZ2ZuX3QgZ2ZuXywgbWZuX3QgbWZuLA0KICAgICAgICAgICAgIDogbDJlX2Vt cHR5KCk7DQogICAgICAgICBlbnRyeV9jb250ZW50LmwxID0gbDJlX2NvbnRlbnQubDI7DQogDQot ICAgICAgICBpZiAoIGVudHJ5X2NvbnRlbnQubDEgIT0gMCApDQotICAgICAgICAgICAgcDJtX2Fk ZF9pb21tdV9mbGFncygmZW50cnlfY29udGVudCwgMCwgaW9tbXVfcHRlX2ZsYWdzKTsNCi0NCiAg ICAgICAgIHJjID0gcDJtLT53cml0ZV9wMm1fZW50cnkocDJtLCBnZm4sIHAybV9lbnRyeSwgZW50 cnlfY29udGVudCwgMik7DQogICAgICAgICAvKiBOQjogcGFnaW5nX3dyaXRlX3AybV9lbnRyeSgp IGhhbmRsZXMgdGxiIGZsdXNoZXMgcHJvcGVybHkgKi8NCiAgICAgICAgIGlmICggcmMgKQ0KQEAg LTcxMSwyNCArNjQ3LDkgQEAgcDJtX3B0X3NldF9lbnRyeShzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJt LCBnZm5fdCBnZm5fLCBtZm5fdCBtZm4sDQogICAgICAgICAgJiYgKGdmbiArICgxVUwgPDwgcGFn ZV9vcmRlcikgLSAxID4gcDJtLT5tYXhfbWFwcGVkX3BmbikgKQ0KICAgICAgICAgcDJtLT5tYXhf bWFwcGVkX3BmbiA9IGdmbiArICgxVUwgPDwgcGFnZV9vcmRlcikgLSAxOw0KIA0KLSAgICBpZiAo IGlvbW11X2VuYWJsZWQgJiYgKGlvbW11X29sZF9mbGFncyAhPSBpb21tdV9wdGVfZmxhZ3MgfHwN Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICBvbGRfbWZuICE9IG1mbl94KG1mbikpICkNCi0g ICAgew0KLSAgICAgICAgQVNTRVJUKHJjID09IDApOw0KLQ0KLSAgICAgICAgaWYgKCBuZWVkX2lv bW11X3B0X3N5bmMocDJtLT5kb21haW4pICkNCi0gICAgICAgICAgICByYyA9IGlvbW11X3B0ZV9m bGFncyA/DQotICAgICAgICAgICAgICAgIGlvbW11X2xlZ2FjeV9tYXAoZCwgX2RmbihnZm4pLCBt Zm4sIHBhZ2Vfb3JkZXIsDQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW9tbXVf cHRlX2ZsYWdzKSA6DQotICAgICAgICAgICAgICAgIGlvbW11X2xlZ2FjeV91bm1hcChkLCBfZGZu KGdmbiksIHBhZ2Vfb3JkZXIpOw0KLSAgICAgICAgZWxzZSBpZiAoIGlvbW11X3VzZV9oYXBfcHQo ZCkgJiYgaW9tbXVfb2xkX2ZsYWdzICkNCi0gICAgICAgICAgICBhbWRfaW9tbXVfZmx1c2hfcGFn ZXMocDJtLT5kb21haW4sIGdmbiwgcGFnZV9vcmRlcik7DQotICAgIH0NCi0NCiAgICAgLyoNCiAg ICAgICogRnJlZSBvbGQgaW50ZXJtZWRpYXRlIHRhYmxlcyBpZiBuZWNlc3NhcnkuICBUaGlzIGhh cyB0byBiZSB0aGUNCi0gICAgICogbGFzdCB0aGluZyB3ZSBkbywgYWZ0ZXIgcmVtb3ZhbCBmcm9t IHRoZSBJT01NVSB0YWJsZXMsIHNvIGFzIHRvDQotICAgICAqIGF2b2lkIGEgcG90ZW50aWFsIHVz ZS1hZnRlci1mcmVlLg0KKyAgICAgKiBsYXN0IHRoaW5nIHdlIGRvIHNvIGFzIHRvIGF2b2lkIGEg cG90ZW50aWFsIHVzZS1hZnRlci1mcmVlLg0KICAgICAgKi8NCiAgICAgaWYgKCBsMWVfZ2V0X2Zs YWdzKGludGVybWVkaWF0ZV9lbnRyeSkgJiBfUEFHRV9QUkVTRU5UICkNCiAgICAgICAgIHAybV9m cmVlX2VudHJ5KHAybSwgJmludGVybWVkaWF0ZV9lbnRyeSwgcGFnZV9vcmRlcik7DQotLSANCjIu MTcuMQ0KDQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpY ZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRw czovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVuLWRldmVs