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=-6.5 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 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 906A8C3F2CD for ; Wed, 4 Mar 2020 14:28: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 576C220848 for ; Wed, 4 Mar 2020 14:28:36 +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="WfShKeB9" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 576C220848 Authentication-Results: mail.kernel.org; dmarc=fail (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 1j9V0T-0004QS-66; Wed, 04 Mar 2020 14:28:17 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1j9V0R-0004QL-Tq for xen-devel@lists.xenproject.org; Wed, 04 Mar 2020 14:28:15 +0000 X-Inumbo-ID: 61b0f660-5e24-11ea-8eb5-bc764e2007e4 Received: from EUR02-VE1-obe.outbound.protection.outlook.com (unknown [2a01:111:f400:fe06::709]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id 61b0f660-5e24-11ea-8eb5-bc764e2007e4; Wed, 04 Mar 2020 14:28:14 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LgMdaTnLCIVkCEFPqsyjAbWkgli7eDOokFdVaps/uidzSoE27e2Ae1r8mONDQYoAGqaKywhE1fAXF3MPKNrCb+JXP82efr7KINhgcQ6c72Y1xuUOF4DzKVoWn8jg7mQGaidG/XDEAAZRSVmF9O628RNtUM1onLxprbCN1tAmItSBUZUwflS9FcyJwDZIfLaNNqFuSBDZQwOf+2DYWFMiN7ne1qN3XjQFgbjsLMz8o90T7j2F4jmuQqRQMs66tVm/Ju0G71SRZoIZQX7YW9oWDnEcUAlmlNzMZOtY4VN+7b2vkc7sc1voA7nX3QxxsgugjUOoBr+1i9IhNxJ4ru0X5Q== 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=OPw77dBxrEBZUfFC6PLxPg4xO37tW1eHqDeugyT15b8=; b=Q/5l04/N+RjfiEfq1JpaOe5ZmRFACqE9UzSjtQofHgh49u3P31czO2B4Z4op5vqmWIsUt8SCVviz29Tf3g/fNzYxgybx8vhO2bhD1z2SYc3n37vX0/O3scp8y+E3nzyvyz2eCvh0J18r3kSLT440oSAKgDBrjZ58a40OwDkSekLoWXvuDJaKNoFyWVRltqjm2apHQ/f1LbZV6/0mORfEPx5BCHD9LBdZyO3K0fWckFIQJZTIi7I2l/tyiHNg284qavoi6aJ9jMes8UD53QENyrEGf3iHpHmvGJyAsQDD94HnxsWRrbWIP/2iXNfEavUq7sXSfTMPwzrNuOOvCOnE/g== 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=OPw77dBxrEBZUfFC6PLxPg4xO37tW1eHqDeugyT15b8=; b=WfShKeB9Fy7QU0JrFMB1Jq6SNnC/tYo4aznpjpBKzV1KcV8PvRLXpkkUxFn3Fb5nMNHf2abMuiTmmre0mc9Zt5Mjn4EvmYb2ofUD8KwHNPH7dbzTAS4MVg0ktCdr8jXiEGIWPsad5PKVpDBDPHQc4ISMwKAyElGWd+cfV+Me1EY= Received: from DB6PR02MB2999.eurprd02.prod.outlook.com (10.170.219.144) by DB6PR02MB3141.eurprd02.prod.outlook.com (10.170.220.26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2772.16; Wed, 4 Mar 2020 14:28:12 +0000 Received: from DB6PR02MB2999.eurprd02.prod.outlook.com ([fe80::f87f:d4b3:234f:d43e]) by DB6PR02MB2999.eurprd02.prod.outlook.com ([fe80::f87f:d4b3:234f:d43e%4]) with mapi id 15.20.2772.019; Wed, 4 Mar 2020 14:28:12 +0000 Received: from [10.10.195.54] (91.199.104.6) by AM0PR0102CA0011.eurprd01.prod.exchangelabs.com (2603:10a6:208:14::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2772.18 via Frontend Transport; Wed, 4 Mar 2020 14:28:10 +0000 From: Alexandru Stefan ISAILA To: "xen-devel@lists.xenproject.org" , Ian Jackson , Wei Liu , Jun Nakajima , Kevin Tian Thread-Topic: [PATCH V6] x86/altp2m: Hypercall to set altp2m view visibility Thread-Index: AQHV8VaFWzT4PZYI70qii0UzQw6fbqg4f5OA Date: Wed, 4 Mar 2020 14:28:12 +0000 Message-ID: <568bc1cd-aed1-326c-ad0b-b635c585d9f7@bitdefender.com> References: <20200303122240.27013-1-aisaila@bitdefender.com> In-Reply-To: <20200303122240.27013-1-aisaila@bitdefender.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: AM0PR0102CA0011.eurprd01.prod.exchangelabs.com (2603:10a6:208:14::24) To DB6PR02MB2999.eurprd02.prod.outlook.com (2603:10a6:6:17::16) authentication-results: spf=none (sender IP is ) smtp.mailfrom=aisaila@bitdefender.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [91.199.104.6] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 77672135-4e47-4a26-9a8b-08d7c04844af x-ms-traffictypediagnostic: DB6PR02MB3141:|DB6PR02MB3141: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:400; x-forefront-prvs: 0332AACBC3 x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(396003)(39850400004)(376002)(346002)(366004)(136003)(189003)(199004)(26005)(71200400001)(8676002)(4326008)(81166006)(8936002)(86362001)(186003)(81156014)(31696002)(5660300002)(7416002)(52116002)(66446008)(53546011)(64756008)(66556008)(478600001)(36756003)(16526019)(316002)(6486002)(66476007)(66946007)(54906003)(2616005)(956004)(30864003)(2906002)(16576012)(31686004)(110136005); DIR:OUT; SFP:1102; SCL:1; SRVR:DB6PR02MB3141; H:DB6PR02MB2999.eurprd02.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: bitdefender.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: DgdIagk3K5mlrw7Kq8Uh3nXK5PW7ftNrDrWrec12TsLfEQbCiVQ1QAn+At14gcnkUpa2l8aq5hVYVqsy1BuVO23Hnlom/znoGwwTiC1tPOGuJtBs/v73x4B2Pu60alNLM57jeRApw+Y/N+Q8cQdJOSp/rXVbd6d2yTyKQCZ1Q9CYenJGdDueC4WAfORmHeTDDtV33Ho1H48QYJ4/77sr6+fHqeAawIN+zDI+txwwLP581aLb9R5WFH1rfS9facs+6HLN48Bgs2UhTWZ3EDaxmv9cWwP1Z91YbhNieQi1l7slwMKz7LBLWmQEfh/T0ErRbR+d9ytP68suBeDhn5Lr02WyLLRQ3nAm48q1CqNfHzerwK0len1GrZ1zPjcEl9JQQoO3OOJE4ldJqcbr2cYt+5vYXZcP4HAMV6JBBVcW6NEcmXDlHLZL7QYH5ngk2iGn x-ms-exchange-antispam-messagedata: I/FvLx7QEotAMlN9Fg30Ifq9G7DMyFeA0HF9MDW2KcbaNwaSchVNMRMG0WUmM3uch6WkPpIV0otsM/kZbDfiFDh2/F8/Dl5cqNz9qSddwHwG478nprd0ZWUvydm6tv9zNo+MyL/aRqf3FMmo8+TVVA== x-ms-exchange-transport-forked: True Content-ID: <5EE43DA722FA3C4D981377558C46675B@eurprd02.prod.outlook.com> MIME-Version: 1.0 X-OriginatorOrg: bitdefender.com X-MS-Exchange-CrossTenant-Network-Message-Id: 77672135-4e47-4a26-9a8b-08d7c04844af X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Mar 2020 14:28:12.0530 (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: YmzyXc/fb4qqtKxev/NHJY2YGBM33oJJMYMi4uPBUTF71wtZRxTxobw2HwWAviITvIri8W/yjD2yS1mbe1PN63azXtGGiGJWZDvRpc9tVLg= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR02MB3141 Subject: Re: [Xen-devel] [PATCH V6] x86/altp2m: Hypercall to set altp2m view visibility 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: Stefano Stabellini , Julien Grall , Konrad Rzeszutek Wilk , George Dunlap , Andrew Cooper , Jan Beulich , =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" SGksDQoNCkFueSB0aG91Z2h0cyBvbiB0aGlzIHBhdGNoIGFyZSBhcHByZWNpYXRlZC4NCg0KVGhh bmtzLA0KQWxleA0KDQoNCk9uIDAzLjAzLjIwMjAgMTQ6MjMsIEFsZXhhbmRydSBTdGVmYW4gSVNB SUxBIHdyb3RlOg0KPiBBdCB0aGlzIG1vbWVudCBhIGd1ZXN0IGNhbiBjYWxsIHZtZnVuYyB0byBj aGFuZ2UgdGhlIGFsdHAybSB2aWV3LiBUaGlzDQo+IHNob3VsZCBiZSBsaW1pdGVkIGluIG9yZGVy IHRvIGF2b2lkIGFueSB1bndhbnRlZCB2aWV3IHN3aXRjaC4NCj4gDQo+IFRoZSBuZXcgeGNfYWx0 cDJtX3NldF92aXNpYmlsaXR5KCkgc29sdmVzIHRoaXMgYnkgbWFraW5nIHZpZXdzIGludmlzaWJs ZQ0KPiB0byB2bWZ1bmMuDQo+IFRoaXMgaXMgZG9uZSBieSBoYXZpbmcgYSBzZXBhcmF0ZSBhcmNo LmFsdHAybV93b3JraW5nX2VwdHAgdGhhdCBpcw0KPiBwb3B1bGF0ZWQgYW5kIG1hZGUgaW52YWxp ZCBpbiB0aGUgc2FtZSBwbGFjZXMgYXMgYWx0cDJtX2VwdHAuIFRoaXMgaXMNCj4gd3JpdHRlbiB0 byBFUFRQX0xJU1RfQUREUi4NCj4gVGhlIHZpZXdzIGFyZSBtYWRlIGluL3Zpc2libGUgYnkgbWFy a2luZyB0aGVtIHdpdGggSU5WQUxJRF9NRk4gb3INCj4gY29weWluZyB0aGVtIGJhY2sgZnJvbSBh bHRwMm1fZXB0cC4NCj4gVG8gaGF2ZSBjb25zaXN0ZW5jeSB0aGUgdmlzaWJpbGl0eSBhbHNvIGFw cGxpZXMgdG8NCj4gcDJtX3N3aXRjaF9kb21haW5fYWx0cDJtX2J5X2lkKCkuDQo+IA0KPiBOb3Rl OiBJZiBhbHRwMm0gbW9kZSBpcyBzZXQgdG8gbWl4ZWQgdGhlIGd1ZXN0IGlzIGFibGUgdG8gY2hh bmdlIHRoZSB2aWV3DQo+IHZpc2liaWxpdHkgYW5kIHRoZW4gY2FsbCB2bWZ1bmMuDQo+IA0KPiBT aWduZWQtb2ZmLWJ5OiBBbGV4YW5kcnUgSXNhaWxhIDxhaXNhaWxhQGJpdGRlZmVuZGVyLmNvbT4N Cj4gLS0tDQo+IENDOiBJYW4gSmFja3NvbiA8aWFuLmphY2tzb25AZXUuY2l0cml4LmNvbT4NCj4g Q0M6IFdlaSBMaXUgPHdsQHhlbi5vcmc+DQo+IENDOiBBbmRyZXcgQ29vcGVyIDxhbmRyZXcuY29v cGVyM0BjaXRyaXguY29tPg0KPiBDQzogR2VvcmdlIER1bmxhcCA8R2VvcmdlLkR1bmxhcEBldS5j aXRyaXguY29tPg0KPiBDQzogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPg0KPiBDQzog SnVsaWVuIEdyYWxsIDxqdWxpZW5AeGVuLm9yZz4NCj4gQ0M6IEtvbnJhZCBSemVzenV0ZWsgV2ls ayA8a29ucmFkLndpbGtAb3JhY2xlLmNvbT4NCj4gQ0M6IFN0ZWZhbm8gU3RhYmVsbGluaSA8c3N0 YWJlbGxpbmlAa2VybmVsLm9yZz4NCj4gQ0M6ICJSb2dlciBQYXUgTW9ubsOpIiA8cm9nZXIucGF1 QGNpdHJpeC5jb20+DQo+IENDOiBKdW4gTmFrYWppbWEgPGp1bi5uYWthamltYUBpbnRlbC5jb20+ DQo+IENDOiBLZXZpbiBUaWFuIDxrZXZpbi50aWFuQGludGVsLmNvbT4NCj4gLS0tDQo+IENoYW5n ZXMgc2luY2UgVjU6DQo+IAktIENoYW5nZSBpZHggdHlwZSBmcm9tIHVpbnQxNl90IHRvIHVuc2ln bmVkIGludA0KPiAJLSBBZGQgcmMgdmFyIGFuZCBkcm9wcGVkIHRoZSBlcnIgcmV0dXJuIGZyb20g cDJtX2dldF9zdXBwcmVzc192ZSgpLg0KPiANCj4gQ2hhbmdlcyBzaW5jZSBWNDoNCj4gCS0gTW92 ZSBwMm0gc3BlY2lmaWMgdGhpbmdzIGZyb20gaHZtIHRvIHAybS5jDQo+IAktIEFkZCBjb21tZW50 IGZvciBhbHRwMm1faWR4IGJvdW5kcyBjaGVjaw0KPiAJLSBBZGQgYWx0cDJtX2xpc3RfbG9jay91 bmxvY2soKS4NCj4gDQo+IENoYW5nZXMgc2luY2UgVjM6DQo+IAktIENoYW5nZSB2YXIgbmFtZSBm b3JtIGFsdHAybV9pZHggdG8gaWR4IHRvIHNob3J0ZW4gbGluZSBsZW5ndGgNCj4gCS0gQWRkIGJv dW5kcyBjaGVjayBmb3IgaWR4DQo+IAktIFVwZGF0ZSBjb21taXQgbWVzc2FnZQ0KPiAJLSBBZGQg Y29tbWVudCBpbiB4ZW5jdHJsLmguDQo+IA0KPiBDaGFuZ2VzIHNpbmNlIFYyOg0KPiAJLSBEcm9w IGhhcF9lbmFibGVkKCkgY2hlY2sNCj4gCS0gUmVkdWNlIHRoZSBpbmRlbnRhdGlvbiBkZXB0aCBp biBodm0uYw0KPiAJLSBGaXggYXNzaWdubWVudCBpbmRlbnRhdGlvbg0KPiAJLSBEcm9wIHBhZDIu DQo+IA0KPiBDaGFuZ2VzIHNpbmNlIFYxOg0KPiAJLSBEcm9wIGRvdWJsZSB2aWV3IGZyb20gdGl0 bGUuDQo+IC0tLQ0KPiAgIHRvb2xzL2xpYnhjL2luY2x1ZGUveGVuY3RybC5oICAgfCAgNyArKysr KysrDQo+ICAgdG9vbHMvbGlieGMveGNfYWx0cDJtLmMgICAgICAgICB8IDI0ICsrKysrKysrKysr KysrKysrKysrKysrDQo+ICAgeGVuL2FyY2gveDg2L2h2bS9odm0uYyAgICAgICAgICB8IDE0ICsr KysrKysrKysrKysrDQo+ICAgeGVuL2FyY2gveDg2L2h2bS92bXgvdm14LmMgICAgICB8ICAyICst DQo+ICAgeGVuL2FyY2gveDg2L21tL2hhcC9oYXAuYyAgICAgICB8IDE1ICsrKysrKysrKysrKysr Kw0KPiAgIHhlbi9hcmNoL3g4Ni9tbS9wMm0tZXB0LmMgICAgICAgfCAgMSArDQo+ICAgeGVuL2Fy Y2gveDg2L21tL3AybS5jICAgICAgICAgICB8IDM0ICsrKysrKysrKysrKysrKysrKysrKysrKysr KysrKystLQ0KPiAgIHhlbi9pbmNsdWRlL2FzbS14ODYvZG9tYWluLmggICAgfCAgMSArDQo+ICAg eGVuL2luY2x1ZGUvYXNtLXg4Ni9wMm0uaCAgICAgICB8ICA0ICsrKysNCj4gICB4ZW4vaW5jbHVk ZS9wdWJsaWMvaHZtL2h2bV9vcC5oIHwgIDkgKysrKysrKysrDQo+ICAgMTAgZmlsZXMgY2hhbmdl ZCwgMTA4IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pDQo+IA0KPiBkaWZmIC0tZ2l0IGEv dG9vbHMvbGlieGMvaW5jbHVkZS94ZW5jdHJsLmggYi90b29scy9saWJ4Yy9pbmNsdWRlL3hlbmN0 cmwuaA0KPiBpbmRleCBmYzZlNTdhMWEwLi4yZTZlNjUyNjc4IDEwMDY0NA0KPiAtLS0gYS90b29s cy9saWJ4Yy9pbmNsdWRlL3hlbmN0cmwuaA0KPiArKysgYi90b29scy9saWJ4Yy9pbmNsdWRlL3hl bmN0cmwuaA0KPiBAQCAtMTk0Myw2ICsxOTQzLDEzIEBAIGludCB4Y19hbHRwMm1fY2hhbmdlX2dm bih4Y19pbnRlcmZhY2UgKmhhbmRsZSwgdWludDMyX3QgZG9taWQsDQo+ICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHhlbl9wZm5fdCBuZXdfZ2ZuKTsNCj4gICBpbnQgeGNfYWx0cDJtX2dldF92 Y3B1X3AybV9pZHgoeGNfaW50ZXJmYWNlICpoYW5kbGUsIHVpbnQzMl90IGRvbWlkLA0KPiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCB2Y3B1aWQsIHVpbnQxNl90ICpw Mm1pZHgpOw0KPiArLyoNCj4gKyAqIFNldCB2aWV3IHZpc2liaWxpdHkgZm9yIHhjX2FsdHAybV9z d2l0Y2hfdG9fdmlldyBhbmQgdm1mdW5jLg0KPiArICogTm90ZTogSWYgYWx0cDJtIG1vZGUgaXMg c2V0IHRvIG1peGVkIHRoZSBndWVzdCBpcyBhYmxlIHRvIGNoYW5nZSB0aGUgdmlldw0KPiArICog dmlzaWJpbGl0eSBhbmQgdGhlbiBjYWxsIHZtZnVuYy4NCj4gKyAqLw0KPiAraW50IHhjX2FsdHAy bV9zZXRfdmlzaWJpbGl0eSh4Y19pbnRlcmZhY2UgKmhhbmRsZSwgdWludDMyX3QgZG9taWQsDQo+ ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQxNl90IHZpZXdfaWQsIGJvb2wgdmlz aWJsZSk7DQo+ICAgDQo+ICAgLyoqDQo+ICAgICogTWVtIHBhZ2luZyBvcGVyYXRpb25zLg0KPiBk aWZmIC0tZ2l0IGEvdG9vbHMvbGlieGMveGNfYWx0cDJtLmMgYi90b29scy9saWJ4Yy94Y19hbHRw Mm0uYw0KPiBpbmRleCA0NmZiNzI1ODA2Li42OTg3Yzk1NDFmIDEwMDY0NA0KPiAtLS0gYS90b29s cy9saWJ4Yy94Y19hbHRwMm0uYw0KPiArKysgYi90b29scy9saWJ4Yy94Y19hbHRwMm0uYw0KPiBA QCAtNDEwLDMgKzQxMCwyNyBAQCBpbnQgeGNfYWx0cDJtX2dldF92Y3B1X3AybV9pZHgoeGNfaW50 ZXJmYWNlICpoYW5kbGUsIHVpbnQzMl90IGRvbWlkLA0KPiAgICAgICB4Y19oeXBlcmNhbGxfYnVm ZmVyX2ZyZWUoaGFuZGxlLCBhcmcpOw0KPiAgICAgICByZXR1cm4gcmM7DQo+ICAgfQ0KPiArDQo+ ICtpbnQgeGNfYWx0cDJtX3NldF92aXNpYmlsaXR5KHhjX2ludGVyZmFjZSAqaGFuZGxlLCB1aW50 MzJfdCBkb21pZCwNCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDE2X3Qgdmll d19pZCwgYm9vbCB2aXNpYmxlKQ0KPiArew0KPiArICAgIGludCByYzsNCj4gKw0KPiArICAgIERF Q0xBUkVfSFlQRVJDQUxMX0JVRkZFUih4ZW5faHZtX2FsdHAybV9vcF90LCBhcmcpOw0KPiArDQo+ ICsgICAgYXJnID0geGNfaHlwZXJjYWxsX2J1ZmZlcl9hbGxvYyhoYW5kbGUsIGFyZywgc2l6ZW9m KCphcmcpKTsNCj4gKyAgICBpZiAoIGFyZyA9PSBOVUxMICkNCj4gKyAgICAgICAgcmV0dXJuIC0x Ow0KPiArDQo+ICsgICAgYXJnLT52ZXJzaW9uID0gSFZNT1BfQUxUUDJNX0lOVEVSRkFDRV9WRVJT SU9OOw0KPiArICAgIGFyZy0+Y21kID0gSFZNT1BfYWx0cDJtX3NldF92aXNpYmlsaXR5Ow0KPiAr ICAgIGFyZy0+ZG9tYWluID0gZG9taWQ7DQo+ICsgICAgYXJnLT51LnNldF92aXNpYmlsaXR5LmFs dHAybV9pZHggPSB2aWV3X2lkOw0KPiArICAgIGFyZy0+dS5zZXRfdmlzaWJpbGl0eS52aXNpYmxl ID0gdmlzaWJsZTsNCj4gKw0KPiArICAgIHJjID0geGVuY2FsbDIoaGFuZGxlLT54Y2FsbCwgX19I WVBFUlZJU09SX2h2bV9vcCwgSFZNT1BfYWx0cDJtLA0KPiArICAgICAgICAgICAgICAgICAgSFlQ RVJDQUxMX0JVRkZFUl9BU19BUkcoYXJnKSk7DQo+ICsNCj4gKyAgICB4Y19oeXBlcmNhbGxfYnVm ZmVyX2ZyZWUoaGFuZGxlLCBhcmcpOw0KPiArICAgIHJldHVybiByYzsNCj4gK30NCj4gZGlmZiAt LWdpdCBhL3hlbi9hcmNoL3g4Ni9odm0vaHZtLmMgYi94ZW4vYXJjaC94ODYvaHZtL2h2bS5jDQo+ IGluZGV4IGRiNWQ3YjRkMzAuLjdlNjMxZTMwZGQgMTAwNjQ0DQo+IC0tLSBhL3hlbi9hcmNoL3g4 Ni9odm0vaHZtLmMNCj4gKysrIGIveGVuL2FyY2gveDg2L2h2bS9odm0uYw0KPiBAQCAtNDU2NCw2 ICs0NTY0LDcgQEAgc3RhdGljIGludCBkb19hbHRwMm1fb3AoDQo+ICAgICAgIGNhc2UgSFZNT1Bf YWx0cDJtX2dldF9tZW1fYWNjZXNzOg0KPiAgICAgICBjYXNlIEhWTU9QX2FsdHAybV9jaGFuZ2Vf Z2ZuOg0KPiAgICAgICBjYXNlIEhWTU9QX2FsdHAybV9nZXRfcDJtX2lkeDoNCj4gKyAgICBjYXNl IEhWTU9QX2FsdHAybV9zZXRfdmlzaWJpbGl0eToNCj4gICAgICAgICAgIGJyZWFrOw0KPiAgIA0K PiAgICAgICBkZWZhdWx0Og0KPiBAQCAtNDg0MSw2ICs0ODQyLDE5IEBAIHN0YXRpYyBpbnQgZG9f YWx0cDJtX29wKA0KPiAgICAgICAgICAgYnJlYWs7DQo+ICAgICAgIH0NCj4gICANCj4gKyAgICBj YXNlIEhWTU9QX2FsdHAybV9zZXRfdmlzaWJpbGl0eToNCj4gKyAgICB7DQo+ICsgICAgICAgIHVu c2lnbmVkIGludCBpZHggPSBhLnUuc2V0X3Zpc2liaWxpdHkuYWx0cDJtX2lkeDsNCj4gKw0KPiAr ICAgICAgICBpZiAoIGEudS5zZXRfdmlzaWJpbGl0eS5wYWQgKQ0KPiArICAgICAgICAgICAgcmMg PSAtRUlOVkFMOw0KPiArICAgICAgICBlbHNlIGlmICggIWFsdHAybV9hY3RpdmUoZCkgKQ0KPiAr ICAgICAgICAgICAgcmMgPSAtRU9QTk9UU1VQUDsNCj4gKyAgICAgICAgZWxzZQ0KPiArICAgICAg ICAgICAgcmMgPSBwMm1fc2V0X2FsdHAybV92aWV3X3Zpc2liaWxpdHkoZCwgaWR4LA0KPiArICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYS51LnNldF92aXNp YmlsaXR5LnZpc2libGUpOw0KPiArICAgIH0NCj4gKw0KPiAgICAgICBkZWZhdWx0Og0KPiAgICAg ICAgICAgQVNTRVJUX1VOUkVBQ0hBQkxFKCk7DQo+ICAgICAgIH0NCj4gZGlmZiAtLWdpdCBhL3hl bi9hcmNoL3g4Ni9odm0vdm14L3ZteC5jIGIveGVuL2FyY2gveDg2L2h2bS92bXgvdm14LmMNCj4g aW5kZXggZDI2NWVkNDZhZC4uYmI0NGVmMzlhMSAxMDA2NDQNCj4gLS0tIGEveGVuL2FyY2gveDg2 L2h2bS92bXgvdm14LmMNCj4gKysrIGIveGVuL2FyY2gveDg2L2h2bS92bXgvdm14LmMNCj4gQEAg LTIxNDAsNyArMjE0MCw3IEBAIHN0YXRpYyB2b2lkIHZteF92Y3B1X3VwZGF0ZV92bWZ1bmNfdmUo c3RydWN0IHZjcHUgKnYpDQo+ICAgICAgIHsNCj4gICAgICAgICAgIHYtPmFyY2guaHZtLnZteC5z ZWNvbmRhcnlfZXhlY19jb250cm9sIHw9IG1hc2s7DQo+ICAgICAgICAgICBfX3Ztd3JpdGUoVk1f RlVOQ1RJT05fQ09OVFJPTCwgVk1YX1ZNRlVOQ19FUFRQX1NXSVRDSElORyk7DQo+IC0gICAgICAg IF9fdm13cml0ZShFUFRQX0xJU1RfQUREUiwgdmlydF90b19tYWRkcihkLT5hcmNoLmFsdHAybV9l cHRwKSk7DQo+ICsgICAgICAgIF9fdm13cml0ZShFUFRQX0xJU1RfQUREUiwgdmlydF90b19tYWRk cihkLT5hcmNoLmFsdHAybV93b3JraW5nX2VwdHApKTsNCj4gICANCj4gICAgICAgICAgIGlmICgg Y3B1X2hhc192bXhfdmlydF9leGNlcHRpb25zICkNCj4gICAgICAgICAgIHsNCj4gZGlmZiAtLWdp dCBhL3hlbi9hcmNoL3g4Ni9tbS9oYXAvaGFwLmMgYi94ZW4vYXJjaC94ODYvbW0vaGFwL2hhcC5j DQo+IGluZGV4IDNkOTNmMzQ1MWMuLjU5NjllYzg5MjIgMTAwNjQ0DQo+IC0tLSBhL3hlbi9hcmNo L3g4Ni9tbS9oYXAvaGFwLmMNCj4gKysrIGIveGVuL2FyY2gveDg2L21tL2hhcC9oYXAuYw0KPiBA QCAtNDg4LDggKzQ4OCwxNyBAQCBpbnQgaGFwX2VuYWJsZShzdHJ1Y3QgZG9tYWluICpkLCB1MzIg bW9kZSkNCj4gICAgICAgICAgICAgICBnb3RvIG91dDsNCj4gICAgICAgICAgIH0NCj4gICANCj4g KyAgICAgICAgaWYgKCAoZC0+YXJjaC5hbHRwMm1fd29ya2luZ19lcHRwID0gYWxsb2NfeGVuaGVh cF9wYWdlKCkpID09IE5VTEwgKQ0KPiArICAgICAgICB7DQo+ICsgICAgICAgICAgICBydiA9IC1F Tk9NRU07DQo+ICsgICAgICAgICAgICBnb3RvIG91dDsNCj4gKyAgICAgICAgfQ0KPiArDQo+ICAg ICAgICAgICBmb3IgKCBpID0gMDsgaSA8IE1BWF9FUFRQOyBpKysgKQ0KPiArICAgICAgICB7DQo+ ICAgICAgICAgICAgICAgZC0+YXJjaC5hbHRwMm1fZXB0cFtpXSA9IG1mbl94KElOVkFMSURfTUZO KTsNCj4gKyAgICAgICAgICAgIGQtPmFyY2guYWx0cDJtX3dvcmtpbmdfZXB0cFtpXSA9IG1mbl94 KElOVkFMSURfTUZOKTsNCj4gKyAgICAgICAgfQ0KPiAgIA0KPiAgICAgICAgICAgZm9yICggaSA9 IDA7IGkgPCBNQVhfQUxUUDJNOyBpKysgKQ0KPiAgICAgICAgICAgew0KPiBAQCAtNTIzLDYgKzUz MiwxMiBAQCB2b2lkIGhhcF9maW5hbF90ZWFyZG93bihzdHJ1Y3QgZG9tYWluICpkKQ0KPiAgICAg ICAgICAgICAgIGQtPmFyY2guYWx0cDJtX2VwdHAgPSBOVUxMOw0KPiAgICAgICAgICAgfQ0KPiAg IA0KPiArICAgICAgICBpZiAoIGQtPmFyY2guYWx0cDJtX3dvcmtpbmdfZXB0cCApDQo+ICsgICAg ICAgIHsNCj4gKyAgICAgICAgICAgIGZyZWVfeGVuaGVhcF9wYWdlKGQtPmFyY2guYWx0cDJtX3dv cmtpbmdfZXB0cCk7DQo+ICsgICAgICAgICAgICBkLT5hcmNoLmFsdHAybV93b3JraW5nX2VwdHAg PSBOVUxMOw0KPiArICAgICAgICB9DQo+ICsNCj4gICAgICAgICAgIGZvciAoIGkgPSAwOyBpIDwg TUFYX0FMVFAyTTsgaSsrICkNCj4gICAgICAgICAgICAgICBwMm1fdGVhcmRvd24oZC0+YXJjaC5h bHRwMm1fcDJtW2ldKTsNCj4gICAgICAgfQ0KPiBkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L21t L3AybS1lcHQuYyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0tZXB0LmMNCj4gaW5kZXggZWIwZjBlZGZl Zi4uNjUzOWNhNjE5YiAxMDA2NDQNCj4gLS0tIGEveGVuL2FyY2gveDg2L21tL3AybS1lcHQuYw0K PiArKysgYi94ZW4vYXJjaC94ODYvbW0vcDJtLWVwdC5jDQo+IEBAIC0xMzY4LDYgKzEzNjgsNyBA QCB2b2lkIHAybV9pbml0X2FsdHAybV9lcHQoc3RydWN0IGRvbWFpbiAqZCwgdW5zaWduZWQgaW50 IGkpDQo+ICAgICAgIGVwdCA9ICZwMm0tPmVwdDsNCj4gICAgICAgZXB0LT5tZm4gPSBwYWdldGFi bGVfZ2V0X3BmbihwMm1fZ2V0X3BhZ2V0YWJsZShwMm0pKTsNCj4gICAgICAgZC0+YXJjaC5hbHRw Mm1fZXB0cFthcnJheV9pbmRleF9ub3NwZWMoaSwgTUFYX0VQVFApXSA9IGVwdC0+ZXB0cDsNCj4g KyAgICBkLT5hcmNoLmFsdHAybV93b3JraW5nX2VwdHBbYXJyYXlfaW5kZXhfbm9zcGVjKGksIE1B WF9FUFRQKV0gPSBlcHQtPmVwdHA7DQo+ICAgfQ0KPiAgIA0KPiAgIHVuc2lnbmVkIGludCBwMm1f ZmluZF9hbHRwMm1fYnlfZXB0cChzdHJ1Y3QgZG9tYWluICpkLCB1aW50NjRfdCBlcHRwKQ0KPiBk aWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L21tL3AybS5jIGIveGVuL2FyY2gveDg2L21tL3AybS5j DQo+IGluZGV4IDM3MTlkZWFlNzcuLjA2Nzc2OTE3ODMgMTAwNjQ0DQo+IC0tLSBhL3hlbi9hcmNo L3g4Ni9tbS9wMm0uYw0KPiArKysgYi94ZW4vYXJjaC94ODYvbW0vcDJtLmMNCj4gQEAgLTI1MTYs NiArMjUxNiw3IEBAIHZvaWQgcDJtX2ZsdXNoX2FsdHAybShzdHJ1Y3QgZG9tYWluICpkKQ0KPiAg ICAgICB7DQo+ICAgICAgICAgICBwMm1fcmVzZXRfYWx0cDJtKGQsIGksIEFMVFAyTV9ERUFDVElW QVRFKTsNCj4gICAgICAgICAgIGQtPmFyY2guYWx0cDJtX2VwdHBbaV0gPSBtZm5feChJTlZBTElE X01GTik7DQo+ICsgICAgICAgIGQtPmFyY2guYWx0cDJtX3dvcmtpbmdfZXB0cFtpXSA9IG1mbl94 KElOVkFMSURfTUZOKTsNCj4gICAgICAgfQ0KPiAgIA0KPiAgICAgICBhbHRwMm1fbGlzdF91bmxv Y2soZCk7DQo+IEBAIC0yNjM1LDcgKzI2MzYsOSBAQCBpbnQgcDJtX2Rlc3Ryb3lfYWx0cDJtX2J5 X2lkKHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGludCBpZHgpDQo+ICAgICAgICAgICB7DQo+ ICAgICAgICAgICAgICAgcDJtX3Jlc2V0X2FsdHAybShkLCBpZHgsIEFMVFAyTV9ERUFDVElWQVRF KTsNCj4gICAgICAgICAgICAgICBkLT5hcmNoLmFsdHAybV9lcHRwW2FycmF5X2luZGV4X25vc3Bl YyhpZHgsIE1BWF9FUFRQKV0gPQ0KPiAtICAgICAgICAgICAgbWZuX3goSU5WQUxJRF9NRk4pOw0K PiArICAgICAgICAgICAgICAgIG1mbl94KElOVkFMSURfTUZOKTsNCj4gKyAgICAgICAgICAgIGQt PmFyY2guYWx0cDJtX3dvcmtpbmdfZXB0cFthcnJheV9pbmRleF9ub3NwZWMoaWR4LCBNQVhfRVBU UCldID0NCj4gKyAgICAgICAgICAgICAgICBtZm5feChJTlZBTElEX01GTik7DQo+ICAgICAgICAg ICAgICAgcmMgPSAwOw0KPiAgICAgICAgICAgfQ0KPiAgICAgICB9DQo+IEBAIC0yNjYyLDcgKzI2 NjUsNyBAQCBpbnQgcDJtX3N3aXRjaF9kb21haW5fYWx0cDJtX2J5X2lkKHN0cnVjdCBkb21haW4g KmQsIHVuc2lnbmVkIGludCBpZHgpDQo+ICAgICAgIHJjID0gLUVJTlZBTDsNCj4gICAgICAgYWx0 cDJtX2xpc3RfbG9jayhkKTsNCj4gICANCj4gLSAgICBpZiAoIGQtPmFyY2guYWx0cDJtX2VwdHBb aWR4XSAhPSBtZm5feChJTlZBTElEX01GTikgKQ0KPiArICAgIGlmICggZC0+YXJjaC5hbHRwMm1f d29ya2luZ19lcHRwW2lkeF0gIT0gbWZuX3goSU5WQUxJRF9NRk4pICkNCj4gICAgICAgew0KPiAg ICAgICAgICAgZm9yX2VhY2hfdmNwdSggZCwgdiApDQo+ICAgICAgICAgICAgICAgaWYgKCBpZHgg IT0gdmNwdV9hbHRwMm0odikucDJtaWR4ICkNCj4gQEAgLTMxNDYsNiArMzE0OSwzMyBAQCBpbnQg cDJtX2dldF9zdXBwcmVzc192ZShzdHJ1Y3QgZG9tYWluICpkLCBnZm5fdCBnZm4sIGJvb2wgKnN1 cHByZXNzX3ZlLA0KPiAgIA0KPiAgICAgICByZXR1cm4gcmM7DQo+ICAgfQ0KPiArDQo+ICtpbnQg cDJtX3NldF9hbHRwMm1fdmlld192aXNpYmlsaXR5KHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVk IGludCBhbHRwMm1faWR4LA0KPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1 aW50OF90IHZpc2libGUpDQo+ICt7DQo+ICsgICAgaW50IHJjID0gMDsNCj4gKw0KPiArICAgIGFs dHAybV9saXN0X2xvY2soZCk7DQo+ICsNCj4gKyAgICAvKg0KPiArICAgICAqIEVwdHAgaW5kZXgg aXMgY29ycmVsYXRlZCB3aXRoIGFsdHAybSBpbmRleCBhbmQgc2hvdWxkIG5vdCBleGNlZWQNCj4g KyAgICAgKiBtaW4oTUFYX0FMVFAyTSwgTUFYX0VQVFApLg0KPiArICAgICAqLw0KPiArICAgIGlm ICggYWx0cDJtX2lkeCA+PSBtaW4oQVJSQVlfU0laRShkLT5hcmNoLmFsdHAybV9wMm0pLCBNQVhf RVBUUCkgfHwNCj4gKyAgICAgICAgIGQtPmFyY2guYWx0cDJtX2VwdHBbYXJyYXlfaW5kZXhfbm9z cGVjKGFsdHAybV9pZHgsIE1BWF9FUFRQKV0gPT0NCj4gKyAgICAgICAgIG1mbl94KElOVkFMSURf TUZOKSApDQo+ICsgICAgICAgIHJjID0gLUVJTlZBTDsNCj4gKyAgICBlbHNlIGlmICggdmlzaWJs ZSApDQo+ICsgICAgICAgIGQtPmFyY2guYWx0cDJtX3dvcmtpbmdfZXB0cFthcnJheV9pbmRleF9u b3NwZWMoYWx0cDJtX2lkeCwgTUFYX0VQVFApXSA9DQo+ICsgICAgICAgICAgICBkLT5hcmNoLmFs dHAybV9lcHRwW2FycmF5X2luZGV4X25vc3BlYyhhbHRwMm1faWR4LCBNQVhfRVBUUCldOw0KPiAr ICAgIGVsc2UNCj4gKyAgICAgICAgZC0+YXJjaC5hbHRwMm1fd29ya2luZ19lcHRwW2FycmF5X2lu ZGV4X25vc3BlYyhhbHRwMm1faWR4LCBNQVhfRVBUUCldID0NCj4gKyAgICAgICAgICAgIG1mbl94 KElOVkFMSURfTUZOKTsNCj4gKw0KPiArICAgIGFsdHAybV9saXN0X3VubG9jayhkKTsNCj4gKw0K PiArICAgIHJldHVybiByYzsNCj4gK30NCj4gICAjZW5kaWYNCj4gICANCj4gICAvKg0KPiBkaWZm IC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9kb21haW4uaCBiL3hlbi9pbmNsdWRlL2FzbS14 ODYvZG9tYWluLmgNCj4gaW5kZXggMTA1YWRmOTZlYi4uODAwZTEyZWFlNSAxMDA2NDQNCj4gLS0t IGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9kb21haW4uaA0KPiArKysgYi94ZW4vaW5jbHVkZS9hc20t eDg2L2RvbWFpbi5oDQo+IEBAIC0zMjcsNiArMzI3LDcgQEAgc3RydWN0IGFyY2hfZG9tYWluDQo+ ICAgICAgIHN0cnVjdCBwMm1fZG9tYWluICphbHRwMm1fcDJtW01BWF9BTFRQMk1dOw0KPiAgICAg ICBtbV9sb2NrX3QgYWx0cDJtX2xpc3RfbG9jazsNCj4gICAgICAgdWludDY0X3QgKmFsdHAybV9l cHRwOw0KPiArICAgIHVpbnQ2NF90ICphbHRwMm1fd29ya2luZ19lcHRwOw0KPiAgICNlbmRpZg0K PiAgIA0KPiAgICAgICAvKiBOQi4gcHJvdGVjdGVkIGJ5IGQtPmV2ZW50X2xvY2sgYW5kIGJ5IGly cV9kZXNjW2lycV0ubG9jayAqLw0KPiBkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9w Mm0uaCBiL3hlbi9pbmNsdWRlL2FzbS14ODYvcDJtLmgNCj4gaW5kZXggMGNmNTMxYWJiNy4uMGY3 ZWM0YTlmNiAxMDA2NDQNCj4gLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9wMm0uaA0KPiArKysg Yi94ZW4vaW5jbHVkZS9hc20teDg2L3AybS5oDQo+IEBAIC04OTcsNiArODk3LDEwIEBAIGludCBw Mm1fY2hhbmdlX2FsdHAybV9nZm4oc3RydWN0IGRvbWFpbiAqZCwgdW5zaWduZWQgaW50IGlkeCwN Cj4gICBpbnQgcDJtX2FsdHAybV9wcm9wYWdhdGVfY2hhbmdlKHN0cnVjdCBkb21haW4gKmQsIGdm bl90IGdmbiwNCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1mbl90IG1mbiwg dW5zaWduZWQgaW50IHBhZ2Vfb3JkZXIsDQo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBwMm1fdHlwZV90IHAybXQsIHAybV9hY2Nlc3NfdCBwMm1hKTsNCj4gKw0KPiArLyogU2V0 IGEgc3BlY2lmaWMgcDJtIHZpZXcgdmlzaWJpbGl0eSAqLw0KPiAraW50IHAybV9zZXRfYWx0cDJt X3ZpZXdfdmlzaWJpbGl0eShzdHJ1Y3QgZG9tYWluICpkLCB1bnNpZ25lZCBpbnQgaWR4LA0KPiAr ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50OF90IHZpc2libGUpOw0KPiAg ICNlbHNlDQo+ICAgc3RydWN0IHAybV9kb21haW4gKnAybV9nZXRfYWx0cDJtKHN0cnVjdCB2Y3B1 ICp2KTsNCj4gICBzdGF0aWMgaW5saW5lIHZvaWQgcDJtX2FsdHAybV9jaGVjayhzdHJ1Y3QgdmNw dSAqdiwgdWludDE2X3QgaWR4KSB7fQ0KPiBkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvcHVibGlj L2h2bS9odm1fb3AuaCBiL3hlbi9pbmNsdWRlL3B1YmxpYy9odm0vaHZtX29wLmgNCj4gaW5kZXgg YjU5OWQzY2JkMC4uODcwZWM1MjA2MCAxMDA2NDQNCj4gLS0tIGEveGVuL2luY2x1ZGUvcHVibGlj L2h2bS9odm1fb3AuaA0KPiArKysgYi94ZW4vaW5jbHVkZS9wdWJsaWMvaHZtL2h2bV9vcC5oDQo+ IEBAIC0zMTgsNiArMzE4LDEyIEBAIHN0cnVjdCB4ZW5faHZtX2FsdHAybV9nZXRfdmNwdV9wMm1f aWR4IHsNCj4gICAgICAgdWludDE2X3QgYWx0cDJtX2lkeDsNCj4gICB9Ow0KPiAgIA0KPiArc3Ry dWN0IHhlbl9odm1fYWx0cDJtX3NldF92aXNpYmlsaXR5IHsNCj4gKyAgICB1aW50MTZfdCBhbHRw Mm1faWR4Ow0KPiArICAgIHVpbnQ4X3QgdmlzaWJsZTsNCj4gKyAgICB1aW50OF90IHBhZDsNCj4g K307DQo+ICsNCj4gICBzdHJ1Y3QgeGVuX2h2bV9hbHRwMm1fb3Agew0KPiAgICAgICB1aW50MzJf dCB2ZXJzaW9uOyAgIC8qIEhWTU9QX0FMVFAyTV9JTlRFUkZBQ0VfVkVSU0lPTiAqLw0KPiAgICAg ICB1aW50MzJfdCBjbWQ7DQo+IEBAIC0zNTAsNiArMzU2LDggQEAgc3RydWN0IHhlbl9odm1fYWx0 cDJtX29wIHsNCj4gICAjZGVmaW5lIEhWTU9QX2FsdHAybV9nZXRfcDJtX2lkeCAgICAgICAgICAx NA0KPiAgIC8qIFNldCB0aGUgIlN1cHJlc3MgI1ZFIiBiaXQgZm9yIGEgcmFuZ2Ugb2YgcGFnZXMg Ki8NCj4gICAjZGVmaW5lIEhWTU9QX2FsdHAybV9zZXRfc3VwcHJlc3NfdmVfbXVsdGkgMTUNCj4g Ky8qIFNldCB2aXNpYmlsaXR5IGZvciBhIGdpdmVuIGFsdHAybSB2aWV3ICovDQo+ICsjZGVmaW5l IEhWTU9QX2FsdHAybV9zZXRfdmlzaWJpbGl0eSAgICAgICAxNg0KPiAgICAgICBkb21pZF90IGRv bWFpbjsNCj4gICAgICAgdWludDE2X3QgcGFkMTsNCj4gICAgICAgdWludDMyX3QgcGFkMjsNCj4g QEAgLTM2Nyw2ICszNzUsNyBAQCBzdHJ1Y3QgeGVuX2h2bV9hbHRwMm1fb3Agew0KPiAgICAgICAg ICAgc3RydWN0IHhlbl9odm1fYWx0cDJtX3N1cHByZXNzX3ZlX211bHRpICAgIHN1cHByZXNzX3Zl X211bHRpOw0KPiAgICAgICAgICAgc3RydWN0IHhlbl9odm1fYWx0cDJtX3ZjcHVfZGlzYWJsZV9u b3RpZnkgIGRpc2FibGVfbm90aWZ5Ow0KPiAgICAgICAgICAgc3RydWN0IHhlbl9odm1fYWx0cDJt X2dldF92Y3B1X3AybV9pZHggICAgIGdldF92Y3B1X3AybV9pZHg7DQo+ICsgICAgICAgIHN0cnVj dCB4ZW5faHZtX2FsdHAybV9zZXRfdmlzaWJpbGl0eSAgICAgICBzZXRfdmlzaWJpbGl0eTsNCj4g ICAgICAgICAgIHVpbnQ4X3QgcGFkWzY0XTsNCj4gICAgICAgfSB1Ow0KPiAgIH07DQo+IA0KX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1h aWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54 ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA==