From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by sourceware.org (Postfix) with ESMTPS id 76458388C02D for ; Tue, 16 Jun 2020 11:48:37 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 76458388C02D IronPort-SDR: p8sn4Xq1iM6hTAwK3fm5ymJcvDErYodHXhwywmcVr/Ca3SMsFPROM1bRKULwpdE0gbHVMioVcN x7Jal2UcneYg== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Jun 2020 04:48:36 -0700 IronPort-SDR: 41+IId9g5uquZDwRZNMLL+4FouRFPeA4VGx5+WA4NPQwhN8vdu13yESyXbTemNSzic1ZsNZCl+ pR9asFC9aMgg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,518,1583222400"; d="scan'208";a="476410670" Received: from orsmsx101.amr.corp.intel.com ([10.22.225.128]) by fmsmga005.fm.intel.com with ESMTP; 16 Jun 2020 04:48:36 -0700 Received: from orsmsx604.amr.corp.intel.com (10.22.229.17) by ORSMSX101.amr.corp.intel.com (10.22.225.128) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 16 Jun 2020 04:48:35 -0700 Received: from orsmsx604.amr.corp.intel.com (10.22.229.17) by ORSMSX604.amr.corp.intel.com (10.22.229.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Tue, 16 Jun 2020 04:48:35 -0700 Received: from ORSEDG001.ED.cps.intel.com (10.7.248.4) by orsmsx604.amr.corp.intel.com (10.22.229.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256) id 15.1.1713.5 via Frontend Transport; Tue, 16 Jun 2020 04:48:35 -0700 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (104.47.56.168) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 16 Jun 2020 04:48:35 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=LMdrHOOsOaPvuq1jUROG7RwbRqI4PhDkvF1Xzhgt9bBUZPyZbxijOP+R/slBlW4qoCEs9VgOKzuyj6zFyVpZraPZ4I+Qpp2pcU+Kr37PiKnyZ9aFCti69nlnZ0f0yFmEXAZb5JCwg8+9IVSGjNinK1yRHzBIRkYqRgilGAcCNihx4Y3jMUdiOJZ2IbAXs2jLoYdZNvQ8a2+eVg9DUJbOKUxoYKixRHMdYGJxmyPXE6H/RbQinA2ldkXzyU8XWjkizFgkMaPNs/bWns6pW2vH+wtAvzqk4yPKh15nGJ/ABJpCCoElnx0FnKYKXKVaD9VxYgHku30axw3MfQ5/Ztjeeg== 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=TlVB1EPglU6CrgW/RQDFqFVyu+FIS6kgnT+zztzMhTo=; b=TxMGFmP3+gOU4Uqh1NTiiiIlxB7MQ1HvErm5TE4Eu/uSmGsjEIr8+69VQ+fxnk8hIw9LWCDwf6sxMhLAzbdeKwybWtN6plw+yCNIvK+w6EOXlDdaeVDmG/3uWiWsQO+IZo2bolCfe3PwS0Nv+KZVsVoUoZ53ats1OMFSa3lSHEFmgBF5+PKTsIVesRetoGPgGR5tLujmCMm9PhplgnojQyu51VNe5mfoAySJqNtuXgzYHDqRZ7d0MG+FwA/6oQGnD9ctTG1Sul8g57XOcHZkiEOG1xpiqhuBk6AlsgehkrXvy6JpYX2JjzMKbDzhmWUA4T56A6lIgIMQJ8q5yCc0lg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from MWHPR11MB0048.namprd11.prod.outlook.com (2603:10b6:301:6a::31) by MWHPR11MB1741.namprd11.prod.outlook.com (2603:10b6:300:10d::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3109.21; Tue, 16 Jun 2020 11:48:34 +0000 Received: from MWHPR11MB0048.namprd11.prod.outlook.com ([fe80::45d4:8b21:ead1:9215]) by MWHPR11MB0048.namprd11.prod.outlook.com ([fe80::45d4:8b21:ead1:9215%7]) with mapi id 15.20.3088.029; Tue, 16 Jun 2020 11:48:34 +0000 From: "Strasuns, Mihails" To: Simon Marchi , "gdb-patches@sourceware.org" Subject: RE: [PATCH 2/2] jit: remove bp locations when unregistering jit code Thread-Topic: [PATCH 2/2] jit: remove bp locations when unregistering jit code Thread-Index: AQHWKFDdI5otYQdz20argRYG1OIXdKi3Z9MAgAE7p4CAFAcRgIAOrGig Date: Tue, 16 Jun 2020 11:48:34 +0000 Message-ID: References: <20200512113308.9502-1-mihails.strasuns@intel.com> <20200512113308.9502-3-mihails.strasuns@intel.com> <7f117c0d-5741-28e7-c1c3-5d034f7a6ab1@simark.ca> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-version: 11.2.0.6 dlp-product: dlpe-windows dlp-reaction: no-action x-originating-ip: [134.191.221.113] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: eca19d13-b599-4999-89f3-08d811eb3306 x-ms-traffictypediagnostic: MWHPR11MB1741: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:6108; x-forefront-prvs: 04362AC73B x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: +qiThBvK82moTeIVUtQxCeQrWVlsKTxBMa5sQHywQlGxaTckhN7vBQ9tfGuP6R84Kc7ilHVUOFwcGreidqaE288D2regV8VNZ2JlLC+Zka3pycwWVGF8SIA/cA4veKKFpdnNpGVuJjynfkAo0hZw327r70bTlEwwI9CdXbG228pDhrJbOOhB6H41ZFU1cksrF1vreWxoekBHIwqfy+zXOHSIF25ii+jPI8545jeuiDV5YMOWw8kgupK2bJD3JIxz8qN8QxyHUp3VzEm6BEyMAYXZcUnILKL4wzyXiCvdz8nPsYlmr0gchCPSLPdi1KWdRQyj3PgdLoa2YB7/PzakqQ== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MWHPR11MB0048.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(4636009)(396003)(39860400002)(366004)(136003)(376002)(346002)(66476007)(66946007)(66446008)(5660300002)(66556008)(64756008)(86362001)(8676002)(76116006)(7696005)(9686003)(186003)(55016002)(30864003)(33656002)(2906002)(53546011)(6506007)(71200400001)(83380400001)(26005)(110136005)(52536014)(316002)(8936002)(478600001); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata: qPX/23qyd5o08SpPZOmbYMK30UA3wVoIHz79aN2je/qhWEI3y9tpk1p0V9nK9SlNW6rzOwJE08/2h38m6QKr+ffjwM++smPZntuEKZ2FihWvHtzfmUiFowLvx6SzhItuHEgFf44XTaIF4geUcMIRSUm1hdAz26cK/Jeo4TmBcYQJqpy15VG8SpPaNbm3v1q8RqTdiPQq/1ISSSUClatM3C8cqt5YXKvBlCopVxuqA+x4xAP6Yg4zy0aDAoNvWRaze+U+9GDtlCQ8st+/0v2gRJJADMi1l8yk6ny4zn/PJLTS38a6s9XMR+AIZxY+nb/QKe4nyiF5kER01GNnLHEqh6U7x0SWNXgON2vY+2irR1zQbG5Nad5RqzcsD6gf3sNWOGh8yd/b27Llwt5JcaX7q3MvkEqxSPOZEPWTZCDgk0wnfjOVAKgTZl0QeV/qxHP2Xc3x0AG1KBmG0M1OkPIAUl8cCH9S5v2bfmwYjWy5N/Hk9gwmkRaGD4qdJhbRiW1o x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: eca19d13-b599-4999-89f3-08d811eb3306 X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Jun 2020 11:48:34.3388 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: b++bsxoCg5Z3seNpYU+1MoxMUj3ycnJ/Z1NKItnVy/QSY8Aef8uCqsHSrCeuO8Ac8/g2AT8SqIg+hmdWFiZN2rDqo25b5Q3TQFHC89lGfSo= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR11MB1741 X-OriginatorOrg: intel.com Content-Transfer-Encoding: base64 X-Spam-Status: No, score=-13.4 required=5.0 tests=BAYES_00, DKIM_INVALID, DKIM_SIGNED, GIT_PATCH_0, KAM_DMARC_STATUS, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Jun 2020 11:48:39 -0000 SGVsbG8sDQoNCkkgaGF2ZSB0ZXN0ZWQgeW91ciBwcm9wb3NlZCBmaXggYW5kIGl0IHdvcmtzIHBl cmZlY3RseSBmb3IgbXkgb3JpZ2luYWwgaXNzdWUgdG9vLiBJIGhhdmUgc3VibWl0dGVkIG5ldyBw YXRjaCBzZXJpZXMgd2hpY2ggc3dpdGNoZXMgdG8geW91ciBmaXggYW5kIG1vZGlmaWVzIHRoZSB0 ZXN0IGNhc2UgdG8gdGFrZSBpbnRvIGFjY291bnQgbXVsdGktaW5mZXJpb3Igc2NlbmFyaW8geW91 IGhhdmUgbWVudGlvbmVkIHByZXZpb3VzbHkuDQoNClRoYW5rcyENCg0KTWloYWlscw0KDQo+IC0t LS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IFNpbW9uIE1hcmNoaSA8c2ltYXJrQHNp bWFyay5jYT4NCj4gU2VudDogU3VuZGF5LCBKdW5lIDcsIDIwMjAgNTo0MiBBTQ0KPiBUbzogU3Ry YXN1bnMsIE1paGFpbHMgPG1paGFpbHMuc3RyYXN1bnNAaW50ZWwuY29tPjsgZ2RiLQ0KPiBwYXRj aGVzQHNvdXJjZXdhcmUub3JnDQo+IFN1YmplY3Q6IFJlOiBbUEFUQ0ggMi8yXSBqaXQ6IHJlbW92 ZSBicCBsb2NhdGlvbnMgd2hlbiB1bnJlZ2lzdGVyaW5nIGppdCBjb2RlDQo+IA0KPiBPbiAyMDIw LTA1LTI1IDY6MDcgYS5tLiwgU3RyYXN1bnMsIE1paGFpbHMgdmlhIEdkYi1wYXRjaGVzIHdyb3Rl Og0KPiA+IEhlbGxvLA0KPiA+DQo+ID4gSSB3aWxsIGZvY3VzIG9uIHRoZSBkZXNpZ24gcmVsYXRl ZCBxdWVzdGlvbiBmb3Igbm93Og0KPiA+DQo+ID4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0t DQo+ID4+IEZyb206IFNpbW9uIE1hcmNoaSA8c2ltYXJrQHNpbWFyay5jYT4NCj4gPj4gU2VudDog U3VuZGF5LCBNYXkgMjQsIDIwMjAgNTowMiBQTQ0KPiA+PiBUbzogU3RyYXN1bnMsIE1paGFpbHMg PG1paGFpbHMuc3RyYXN1bnNAaW50ZWwuY29tPjsgZ2RiLQ0KPiA+PiBwYXRjaGVzQHNvdXJjZXdh cmUub3JnDQo+ID4+IFN1YmplY3Q6IFJlOiBbUEFUQ0ggMi8yXSBqaXQ6IHJlbW92ZSBicCBsb2Nh dGlvbnMgd2hlbiB1bnJlZ2lzdGVyaW5nDQo+ID4+IGppdCBjb2RlDQo+ID4+DQo+ID4+IEknbSBu b3QgdmVyeSBmYW1pbGlhciB3aXRoIGhvdyBicmVha3BvaW50IGxvY2F0aW9ucyBhcmUgY29tcHV0 ZWQgYW5kDQo+ID4+IHVwZGF0ZWQgKEkganVzdCBrbm93IGl0J3MgY29tcGxpY2F0ZWQpLiBCdXQg SSBjb25maXJtIHRoYXQgdGhlIHRlc3QNCj4gPj4gc2hvd3MgdGhlIHByb2JsZW0gd2l0aG91dCB0 aGUgZml4IGFwcGxpZWQgYW5kIHBhc3NlcyB3aXRoIHRoZSBmaXgNCj4gPj4gYXBwbGllZC4gIEkn ZCBsaWtlIGlmIHNvbWUgb3RoZXIgbWFpbnRhaW5lciBtb3JlIGZhbWlsaWFyIHdpdGggdGhpcyBh cmVhDQo+IGNvdWxkIHJldmlldyB0aGlzIHBhcnQuDQo+ID4+DQo+ID4+IEknZCBiZSByZWFsbHkg Y3VyaW91cyB0byB1bmRlcnN0YW5kIGhvdyBHREIgaGFuZGxlcyB0aGlzIHdoZW4gaXQNCj4gPj4g Y29tZXMgdG8gc2hhcmVkIGxpYnJhcmllcy4gIExldCdzIGltYWdpbmUgdGhlIHNhbWUgY2FzZSwg YnV0IHVzaW5nIHNoYXJlZA0KPiBsaWJyYXJpZXMuDQo+ID4+IFdoZW4gYSBzaGFyZWQgbGlicmFy eSBpcyB1bmxvYWRlZCwgdGhlIGJyZWFrcG9pbnQgbG9jYXRpb25zIHRoYXQgd2VyZQ0KPiA+PiBp biB0aGF0IGxpYnJhcnkgbXVzdCBiZSBmb3Jnb3R0ZW4gc29tZWhvdz8gIElmIHNvIHRocm91Z2gg d2hpY2ggaG9vayAvDQo+IG1lY2hhbmlzbT8NCj4gPg0KPiA+IFRoaXMgaXMgc29tZXRoaW5nIEkg aGF2ZSBpbml0aWFsbHkgbG9va2VkIGludG8gbXlzZWxmIGRpZG4ndCBmaW5kIGENCj4gPiBjbGVh ciBhbnN3ZXIgaW4gR0RCIHNvdXJjZXMgOi0pDQo+ID4NCj4gPiBicF9sb2NhdGlvbiBkZWZpbmVz IHRoaXMgZmllbGQ6DQo+ID4NCj4gPiAtLS0NCj4gPiAgIC8qIFRoaXMgbG9jYXRpb24ncyBhZGRy ZXNzIGlzIGluIGFuIHVubG9hZGVkIHNvbGliLCBhbmQgc28gdGhpcw0KPiA+ICAgICAgbG9jYXRp b24gc2hvdWxkIG5vdCBiZSBpbnNlcnRlZC4gIEl0IHdpbGwgYmUgYXV0b21hdGljYWxseQ0KPiA+ ICAgICAgZW5hYmxlZCB3aGVuIHRoYXQgc29saWIgaXMgbG9hZGVkLiAgKi8NCj4gPiAgIGJvb2wg c2hsaWJfZGlzYWJsZWQgPSBmYWxzZTsNCj4gPiAtLS0NCj4gPg0KPiA+IFdoYXQgSSBkb24ndCB1 bmRlcnN0YW5kIHRob3VnaCBpcyB0aGF0IG9uY2Ugc2V0IHRvIHRydWUvMSwgdGhpcyBmaWVsZCBp cyBuZXZlcg0KPiByZXNldCBiYWNrIHRvIDAuIE15IGd1ZXNzIGlzIHRoYXQgdGhpcyBpcyBpbnRl bmRlZCB0byB3b3JrIGluIGEgc2ltaWxhciB3YXkgdG8NCj4gbXkgZml4LCBpLmUuIHRoYXQgYSBu ZXcgYnJlYWtwb2ludCBsb2NhdGlvbiBnZXRzIGNyZWF0ZWQgZm9yIHRoZSBuZXcgbG9hZA0KPiBy YXRoZXIgdGhhbiB0aGUgb2xkIG9uZSBiZWluZyByZWNyZWF0ZWQuIEhvd2V2ZXIgSSBhbSBub3Qg ZW50aXJlbHkgc3VyZS4NCj4gDQo+IEkgcmVhbGx5IGRvbid0IGtub3cgd2h5LCB3aGVuIGEgc2hh cmVkIGxpYnJhcnkgY29udGFpbmluZyBhIGxvY2F0aW9uIGdldHMNCj4gdW5sb2FkZWQsIHdlIGp1 c3QgbWFyayB0aGUgbG9jYXRpb24gYXMgImRpc2FibGVkIiBhbmQgbGVhdmUgaXQgdGhlcmUuICBJ IHJlYWxseQ0KPiBkb24ndCBzZWUgdGhlIHBvaW50IG9mIGxlYXZpbmcgaXQgdGhlcmUuICBNYXli ZSB0aGVyZSdzIGEgY29tbWVudA0KPiBzb21ld2hlcmUgdGhhdCBleHBsYWlucyB3aHkgd2UgZG8g dGhpcyBpbnN0ZWFkIG9mIHJlbW92aW5nIGl0LCBidXQgSSBkaWRuJ3QNCj4gZmluZCBhbnkuDQo+ IA0KPiBJIGFsc28gZmluZCBpdCBvZGQgdGhhdCB3aGVuIGEgYnJlYWtwb2ludCBsb2NhdGlvbiBn ZXRzIGRpc2FibGVkLCB3ZSBwcmludCB0aGUNCj4gbWVzc2FnZSAiVGVtcG9yYXJpbHkgZGlzYWJs aW5nIGJyZWFrcG9pbnRzIGZvciAkc29saWIiLiAgV2h5ICJUZW1wb3JhcmlseSI/DQo+IElmIHRo ZSBzYW1lIHNoYXJlZCBsaWIgZ2V0cyByZS1sb2FkZWQsIGl0IG1pZ2h0IG9yIG1pZ2h0IG5vdCBi ZSBhdCB0aGUgc2FtZQ0KPiBhZGRyZXNzLCBzbyBpdCdzIG5vdCBsaWtlIHRoZSBicmVha3BvaW50 IGxvY2F0aW9uIGlzIGdvaW5nIHRvIGJlIHJldXNlZCBhbnl3YXkuDQo+IA0KPiBJIHRoaW5rIHRo YXQncyBzb21ldGhpbmcgd2UgY2FuIGludmVzdGlnYXRlIHNlcGFyYXRlbHkgZnJvbSB0aGUgY3Vy cmVudA0KPiBwYXRjaCwgbWF5YmUgZm9yIG5vdyB3ZSBjYW4ganVzdCBkaXNhYmxlIHRoZSBsb2Nh dGlvbnMgaW5zdGVhZCBvZiByZW1vdmluZw0KPiB0aGVtLCB0byBrZWVwIGl0IGNvbnNpc3RlbnQg d2l0aCBzaGFyZWQgbGlicy4NCj4gDQo+ID4gVGhlcmUgaXMgYSBmYWlyIGFtb3VudCBvZiBkaWZm ZXJlbmNlcyBiZXR3ZWVuIHNlbWFudGljcyBvZiBqaXQgYW5kIHNoYXJlZA0KPiBsaWJyYXJpZXMs IHNvIEkgZGVjaWRlZCB0byBzdGFydCB3aXRoIGFuIGluZGVwZW5kZW50IGZpeCBhbmQgYXNrIGlu IHRoaXMgbWFpbCBsaXN0DQo+IGZvciBzb21lb25lIHdobyBrbm93cyBiZXR0ZXIuDQo+ID4NCj4g PiBUd28gaW1wb3J0YW50IG5vdGVzOg0KPiA+DQo+ID4gLSB0aGVyZSBpcyBhIGBkaXNhYmxlX2Jy ZWFrcG9pbnRzX2luX2ZyZWVkX29iamZpbGVgIGhvb2sgaW4gYnJlYWtwb2ludC5jDQo+IHdoaWNo IGxvb2tzIGxpa2UgaXQgc2hvdWxkIGhhdmUgY292ZXJlZCB0aGlzIGNhc2UgYnV0IHNvbWVob3cg aXQgaXMgbm90DQo+IGVub3VnaC4NCj4gDQo+IEluZGVlZCwgdGhhdCBzb3VuZHMgbGlrZSBhIHBy b21pc2luZyBmdW5jdGlvbiB0aGF0IHNvdW5kcyBsaWtlIGl0IHNob3VsZCBkbw0KPiB3aGF0IHdl IHdhbnQgKGFuZCBpdCBkb2VzIGFscmVhZHkgZ2V0IGNhbGxlZCB3aGVuIGEgaml0IG9iamVjdCBn ZXRzDQo+IHVubG9hZGVkKS4gIEJ1dCBpdCByZXR1cm5zIGVhcmx5IGJlY2F1c2Ugb2YgdGhpczoN Cj4gDQo+ICAgLyogT0JKRl9TSEFSRUR8T0JKRl9VU0VSTE9BREVEIG9iamZpbGVzIGFyZSBkeW5h bWljIG1vZHVsZXMNCj4gbWFudWFsbHkNCj4gICAgICBtYW5hZ2VkIGJ5IHRoZSB1c2VyIHdpdGgg YWRkLXN5bWJvbC1maWxlL3JlbW92ZS1zeW1ib2wtZmlsZS4NCj4gICAgICBTaW1pbGFybHkgdG8g aG93IGJyZWFrcG9pbnRzIGluIHNoYXJlZCBsaWJyYXJpZXMgYXJlIGhhbmRsZWQgaW4NCj4gICAg ICByZXNwb25zZSB0byAibm9zaGFyZWRsaWJyYXJ5IiwgbWFyayBicmVha3BvaW50cyBpbiBzdWNo IG1vZHVsZXMNCj4gICAgICBzaGxpYl9kaXNhYmxlZCBzbyB0aGV5IGVuZCB1cCB1bmluc2VydGVk IG9uIHRoZSBuZXh0IGdsb2JhbA0KPiAgICAgIGxvY2F0aW9uIGxpc3QgdXBkYXRlLiAgU2hhcmVk IGxpYnJhcmllcyBub3QgbG9hZGVkIGJ5IHRoZSB1c2VyDQo+ICAgICAgYXJlbid0IGhhbmRsZWQg aGVyZSAtLSB0aGV5J3JlIGFscmVhZHkgaGFuZGxlZCBpbg0KPiAgICAgIGRpc2FibGVfYnJlYWtw b2ludHNfaW5fdW5sb2FkZWRfc2hsaWIsIGNhbGxlZCBieSBzb2xpYi5jJ3MNCj4gICAgICBzb2xp Yl91bmxvYWRlZCBvYnNlcnZlci4gIFdlIHNraXAgb2JqZmlsZXMgdGhhdCBhcmUgbm90DQo+ICAg ICAgT0JKRl9TSEFSRUQgYXMgdGhvc2UgYXJlbid0IGNvbnNpZGVyZWQgZHluYW1pYyBvYmplY3Rz IChlLmcuIHRoZQ0KPiAgICAgIG1haW4gb2JqZmlsZSkuICAqLw0KPiAgIGlmICgob2JqZmlsZS0+ ZmxhZ3MgJiBPQkpGX1NIQVJFRCkgPT0gMA0KPiAgICAgICB8fCAob2JqZmlsZS0+ZmxhZ3MgJiBP QkpGX1VTRVJMT0FERUQpID09IDApDQo+ICAgICByZXR1cm47DQo+IA0KPiBTbyBpdCBzb3VuZHMg bGlrZSB0aGlzIGZ1bmN0aW9uIGNvbnNpZGVycyB0aGF0IGJlY2F1c2Ugc2hhcmVkIGxpYnJhcmll cyB3aGVyZQ0KPiBhbHJlYWR5IHRha2VuIGNhcmUgb2YgaW4gZGlzYWJsZV9icmVha3BvaW50c19p bl91bmxvYWRlZF9zaGxpYiwgYWxsIHRoYXQNCj4gcmVtYWlucyBpcyB1c2VyLWxvYWRlZCBvYmpm aWxlcy4gIEJ1dCB0aGF0J3Mgbm90IHRydWUsIHRoZXJlIGFyZSBqaXQtbG9hZGVkDQo+IG9iamZp bGVzLCB3aGljaCBhcmUgbmVpdGhlciB1c2VyLWxvYWRlZCBub3Igc2hhcmVkIGxpYnJhcmllcy4N Cj4gDQo+IExvb2tpbmcgYXQgZGlzYWJsZV9icmVha3BvaW50c19pbl91bmxvYWRlZF9zaGxpYiBh bmQNCj4gZGlzYWJsZV9icmVha3BvaW50c19pbl9mcmVlZF9vYmpmaWxlLCBJIG5vdGljZWQgdGhl eSBkbyBtYWtlIHN1cmUgdGhhdCB0aGUNCj4gbG9jJ3MgcHNwYWNlIGlzIHRoZSBzYW1lIGFzIHRo ZSB1bmxvYWRlZCBzaGxpYiAvIGZyZWVkIG9iamZpbGUncyBwc3BhY2UsIHdoaWNoDQo+IHlvdSBk b24ndCBkbyBpbiB5b3VyIHBhdGNoLiAgSSBqdXN0IHRyaWVkIHdpdGggeW91ciBwYXRjaDoNCj4g DQo+IC0gU3RhcnQgdHdvIGluZmVyaW9ycyB3aXRoIG9uZSBqaXQgb2JqZWN0IGVhY2gNCj4gLSBD cmVhdGUgYSBicmVha3BvaW50IHdpdGggdHdvIGxvY2F0aW9ucyAob25lIGluIGVhY2ggaml0IG9i amVjdCkNCj4gLSBTdGVwIG9uZSBpbmZlcmlvciBzbyB0aGF0IGl0IHVubG9hZHMgaXRzIGppdCBv YmplY3QNCj4gDQo+IEl0IGVuZGVkIHVwIGRlbGV0aW5nIHRoZSBicmVha3BvaW50IGxvY2F0aW9u cyBmb3IgdGhlIHR3byBpbmZlcmlvcnMsIHdoZXJlYXMNCj4gaXQgc2hvdWxkIGhhdmUgbGVmdCB0 aGUgbG9jYXRpb24gZm9yIHRoZSBpbmZlcmlvciB0aGF0IHN0aWxsIGhhcyBpdHMgaml0IG9iamVj dA0KPiBsb2FkZWQuICBJdCB3b3VsZCBiZSBnb29kIHRvIGVuaGFuY2UgdGhlIG5ldyB0ZXN0IGNh c2UgdG8gdGVzdCB0aGF0IGNhc2UuDQo+IA0KPiBUbyBhdm9pZCB0cnlpbmcgdG8gcmUtaW52ZW50 IHRoZSB3aGVlbCBhbmQgbWFraW5nIHRoZSBzYW1lIHN1YnRsZSBtaXN0YWtlcw0KPiB0aGF0IGFy ZSAoaG9wZWZ1bGx5KSBhbHJlYWR5IHNvbHZlZCBmb3IgdGhlIHNoYXJlZCBsaWJyYXJ5IGNhc2Us IEkgdGhpbmsgd2UNCj4gc2hvdWxkIHRyeSB0byByZS11c2UgdGhlIHNhbWUgY29kZSBwYXRoIGZv ciBkaXNhYmxpbmcgYnJlYWtwb2ludCBsb2NhdGlvbnMNCj4gd2hlbiBlaXRoZXIgYSBzaGFyZWQg bGlicmFyeSBvciBqaXQgb2JqZWN0IGlzIHVubG9hZGVkLg0KPiANCj4gV2hhdCBhYm91dCBzb21l dGhpbmcgbGlrZSB0aGlzLCB3aGljaCBtYWtlcyB1bmxvYWRlZCBqaXQgb2JqZWN0cyBnbyB0aHJv dWdoDQo+IHRoZSBzYW1lIGJyZWFrcG9pbnQgbG9jYXRpb24gZGlzYWJsaW5nIGZ1bmN0aW9uIGFz IHRoZSB1bmxvYWRlZCBzaGFyZWQgbGlicz8NCj4gDQo+IA0KPiBGcm9tIDZlM2EzNzdkYzgxODFl YzFjZTQzMDcxMWQ0ODAzN2Y1MTNiMTUzYmUgTW9uIFNlcCAxNyAwMDowMDowMA0KPiAyMDAxDQo+ IEZyb206IFNpbW9uIE1hcmNoaSA8c2ltb24ubWFyY2hpQHBvbHltdGwuY2E+DQo+IERhdGU6IFNh dCwgNiBKdW4gMjAyMCAyMjo0NzozMSAtMDQwMA0KPiBTdWJqZWN0OiBbUEFUQ0hdIERpc2FibGUg YnJlYWtwb2ludCBsb2NhdGlvbnMgaW4gdW5sb2FkZWQgaml0IG9iamVjdHMNCj4gDQo+IENoYW5n ZS1JZDogSTA2ZmY0ZjNmMDJiM2MzNDgxNjVlZDQ1MTMzOWU2ZWZmYmE2ZTNlOTcNCj4gLS0tDQo+ ICBnZGIvYnJlYWtwb2ludC5jIHwgMjkgKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0NCj4g IGdkYi9qaXQuYyAgICAgICAgfCAzMSArKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tDQo+ ICBnZGIvb2JzZXJ2YWJsZS5jIHwgIDEgKw0KPiAgZ2RiL29ic2VydmFibGUuaCB8ICAyICsrDQo+ ICA0IGZpbGVzIGNoYW5nZWQsIDQ2IGluc2VydGlvbnMoKyksIDE3IGRlbGV0aW9ucygtKQ0KPiAN Cj4gZGlmZiAtLWdpdCBhL2dkYi9icmVha3BvaW50LmMgYi9nZGIvYnJlYWtwb2ludC5jIGluZGV4 DQo+IGFlYWQ4ODJhY2Q4OC4uY2MxNWM0NzMwMzY0IDEwMDY0NA0KPiAtLS0gYS9nZGIvYnJlYWtw b2ludC5jDQo+ICsrKyBiL2dkYi9icmVha3BvaW50LmMNCj4gQEAgLTc0ODcsMTIgKzc0ODcsOCBA QCBkaXNhYmxlX2JyZWFrcG9pbnRzX2luX3NobGlicyAodm9pZCkNCj4gICAgfQ0KPiAgfQ0KPiAN Cj4gLS8qIERpc2FibGUgYW55IGJyZWFrcG9pbnRzIGFuZCB0cmFjZXBvaW50cyB0aGF0IGFyZSBp biBTT0xJQiB1cG9uDQo+IC0gICBub3RpZmljYXRpb24gb2YgdW5sb2FkZWRfc2hsaWIuICBPbmx5 IGFwcGx5IHRvIGVuYWJsZWQgYnJlYWtwb2ludHMsDQo+IC0gICBkaXNhYmxlZCBvbmVzIGNhbiBq dXN0IHN0YXkgZGlzYWJsZWQuICAqLw0KPiAtDQo+ICBzdGF0aWMgdm9pZA0KPiAtZGlzYWJsZV9i cmVha3BvaW50c19pbl91bmxvYWRlZF9zaGxpYiAoc3RydWN0IHNvX2xpc3QgKnNvbGliKQ0KPiAr ZGlzYWJsZV9icmVha3BvaW50c19pbl91bmxvYWRlZF9vYmpmaWxlIChvYmpmaWxlICpvYmpmaWxl KQ0KPiAgew0KPiAgICBzdHJ1Y3QgYnBfbG9jYXRpb24gKmxvYywgKipsb2NwX3RtcDsNCj4gICAg aW50IGRpc2FibGVkX3NobGliX2JyZWFrcyA9IDA7DQo+IEBAIC03NTAyLDcgKzc0OTgsNyBAQCBk aXNhYmxlX2JyZWFrcG9pbnRzX2luX3VubG9hZGVkX3NobGliIChzdHJ1Y3QNCj4gc29fbGlzdCAq c29saWIpDQo+ICAgICAgLyogQUxMX0JQX0xPQ0FUSU9OUyBicF9sb2NhdGlvbiBoYXMgTE9DLT5P V05FUiBhbHdheXMgbm9uLU5VTEwuDQo+ICovDQo+ICAgICAgc3RydWN0IGJyZWFrcG9pbnQgKmIg PSBsb2MtPm93bmVyOw0KPiANCj4gLSAgICBpZiAoc29saWItPnBzcGFjZSA9PSBsb2MtPnBzcGFj ZQ0KPiArICAgIGlmIChvYmpmaWxlLT5wc3BhY2UgPT0gbG9jLT5wc3BhY2UNCj4gIAkmJiAhbG9j LT5zaGxpYl9kaXNhYmxlZA0KPiAgCSYmICgoKGItPnR5cGUgPT0gYnBfYnJlYWtwb2ludA0KPiAg CSAgICAgIHx8IGItPnR5cGUgPT0gYnBfaml0X2V2ZW50DQo+IEBAIC03NTEwLDcgKzc1MDYsNyBA QCBkaXNhYmxlX2JyZWFrcG9pbnRzX2luX3VubG9hZGVkX3NobGliIChzdHJ1Y3QNCj4gc29fbGlz dCAqc29saWIpDQo+ICAJICAgICAmJiAobG9jLT5sb2NfdHlwZSA9PSBicF9sb2NfaGFyZHdhcmVf YnJlYWtwb2ludA0KPiAgCQkgfHwgbG9jLT5sb2NfdHlwZSA9PSBicF9sb2Nfc29mdHdhcmVfYnJl YWtwb2ludCkpDQo+ICAJICAgIHx8IGlzX3RyYWNlcG9pbnQgKGIpKQ0KPiAtCSYmIHNvbGliX2Nv bnRhaW5zX2FkZHJlc3NfcCAoc29saWIsIGxvYy0+YWRkcmVzcykpDQo+ICsJJiYgaXNfYWRkcl9p bl9vYmpmaWxlIChsb2MtPmFkZHJlc3MsIG9iamZpbGUpKQ0KPiAgICAgICAgew0KPiAgCWxvYy0+ c2hsaWJfZGlzYWJsZWQgPSAxOw0KPiAgCS8qIEF0IHRoaXMgcG9pbnQsIHdlIGNhbm5vdCByZWx5 IG9uIHJlbW92ZV9icmVha3BvaW50IEBAIC03NTI2LDEzDQo+ICs3NTIyLDI5IEBAIGRpc2FibGVf YnJlYWtwb2ludHNfaW5fdW5sb2FkZWRfc2hsaWIgKHN0cnVjdCBzb19saXN0ICpzb2xpYikNCj4g IAkgICAgdGFyZ2V0X3Rlcm1pbmFsOjpvdXJzX2Zvcl9vdXRwdXQgKCk7DQo+ICAJICAgIHdhcm5p bmcgKF8oIlRlbXBvcmFyaWx5IGRpc2FibGluZyBicmVha3BvaW50cyAiDQo+ICAJCSAgICAgICAi Zm9yIHVubG9hZGVkIHNoYXJlZCBsaWJyYXJ5IFwiJXNcIiIpLA0KPiAtCQkgICAgIHNvbGliLT5z b19uYW1lKTsNCj4gKwkJICAgICBvYmpmaWxlLT5vcmlnaW5hbF9uYW1lKTsNCj4gIAkgIH0NCj4g IAlkaXNhYmxlZF9zaGxpYl9icmVha3MgPSAxOw0KPiAgICAgICAgfQ0KPiAgICB9DQo+ICB9DQo+ IA0KPiArLyogRGlzYWJsZSBhbnkgYnJlYWtwb2ludHMgYW5kIHRyYWNlcG9pbnRzIHRoYXQgYXJl IGluIFNPTElCIHVwb24NCj4gKyAgIG5vdGlmaWNhdGlvbiBvZiB1bmxvYWRlZF9zaGxpYi4gIE9u bHkgYXBwbHkgdG8gZW5hYmxlZCBicmVha3BvaW50cywNCj4gKyAgIGRpc2FibGVkIG9uZXMgY2Fu IGp1c3Qgc3RheSBkaXNhYmxlZC4gICovDQo+ICsNCj4gK3N0YXRpYyB2b2lkDQo+ICtkaXNhYmxl X2JyZWFrcG9pbnRzX2luX3VubG9hZGVkX3NobGliIChzdHJ1Y3Qgc29fbGlzdCAqc29saWIpIHsN Cj4gKyAgZGlzYWJsZV9icmVha3BvaW50c19pbl91bmxvYWRlZF9vYmpmaWxlIChzb2xpYi0+b2Jq ZmlsZSk7IH0NCj4gKw0KPiArc3RhdGljIHZvaWQNCj4gK2Rpc2FibGVfYnJlYWtwb2ludHNfaW5f dW5sb2FkZWRfaml0X29iamVjdCAob2JqZmlsZSAqb2JqZmlsZSkgew0KPiArICBkaXNhYmxlX2Jy ZWFrcG9pbnRzX2luX3VubG9hZGVkX29iamZpbGUgKG9iamZpbGUpOyB9DQo+ICsNCj4gIC8qIERp c2FibGUgYW55IGJyZWFrcG9pbnRzIGFuZCB0cmFjZXBvaW50cyBpbiBPQkpGSUxFIHVwb24NCj4g ICAgIG5vdGlmaWNhdGlvbiBvZiBmcmVlX29iamZpbGUuICBPbmx5IGFwcGx5IHRvIGVuYWJsZWQg YnJlYWtwb2ludHMsDQo+ICAgICBkaXNhYmxlZCBvbmVzIGNhbiBqdXN0IHN0YXkgZGlzYWJsZWQu ICAqLyBAQCAtMTU0MzUsNiArMTU0NDcsNyBAQA0KPiBfaW5pdGlhbGl6ZV9icmVha3BvaW50ICgp DQo+ICAgIGluaXRpYWxpemVfYnJlYWtwb2ludF9vcHMgKCk7DQo+IA0KPiAgICBnZGI6Om9ic2Vy dmVyczo6c29saWJfdW5sb2FkZWQuYXR0YWNoDQo+IChkaXNhYmxlX2JyZWFrcG9pbnRzX2luX3Vu bG9hZGVkX3NobGliKTsNCj4gKyAgZ2RiOjpvYnNlcnZlcnM6OmppdF9vYmplY3RfdW5sb2FkZWQu YXR0YWNoDQo+ICsgKGRpc2FibGVfYnJlYWtwb2ludHNfaW5fdW5sb2FkZWRfaml0X29iamVjdCk7 DQo+ICAgIGdkYjo6b2JzZXJ2ZXJzOjpmcmVlX29iamZpbGUuYXR0YWNoDQo+IChkaXNhYmxlX2Jy ZWFrcG9pbnRzX2luX2ZyZWVkX29iamZpbGUpOw0KPiAgICBnZGI6Om9ic2VydmVyczo6bWVtb3J5 X2NoYW5nZWQuYXR0YWNoDQo+IChpbnZhbGlkYXRlX2JwX3ZhbHVlX29uX21lbW9yeV9jaGFuZ2Up Ow0KPiANCj4gZGlmZiAtLWdpdCBhL2dkYi9qaXQuYyBiL2dkYi9qaXQuYw0KPiBpbmRleCAxYjVl ZjQ2NDY5ZTAuLjE2ZTM4MDc4YmJkMCAxMDA2NDQNCj4gLS0tIGEvZ2RiL2ppdC5jDQo+ICsrKyBi L2dkYi9qaXQuYw0KPiBAQCAtOTI1LDYgKzkyNSwyNyBAQCBqaXRfZmluZF9vYmpmX3dpdGhfZW50 cnlfYWRkciAoQ09SRV9BRERSDQo+IGVudHJ5X2FkZHIpDQo+ICAgIHJldHVybiBOVUxMOw0KPiAg fQ0KPiANCj4gKy8qIFRoaXMgZnVuY3Rpb24gdW5yZWdpc3RlcnMgSklUZWQgY29kZSBhbmQgZG9l cyB0aGUgbmVjZXNzYXJ5IGNsZWFudXAuDQo+ICsqLw0KPiArDQo+ICtzdGF0aWMgdm9pZA0KPiAr aml0X3VucmVnaXN0ZXJfY29kZSAoc3RydWN0IGdkYmFyY2ggKmdkYmFyY2gsIENPUkVfQUREUiBl bnRyeV9hZGRyKSB7DQo+ICsgIHN0cnVjdCBvYmpmaWxlICpvYmpmaWxlID0gbnVsbHB0cjsNCj4g KyAgaWYgKGppdF9kZWJ1ZykNCj4gKyAgICBmcHJpbnRmX3VuZmlsdGVyZWQgKGdkYl9zdGRsb2cs ICJqaXRfdW5yZWdpc3Rlcl9jb2RlICglcylcbiIsDQo+ICsJCQlob3N0X2FkZHJlc3NfdG9fc3Ry aW5nIChvYmpmaWxlKSk7DQo+ICsgIG9iamZpbGUgPSBqaXRfZmluZF9vYmpmX3dpdGhfZW50cnlf YWRkciAoZW50cnlfYWRkcik7DQo+ICsgIGlmIChvYmpmaWxlID09IE5VTEwpDQo+ICsgICAgcHJp bnRmX3VuZmlsdGVyZWQgKF8gKCJVbmFibGUgdG8gZmluZCBKSVRlZCBjb2RlICINCj4gKwkJCSAg ImVudHJ5IGF0IGFkZHJlc3M6ICVzXG4iKSwNCj4gKwkJICAgICAgIHBhZGRyZXNzIChnZGJhcmNo LCBlbnRyeV9hZGRyKSk7DQo+ICsgIGVsc2UNCj4gKyAgICB7DQo+ICsgICAgICBnZGI6Om9ic2Vy dmVyczo6aml0X29iamVjdF91bmxvYWRlZC5ub3RpZnkgKG9iamZpbGUpOw0KPiArICAgICAgb2Jq ZmlsZS0+dW5saW5rICgpOw0KPiArICAgIH0NCj4gK30NCj4gKw0KPiAgLyogVGhpcyBpcyBjYWxs ZWQgd2hlbiBhIGJyZWFrcG9pbnQgaXMgZGVsZXRlZC4gIEl0IHVwZGF0ZXMgdGhlDQo+ICAgICBp bmZlcmlvcidzIGNhY2hlLCBpZiBuZWVkZWQuICAqLw0KPiANCj4gQEAgLTEzMzUsNyArMTM1Niw2 IEBAIGppdF9ldmVudF9oYW5kbGVyIChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCkNCj4gICAgc3Ry dWN0IGppdF9kZXNjcmlwdG9yIGRlc2NyaXB0b3I7DQo+ICAgIHN0cnVjdCBqaXRfY29kZV9lbnRy eSBjb2RlX2VudHJ5Ow0KPiAgICBDT1JFX0FERFIgZW50cnlfYWRkcjsNCj4gLSAgc3RydWN0IG9i amZpbGUgKm9iamY7DQo+IA0KPiAgICAvKiBSZWFkIHRoZSBkZXNjcmlwdG9yIGZyb20gcmVtb3Rl IG1lbW9yeS4gICovDQo+ICAgIGlmICghaml0X3JlYWRfZGVzY3JpcHRvciAoZ2RiYXJjaCwgJmRl c2NyaXB0b3IsIEBAIC0xMzUzLDE0ICsxMzczLDcgQEANCj4gaml0X2V2ZW50X2hhbmRsZXIgKHN0 cnVjdCBnZGJhcmNoICpnZGJhcmNoKQ0KPiAgICAgICAgaml0X3JlZ2lzdGVyX2NvZGUgKGdkYmFy Y2gsIGVudHJ5X2FkZHIsICZjb2RlX2VudHJ5KTsNCj4gICAgICAgIGJyZWFrOw0KPiAgICAgIGNh c2UgSklUX1VOUkVHSVNURVI6DQo+IC0gICAgICBvYmpmID0gaml0X2ZpbmRfb2JqZl93aXRoX2Vu dHJ5X2FkZHIgKGVudHJ5X2FkZHIpOw0KPiAtICAgICAgaWYgKG9iamYgPT0gTlVMTCkNCj4gLQlw cmludGZfdW5maWx0ZXJlZCAoXygiVW5hYmxlIHRvIGZpbmQgSklUZWQgY29kZSAiDQo+IC0JCQkg ICAgICJlbnRyeSBhdCBhZGRyZXNzOiAlc1xuIiksDQo+IC0JCQkgICBwYWRkcmVzcyAoZ2RiYXJj aCwgZW50cnlfYWRkcikpOw0KPiAtICAgICAgZWxzZQ0KPiAtCW9iamYtPnVubGluayAoKTsNCj4g LQ0KPiArICAgICAgaml0X3VucmVnaXN0ZXJfY29kZSAoZ2RiYXJjaCwgZW50cnlfYWRkcik7DQo+ ICAgICAgICBicmVhazsNCj4gICAgICBkZWZhdWx0Og0KPiAgICAgICAgZXJyb3IgKF8oIlVua25v d24gYWN0aW9uX2ZsYWcgdmFsdWUgaW4gSklUIGRlc2NyaXB0b3IhIikpOyBkaWZmIC0tZ2l0DQo+ IGEvZ2RiL29ic2VydmFibGUuYyBiL2dkYi9vYnNlcnZhYmxlLmMgaW5kZXggODFhYTM5MmNjMjFm Li45MjM1NGM2NGEzNjYNCj4gMTAwNjQ0DQo+IC0tLSBhL2dkYi9vYnNlcnZhYmxlLmMNCj4gKysr IGIvZ2RiL29ic2VydmFibGUuYw0KPiBAQCAtNDYsNiArNDYsNyBAQCBERUZJTkVfT0JTRVJWQUJM RSAoaW5mZXJpb3JfY3JlYXRlZCk7DQo+IERFRklORV9PQlNFUlZBQkxFIChyZWNvcmRfY2hhbmdl ZCk7ICBERUZJTkVfT0JTRVJWQUJMRQ0KPiAoc29saWJfbG9hZGVkKTsgIERFRklORV9PQlNFUlZB QkxFIChzb2xpYl91bmxvYWRlZCk7DQo+ICtERUZJTkVfT0JTRVJWQUJMRSAoaml0X29iamVjdF91 bmxvYWRlZCk7DQo+ICBERUZJTkVfT0JTRVJWQUJMRSAobmV3X29iamZpbGUpOw0KPiAgREVGSU5F X09CU0VSVkFCTEUgKGZyZWVfb2JqZmlsZSk7DQo+ICBERUZJTkVfT0JTRVJWQUJMRSAobmV3X3Ro cmVhZCk7DQo+IGRpZmYgLS1naXQgYS9nZGIvb2JzZXJ2YWJsZS5oIGIvZ2RiL29ic2VydmFibGUu aCBpbmRleA0KPiAwNzBjZjBmMThlNTEuLmI2MGVlN2YzZWZlNiAxMDA2NDQNCj4gLS0tIGEvZ2Ri L29ic2VydmFibGUuaA0KPiArKysgYi9nZGIvb2JzZXJ2YWJsZS5oDQo+IEBAIC0xMTEsNiArMTEx LDggQEAgZXh0ZXJuIG9ic2VydmFibGU8c3RydWN0IHNvX2xpc3QgKi8qIHNvbGliICovPg0KPiBz b2xpYl9sb2FkZWQ7DQo+ICAgICBiZWVuIHVubG9hZGVkIHlldCwgYW5kIHRodXMgYXJlIHN0aWxs IGF2YWlsYWJsZS4gICovICBleHRlcm4NCj4gb2JzZXJ2YWJsZTxzdHJ1Y3Qgc29fbGlzdCAqLyog c29saWIgKi8+IHNvbGliX3VubG9hZGVkOw0KPiANCj4gK2V4dGVybiBvYnNlcnZhYmxlPG9iamZp bGUgKi8qIG9iamZpbGUgKi8+IGppdF9vYmplY3RfdW5sb2FkZWQ7DQo+ICsNCj4gIC8qIFRoZSBz eW1ib2wgZmlsZSBzcGVjaWZpZWQgYnkgT0JKRklMRSBoYXMgYmVlbiBsb2FkZWQuICBDYWxsZWQN Cj4gICAgIHdpdGggT0JKRklMRSBlcXVhbCB0byBOVUxMIHRvIGluZGljYXRlIHByZXZpb3VzbHkg bG9hZGVkIHN5bWJvbA0KPiAgICAgdGFibGUgZGF0YSBoYXMgbm93IGJlZW4gaW52YWxpZGF0ZWQu ICAqLw0KPiAtLQ0KPiAyLjI3LjANCg0KSW50ZWwgRGV1dHNjaGxhbmQgR21iSApSZWdpc3RlcmVk IEFkZHJlc3M6IEFtIENhbXBlb24gMTAtMTIsIDg1NTc5IE5ldWJpYmVyZywgR2VybWFueQpUZWw6 ICs0OSA4OSA5OSA4ODUzLTAsIHd3dy5pbnRlbC5kZQpNYW5hZ2luZyBEaXJlY3RvcnM6IENocmlz dGluIEVpc2Vuc2NobWlkLCBHYXJ5IEtlcnNoYXcKQ2hhaXJwZXJzb24gb2YgdGhlIFN1cGVydmlz b3J5IEJvYXJkOiBOaWNvbGUgTGF1ClJlZ2lzdGVyZWQgT2ZmaWNlOiBNdW5pY2gKQ29tbWVyY2lh bCBSZWdpc3RlcjogQW10c2dlcmljaHQgTXVlbmNoZW4gSFJCIDE4NjkyOAo=