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=-5.5 required=3.0 tests=DKIM_ADSP_ALL,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS 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 43722C4BA0B for ; Wed, 26 Feb 2020 12:03:46 +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 0946524656 for ; Wed, 26 Feb 2020 12:03:45 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=amazon.co.uk header.i=@amazon.co.uk header.b="LXcfMCMI" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 0946524656 Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=amazon.co.uk 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 1j6vPW-0006Ss-Kv; Wed, 26 Feb 2020 12:03:30 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1j6vPV-0006Sk-2Y for xen-devel@lists.xenproject.org; Wed, 26 Feb 2020 12:03:29 +0000 X-Inumbo-ID: 0010c8d4-5890-11ea-8fc3-bc764e2007e4 Received: from smtp-fw-6001.amazon.com (unknown [52.95.48.154]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id 0010c8d4-5890-11ea-8fc3-bc764e2007e4; Wed, 26 Feb 2020 12:03:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amazon.co.uk; i=@amazon.co.uk; q=dns/txt; s=amazon201209; t=1582718609; x=1614254609; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=HOUcxx+rowjnt41w13zGcJqMHOvToFb4tbItpCP14hY=; b=LXcfMCMIkpjz54ROYbG+jGayK6wzRPTSy3p2mQkDxVXCmvKl+NnV83D4 LFh34NzFwDqV8YaRh6/fHURLNnUJSQulHJSjj4o85I8gpZ4DHBvqha6Di 7EgVJhNynpbzUwHMQvkZ2yyGIqvLNTtVxo1Fb1wHzd0gtjmmZ0o8TPKA4 s=; IronPort-SDR: ilEAcqJaDkljnM+1VCTkdtHj66unGTcx3kfxhhOknuArLQqbXBeEI6GH3UJcQDp4VP3/oCGnxK dHI3lCpPXowA== X-IronPort-AV: E=Sophos;i="5.70,488,1574121600"; d="scan'208";a="19744124" Received: from iad12-co-svc-p1-lb1-vlan3.amazon.com (HELO email-inbound-relay-1a-807d4a99.us-east-1.amazon.com) ([10.43.8.6]) by smtp-border-fw-out-6001.iad6.amazon.com with ESMTP; 26 Feb 2020 12:03:29 +0000 Received: from EX13MTAUEA002.ant.amazon.com (iad55-ws-svc-p15-lb9-vlan2.iad.amazon.com [10.40.159.162]) by email-inbound-relay-1a-807d4a99.us-east-1.amazon.com (Postfix) with ESMTPS id AC4CBA34B3; Wed, 26 Feb 2020 12:03:25 +0000 (UTC) Received: from EX13D32EUC003.ant.amazon.com (10.43.164.24) by EX13MTAUEA002.ant.amazon.com (10.43.61.77) with Microsoft SMTP Server (TLS) id 15.0.1236.3; Wed, 26 Feb 2020 12:03:25 +0000 Received: from EX13D32EUC003.ant.amazon.com (10.43.164.24) by EX13D32EUC003.ant.amazon.com (10.43.164.24) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Wed, 26 Feb 2020 12:03:23 +0000 Received: from EX13D32EUC003.ant.amazon.com ([10.43.164.24]) by EX13D32EUC003.ant.amazon.com ([10.43.164.24]) with mapi id 15.00.1367.000; Wed, 26 Feb 2020 12:03:23 +0000 From: "Durrant, Paul" To: Julien Grall , "xen-devel@lists.xenproject.org" Thread-Topic: [PATCH 2/2] domain: use PGC_extra domheap page for shared_info Thread-Index: AQHV68GGHAJvfVndcEiEcAXBc0AZ06gtWYKAgAAFnRA= Date: Wed, 26 Feb 2020 12:03:23 +0000 Message-ID: References: <20200225095357.3923-1-pdurrant@amazon.com> <20200225095357.3923-3-pdurrant@amazon.com> <9a5742f9-7533-d9b1-b93d-a3a85e5d8c9f@xen.org> In-Reply-To: <9a5742f9-7533-d9b1-b93d-a3a85e5d8c9f@xen.org> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-transport-fromentityheader: Hosted x-originating-ip: [10.43.165.91] MIME-Version: 1.0 Precedence: Bulk Subject: Re: [Xen-devel] [PATCH 2/2] domain: use PGC_extra domheap page for shared_info X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Stefano Stabellini , Wei Liu , Konrad Rzeszutek Wilk , Andrew Cooper , Ian Jackson , George Dunlap , Jan Beulich , Volodymyr Babchuk Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBKdWxpZW4gR3JhbGwgPGp1bGll bkB4ZW4ub3JnPg0KPiBTZW50OiAyNiBGZWJydWFyeSAyMDIwIDExOjMzDQo+IFRvOiBEdXJyYW50 LCBQYXVsIDxwZHVycmFudEBhbWF6b24uY28udWs+OyB4ZW4tZGV2ZWxAbGlzdHMueGVucHJvamVj dC5vcmcNCj4gQ2M6IFN0ZWZhbm8gU3RhYmVsbGluaSA8c3N0YWJlbGxpbmlAa2VybmVsLm9yZz47 IFZvbG9keW15ciBCYWJjaHVrDQo+IDxWb2xvZHlteXJfQmFiY2h1a0BlcGFtLmNvbT47IEFuZHJl dyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNpdHJpeC5jb20+Ow0KPiBHZW9yZ2UgRHVubGFwIDxn ZW9yZ2UuZHVubGFwQGNpdHJpeC5jb20+OyBJYW4gSmFja3Nvbg0KPiA8aWFuLmphY2tzb25AZXUu Y2l0cml4LmNvbT47IEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNvbT47IEtvbnJhZA0KPiBS emVzenV0ZWsgV2lsayA8a29ucmFkLndpbGtAb3JhY2xlLmNvbT47IFdlaSBMaXUgPHdsQHhlbi5v cmc+DQo+IFN1YmplY3Q6IFJlOiBbUEFUQ0ggMi8yXSBkb21haW46IHVzZSBQR0NfZXh0cmEgZG9t aGVhcCBwYWdlIGZvcg0KPiBzaGFyZWRfaW5mbw0KPiANCj4gSGkgUGF1bCwNCj4gDQo+IE9uIDI1 LzAyLzIwMjAgMDk6NTMsIFBhdWwgRHVycmFudCB3cm90ZToNCj4gPiBUaGVyZSdzIG5vIHBhcnRp Y3VsYXIgcmVhc29uIHNoYXJlZF9pbmZvIG5lZWQgdXNlIGEgeGVuaGVhcCBwYWdlLg0KPiANCj4g QUZBSUNULCBhIHNpZGUtZWZmZWN0IG9mIHRoaXMgY2hhbmdlIGlzIHRoZSBzaGFyZWRfaW5mbyBp cyBub3cgZ29pbmcgdG8NCj4gYmUgcGFydCBvZiB0aGUgbWlncmF0aW9uIHN0cmVhbS4gT25lIGlz c3VlIHdpdGggdGhpcyBpcyBvbiB0aGUgcmVzdG9yZQ0KPiBzaWRlLCB0aGV5IHdpbGwgYmUgYWNj b3VudGVkIGluIG51bWJlciBvZiBwYWdlcyBhbGxvY2F0ZWQgdG8gdGhlIGRvbWFpbi4NCj4gDQo+ IEkgYW0gZmFpcmx5IGNlcnRhaW4gZGlydHkgbG9nZ2luZyBvbiBwYWdlIHdpdGggUEdDX2V4dHJh IHNldCB3b3VsZCBub3QNCj4gd29yayBwcm9wZXJseSBhcyB3ZWxsLg0KDQpUcnVlLCB0aG9zZSB0 d28gZG8gbmVlZCBmaXhpbmcgYmVmb3JlIGV4cGFuZGluZyB0aGUgdXNlIG9mIFBHQ19leHRyYS4g SSBndWVzcyB0aGlzIG1heSBhbHJlYWR5IGJlIGEgcHJvYmxlbSB3aXRoIHRoZSBjdXJyZW50IFZN WCB1c2UgY2FzZS4NCg0KPiANCj4gQXMgdGhlIHBhZ2VzIHdpbGwgYmUgcmVjcmVhdGVkIGluIHRo ZSByZXN0b3JlIHNpZGUsIEkgd291bGQgc3VnZ2VzdCB0bw0KPiBza2lwIHRoZW0gaW4gWEVOX0RP TUNUTF9nZXRwYWdlZnJhbWVpbmZvMy4NCj4NCg0KQXQgc29tZSBwb2ludCBpbiBmdXR1cmUgSSBn dWVzcyBpdCBtYXkgYmUgdXNlZnVsIHRvIG1pZ3JhdGUgUEdDX2V4dHJhIHBhZ2VzLCBidXQgdGhl eSB3b3VsZCBuZWVkIHRvIGJlIG1hcmtlZCBhcyBzdWNoIGluIHRoZSBzdHJlYW0uIFNraXBwaW5n IHNvdW5kcyBsaWtlIHRoZSByaWdodCBhcHByb2FjaCBmb3Igbm93Lg0KDQo+ID4gSXQncw0KPiA+ IG9ubHkgcHVycG9zZSBpcyB0byBiZSBtYXBwZWQgYnkgdGhlIGd1ZXN0IHNvIHVzZSBhIFBHQ19l eHRyYSBkb21oZWFwDQo+IHBhZ2UNCj4gPiBpbnN0ZWFkLiBUaGlzIGRvZXMgZW50YWlsIGZyZWVp bmcgc2hhcmVkX2luZm8gZHVyaW5nDQo+ID4gZG9tYWluX3JlbGlucXVpc2hfcmVzb3VyY2VzKCkg cmF0aGVyIHRoYW4gZG9tYWluX2Rlc3Ryb3koKSBzbyBjYXJlIGlzDQo+ID4gbmVlZGVkIHRvIGF2 b2lkIGRlLXJlZmVyZW5jaW5nIGEgTlVMTCBzaGFyZWRfaW5mbyBwb2ludGVyIGhlbmNlIHNvbWUN Cj4gPiBleHRyYSBjaGVja3Mgb2YgJ2lzX2R5aW5nJyBhcmUgbmVlZGVkLg0KPiA+IEFTU0VSVGlv bnMgYXJlIGFkZGVkIGJlZm9yZSBhcHBhcmVudGx5IHZ1bG5lcmFibGUgZGVyZWZlcmVuY2VzIGlu IHRoZQ0KPiA+IGV2ZW50IGNoYW5uZWwgY29kZS4gVGhlc2Ugc2hvdWxkIG5vdCBiZSBoaXQgYmVj YXVzZSBkb21haW5fa2lsbCgpIGNhbGxzDQo+ID4gZXZ0Y2huX2Rlc3Ryb3koKSBiZWZvcmUgY2Fs bGluZyBkb21haW5fcmVsaW5xdWlzaF9yZXNvdXJjZXMoKSBidXQgYXJlDQo+ID4gYWRkZWQgdG8g Y2F0Y2ggYW55IGZ1dHVyZSByZS1vcmRlcmluZy4NCj4gDQo+IElITU8sIHRoZSBBU1NFUlRpb25z IGluIHRoZSBldmVudCBjaGFubmVsIHBlbmRpbmcvbWFzay8uLi4gaGVscGVycyB3aWxsDQo+IG5v dCBwcm90ZWN0IGFnYWluc3QgcmUtb3JkZXJpbmcuIFlvdSBtYXkgbmV2ZXIgaGl0IHRoZW0gZXZl biBpZiB0aGVyZSBpcw0KPiBhIHJlLW9yZGVyaW5nLiBJdCB3b3VsZCBiZSBiZXR0ZXIgdG8gYWRk IGFuIEFTU0VSVCgpL0JVR19PTigpIGluDQo+IGV2dGNobl9kZXN0cm95KCkgYW5kIHBvc3NpYmx5 IGEgY29tbWVudCBpbiBkb21haW5fa2lsbCgpIHRvIG1lbnRpb24NCj4gb3JkZXJpbmcuDQoNCkkn bSBub3Qgc3VyZSBhYm91dCB0aGF0LiBXaHkgd291bGQgdGhleSBub3QgYmUgaGl0Pw0KDQo+IA0K PiA+IEZvciBBcm0sIHRoZSBjYWxsIHRvIGZyZWVfc2hhcmVkX2luZm8oKSBpbiBhcmNoX2RvbWFp bl9kZXN0cm95KCkgaXMgbGVmdA0KPiA+IGluIHBsYWNlIHNpbmNlIGl0IGNhbGxlZCBpbiB0aGUg ZXJyb3IgcGF0aCBmb3IgYXJjaF9kb21haW5fY3JlYXRlKCkuDQo+ID4NCj4gPiBOT1RFOiBBIG1v ZGlmaWNhdGlvbiBpbiBwMm1fYWxsb2NfdGFibGUoKSBpcyByZXF1aXJlZCB0byBhdm9pZCBhIGZh bHNlDQo+ID4gICAgICAgIHBvc2l0aXZlIHdoZW4gY2hlY2tpbmcgZm9yIGRvbWFpbiBtZW1vcnku DQo+ID4gICAgICAgIEEgZml4IGlzIGFsc28gbmVlZGVkIGluIGRvbTBfY29uc3RydWN0X3B2KCkg dG8gYXZvaWQNCj4gYXV0b21hdGljYWxseQ0KPiA+ICAgICAgICBhZGRpbmcgUEdDX2V4dHJhIHBh Z2VzIHRvIHRoZSBwaHlzbWFwLg0KPiANCj4gSSBhbSBub3QgZW50aXJlbHkgc3VyZSBob3cgdGhp cyBpcyByZWxhdGVkIHRvIHRoaXMgcGF0Y2guIFdhcyBpdCBhDQo+IGxhdGVudCBidWc/IElmIHNv LCBJIHRoaW5rIGl0IHdvdWxkIG1ha2Ugc2Vuc2UgdG8gc3BsaXQgaXQgZnJvbSB0aGlzDQo+IHBh dGNoLg0KPiANCg0KSXQncyByZWxhdGVkIGJlY2F1c2UgdGhlIGNoZWNrIHJlbGllcyBvbiB0aGUg ZmFjdCB0aGF0IG5vIFBHQ19leHRyYSBwYWdlcyBhcmUgY3JlYXRlZCBiZWZvcmUgaXQgaXMgY2Fs bGVkLiBUaGlzIGlzIGluZGVlZCB0cnVlIHVudGlsIHRoaXMgcGF0Y2ggaXMgYXBwbGllZC4NCg0K PiA+DQo+ID4gU2lnbmVkLW9mZi1ieTogUGF1bCBEdXJyYW50IDxwZHVycmFudEBhbWF6b24uY29t Pg0KPiA+IC0tLQ0KPiA+IENjOiBTdGVmYW5vIFN0YWJlbGxpbmkgPHNzdGFiZWxsaW5pQGtlcm5l bC5vcmc+DQo+ID4gQ2M6IEp1bGllbiBHcmFsbCA8anVsaWVuQHhlbi5vcmc+DQo+ID4gQ2M6IFZv bG9keW15ciBCYWJjaHVrIDxWb2xvZHlteXJfQmFiY2h1a0BlcGFtLmNvbT4NCj4gPiBDYzogQW5k cmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4NCj4gPiBDYzogR2VvcmdlIER1 bmxhcCA8Z2VvcmdlLmR1bmxhcEBjaXRyaXguY29tPg0KPiA+IENjOiBJYW4gSmFja3NvbiA8aWFu LmphY2tzb25AZXUuY2l0cml4LmNvbT4NCj4gPiBDYzogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1 c2UuY29tPg0KPiA+IENjOiBLb25yYWQgUnplc3p1dGVrIFdpbGsgPGtvbnJhZC53aWxrQG9yYWNs ZS5jb20+DQo+ID4gQ2M6IFdlaSBMaXUgPHdsQHhlbi5vcmc+DQo+ID4gLS0tDQo+ID4gICB4ZW4v YXJjaC9hcm0vZG9tYWluLmMgICAgICAgIHwgIDIgKysNCj4gPiAgIHhlbi9hcmNoL3g4Ni9kb21h aW4uYyAgICAgICAgfCAgMyArKy0NCj4gPiAgIHhlbi9hcmNoL3g4Ni9tbS9wMm0uYyAgICAgICAg fCAgMyArLS0NCj4gPiAgIHhlbi9hcmNoL3g4Ni9wdi9kb20wX2J1aWxkLmMgfCAgNCArKysrDQo+ ID4gICB4ZW4vY29tbW9uL2RvbWFpbi5jICAgICAgICAgIHwgMjUgKysrKysrKysrKysrKysrKysr Ky0tLS0tLQ0KPiA+ICAgeGVuL2NvbW1vbi9ldmVudF8ybC5jICAgICAgICB8ICA0ICsrKysNCj4g PiAgIHhlbi9jb21tb24vZXZlbnRfZmlmby5jICAgICAgfCAgMSArDQo+ID4gICB4ZW4vY29tbW9u L3RpbWUuYyAgICAgICAgICAgIHwgIDMgKysrDQo+ID4gICA4IGZpbGVzIGNoYW5nZWQsIDM2IGlu c2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pDQo+ID4NCj4gPiBkaWZmIC0tZ2l0IGEveGVuL2Fy Y2gvYXJtL2RvbWFpbi5jIGIveGVuL2FyY2gvYXJtL2RvbWFpbi5jDQo+ID4gaW5kZXggMmNiY2Rh YWMwOC4uMzkwNDUxOTI1NiAxMDA2NDQNCj4gPiAtLS0gYS94ZW4vYXJjaC9hcm0vZG9tYWluLmMN Cj4gPiArKysgYi94ZW4vYXJjaC9hcm0vZG9tYWluLmMNCj4gPiBAQCAtMTAwNiw2ICsxMDA2LDgg QEAgaW50IGRvbWFpbl9yZWxpbnF1aXNoX3Jlc291cmNlcyhzdHJ1Y3QgZG9tYWluICpkKQ0KPiA+ ICAgICAgICAgICBCVUcoKTsNCj4gPiAgICAgICB9DQo+ID4NCj4gPiArICAgIGZyZWVfc2hhcmVk X2luZm8oZCk7DQo+ID4gKw0KPiA+ICAgICAgIHJldHVybiAwOw0KPiA+ICAgfQ0KPiA+DQo+ID4g ZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9kb21haW4uYyBiL3hlbi9hcmNoL3g4Ni9kb21haW4u Yw0KPiA+IGluZGV4IGViN2IwZmM1MWMuLjNhZDUzMmVjY2YgMTAwNjQ0DQo+ID4gLS0tIGEveGVu L2FyY2gveDg2L2RvbWFpbi5jDQo+ID4gKysrIGIveGVuL2FyY2gveDg2L2RvbWFpbi5jDQo+ID4g QEAgLTY5MSw3ICs2OTEsNiBAQCB2b2lkIGFyY2hfZG9tYWluX2Rlc3Ryb3koc3RydWN0IGRvbWFp biAqZCkNCj4gPiAgICAgICAgICAgcHZfZG9tYWluX2Rlc3Ryb3koZCk7DQo+ID4gICAgICAgZnJl ZV9wZXJkb21haW5fbWFwcGluZ3MoZCk7DQo+ID4NCj4gPiAtICAgIGZyZWVfc2hhcmVkX2luZm8o ZCk7DQo+ID4gICAgICAgY2xlYW51cF9kb21haW5faXJxX21hcHBpbmcoZCk7DQo+ID4NCj4gPiAg ICAgICBwc3JfZG9tYWluX2ZyZWUoZCk7DQo+ID4gQEAgLTIyNDYsNiArMjI0NSw4IEBAIGludCBk b21haW5fcmVsaW5xdWlzaF9yZXNvdXJjZXMoc3RydWN0IGRvbWFpbiAqZCkNCj4gPiAgICAgICBp ZiAoIGlzX2h2bV9kb21haW4oZCkgKQ0KPiA+ICAgICAgICAgICBodm1fZG9tYWluX3JlbGlucXVp c2hfcmVzb3VyY2VzKGQpOw0KPiA+DQo+ID4gKyAgICBmcmVlX3NoYXJlZF9pbmZvKGQpOw0KPiA+ ICsNCj4gPiAgICAgICByZXR1cm4gMDsNCj4gPiAgIH0NCj4gPg0KPiA+IGRpZmYgLS1naXQgYS94 ZW4vYXJjaC94ODYvbW0vcDJtLmMgYi94ZW4vYXJjaC94ODYvbW0vcDJtLmMNCj4gPiBpbmRleCBj NWY0MjhkNjdjLi43ODdkOTdkODVlIDEwMDY0NA0KPiA+IC0tLSBhL3hlbi9hcmNoL3g4Ni9tbS9w Mm0uYw0KPiA+ICsrKyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0uYw0KPiA+IEBAIC02OTUsOCArNjk1 LDcgQEAgaW50IHAybV9hbGxvY190YWJsZShzdHJ1Y3QgcDJtX2RvbWFpbiAqcDJtKQ0KPiA+DQo+ ID4gICAgICAgcDJtX2xvY2socDJtKTsNCj4gPg0KPiA+IC0gICAgaWYgKCBwMm1faXNfaG9zdHAy bShwMm0pDQo+ID4gLSAgICAgICAgICYmICFwYWdlX2xpc3RfZW1wdHkoJmQtPnBhZ2VfbGlzdCkg KQ0KPiA+ICsgICAgaWYgKCBwMm1faXNfaG9zdHAybShwMm0pICYmIGRvbWFpbl90b3RfcGFnZXMo ZCkgKQ0KPiA+ICAgICAgIHsNCj4gPiAgICAgICAgICAgUDJNX0VSUk9SKCJkb20gJWQgYWxyZWFk eSBoYXMgbWVtb3J5IGFsbG9jYXRlZFxuIiwgZC0NCj4gPmRvbWFpbl9pZCk7DQo+ID4gICAgICAg ICAgIHAybV91bmxvY2socDJtKTsNCj4gPiBkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L3B2L2Rv bTBfYnVpbGQuYyBiL3hlbi9hcmNoL3g4Ni9wdi9kb20wX2J1aWxkLmMNCj4gPiBpbmRleCBkYzE2 ZWYyZTc5Li5mOGYxYmJlMmY0IDEwMDY0NA0KPiA+IC0tLSBhL3hlbi9hcmNoL3g4Ni9wdi9kb20w X2J1aWxkLmMNCj4gPiArKysgYi94ZW4vYXJjaC94ODYvcHYvZG9tMF9idWlsZC5jDQo+ID4gQEAg LTc5Miw2ICs3OTIsMTAgQEAgaW50IF9faW5pdCBkb20wX2NvbnN0cnVjdF9wdihzdHJ1Y3QgZG9t YWluICpkLA0KPiA+ICAgICAgIHsNCj4gPiAgICAgICAgICAgbWZuID0gbWZuX3gocGFnZV90b19t Zm4ocGFnZSkpOw0KPiA+ICAgICAgICAgICBCVUdfT04oU0hBUkVEX00yUChnZXRfZ3Bmbl9mcm9t X21mbihtZm4pKSk7DQo+ID4gKw0KPiA+ICsgICAgICAgIGlmICggcGFnZS0+Y291bnRfaW5mbyAm IFBHQ19leHRyYSApDQo+ID4gKyAgICAgICAgICAgIGNvbnRpbnVlOw0KPiANCj4gSSB3b3VsZCBh ZGQgYSBjb21tZW50IGV4cGxhaW5pbmcgd2h5IHdlIHNraXAgcGFnZSB3aXRoIFBHQ19leHRyYSBz ZXQuDQo+IA0KPiA+ICsNCj4gPiAgICAgICAgICAgaWYgKCBnZXRfZ3Bmbl9mcm9tX21mbihtZm4p ID49IGNvdW50ICkNCj4gPiAgICAgICAgICAgew0KPiA+ICAgICAgICAgICAgICAgQlVHX09OKGlz X3B2XzMyYml0X2RvbWFpbihkKSk7DQo+ID4gZGlmZiAtLWdpdCBhL3hlbi9jb21tb24vZG9tYWlu LmMgYi94ZW4vY29tbW9uL2RvbWFpbi5jDQo+ID4gaW5kZXggYmE3YTkwNTI1OC4uMWQ0MmZiY2Mw ZiAxMDA2NDQNCj4gPiAtLS0gYS94ZW4vY29tbW9uL2RvbWFpbi5jDQo+ID4gKysrIGIveGVuL2Nv bW1vbi9kb21haW4uYw0KPiA+IEBAIC0xMjgsOSArMTI4LDkgQEAgc3RhdGljIHZvaWQgdmNwdV9p bmZvX3Jlc2V0KHN0cnVjdCB2Y3B1ICp2KQ0KPiA+ICAgew0KPiA+ICAgICAgIHN0cnVjdCBkb21h aW4gKmQgPSB2LT5kb21haW47DQo+ID4NCj4gPiAtICAgIHYtPnZjcHVfaW5mbyA9ICgodi0+dmNw dV9pZCA8IFhFTl9MRUdBQ1lfTUFYX1ZDUFVTKQ0KPiA+ICsgICAgdi0+dmNwdV9pbmZvID0gKCFk LT5pc19keWluZyAmJiB2LT52Y3B1X2lkIDwgWEVOX0xFR0FDWV9NQVhfVkNQVVMpDQo+ID4gICAg ICAgICAgICAgICAgICAgICAgID8gKHZjcHVfaW5mb190ICopJnNoYXJlZF9pbmZvKGQsIHZjcHVf aW5mb1t2LQ0KPiA+dmNwdV9pZF0pDQo+ID4gLSAgICAgICAgICAgICAgICAgICAgOiAmZHVtbXlf dmNwdV9pbmZvKTsNCj4gPiArICAgICAgICAgICAgICAgICAgICA6ICZkdW1teV92Y3B1X2luZm87 DQo+IA0KPiBXaXRob3V0IGhvbGRpbmcgZG9tYWluX2xvY2soKSwgSSBkb24ndCB0aGluayB0aGVy ZSBpcyBhIGd1YXJhbnRlZSB0aGF0DQo+IGlzX2R5aW5nIChhbmQgdGhlcmVmb3JlIHRoZSBzaGFy ZWRfaW5mbykgaXMgbm90IGdvaW5nIHRvIGNoYW5nZSBiZWhpbmQNCj4geW91ciBiYWNrLiBTbyB2 LT52Y3B1X2luZm8gbWF5IHBvaW50IHRvIGdhcmJhZ2dlLg0KPiANCj4gTG9va2luZyBhdCB0aGUg Y2FsbGVycywgWEVOX0RPTUNUTF9zb2Z0X3Jlc2V0IHdpbGwgbm90IGhvbGQgdGhlIGxvY2suDQo+ IA0KDQpUcnVlLCBpdCBkb2VzIG5lZWQgbG9ja2luZyBpbiBzb21lIHdheS4NCg0KPiBBcyBhbiBh c2lkZSwgaXQgd291bGQgYmUgZ29vZCB0byBleHBsYWluIGluIGEgY29tbWVudCB3aHkgd2UgYXJl IHVzaW5nDQo+IGR1bW15X3ZjcHVfaW5mbyB3aGVuIHRoZSBkb21haW4gaXMgZHlpbmcuDQo+IA0K DQpTaW1wbHkgYmVjYXVzZSBpdCBpcyBndWFyYW50ZWVkIHRvIGV4aXN0LCBidXQgSSdsbCBhZGQg YSBjb21tZW50IHRvIHRoYXQgZWZmZWN0Lg0KDQo+ID4gICAgICAgdi0+dmNwdV9pbmZvX21mbiA9 IElOVkFMSURfTUZOOw0KPiA+ICAgfQ0KPiA+DQo+ID4gQEAgLTE2NTAsMjQgKzE2NTAsMzcgQEAg aW50IGNvbnRpbnVlX2h5cGVyY2FsbF9vbl9jcHUoDQo+ID4NCj4gPiAgIGludCBhbGxvY19zaGFy ZWRfaW5mbyhzdHJ1Y3QgZG9tYWluICpkLCB1bnNpZ25lZCBpbnQgbWVtZmxhZ3MpDQo+ID4gICB7 DQo+ID4gLSAgICBpZiAoIChkLT5zaGFyZWRfaW5mby52aXJ0ID0gYWxsb2NfeGVuaGVhcF9wYWdl cygwLCBtZW1mbGFncykpID09DQo+IE5VTEwgKQ0KPiA+ICsgICAgc3RydWN0IHBhZ2VfaW5mbyAq cGc7DQo+ID4gKw0KPiA+ICsgICAgcGcgPSBhbGxvY19kb21oZWFwX3BhZ2UoZCwgTUVNRl9ub19y ZWZjb3VudCB8IG1lbWZsYWdzKTsNCj4gPiArICAgIGlmICggIXBnICkNCj4gPiAgICAgICAgICAg cmV0dXJuIC1FTk9NRU07DQo+ID4NCj4gPiAtICAgIGQtPnNoYXJlZF9pbmZvLm1mbiA9IHZpcnRf dG9fbWZuKGQtPnNoYXJlZF9pbmZvLnZpcnQpOw0KPiA+ICsgICAgaWYgKCAhZ2V0X3BhZ2VfYW5k X3R5cGUocGcsIGQsIFBHVF93cml0YWJsZV9wYWdlKSApDQo+ID4gKyAgICAgICAgcmV0dXJuIC1F Tk9EQVRBOw0KPiANCj4gSSB0aGluayB0aGUgcGFnZSB3aWxsIG5ldmVyIGJlIGZyZWVkIGlmIHRo aXMgZmFpbHMuDQo+DQoNCkdvb2Qgc3BvdC4NCg0KPiA+ICsNCj4gPiArICAgIGQtPnNoYXJlZF9p bmZvLm1mbiA9IHBhZ2VfdG9fbWZuKHBnKTsNCj4gPiArICAgIGQtPnNoYXJlZF9pbmZvLnZpcnQg PSBfX21hcF9kb21haW5fcGFnZV9nbG9iYWwocGcpOw0KPiA+DQo+ID4gICAgICAgY2xlYXJfcGFn ZShkLT5zaGFyZWRfaW5mby52aXJ0KTsNCj4gPiAtICAgIHNoYXJlX3hlbl9wYWdlX3dpdGhfZ3Vl c3QobWZuX3RvX3BhZ2UoZC0+c2hhcmVkX2luZm8ubWZuKSwgZCwNCj4gU0hBUkVfcncpOw0KPiA+ DQo+ID4gICAgICAgcmV0dXJuIDA7DQo+ID4gICB9DQo+ID4NCj4gPiAgIHZvaWQgZnJlZV9zaGFy ZWRfaW5mbyhzdHJ1Y3QgZG9tYWluICpkKQ0KPiA+ICAgew0KPiA+ICsgICAgc3RydWN0IHBhZ2Vf aW5mbyAqcGc7DQo+ID4gKw0KPiA+ICAgICAgIGlmICggIWQtPnNoYXJlZF9pbmZvLnZpcnQgKQ0K PiA+ICAgICAgICAgICByZXR1cm47DQo+ID4NCj4gPiAtICAgIGZyZWVfeGVuaGVhcF9wYWdlKGQt PnNoYXJlZF9pbmZvLnZpcnQpOw0KPiA+ICsgICAgdW5tYXBfZG9tYWluX3BhZ2VfZ2xvYmFsKGQt PnNoYXJlZF9pbmZvLnZpcnQpOw0KPiA+ICAgICAgIGQtPnNoYXJlZF9pbmZvLnZpcnQgPSBOVUxM Ow0KPiA+ICsNCj4gPiArICAgIHBnID0gbWZuX3RvX3BhZ2UoZC0+c2hhcmVkX2luZm8ubWZuKTsN Cj4gPiArDQo+ID4gKyAgICBwdXRfcGFnZV9hbGxvY19yZWYocGcpOw0KPiA+ICsgICAgcHV0X3Bh Z2VfYW5kX3R5cGUocGcpOw0KPiA+ICAgfQ0KPiA+DQo+ID4gICAvKg0KPiA+IGRpZmYgLS1naXQg YS94ZW4vY29tbW9uL2V2ZW50XzJsLmMgYi94ZW4vY29tbW9uL2V2ZW50XzJsLmMNCj4gPiBpbmRl eCBlMWRiYjg2MGY0Li5hNzJmZTAyMzJiIDEwMDY0NA0KPiA+IC0tLSBhL3hlbi9jb21tb24vZXZl bnRfMmwuYw0KPiA+ICsrKyBiL3hlbi9jb21tb24vZXZlbnRfMmwuYw0KPiA+IEBAIC0yNyw2ICsy Nyw3IEBAIHN0YXRpYyB2b2lkIGV2dGNobl8ybF9zZXRfcGVuZGluZyhzdHJ1Y3QgdmNwdSAqdiwN Cj4gc3RydWN0IGV2dGNobiAqZXZ0Y2huKQ0KPiA+ICAgICAgICAqIG90aGVycyBtYXkgcmVxdWly ZSBleHBsaWNpdCBtZW1vcnkgYmFycmllcnMuDQo+ID4gICAgICAgICovDQo+ID4NCj4gPiArICAg IEFTU0VSVChkLT5zaGFyZWRfaW5mby52aXJ0KTsNCj4gPiAgICAgICBpZiAoIGd1ZXN0X3Rlc3Rf YW5kX3NldF9iaXQoZCwgcG9ydCwgJnNoYXJlZF9pbmZvKGQsDQo+IGV2dGNobl9wZW5kaW5nKSkg KQ0KPiA+ICAgICAgICAgICByZXR1cm47DQo+ID4NCj4gPiBAQCAtNTQsNiArNTUsNyBAQCBzdGF0 aWMgdm9pZCBldnRjaG5fMmxfdW5tYXNrKHN0cnVjdCBkb21haW4gKmQsIHN0cnVjdA0KPiBldnRj aG4gKmV2dGNobikNCj4gPiAgICAgICAgKiBUaGVzZSBvcGVyYXRpb25zIG11c3QgaGFwcGVuIGlu IHN0cmljdCBvcmRlci4gQmFzZWQgb24NCj4gPiAgICAgICAgKiBldnRjaG5fMmxfc2V0X3BlbmRp bmcoKSBhYm92ZS4NCj4gPiAgICAgICAgKi8NCj4gPiArICAgIEFTU0VSVChkLT5zaGFyZWRfaW5m by52aXJ0KTsNCj4gPiAgICAgICBpZiAoIGd1ZXN0X3Rlc3RfYW5kX2NsZWFyX2JpdChkLCBwb3J0 LCAmc2hhcmVkX2luZm8oZCwNCj4gZXZ0Y2huX21hc2spKSAmJg0KPiA+ICAgICAgICAgICAgZ3Vl c3RfdGVzdF9iaXQoZCwgcG9ydCwgJnNoYXJlZF9pbmZvKGQsIGV2dGNobl9wZW5kaW5nKSkgJiYN Cj4gPiAgICAgICAgICAgICFndWVzdF90ZXN0X2FuZF9zZXRfYml0KGQsIHBvcnQgLyBCSVRTX1BF Ul9FVlRDSE5fV09SRChkKSwNCj4gPiBAQCAtNjcsNiArNjksNyBAQCBzdGF0aWMgYm9vbCBldnRj aG5fMmxfaXNfcGVuZGluZyhjb25zdCBzdHJ1Y3QgZG9tYWluDQo+ICpkLCBldnRjaG5fcG9ydF90 IHBvcnQpDQo+ID4gICB7DQo+ID4gICAgICAgdW5zaWduZWQgaW50IG1heF9wb3J0cyA9IEJJVFNf UEVSX0VWVENITl9XT1JEKGQpICoNCj4gQklUU19QRVJfRVZUQ0hOX1dPUkQoZCk7DQo+ID4NCj4g PiArICAgIEFTU0VSVChkLT5zaGFyZWRfaW5mby52aXJ0KTsNCj4gPiAgICAgICBBU1NFUlQocG9y dCA8IG1heF9wb3J0cyk7DQo+ID4gICAgICAgcmV0dXJuIChwb3J0IDwgbWF4X3BvcnRzICYmDQo+ ID4gICAgICAgICAgICAgICBndWVzdF90ZXN0X2JpdChkLCBwb3J0LCAmc2hhcmVkX2luZm8oZCwg ZXZ0Y2huX3BlbmRpbmcpKSk7DQo+ID4gQEAgLTc2LDYgKzc5LDcgQEAgc3RhdGljIGJvb2wgZXZ0 Y2huXzJsX2lzX21hc2tlZChjb25zdCBzdHJ1Y3QgZG9tYWluDQo+ICpkLCBldnRjaG5fcG9ydF90 IHBvcnQpDQo+ID4gICB7DQo+ID4gICAgICAgdW5zaWduZWQgaW50IG1heF9wb3J0cyA9IEJJVFNf UEVSX0VWVENITl9XT1JEKGQpICoNCj4gQklUU19QRVJfRVZUQ0hOX1dPUkQoZCk7DQo+ID4NCj4g PiArICAgIEFTU0VSVChkLT5zaGFyZWRfaW5mby52aXJ0KTsNCj4gPiAgICAgICBBU1NFUlQocG9y dCA8IG1heF9wb3J0cyk7DQo+ID4gICAgICAgcmV0dXJuIChwb3J0ID49IG1heF9wb3J0cyB8fA0K PiA+ICAgICAgICAgICAgICAgZ3Vlc3RfdGVzdF9iaXQoZCwgcG9ydCwgJnNoYXJlZF9pbmZvKGQs IGV2dGNobl9tYXNrKSkpOw0KPiA+IGRpZmYgLS1naXQgYS94ZW4vY29tbW9uL2V2ZW50X2ZpZm8u YyBiL3hlbi9jb21tb24vZXZlbnRfZmlmby5jDQo+ID4gaW5kZXggMjMwZjQ0MGYxNC4uZThjNjA0 NWQ3MiAxMDA2NDQNCj4gPiAtLS0gYS94ZW4vY29tbW9uL2V2ZW50X2ZpZm8uYw0KPiA+ICsrKyBi L3hlbi9jb21tb24vZXZlbnRfZmlmby5jDQo+ID4gQEAgLTQ5Nyw2ICs0OTcsNyBAQCBzdGF0aWMg dm9pZCBzZXR1cF9wb3J0cyhzdHJ1Y3QgZG9tYWluICpkKQ0KPiA+DQo+ID4gICAgICAgICAgIGV2 dGNobiA9IGV2dGNobl9mcm9tX3BvcnQoZCwgcG9ydCk7DQo+ID4NCj4gPiArICAgICAgICBBU1NF UlQoZC0+c2hhcmVkX2luZm8udmlydCk7DQo+ID4gICAgICAgICAgIGlmICggZ3Vlc3RfdGVzdF9i aXQoZCwgcG9ydCwgJnNoYXJlZF9pbmZvKGQsIGV2dGNobl9wZW5kaW5nKSkNCj4gKQ0KPiA+ICAg ICAgICAgICAgICAgZXZ0Y2huLT5wZW5kaW5nID0gMTsNCj4gPg0KPiA+IGRpZmYgLS1naXQgYS94 ZW4vY29tbW9uL3RpbWUuYyBiL3hlbi9jb21tb24vdGltZS5jDQo+ID4gaW5kZXggNThmYTlhYmM0 MC4uOTM4MjI2YzdiMSAxMDA2NDQNCj4gPiAtLS0gYS94ZW4vY29tbW9uL3RpbWUuYw0KPiA+ICsr KyBiL3hlbi9jb21tb24vdGltZS5jDQo+ID4gQEAgLTk5LDYgKzk5LDkgQEAgdm9pZCB1cGRhdGVf ZG9tYWluX3dhbGxjbG9ja190aW1lKHN0cnVjdCBkb21haW4gKmQpDQo+ID4gICAgICAgdWludDMy X3QgKndjX3ZlcnNpb247DQo+ID4gICAgICAgdWludDY0X3Qgc2VjOw0KPiA+DQo+ID4gKyAgICBp ZiAoIGQtPmlzX2R5aW5nICkNCj4gPiArICAgICAgICByZXR1cm47DQo+IA0KPiBUaGlzIGlzIGFu b3RoZXIgaW5zdGFuY2Ugd2hlcmUgSSB0aGluayB0aGUgdXNlIG9mIGQtPmlzX2R5aW5nIGlzIG5v dA0KPiBzYWZlLiBJIGxvb2tlZCBhdCBob3cgb3RoZXIgcGxhY2VzIGluIFhlbiBkZWFsdCB3aXRo IGQtPmlzX2R5aW5nLg0KPiANCj4gV2UgZG9uJ3Qgc2VlbSB0byBoYXZlIGEgY29tbW9uIHdheSB0 byBkZWFsIHdpdGggaXQ6DQo+ICAgICAxKSBJdCBtYXkgYmUgY2hlY2tlZCB1bmRlciBkb21haW5f bG9jaygpIC0+IE5vIGlzc3VlIHdpdGggdGhhdA0KPiAgICAgMikgSXQgbWF5IGJlIGNoZWNrZWQg dW5kZXIgZC0+cGFnZV9hbGxvY19sb2NrIChlLmcgYXNzaWduX3BhZ2VzKCkpLg0KPiBUaGUgYXNz aWduX3BhZ2VzKCkgY2FzZSBpcyBmaW5lIGJlY2F1c2UgaXQgd2lsbCBhY3QgYXMgYSBmdWxsIGJh cnJpZXIuDQo+IFNvIGlmIHdlIGNhbGwgaGFwcGVuIGFmdGVyIHJlbGlucXVpc2hfbWVtb3J5KCkg dGhlbiB3ZSB3aWxsIHN1cmVseSBoYXZlDQo+IG9ic2VydmVkIGQtPmlzX2R5aW5nLiBJIGhhdmVu J3QgY2hlY2tlZCB0aGUgb3RoZXJzLg0KPiANCj4gU29tZSBvZiB0aGUgaW5zdGFuY2VzIHVzZXIg bmVpdGhlciB0aGUgMiBsb2NrcyBhYm92ZS4gV2UgcHJvYmFibHkgb3VnaHQNCj4gdG8gaW52ZXN0 aWdhdGUgdGhlbSAoSSB3aWxsIGFkZCBhIFRPRE8gaW4gbXkgbGlzdCkuDQo+IA0KPiBSZWdhcmRp bmcgdGhlIHR3byBjYXNlcyBoZXJlLCBkb21haW5fbG9jaygpIG1pZ2h0IGJlIHRoZSBzb2x1dGlv bi4gSWYgd2UNCj4gYXJlIGNvbmNlcm4gYWJvdXQgdGhlIGNvbnRlbnRpb24gKGl0IGlzIGEgc3Bp bmxvY2spLCB0aGVuIHdlIGNvdWxkDQo+IHN3aXRjaCB0aGUgZG9tYWluX2xvY2soKSBmcm9tIHNw aW5sb2NrIHRvIHJ3bG9jay4NCj4gDQoNCkknbGwgc2VlIGlmIHRoZXJlIGlzIGFueSBvdGhlciBz dWl0YWJsZSBsb2NrIGd1YXJhbnRlZWQgdG8gYmUgdGFrZW4gZHVyaW5nIGRvbWFpbl9raWxsKCkg YnV0IGl0IG1heSBpbmRlZWQgaGF2ZSB0byBiZSBkb21haW5fbG9jaygpLg0KDQogIFBhdWwNCg0K PiBDaGVlcnMsDQo+IA0KPiAtLQ0KPiBKdWxpZW4gR3JhbGwNCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRl dmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFp bG1hbi9saXN0aW5mby94ZW4tZGV2ZWw=