From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by sourceware.org (Postfix) with ESMTPS id 89BD63858010 for ; Mon, 22 Nov 2021 17:23:55 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 89BD63858010 X-IronPort-AV: E=McAfee;i="6200,9189,10176"; a="221714007" X-IronPort-AV: E=Sophos;i="5.87,255,1631602800"; d="scan'208";a="221714007" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Nov 2021 09:23:54 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.87,255,1631602800"; d="scan'208";a="456357529" Received: from orsmsx606.amr.corp.intel.com ([10.22.229.19]) by orsmga003.jf.intel.com with ESMTP; 22 Nov 2021 09:23:54 -0800 Received: from orsmsx607.amr.corp.intel.com (10.22.229.20) by ORSMSX606.amr.corp.intel.com (10.22.229.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Mon, 22 Nov 2021 09:23:53 -0800 Received: from orsmsx602.amr.corp.intel.com (10.22.229.15) by ORSMSX607.amr.corp.intel.com (10.22.229.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Mon, 22 Nov 2021 09:23:53 -0800 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12 via Frontend Transport; Mon, 22 Nov 2021 09:23:53 -0800 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (104.47.58.172) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.12; Mon, 22 Nov 2021 09:23:23 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=h4XN08iKUitnkOJ2faDqQVQTMDHaT2FKlaHgagE7CO5wfqRNeEFaxuofcglHzaP3JxRe8nnjaCsRKGmLJ3nlDyIzbgNuIvhs0GYVvdCZFPySrr3bMqs/CzsJ99lBUhpipXqy9mJrCWywoo2FabyBUVQqZDIdDhN70Yiv1B6PCSMlj0gvxcFaCq9gj0gw4O1ssBY7kMeNL0wmrumqPN+NMO8+RVgLPBQJoDkk1yC3ooDc2CN2VDbKJGvRzUXkkdHw9aAxhaiUuHBLGGBnIZ9gqUQKEgnB/VY/t+Se4CO9fLyTIeWV0aXdz8SVZbjWs9EyRkuUbVOKs/QUO1+qcQeFHQ== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=MN7SOhPyJVSru09w3wMYPsqwModjKJzbhY8oL4KmcdE=; b=OlNo90xl1wZfk55qObEpEBO/rWFipQj3bPepRknT1gUWK3jWhweJRAhTV4BT0LyQWNXJtosQXPobv3YuY6B9zMq5/FoO7dCkfosOMv9HVc/YMZWNex4/FoJ9+m1LM1SuhUZupiqRewWocP8Z2D8OIIuFqXZqXvPkQQ9zLUMjpxKN6gvxtzgqgDv/T90UfvWYEgDVYbYDWbhj1YYPHa1tCpDhmOPCvdtEsxga8+oI0FGXia4AAwpGhnCFdVvyzPvkRC27W7K41aDIUzR/j8UjBxqOHbTm4D1Apjs2GIcx6mK/EG2FHM25QyUlwgx9fPXw2r2wrnJ1W38jLGPROFTI7A== 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 DM8PR11MB5749.namprd11.prod.outlook.com (2603:10b6:8:10::15) by DM6PR11MB3915.namprd11.prod.outlook.com (2603:10b6:5:19c::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4690.16; Mon, 22 Nov 2021 17:23:15 +0000 Received: from DM8PR11MB5749.namprd11.prod.outlook.com ([fe80::3c64:9831:f364:b990]) by DM8PR11MB5749.namprd11.prod.outlook.com ([fe80::3c64:9831:f364:b990%5]) with mapi id 15.20.4669.016; Mon, 22 Nov 2021 17:23:15 +0000 From: "Metzger, Markus T" To: Pedro Alves CC: "gdb-patches@sourceware.org" Subject: RE: [PATCH 1/4] gdb, infrun, btrace: fix reverse/replay stepping at end of execution history Thread-Topic: [PATCH 1/4] gdb, infrun, btrace: fix reverse/replay stepping at end of execution history Thread-Index: AQHXGkepXkvwyzeUL0u+bx6OsNH42KvzNAQAgB11pJA= Date: Mon, 22 Nov 2021 17:23:15 +0000 Message-ID: References: <20210316093501.936148-1-markus.t.metzger@intel.com> <20210316093501.936148-2-markus.t.metzger@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-reaction: no-action dlp-version: 11.6.200.16 dlp-product: dlpe-windows x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 4a13fff2-e06b-4cd4-390c-08d9addcc4f5 x-ms-traffictypediagnostic: DM6PR11MB3915: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: kzCWnmj3sC1DnRs16Cl6nMRKht3209jBbUUwT85hQYJJ/ze9YNws3tZ42k69tn+M/MdFUnU93pQ2+5brDT/qbyzuq6hVO3nBf0e08PXKELj2RSlpMUpm52iyGIUjMhjeODeMvj8UxpDlgk2KYJEJFmLiGTk6v84Ul/gX+rn9CIVHoFRGnAQfKhxI8QCBAL31IE9q2L0M4TqrLBat7c74aSQYEwlLwpIjbtHdL5cV9s1dmyZiBYSzfKK1kW/1vPu0Ow3FCwhJXs9/UeQakMhlqHU6TP4qOS3ovN67OsRPTalWczJFdxjj4NP9idvDbGIZUPe0Euzdg1Em/W3oxzlyj5+SHQK/WM0noAD/BJCszCLzX3G4euCN1rOCrUQHLkvPEdNHjBnkp0Jk1vA3oSjLjvbBMaVQ9PwoPtjRSQRyWNOhuPf9jxbQYxApqNlAm3JosnJAO2KCWGufqkzV7gZq2OMR++HKp6Fclryf/8SzVqP+6MSoUfGfaP1hI1s2foIMrr0qmshG8B4KfCurayIHgxahSHfLj1uL11iA3xHDrhSUXxeHGnNCDtFFvCkXCgTYI47yU3qvmwSXIVjBL+kuL5XE4AkQlAVW6u1ibyrmc2ltm3jI4pM2KPvhqMa7Fp1egcEK4z4zxb2wnH476AubUyx2h5R2bCo/EpGfNXaRpF4+t9imAA2B+q0S25wfXBH0mM5CLgj6FcxEak+WYYkJ8Q== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM8PR11MB5749.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(366004)(8676002)(71200400001)(66946007)(55016002)(7696005)(6506007)(33656002)(186003)(316002)(38070700005)(64756008)(66476007)(52536014)(4326008)(82960400001)(6916009)(76116006)(5660300002)(9686003)(83380400001)(38100700002)(66556008)(508600001)(26005)(66446008)(122000001)(8936002)(2906002)(86362001); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?L2IxdEtJZ2ltRll3TVMvbG5GNlkyblZYQURTNFlMMEJGRFFRbk81blg0ZGtt?= =?utf-8?B?Zng2bXQvVGVSZzg2bGJJZi9idjRlS2pON3pnRHFWM3E1VUJmQ2pvZGNPOFZv?= =?utf-8?B?eUwyY3MxbWNKdnoycXRWUTVMRWRDb3NhNDV3MVdRTFVybHE4LzhFK1F1WXc3?= =?utf-8?B?Mm55NjduZjZtb0N3M21EMUJSUmdmOCtNaEtUbnNLUS9rNUs0YXBMbGVtTmo0?= =?utf-8?B?Q21DbFp6VGlzVjI4Rmp2M2c3TVo2WFFTTTZGMk5rQkdQZjhvenlncUpzM096?= =?utf-8?B?U3ZzS2kvbzZlSUlGUU1ra1dwRXppOGRxZlBWbjhZY0syS214eERrOXk5S2tj?= =?utf-8?B?UlFIOG9BVEprZThYVjR3UlAwa2FCVExSaVl5WGExV0MzbEFVbVU5RDZTQjZv?= =?utf-8?B?dldhcmFZZWxxSTltd3V1Vm5Hb3crSEpaSVlzRUkwRnVsZ0JqZmMwQ0I0eXFS?= =?utf-8?B?Q2sxWFVNZ0g0dkZiTHlhTVlXZGIvUEhhUzQ5YlZCYXhtdzgyMGYrUEQvTU1T?= =?utf-8?B?aTdQRlJLaVBIc283YnBlcXdZMk42d29QR1UzUmtWa3lLWjlwbjlIUmxMc1ZF?= =?utf-8?B?OS9LdlpZb1ZkRU5ra0MwYzFFaEoyeGpxU0NTYWtrQXFYbnJLbWpMa0NVVjMr?= =?utf-8?B?dWVkVFNyeWVHSFFLb1pUNjhqYjgyMmNPYXMzeEhudVNHSDNDT0F0REtTbkxI?= =?utf-8?B?VW0wa2lYb0owcXpLb2tPSWM5SERPOHRXaDBlWEx2eFBoNmh4R3l6Yy8xSXRP?= =?utf-8?B?cTl1amRQOVgvc1ZNOUhXMnBQUDhoUW13NVJwYW0wbFRaeDBodjdHajJoVXNm?= =?utf-8?B?dVpyeEtCTkpmNVZBam56cVNoMmtneU1JVkdodm1vY2tBMnRxUzBJM2ZsbGlT?= =?utf-8?B?UFVNY2FjY2l5U2FUODgrNlZuYWF0QkE2ekdRcG5wQ0pScEdCdlI5UmowZEp2?= =?utf-8?B?QVFtZGJQdVpzSGNWSUhtc2V2YTcvRHFQa0JOSGVQRXIzQVJJUEhzcnBPT1JI?= =?utf-8?B?YUsvbmZYVEVzb0YyajdDVHdIL0VJL0l0bkttOHJIMzROclQ1VnFXNlFmRkUz?= =?utf-8?B?WFovdFM4emlCRFlJbWh6Nlh3MDFZVXozNS9DNGV4bkp0c1dZNkcxMnFSbzVV?= =?utf-8?B?Vyt2c1R0WFBURXJuNnYwcmlKQWN1Ykh5d3pCd2dkMzJXR05XVVUzZ1dyWU4x?= =?utf-8?B?a2FWREc4aWdNakk5cVNaRFJMZHBrNG9RZ051T3dIeGZ5REllSEdxcVoxaTNR?= =?utf-8?B?OFdBeko5MnR4ZThqemFyZ3QvY3N0NThLRmhmRlF6UFR0RitNeUJRVURpVVpq?= =?utf-8?B?MkNjTGlnQzk3TDI5THpKaTdFT3pSay8vUmJSV2RObERFM1I5NW02UEUwSS9y?= =?utf-8?B?S1lKdlVFamEra3plT2FuSG85bWZudmtnSmNFM3RQTXJQeFovSTF0bkMvRnpY?= =?utf-8?B?NkxieHdBLzB6cjBZWGpoTHo3OUh5WkhTbEsydVRaZjV5Y3BqWU1EUmhoWXNl?= =?utf-8?B?SzRWUUFlYUdJd1FqQnlTRDNzM1FXKzFjMEZOTmptM0tMUitVUUxaUFIyeVA5?= =?utf-8?B?eklVZitieEZMVWpJRW5LUXBmTG9CQUhPYzFSaklvNzE0c1Y3OXNrZGJ5aUdL?= =?utf-8?B?M1piVjMrWm5OVDJYWjVvdUQvWlVIck0wZlBpMzBuSndtSk1JUnlUcTF2UGRQ?= =?utf-8?B?SUtXaDVMSEVQbnQ5RVRFWngzMHpDWGl1R2h2K1lnNldQN2UzVVNiRlVFTXc4?= =?utf-8?B?ZXZTaURWd1VDZVB0NnRYTHk4cXp2Vmk1RnR4cjJPN21STWxvdkRYajhsQ3J0?= =?utf-8?B?Q3lwcGE2aHJLMnRTcGNoMGdjblRMS0hPTDdDV1JobVVDRUNLZ2FidzIxck9z?= =?utf-8?B?aW96ZlM4RFZoR1JuSUxTZ1BLNThybGJMeXQzbSt0QTVsL3FYdEFWUDFnYkpl?= =?utf-8?B?TGRDUlF5V0NsWk0zY2F4QkJyUzhqZEN2RmhhY1I3L0NhcFdwL3dsa0w2Q3hj?= =?utf-8?B?c2tKdDJJbGx2NGJLZktvRlcvbHU0TGhQcThpSVg4UDN1clFWRHpRcXEyV3Zl?= =?utf-8?B?UXNXWldkRWwyeTBXaEhaVUJyZkNucUxCR3ZNQlBlcnB5cW9CbVdpdEZ2R2pG?= =?utf-8?B?RkJFUjRBUU5neDdjRnNBa0J0R1VEczE5a3N4WFVaek1ZV0JqRS9mRWNPOEsr?= =?utf-8?B?U3pKbVNZUDYvTFNKeGVRQ0plS1k2NzYzTTFxRmZkaXZUSk90STJvcElSRUwz?= =?utf-8?B?Skw0ME9hOVZiY0ppeTJkZkdxUnlBPT0=?= Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM8PR11MB5749.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4a13fff2-e06b-4cd4-390c-08d9addcc4f5 X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Nov 2021 17:23:15.7963 (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: d9FrLgFe+7Am5g4i5duvVdulB4YBsVARkJ7q+6T1lJTLnzMUzSAgds11bUG0CX3AE2BpK8rTdoq0sQJCTbXpuTwhnyyVaRlD/sCQ2d5W0v4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR11MB3915 X-OriginatorOrg: intel.com Content-Transfer-Encoding: base64 X-Spam-Status: No, score=-1.7 required=5.0 tests=BAYES_00, DKIM_INVALID, DKIM_SIGNED, KAM_DMARC_NONE, KAM_DMARC_STATUS, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=no autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) 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: Mon, 22 Nov 2021 17:23:58 -0000 VGhhbmtzIGZvciB0aGUgcmV2aWV3LCBQZWRyby4NCg0KPj4gVGhhdCBzdGVwLW92ZXIgZmFpbGVk IGFmdGVyIGFjdHVhbGx5IGNvbXBsZXRpbmcgdGhlIHN0ZXAuICBUaGlzIGlzIHdyb25nLg0KPg0K PlRoZXNlIGxhc3QgdHdvIHNlbnRlbmNlcyBjb25mdXNlZCBtZSwgaXQgaXMgbm90IGNsZWFyIHRv IG1lIHdoYXQgeW91J3JlDQo+c2F5aW5nIGlzIHdyb25nLiAgSS5lLiwgd2hhdCBleGFjdGx5IGRv ZXMgImZhaWwiIG1lYW4gaGVyZT8gIEFuZCB3aGF0IGV4YWN0bHkNCj5pcyB3cm9uZz8NCg0KSXQg aXMgd3JvbmcgdGhhdCB3ZSBjb21wbGV0ZSB0aGUgc3RlcCBhbmQgdGhlbiBmYWlsLiAgVGhlIHN0 ZXAgaXRzZWxmIHNob3VsZA0KaGF2ZSBmYWlsZWQgYW5kIHdlIHNob3VsZCBub3QgaGF2ZSBjb21w bGV0ZWQgdGhlIHN0ZXAuICBJIHJlcGhyYXNlZCB0aGUNCmNvbW1pdCBtZXNzYWdlLg0KDQoNCj4+ IFRoaXMgZXhwb3NlcyBhbm90aGVyIGlzc3VlLCBob3dldmVyLiAgV2hlbiBjb21wbGV0aW5nIGEg c3RlcC1vdmVyIGF0IHRoZQ0KPj4gZW5kIG9mIHRoZSBleGVjdXRpb24gaGlzdG9yeSwgd2UgaW1w bGljaXRseSBzdG9wIHJlcGxheWluZyB0aGF0IHRocmVhZC4NCj4NCj5PT0MsIHdoZXJlIGRvZXMg dGhhdCBoYXBwZW4gKGltcGxpY2l0bHkgc3RvcCByZXBsYXlpbmcpPw0KDQpJbiByZWNvcmRfYnRy YWNlX3N0b3BfcmVwbGF5aW5nX2F0X2VuZCgpLg0KDQoNCj4+IEENCj4+IGNvbnRpbnVlIGNvbW1h bmQgd291bGQgcmVzdW1lIGFmdGVyIHRoZSBzdGVwLW92ZXIgYW5kLCBzaW5jZSB3ZSdyZSBubw0K Pj4gbG9uZ2VyIHJlcGxheWluZywgd291bGQgY29udGludWUgcmVjb3JkaW5nLg0KPj4NCj4NCj5U aGlzIGFwcHJvYWNoIHJlbGllcyBvbiB0aGUgcmV2ZXJzZSBkZWJ1Z2dpbmcgLyByZXBsYXlpbmcg YmVpbmcgaGFuZGxlZCBieSBHREIuDQo+DQo+SSBtZWFuLCByZW1vdGUgdGFyZ2V0cyB0aGF0IHN1 cHBvcnQgcmV2ZXJzZSBkZWJ1Z2dpbmcgdGhlbXNlbHZlcywgdmlhIHRoZSAiYmMiLA0KPiJicyIN Cj5wYWNrZXRzIChiYWNrd2FyZHMgY29udGludWUvc3RlcCksIGFuZCAicmVwbGF5bG9nIiBzdG9w IHJlcGx5DQo+KFRBUkdFVF9XQUlUS0lORF9OT19ISVNUT1JZKQ0KPmFyZSBvdXQgb2YgbHVjayBz aW5jZSB0aGUgcmVtb3RlIHRhcmdldCBoYXMgbm8gd2F5IHRvIGltcGxlbWVudA0KPnRhcmdldF9y ZWNvcmRfaXNfcmVwbGF5aW5nLg0KDQpXaHkgaXMgdGhhdD8gIFRoZSBmdW5jdGlvbmFsaXR5IHNv bGVseSBkZXBlbmRzIG9uIHRoZSByZXBsYXkgc3RhdGUgb2YgdGhyZWFkcw0KaW5zaWRlIHRoYXQg dGFyZ2V0Lg0KDQpUaGVyZSdzIGFsc28gdGFyZ2V0X3JlY29yZF93aWxsX3JlcGxheSgpIHRoYXQg dGFrZXMgdGhlIHN0ZXBwaW5nIGNvbW1hbmQncw0KZXhlY3V0aW9uIGRpcmVjdGlvbiBpbnRvIGFj Y291bnQuDQoNCg0KPlRodXMgSSdtIHdvbmRlcmluZyB3aGV0aGVyIHRhcmdldF9yZWNvcmRfaXNf cmVwbGF5aW5nKCkgZXhpc3RpbmcgaXMgYSBkZXNpZ24NCj5taXN0YWtlLCBhbmQNCj5JIHdvbmRl ciAtLSBzaG91bGQgaXQgYmUgdGhlIHRhcmdldCB0aGF0IGlzIGd1YXJhbnRlZWQgdG8gcmVwbHkg d2l0aCBuby1oaXN0b3J5DQo+YmVmb3JlDQo+aW1wbGljaXRseSBzdG9wcGluZyByZXBsYXk/ICBJ T1csIGRvbid0IHN0b3AgcmVwbGF5IHVudGlsIGEgbm8taGlzdG9yeSBldmVudCBpcw0KPnJldHVy bmVkLg0KDQpXZSBuZWVkIHNvbWUgbWVjaGFuaXNtIHRvIHN3aXRjaCBiZXR3ZWVuIHJlcGxheSBt b2RlIGFuZCByZWNvcmQgbW9kZS4NCkUuZy4gaWYgdGhlIGN1cnJlbnQgdGhyZWFkIGlzIG5vdCBy ZXBsYXlpbmcgYnV0IG90aGVyIHRocmVhZHMgYXJlLCBpbiBhbGwtc3RvcCBtb2RlDQp3ZSBuZWVk IHRvIGVpdGhlciBhKSBhYm9ydCB0aGUgbW92ZXIgY29tbWFuZCBvciBiKSBzaWxlbnRseSBzdG9w IHJlcGxheWluZw0Kb3RoZXIgdGhyZWFkcy4NCg0KV2UgY291bGQgbW92ZSB0aGUgZGVjaXNpb24g YW5kIGhlbmNlIHRoZSBjb2RlIGRvd24gaW50byB0aGUgdGFyZ2V0IHN1Y2gNCnRoYXQgdGhlIG1v dmUgcmVxdWVzdCB0byB0aGUgdGFyZ2V0IHdvdWxkIGZhaWwgb3Igc2lsZW50bHkgc3RvcCByZXBs YXlpbmcgb3RoZXJzLg0KDQpSZWNvcmQtYnRyYWNlIGFzIHdlbGwgYXMgcmVjb3JkLWZ1bGwsIGhv d2V2ZXIsIGltcGxlbWVudCByZXBsYXkgaW4gR0RCIGFuZA0Kbm90IGluIHRoZSB0YXJnZXQuICBU aGlzIGtlZXBzIGdkYnNlcnZlciBtb3JlIGxpZ2h0LXdlaWdodCBhcyB3ZSB3b3VsZG4ndA0KbmVl ZCB0byBkZWNvZGUgdGhlIHRyYWNlIG9uIHRoZSB0YXJnZXQgaXRzZWxmLCBub3Igc3RvcmUgYSBo dWdlIGFtb3VudCBvZg0KdHJhY2UgZGF0YS4gIEl0IGFsc28gc2F2ZXMgYSBsb3Qgb2Ygcm91bmQt dHJpcHMuICBJIHdvdWxkbid0IGNoYW5nZSB0aGF0IGRlc2lnbi4NCg0KSSBkb24ndCBzZWUsIGhv d2V2ZXIsIHdoeSB0aGlzIHNob3VsZG4ndCBiZSBhYmxlIHRvIGNvLWV4aXN0IHdpdGggcmVjb3Jk L3JlcGxheQ0KYmVpbmcgaW1wbGVtZW50ZWQgb24gdGhlIHRhcmdldCBzaWRlLg0KDQoNCj4gSU9X LCBkb24ndCBzdG9wIHJlcGxheSB1bnRpbCBhIG5vLWhpc3RvcnkgZXZlbnQgaXMgcmV0dXJuZWQu DQoNCkkgaW1wbGljaXRseSBzdG9wIHJlcGxheWluZyB0byBtYWtlICdyc2ksIHNpLCBjb250JyB3 b3JrLiAgT3RoZXJ3aXNlLCB0aGUgdXNlcg0Kd291bGQgZWl0aGVyIG5lZWQgdG8gcmVwZWF0ZWRs eSBjb250aW51ZSB1bnRpbCBoZSBnZXRzIG5vLWhpc3Rvcnkgb3IgZG8NCidyZWNvcmQgZ290byBl bmQnLg0KDQpJIGFsc28gaW1wbGljaXRseSBzdG9wIHJlcGxheWluZyBvdGhlciB0aHJlYWRzIHRv IG5vdCBoYXZlIHRoZSB1c2VyIGl0ZXJhdGUNCm92ZXIgYWxsIHRocmVhZHMgYW5kIGRvICdyZWNv cmQgZ290byBlbmQnIHRvIHN0b3AgcmVwbGF5aW5nIGVhY2ggdGhyZWFkDQpiZWZvcmUgaGUgY2Fu IHJlc3VtZS4NCg0KDQo+PiBGaXggdGhhdCBieSByZWNvcmRpbmcgdGhlIHJlcGxheSBzdGF0ZSBp biB0aGUgdGhyZWFkJ3MgY29udHJvbCBzdGF0ZSBhbmQNCj4+IGZhaWxpbmcgd2l0aCBuby1oaXN0 b3J5IGluIGtlZXBfZ29pbmcgaWYgd2UncmUgc3dpdGNoaW5nIGZyb20gcmVwbGF5IHRvDQo+PiBy ZWNvcmRpbmcuDQo+DQo+VGhpcyBhZmZlY3RzIHRhcmdldCByZWNvcmQganVzdCBhcyB3ZWxsLCBy aWdodD8gIFdvdWxkIGl0IGJlIHBvc3NpYmxlIGZvcg0KPnRoZSB0ZXN0Y2FzZXMgdG8gYmUgbWFk ZSB0byB0ZXN0IHRoYXQgdGFyZ2V0IGFzIHdlbGw/DQoNCldlIGtlcHQgdGVzdHMgc2VwYXJhdGUs IHNvIGZhciwgc2luY2UgcmVjb3JkIGJ0cmFjZSBkb2Vzbid0IHN1cHBvcnQgZGF0YQ0KYW5kIHJl Y29yZCBmdWxsIGRvZXNuJ3Qgc3VwcG9ydCBtdWx0aS10aHJlYWRpbmcuDQoNCg0KPj4gQEAgLTc4 MTMsNiArNzgxNSwyNiBAQCBrZWVwX2dvaW5nX3Bhc3Nfc2lnbmFsIChzdHJ1Y3QNCj5leGVjdXRp b25fY29udHJvbF9zdGF0ZSAqZWNzKQ0KPj4gICAgZ2RiX2Fzc2VydCAoZWNzLT5ldmVudF90aHJl YWQtPnB0aWQgPT0gaW5mZXJpb3JfcHRpZCk7DQo+PiAgICBnZGJfYXNzZXJ0ICghZWNzLT5ldmVu dF90aHJlYWQtPnJlc3VtZWQpOw0KPj4NCj4+ICsgIC8qIFdoZW4gYSB0aHJlYWQgcmVhY2hlcyB0 aGUgZW5kIG9mIGl0cyBleGVjdXRpb24gaGlzdG9yeSwgaXQgYXV0b21hdGljYWxseQ0KPj4gKyAg ICAgc3RvcHMgcmVwbGF5aW5nLiAgVGhpcyBpcyBzbyB0aGUgdXNlciBkb2Vzbid0IG5lZWQgdG8g ZXhwbGljaXRseSBzdG9wIGl0DQo+PiArICAgICB3aXRoIGEgc2VwYXJhdGUgY29tbWFuZC4NCj4+ ICsNCj4+ICsgICAgIFdlIGRvIG5vdCB3YW50IGEgc2luZ2xlIGNvbW1hbmQgKGUuZy4gY29udGlu dWUpIHRvIHRyYW5zaXRpb24gZnJvbQ0KPj4gKyAgICAgcmVwbGF5aW5nIHRvIHJlY29yZGluZywg dGhvdWdoLCBlLmcuIHdoZW4gc3RhcnRpbmcgZnJvbSBhIGJyZWFrcG9pbnQgd2UNCj4+ICsgICAg IG5lZWRlZCB0byBzdGVwIG92ZXIgYXQgdGhlIGVuZCBvZiB0aGUgdHJhY2UuICBXaGVuIHdlIHJl YWNoIHRoZSBlbmQgb2YgdGhlDQo+PiArICAgICBleGVjdXRpb24gaGlzdG9yeSBkdXJpbmcgc3Rl cHBpbmcsIHN0b3Agd2l0aCBuby1oaXN0b3J5Lg0KPj4gKw0KPj4gKyAgICAgVGhlIG90aGVyIGRp cmVjdGlvbiBpcyBmaW5lLiAgV2hlbiB3ZSdyZSBhdCB0aGUgZW5kIG9mIHRoZSBleGVjdXRpb24N Cj4+ICsgICAgIGhpc3RvcnksIHdlIG1heSByZXZlcnNlLWNvbnRpbnVlIHRvIHN0YXJ0IHJlcGxh eWluZy4gICovDQo+PiArICBpZiAoZWNzLT5ldmVudF90aHJlYWQtPmNvbnRyb2wuaXNfcmVwbGF5 aW5nDQo+PiArICAgICAgJiYgIXRhcmdldF9yZWNvcmRfaXNfcmVwbGF5aW5nIChlY3MtPmV2ZW50 X3RocmVhZC0+cHRpZCkpDQo+PiArICAgIHsNCj4+ICsgICAgICBnZGI6Om9ic2VydmVyczo6bm9f aGlzdG9yeS5ub3RpZnkgKCk7DQo+PiArICAgICAgc3RvcF93YWl0aW5nIChlY3MpOw0KPj4gKyAg ICAgIG5vcm1hbF9zdG9wICgpOw0KPg0KPm5vcm1hbF9zdG9wIGxvb2tzIGF0IHRoZSBsYXN0IHRh cmdldCBzdGF0dXMgdG8gZGVjaWRlIHdoYXQgdG8gZG8uICBTbyBoZXJlIHdlDQo+c2hvdWxkIGNh bGwNCj5zZXRfbGFzdF90YXJnZXRfc3RhdHVzIGJlZm9yZSBjYWxsaW5nIG5vcm1hbF9zdG9wLCBJ J2QgdGhpbmsuDQoNCkknbSBkb2luZyB0aGF0IGluIHBhdGNoIDMuICBJIG1vdmVkIHRoZSBjb2Rl IGludG8gdGhpcyBwYXRjaC4NCg0KUmVnYXJkcywNCk1hcmt1cy4NCg0KSW50ZWwgRGV1dHNjaGxh bmQgR21iSApSZWdpc3RlcmVkIEFkZHJlc3M6IEFtIENhbXBlb24gMTAsIDg1NTc5IE5ldWJpYmVy ZywgR2VybWFueQpUZWw6ICs0OSA4OSA5OSA4ODUzLTAsIHd3dy5pbnRlbC5kZSA8aHR0cDovL3d3 dy5pbnRlbC5kZT4KTWFuYWdpbmcgRGlyZWN0b3JzOiBDaHJpc3RpbiBFaXNlbnNjaG1pZCwgU2hh cm9uIEhlY2ssIFRpZmZhbnkgRG9vbiBTaWx2YSAgCkNoYWlycGVyc29uIG9mIHRoZSBTdXBlcnZp c29yeSBCb2FyZDogTmljb2xlIExhdQpSZWdpc3RlcmVkIE9mZmljZTogTXVuaWNoCkNvbW1lcmNp YWwgUmVnaXN0ZXI6IEFtdHNnZXJpY2h0IE11ZW5jaGVuIEhSQiAxODY5MjgK