From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mgamail.intel.com (unknown [192.55.52.88]) by sourceware.org (Postfix) with ESMTPS id 936533858C00 for ; Sat, 29 Jul 2023 11:36:52 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 936533858C00 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=intel.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1690630612; x=1722166612; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version:content-transfer-encoding; bh=fHIaT0y7ONp8Mwrgvp30slZj3iQnksEN2/erSCp2704=; b=BdqdoYyDiqFN7wlu4ndw3O+HPEKVgB4hSjQpAjZ9WekWkf3vxzLS+jHc BS2pOjXphEXgWBzqOHmFLJS9IhayBowcuWiFpRGk6ya0PDs/Fq2NP6HH9 o208ALnppbmGjd+Dvt9ofR2RU3Bcn42y2Z3Vr8+g6OuVPfdyeHDQpzi9F iHftOIPjNPgTnpWnZ/nzBUbBvbtD02Cerbp2yogSrsICNQWVBb8htPzYL x9eMmoRQKSmJVK/exTf9Sn7+Hx9iyvsjdPoo7j9JgGBxViHLQJ8sC8UoA e+amRfUaLkBNjv59G2dU+a+pGLDPfPGqIOckL8+FUvZSZxbuBHxGWrGHe Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10785"; a="399698084" X-IronPort-AV: E=Sophos;i="6.01,240,1684825200"; d="scan'208";a="399698084" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 Jul 2023 04:36:50 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10785"; a="677783362" X-IronPort-AV: E=Sophos;i="6.01,240,1684825200"; d="scan'208";a="677783362" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by orsmga003.jf.intel.com with ESMTP; 29 Jul 2023 04:36:50 -0700 Received: from orsmsx602.amr.corp.intel.com (10.22.229.15) by ORSMSX603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Sat, 29 Jul 2023 04:36:50 -0700 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) 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.2507.27 via Frontend Transport; Sat, 29 Jul 2023 04:36:50 -0700 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.42) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.27; Sat, 29 Jul 2023 04:36:49 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jPk01MO6+A+NvzWNlyOL9IWbAx2hw7W6XYon5fWk7x8WU05iRJUjsl0n0xj3Z90l6x1w4Kv3qSQ0xnMEFeXYwOH59nGa7Ghf5hfCKHenCnnhrmU30JaqDh/le+dA1NZK934TnLPLHPB7gobsWIjM24cp/XBhk7vF9EMVPAwKCBKUk7E4zSXsEYe0VGORHKkdu+yBPcVuI3nW9YlMx9hIMJUSMkM8l7t5uMhc6fAQASODH84PX+TqIU1FyxK7lk/KxuhH3rtTHCBDlUNiZVmk5SjLRfKboH+CNiKEgnHwRxOcBB5Lr3tPBNryZS4Qbtd+3edvOdannOlRzkLxmYFDRw== 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=qJIQWIHhFtxwOhfk/VzONUUavAg+RIc8FtyBQjvf6so=; b=XiOLS4pK4tobVEezJorjeZ5hw06ap8OXx4n1jci6d4q765i+HAJQpW7pXzHel/ke/I/ves36I89rV/f2cy1w4fSI4nbRs6GItNi7u5h3OR7bBgcnR3zSygk57+GdEu/jEruhtSsXnCTeTPC5kzw/q/w6L9MJQpT4c6U842+J9ZTN6cVkD43AfhNyNgMHcMX6vll0kcqLuhnxs3WcCHJ5gXiEn/AKa+Xh5NC2SSt89dOwB2kdlhrR4RUOnMCWjLY0C2fldWmAHQJnzacDOj92CY/s/SbUMhaYH4srLjf+gprDbacY+umQlwKW6CGfhXbWjZJ4S50bim5fWKSWz8p09Q== 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 SA1PR11MB6846.namprd11.prod.outlook.com (2603:10b6:806:2b0::6) by DS0PR11MB8135.namprd11.prod.outlook.com (2603:10b6:8:155::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6631.41; Sat, 29 Jul 2023 11:36:47 +0000 Received: from SA1PR11MB6846.namprd11.prod.outlook.com ([fe80::6d4:532:8a7c:c801]) by SA1PR11MB6846.namprd11.prod.outlook.com ([fe80::6d4:532:8a7c:c801%3]) with mapi id 15.20.6631.039; Sat, 29 Jul 2023 11:36:46 +0000 From: "Ijaz, Abdul B" To: Bruno Larsen , "gdb-patches@sourceware.org" CC: "JiniSusan.George@amd.com" , "tom@tromey.com" , "eliz@gnu.org" , Nils-Christian Kempke Subject: RE: [PATCH v3 1/4] gdb, dwarf: add support for DW_AT_trampoline in DWARF reader Thread-Topic: [PATCH v3 1/4] gdb, dwarf: add support for DW_AT_trampoline in DWARF reader Thread-Index: AQHZs4HmQB0nmSwSykencExB+wopeK/NbSsAgANEWCA= Date: Sat, 29 Jul 2023 11:36:46 +0000 Message-ID: References: <20230710225643.32280-1-abdul.b.ijaz@intel.com> <20230710225643.32280-2-abdul.b.ijaz@intel.com> <27931c60-cdee-e430-13bf-37cbbcc926aa@redhat.com> In-Reply-To: <27931c60-cdee-e430-13bf-37cbbcc926aa@redhat.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SA1PR11MB6846:EE_|DS0PR11MB8135:EE_ x-ms-office365-filtering-correlation-id: 648bcc4f-2ed5-4130-e061-08db9028174b x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: jfrYasRn5b3EdNYRvtULyYVJPnSm5nf4IL9LYbo1jSSNiFKNw+66jBHDnQxKqFoR7kOSVWt0xBdAay6BWl9v8muRZFqcXC3+x5vkU3rG6tlhhPf+frUdGb4yYJ7ZKiMDTe6oQaNh/VGRY8dpI9C8tPfd19UBTXCwiXirTwAW66aSIToUcmMbO1T/I1i0YX/+sTWbXnuoPxF/6dP0JsFsDHJF9DNQyhmLyVVgteC2hXbsdEpTMlgwCQgasbPCZ3PdJbYMTmeDC0DQQAyt/AK68PnCM2MiDHzDuOOhrr6crpb3+FMz3zJhsyTVbxQ9FVP7b9mcC5bmAyhF4MSfdDYXvovQr1JeOoSfeZ4UojTKz8l+dNxmJ2i2A4fCKH6j3eRtLE2rCivTzoXDkB9DmoYaGCAhsm8HDQrVtEMwxO3FMLfyywB5FmJ8SPMpv0J+2nTLkWWHpga0X6q4mAlS5+eIg+ftcGDMJMl38uedU89HsB6jtClHo9uk0+tSj7Ck4W8vaVRug8AZFEZrAbK5NT+ymw7uniDVt9/+WZuOwoUXC7Sey51UhKoh6PQSkQq7FljMSs1Yfneq3EWYKn6LJWkEQ8GyRCdXYeX6Gbw/YeDXAOUfrsbuJU2nTvucNGHchruC x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SA1PR11MB6846.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(346002)(366004)(136003)(39860400002)(396003)(451199021)(38100700002)(55016003)(122000001)(82960400001)(33656002)(38070700005)(86362001)(9686003)(478600001)(45080400002)(71200400001)(7696005)(107886003)(53546011)(186003)(6506007)(26005)(8676002)(8936002)(5660300002)(52536014)(76116006)(4326008)(66946007)(66556008)(66476007)(2906002)(66446008)(64756008)(110136005)(54906003)(41300700001)(316002)(30864003)(66899021)(83380400001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?cUxZcUNML2FRdzM2TDdzNkhZaFYvSS8vc2JLUjZFUkRwRzBKT3VvTE9jY2wr?= =?utf-8?B?VEtoallDUXNrL3FTRWtaUkFWZGlmTC8yNFBkZS9ra0xXODhVbm10RTk1VSts?= =?utf-8?B?MUFzNE1vbVI2SmVKSXlUZ0llUXdxYSs2OFR0VkJZeSsvMUtXeXdGaWt6dkts?= =?utf-8?B?WThTSmRUdDh6WEhBaVFobW4yOHEwNHV2MUxra25rdzNRa3FKTGV6enBZbzdu?= =?utf-8?B?VFhkQm5VV29tTWVWQTJpakRaRFpUUlpaemIremxiOHNmUkNBYTgxZE9SWnNj?= =?utf-8?B?dG5EeWxlQ1BHaXEyOG9HeW5lL1RsVC81UXFnaFMxaGVrZ0lDSVdCckRwZ0xq?= =?utf-8?B?YUdCUlBnK1ZvUFBRZWlKSVozQXBMdUFnMTlqa016cndIL295NzVjRzQrekdZ?= =?utf-8?B?M3V1WWhFdVdsN2lId3VnRHhxRnV4Tlhub1hiclhsMEZ3M3F1ajJKVGJhTy8x?= =?utf-8?B?dGZoQ1Q5SVhCNG83aisyRmZqbVJ4Tmp6cjdaZmU5VFVKSERJN1BVanY5NTVG?= =?utf-8?B?K0JSeDExVFh5b28ybUZsWW82MkhvQ0h2dXZzaXRxZThkT05KSEdWLzdsaExH?= =?utf-8?B?RmtHMkgreTkzNmVaMHZLcUZqYmFJSW5wVjFDMFdySWw2WjZLWFhVVkxabUN5?= =?utf-8?B?STVBNjBnZCtlS1NCL1ZSNkVBVGE3bVRlV09RaUNvd2gwamYwNllqOExKS29G?= =?utf-8?B?aDZibWwyOEpwbWlhM2RwKzMvMmRkclZWYVF5K2FrUjRtRDlWelE0VnIxT3pG?= =?utf-8?B?bWE0MHVLNWNSaHF3Q3daZ3RVQkxpV09rSHB1NDhLYkFKRytTNzREaFFDOG54?= =?utf-8?B?aGhNTnlhN1hjNW4xa1ZmOXZFYW12V25WeVZxSXFYWVlESEdhaFlRWFVROGxi?= =?utf-8?B?ZE1IV0JvL1I4bHF2YTNLak42VVk0OW5GZFBzMHZWVGpwNmhwWlJQV0JOaFlx?= =?utf-8?B?VC90RmpqUlhJcUxIRUlLeGQ3UVRTQTlad1JubnZYcnNjYUNqeXdVanBkcVhj?= =?utf-8?B?Zy9XaDFPN0FzUlRXZEZSQ0ZIakpHMW5rOUlmdkRvc0h3UmhvOW0xRXhyMkxx?= =?utf-8?B?bGovOE91SlBIaTJBdndFRjc5Nm03N0k3Nkl2MmErdWhxaVp6L1JSMWhVWGs5?= =?utf-8?B?UERSOENUOG9Ud01xVGVBUVBlQXREb0s3a2JpcHFWU2l1d3FzM3B1Q2d4Ukhq?= =?utf-8?B?T0VtR0VIY3dTMjJrdXlLemRuZmJ1T0ZUVlc0a3h3c3ZUMHREc2VsYTVmUlBZ?= =?utf-8?B?RnZGVWl1OEQ3ZEhQMjFXd3VuNlVNR2ZXVHNIcXlZZTg3Ky9TdXltY1VqWTR5?= =?utf-8?B?UUVKNzdaYnE1bDUwN2xlM3FZMGVTYnlEdk1KK0x1em9jYjZ1SG9kNHlDYzRZ?= =?utf-8?B?RkFHem5QMGdHQndhdU9IYW0xTk1EQUZJR0MxQzQxVmlnb1BJN1dEdW9LWi9I?= =?utf-8?B?dHRwckxFRkJRTzlGcmQ5UFB1VEZuaFZUbEFOQy91dk1sZytIVUtRajN1TlJi?= =?utf-8?B?RmdDazdOU3R0d0JUVC9tbHoxdUpVVWNpMEhqYy8vekxia1VwUEZhRUhoR0R1?= =?utf-8?B?MkpZcUpaSkxsdnRENGJybWRVOTFNMC9OaEtRWldrSzkzRElVT0srYWV6Nmdw?= =?utf-8?B?NTU5VkRxOHNlL1ZNYzhobDkxdE1VZXp6anpwb0VXRGdESEJHQWNVSmdIWkVl?= =?utf-8?B?aXlaTDUxY2dvekRvNVRLbW5CZEszT1k5S2MzNzIwUFo2ciswcG1JdEp6eWpm?= =?utf-8?B?aVUvaXgrbkNWMHdZTlphK3o4dDArdGs1Q1dVNmJJdExkK0FuY3F3WFdvWmZO?= =?utf-8?B?K2ZjWWpjWmZyU1BZUjFCaUIwb2ZQSWdCV1h1bWpuMDlxV2FRUEd3Y2pOZ2x1?= =?utf-8?B?dnl6RFU5TU9aYjUybDBnSVcxVkZ5WjRFRDJ5eUtmTk9ybEtleXhqeEh0VHlt?= =?utf-8?B?TWc5MUdXOURhaUpxR1FlQVc3Y0pLc1VZNDhra3pEekxPK01tUWdGZWt2b05H?= =?utf-8?B?enBVN2hld0ZGb3Rsa0YvQkNaR0svV0J3dzJCR2NpZGVOdnl2cGFVejBveXdz?= =?utf-8?B?dVJPTnpSYkVDRDNabitNbGpxSzQydXZISHdKbDZycDloak5sTVNuSVFIaVVl?= =?utf-8?Q?XU6Acw8bvT58elbcKbp+d63K2?= Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SA1PR11MB6846.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 648bcc4f-2ed5-4130-e061-08db9028174b X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Jul 2023 11:36:46.6633 (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: lWE35hUxoR8k3Cr2V4LLz2OCt3tGvirwj9aG2WXhWVBjBSIt1zNHJa4Mr7/t+U5Mjhr/w4w22PHZi0GrINJIEQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR11MB8135 X-OriginatorOrg: intel.com Content-Transfer-Encoding: base64 X-Spam-Status: No, score=-12.7 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_NONE,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: VGhhbmtzIGEgbG90IEJydW5vIGZvciB5b3VyIGZlZWRiYWNrLg0KDQpDYW4geW91IHBsZWFzZSBo YXZlIGEgbG9vayBvbiB0aGUgcmVwbGllcyBpZiBpdHMgZmluZSB3aXRoIHlvdSBvdGhlcndpc2Ug d2lsbCBJIHVwZGF0ZSBhY2NvcmRpbmdseSBpbiBWNCBwYXRjaCBzZXJpZXMuDQoNCjEpDQo+IEFz IHdhcyBtZW50aW9uZWQgaW4gdjEgb2YgdGhpcyBwYXRjaCwgdGhpcyBiaXQgZ2V0cyB0aGUgInJl Z3VsYXIiIG5hbWUgb2YgdGhlIGZ1bmN0aW9uIC4uLg0KWWVzLCB0aGlzIHNob3VsZCBoYXZlIGJl ZW4gZml4ZWQuIFNvbWVob3cgbWlzc2VkIGl0LCB3aWxsIGZpcnN0IHRyeSB0byByZWFkIGxpbmth Z2UgbmFtZSBhbmQgdGhleSByZWd1bGFyLiBNb2RpZmllZCBsb2NhbGx5IHNvIHNob3VsZCBiZSBm aXhlZCBpbiBuZXh0IHNlcmllcy4NCg0KMikNCj4gV2h5IG5vdCBqdXN0IGhhdmUNCg0KPiAgICBU WVBFX0ZVTkNfRkxBR1MgKG5ld190eXBlKSA9IFRZUEVfRlVOQ19GTEFHUyAodHlwZSk7DQpZZXMg dGhpcyBtYWtlIHNlbnNlLCBjaGFuZ2VkIGxvY2FsbHkgdG8gcmVwbGFjZSAyIGxpbmVzIGZvciBy ZXR1cm4gYW5kIHRyYW1wb2xpbmUgdHlwZSB3aXRoIHRoaXMgbGluZSBhbmQgbm93IG9ubHkgbmVl ZCB0byB0ZXN0IHNvIGhvcGVmdWxseSBzaG91bGQgYmUgdXBkYXRlZCBpbiB2NCBzZXJpZXMuDQoN CjMpIA0KPj4gKyAgICBzdHJ1Y3QgdHJhbXBvbGluZV90YXJnZXQgKnNlbGZfdHJhbXBvbGluZV90 YXJnZXQ7DQoNCj5UaGlzIG1lbWJlciBzaG91bGQgaGF2ZSBhIGNvbW1lbnQgZGVzY3JpYmluZyBp dC4NCg0KPkFsc28sIHdoeSBkaWQgeW91IGNhbGwgaXQgc2VsZl90cmFtcG9saW5lX3RhcmdldCBp bnN0ZWFkIG9mIHRyYW1wb2xpbmVfdGFyZ2V0PyBUaGUgb25seSBvdGhlciBtZW1iZXIgcHJlZml4 ZWQgd2l0aCBzZWxmXyBpbiB0aGlzIHN0cnVjdCBpcyBzZWxmX3R5cGUsIGFuZCB0aGF0IGhhcyBp dCBiZWNhdXNlIHdoZW4gYSBtZXRob2Qgd2FudHMgdG8ga25vdyB0aGUgdHlwZSBwb2ludGVkIGF0 IGJ5IHRoZSAic2VsZiIgb3IgInRoaXMiIHZhcmlhYmxlLCBpdCB3aWxsIGNoZWNrIHRoYXQgcG9p bnRlciwgbm90IGR1ZSB0byBzZWxmIHJlZmVyZW5jaW5nIHN0dWZmLCBpZiBJIHVuZGVyc3Rvb2Qg aXQgY29ycmVjdGx5Lg0KDQpJbnRlbnRpb24gYmVoaW5kIHNlbGZfIGlzIG9ubHkgdGhhdCB0aGUg dHJhbXBvbGluZSBjYWxscyBpdHNlbGYgYXJlIGp1c3QgZm9yIGNhbGxpbmcgdG8gdGhlIHRhcmdl dCBmdW5jdGlvbi4gU28gZWFjaCB0cmFtcG9saW5lIGVudHJ5IGlzIGp1c3QgcG9pbnRpbmcgdG8g dGhlIHRhcmdldCBjYWxsLiBOb3Qgc3VyZSBpZiBzZWxmXyogdXNhZ2UgaXMgcmVzdHJpY3RlZCBm b3IgdGhpcyB3aGVyZSBzb3VyY2UgaXMganVzdCByZWZlcmVuY2luZyB0byB0aGUgdGFyZ2V0LiBT byBwbGVhc2UgbGV0IG1lIGtub3cgaWYgYWRkaW5nIGNvbW1lbnQgd2l0aCB0aGlzIGluZm9ybWF0 aW9uIHdpbGwgYmUgc3VmZmljaWVudCBvdGhlcndpc2UgSSB3aWxsIHJlbW92ZSB0aGUgc2VsZl8g IHN1ZmZpeCBmcm9tIHRoZSB2YXJpYWJsZSBuYW1lLg0KDQo0KQ0KPiBBZnRlciBzb21lIHRpbWUg bG9va2luZyBpbnRvIGhvdyBHREIgY2FsY3VsYXRlcyBuYW1lcyBhbmQgd2hhdCBub3QsIEkgZG9u J3QgdGhpbmsgY2FsbGluZyB0aGlzICJwaHlzbmFtZSIgaXMgYSBnb29kIGlkZWEsIEkgdGhpbmsg aXQgd291bGQgYmUgYmV0dGVyIHRvIGNhbGwgaXQgVFJBTVBPTElORV9UQVJHRVRfTUFOR0xFRF9O QU1FLg0KDQo+IE15IHJlYXNvbmluZyBmb3IgdGhhdCBpcyB0aGF0IHBoeXNuYW1lIGlzIG5vdCBz b21lIHdlbGwgZGVmaW5lZCB0aGluZywgaXQgaXMgYSBuYW1lIHRoYXQgYSBHREIgZGV2ZWxvcGVy IGNhbWUgdXAgd2l0aCB0byBjYWxsIHdoYXQgaGFwcGVucyB3aGVuIEdEQiBuZWVkcyB0byBjYWxj dWxhdGUgbWFuZ2xlZCBuYW1lcyBvdXJzZWx2ZXMgYmVjYXVzZSB0aGUgY29tcGlsZXIgZGlkbid0 IGFkZCBhIGxpbmthZ2UgbmFtZSwgYXMgZmFyIGFzIEkgdW5kZXJzdG9vZCBpdC4gU2luY2UgdGhl IHN0cnVjdCB0cmFtcG9saW5lX3RhcmdldCBkb2Vzbid0IGNhcmUgYWJvdXQgaG93IGEgbWFuZ2xl ZCBuYW1lIHdhcyBjYWxjdWxhdGVkLCBhbmQgbWFuZ2xlZCBuYW1lIGlzIGEgd2VsbCBkZWZpbmVk IHRoaW5nIHdoaWxlIHBoeXNuYW1lIGlzIG5vdCwgSSB0aGluayBpdHMgYmV0dGVyIHRvIHVzZSB0 aGUgbGF0dGVyLg0KDQpTaW5jZSBhcyBwZXIgKDEpIGNvbW1lbnQgYWJvdmUgd2UgYXJlIGZpcnN0 IGdvaW5nIHRvIHJlYWQgbWFuZ2xlZCBhbmQgaWYgbm90IHRoZW4gZGVtYW5nbGVkIG5hbWUuIFNv IEkgd291bGQgdGhlbiBqdXN0IHByZWZlciB0byBjYWxsIGl0IFRSQU1QT0xJTkVfVEFSR0VUX05B TUUsIGhvcGVmdWxseSBpdCB3b3VsZCBiZSBmaW5lIHdpdGggeW91Lg0KDQo1KQ0KPiBzL0FuL0EN Cj4+ICsgICAgVFJBTVBPTElORV9UQVJHRVRfRkxBRywNCldpbGwgYmUgZml4ZWQgaW4gVjQgc2Vy aWVzLg0KDQo2KSANCj4gVGhlIHN0cnVjdCBhbmQgYWxsIG1ldGhvZHMgaW4gaXQgc2hvdWxkIGFs c28gaGF2ZSBjb21tZW50cy4NCj4+ICtzdHJ1Y3QgdHJhbXBvbGluZV90YXJnZXQNCldpbGwgYWRk IGluIFY0IHNlcmllcy4NCg0KNykgDQo+IE1pbm9yIG5pdCwgYnV0IEknZCBtb3ZlIHRoaXMgdXAg YWJvdmUgdHlwZV90YWlsX2NhbGxfbGlzdCwganVzdCB0byBrZWVwIGFsbCBmdW5jX2ZsYWcgc3R1 ZmYgdG9nZXRoZXIuDQpXaWxsIGJlIHVwZGF0ZWQgYWNjb3JkaW5nbHkgaW4gVjQgc2VyaWVzLg0K DQpUaGFua3MgJiBCZXN0IFJlZ2FyZHMsDQpBYmR1bCBCYXNpdA0KDQotLS0tLU9yaWdpbmFsIE1l c3NhZ2UtLS0tLQ0KRnJvbTogQnJ1bm8gTGFyc2VuIDxibGFyc2VuQHJlZGhhdC5jb20+IA0KU2Vu dDogVGh1cnNkYXksIEp1bHkgMjcsIDIwMjMgMTE6MTAgQU0NClRvOiBJamF6LCBBYmR1bCBCIDxh YmR1bC5iLmlqYXpAaW50ZWwuY29tPjsgZ2RiLXBhdGNoZXNAc291cmNld2FyZS5vcmcNCkNjOiBK aW5pU3VzYW4uR2VvcmdlQGFtZC5jb207IHRvbUB0cm9tZXkuY29tOyBlbGl6QGdudS5vcmc7IE5p bHMtQ2hyaXN0aWFuIEtlbXBrZSA8bmlscy1jaHJpc3RpYW4ua2VtcGtlQGludGVsLmNvbT4NClN1 YmplY3Q6IFJlOiBbUEFUQ0ggdjMgMS80XSBnZGIsIGR3YXJmOiBhZGQgc3VwcG9ydCBmb3IgRFdf QVRfdHJhbXBvbGluZSBpbiBEV0FSRiByZWFkZXINCg0KT24gMTEvMDcvMjAyMyAwMDo1NiwgQWJk dWwgQmFzaXQgSWpheiB2aWEgR2RiLXBhdGNoZXMgd3JvdGU6DQo+IEZyb206IE5pbHMtQ2hyaXN0 aWFuIEtlbXBrZSA8bmlscy1jaHJpc3RpYW4ua2VtcGtlQGludGVsLmNvbT4NCj4NCj4gRFdfQVRf dHJhbXBvbGluZSBjYW4gYmUgdXNlZCB0byBkZXNjcmliZSBjb21waWxlciBnZW5lcmF0ZWQgZnVu Y3Rpb25zIA0KPiB0aGF0IHNlcnZlIHNvbWUgaW50ZXJtZWRpYXJ5IHB1cnBvc2Ugb24gbWFraW5n IGEgY2FsbCB0byBhbm90aGVyIA0KPiBmdW5jdGlvbi4gIEEgY29tcGlsZXIgY2FuIGVtaXQgdGhp cyB0YWcgaW4gb3JkZXIgdG8gaGVscCBhIGRlYnVnZ2VyIA0KPiBoaWRlIHRoZSB0cmFtcG9saW5l cyBmcm9tIGEgdXNlci4NCj4NCj4gVGhlIGF0dHJpYnV0ZSBpcyBvbmx5IGFwcGxpY2FibGUgdG8g RFdfVEFHX3N1YnJvdXRpbmUgYW5kIA0KPiBEV19UQUdfaW5saW5lZF9zdWJyb3V0aW5lIHRhZ3Mu ICBJdCBjb250YWlucyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgDQo+IHRyYW1wb2xpbmUgdGFyZ2V0 IGVpdGhlciBhcyBhIHJlZmVyZW5jZSB0byBpdHMgRElFLCBhcyBpdHMgYWRkcmVzcyBvciANCj4g aXRzIG5hbWUuICBEV19BVF90cmFtcG9saW5lIGNhbiBhbHNvIGJlIGEgZmxhZyBpbmRpY2F0aW5n IHRoYXQgdGhlIERJRSANCj4gaXMgYSB0cmFtcG9saW5lIG9yIG5vdCB3aXRob3V0IHNwZWNpZnlp bmcgdGhlIHRhcmdldCAoZS5nLiBpZiBpdCBpcyANCj4gdW5rbm93bikuDQo+DQo+IFRoaXMgcGF0 Y2ggYWRkcyBzdXBwb3J0IHRvIEdEQiBmb3IgcmVhZGluZyB0aGUgRFdfQVRfdHJhbXBvbGluZSAN Cj4gYXR0cmlidXRlLiAgSXQgc3RvcmVzIHRoZSBhdHRyaWJ1dGUgYW5kIGl0cyB2YWx1ZSBpbiB0 aGUgdHlwZV9zcGVjaWZpYyANCj4gcGFydCBvZiBhIEdEQiB0eXBlLiAgVGhpcyBwYXRjaCBpcyBp bXBsZW1lbnRlZCBpbiBwcmVwYXJhdGlvbiBvZiB0aGUgDQo+IGZvbGxvd2luZyBwYXRjaGVzLCB3 aGljaCB3aWxsIGFkZCBhIG1lY2hhbmlzbSB0byBoaWRlIERXX0FUX3RyYW1wb2xpbmUgDQo+IHN1 YnJvdXRpbmVzIGZyb20gdGhlIHVzZXIuDQoNClNvcnJ5IGZvciBqdW1waW5nIGluIGxhdGUgZm9y IHRoZSByZXZpZXcuIElmIEkgc2F5IHNvbWV0aGluZyB0aGF0J3MgYmVlbiBwcmV2aW91c2x5IGFn cmVlZCB1cG9uLCBmZWVsIGZyZWUgdG8gaWdub3JlIG1lIDopDQoNClRoYW5rcyBmb3Igd29ya2lu ZyBvbiB0aGlzISBTb21lIGNvbW1lbnRzIGFuZCBuaXRzIGlubGluZWQuDQoNCj4gMjAyMy0wNy0x MCBOaWxzLUNocmlzdGlhbiBLZW1wa2UgPG5pbHMtY2hyaXN0aWFuLmtlbXBrZUBpbnRlbC5jb20+ DQo+IC0tLQ0KPiAgIGdkYi9kd2FyZjIvcmVhZC5jIHwgIDQ1ICsrKysrKysrKysrKysrKysrKyst DQo+ICAgZ2RiL2dkYnR5cGVzLmMgICAgfCAgMzUgKysrKysrKysrKysrKysrLQ0KPiAgIGdkYi9n ZGJ0eXBlcy5oICAgIHwgMTAzICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKystLS0NCj4gICAzIGZpbGVzIGNoYW5nZWQsIDE3NiBpbnNlcnRpb25zKCspLCA3IGRlbGV0 aW9ucygtKQ0KPg0KPiBkaWZmIC0tZ2l0IGEvZ2RiL2R3YXJmMi9yZWFkLmMgYi9nZGIvZHdhcmYy L3JlYWQuYyBpbmRleCANCj4gMzUwOGYyYzI5ZWUuLjFjZmE4MTc4ZDk0IDEwMDY0NA0KPiAtLS0g YS9nZGIvZHdhcmYyL3JlYWQuYw0KPiArKysgYi9nZGIvZHdhcmYyL3JlYWQuYw0KPiBAQCAtMTQ2 NTcsNiArMTQ2NTcsNDkgQEAgcmVhZF9zdWJyb3V0aW5lX3R5cGUgKHN0cnVjdCBkaWVfaW5mbyAq ZGllLCBzdHJ1Y3QgZHdhcmYyX2N1ICpjdSkNCj4gICAgIGlmIChwcm90b3R5cGVkX2Z1bmN0aW9u X3AgKGRpZSwgY3UpKQ0KPiAgICAgICBmdHlwZS0+c2V0X2lzX3Byb3RvdHlwZWQgKHRydWUpOw0K PiAgIA0KPiArICAvKiBJZiB0aGlzIGlzIGEgdHJhbXBvbGluZSBmdW5jdGlvbiBzdG9yZSBpdCBh bmQgaXRzIHRhcmdldCBoZXJlLiAgDQo+ICsqLw0KPiArICBhdHRyID0gZHdhcmYyX2F0dHIgKGRp ZSwgRFdfQVRfdHJhbXBvbGluZSwgY3UpOw0KPiArICBpZiAoYXR0ciAhPSBudWxscHRyKQ0KPiAr ICAgIHsNCj4gKyAgICAgIFRZUEVfRlVOQ19GTEFHUyAoZnR5cGUpIHw9IEZVTkNfVFlQRV9UUkFN UE9MSU5FOw0KPiArICAgICAgVFlQRV9UUkFNUE9MSU5FX1RBUkdFVCAoZnR5cGUpDQo+ICsJPSAo dHJhbXBvbGluZV90YXJnZXQgKikgVFlQRV9aQUxMT0MgKGZ0eXBlLA0KPiArCQkJCQkgICAgIHNp emVvZiAodHJhbXBvbGluZV90YXJnZXQpKTsNCj4gKw0KPiArICAgICAgLyogQSBEV19BVF90cmFt cG9saW5lIGNhbiBiZSBlaXRoZXIgYW4gYWRkcmVzcywgYSBmbGFnLCBhIHJlZmVyZW5jZSBvciBh DQo+ICsJIHN0cmluZy4gICovDQo+ICsgICAgICBpZiAoYXR0ci0+Zm9ybV9pc19zdHJpbmcgKCkp DQo+ICsJVFlQRV9UUkFNUE9MSU5FX1RBUkdFVCAoZnR5cGUpLT5zZXRfdGFyZ2V0X3BoeXNuYW1l DQo+ICsJICAoYXR0ci0+YXNfc3RyaW5nICgpKTsNCj4gKyAgICAgIGVsc2UgaWYgKGF0dHItPmZv cm1faXNfcmVmICgpKQ0KPiArCXsNCj4gKwkgIGRpZV9pbmZvICp0YXJnZXRfZGllOw0KPiArCSAg ZHdhcmYyX2N1ICp0YXJnZXRfY3UgPSBjdTsNCj4gKw0KPiArCSAgdGFyZ2V0X2RpZSA9IGZvbGxv d19kaWVfcmVmIChkaWUsIGF0dHIsICZ0YXJnZXRfY3UpOw0KPiArCSAgY29uc3QgY2hhciAqdGFy Z2V0X25hbWUgPSBkd2FyZjJfbmFtZSAodGFyZ2V0X2RpZSwgdGFyZ2V0X2N1KTsNCkFzIHdhcyBt ZW50aW9uZWQgaW4gdjEgb2YgdGhpcyBwYXRjaCwgdGhpcyBiaXQgZ2V0cyB0aGUgInJlZ3VsYXIi IG5hbWUgb2YgdGhlIGZ1bmN0aW9uLiBUaGlzIGNvdWxkIGJlIGEgcHJvYmxlbSBpZiB0aGVyZSBh cmUgMiBmdW5jdGlvbnMgd2l0aCB0aGUgc2FtZSBpbiBkaWZmZXJlbnQgY29udGV4dHMgKHNheSBp biBhbmQgb3V0IG9mIGEgbmFtZXNwYWNlKS7CoCBJIHdvdWxkIHN1Z2dlc3QgdGhhdCB5b3UgZmly c3QgYXR0ZW1wdCB0byB0YWtlIHRoZSBsaW5rYWdlX25hbWUgYW5kIG9ubHkgaWYgdGhhdCBkb2Vz bid0IGV4aXN0IGRvIHlvdSB0YWtlIHRoZSBuYW1lIG9mIHRoZSBmdW5jdGlvbi4gVGhpcyB3YXks IGlmIEdEQiBtaXNpZGVudGlmaWVzIGEgZnVuY3Rpb24gaXQgd291bGQgcHJvYmFibHkgYmUgYSBj b21waWxlciBlcnJvciwgbm90IGFkZGluZyB0aGUgbGlua2FnZSBuYW1lLg0KPiArCSAgaWYgKHRh cmdldF9uYW1lID09IG51bGxwdHIpDQo+ICsJICAgIHsNCj4gKwkgICAgICBjb21wbGFpbnQgKF8o IkRXX0FUX3RyYW1wb2xpbmUgdGFyZ2V0IERJRSBoYXMgbm8gbmFtZSBmb3IiDQo+ICsJCQkgInJl ZmVyZW5jaW5nIERJRSAlcyBbaW4gbW9kdWxlICVzXSIpLA0KPiArCQkJIHNlY3Rfb2Zmc2V0X3N0 ciAoZGllLT5zZWN0X29mZiksDQo+ICsJCQkgb2JqZmlsZV9uYW1lIChvYmpmaWxlKSk7DQo+ICsJ ICAgIH0NCj4gKwkgIFRZUEVfVFJBTVBPTElORV9UQVJHRVQgKGZ0eXBlKS0+c2V0X3RhcmdldF9w aHlzbmFtZSAodGFyZ2V0X25hbWUpOw0KPiArCX0NCj4gKyAgICAgIGVsc2UgaWYgKGF0dHItPmZv cm1faXNfdW5zaWduZWQgKCkpDQo+ICsJVFlQRV9UUkFNUE9MSU5FX1RBUkdFVCAoZnR5cGUpLT5z ZXRfdGFyZ2V0X2ZsYWcgKGF0dHItPmFzX2Jvb2xlYW4gKCkpOw0KPiArICAgICAgZWxzZQ0KPiAr CXsNCj4gKwkgIHVucmVsb2NhdGVkX2FkZHIgdGFyZ2V0X2FkZHJfcmVsb2MgPSBhdHRyLT5hc19h ZGRyZXNzICgpOw0KPiArCSAgQ09SRV9BRERSIHRhcmdldF9hZGRyDQo+ICsJICAgID0gY3UtPnBl cl9vYmpmaWxlLT5yZWxvY2F0ZSAodGFyZ2V0X2FkZHJfcmVsb2MpOw0KPiArCSAgdGFyZ2V0X2Fk ZHIgPSBnZGJhcmNoX2FkanVzdF9kd2FyZjJfYWRkciAob2JqZmlsZS0+YXJjaCAoKSwNCj4gKwkJ CQkJCSAgICB0YXJnZXRfYWRkcik7DQo+ICsJICBUWVBFX1RSQU1QT0xJTkVfVEFSR0VUIChmdHlw ZSktPnNldF90YXJnZXRfcGh5c2FkZHIgKHRhcmdldF9hZGRyKTsNCj4gKwl9DQo+ICsgICAgfQ0K PiArDQo+ICAgICAvKiBTdG9yZSB0aGUgY2FsbGluZyBjb252ZW50aW9uIGluIHRoZSB0eXBlIGlm IGl0J3MgYXZhaWxhYmxlIGluDQo+ICAgICAgICB0aGUgc3Vicm91dGluZSBkaWUuICBPdGhlcndp c2Ugc2V0IHRoZSBjYWxsaW5nIGNvbnZlbnRpb24gdG8NCj4gICAgICAgIHRoZSBkZWZhdWx0IHZh bHVlIERXX0NDX25vcm1hbC4gICovIEBAIC0xNDY3NCw3ICsxNDcxNyw3IEBAIA0KPiByZWFkX3N1 YnJvdXRpbmVfdHlwZSAoc3RydWN0IGRpZV9pbmZvICpkaWUsIHN0cnVjdCBkd2FyZjJfY3UgKmN1 KQ0KPiAgICAgICAgaWYgdGhlIERXQVJGIHByb2R1Y2VyIHNldCB0aGF0IGluZm9ybWF0aW9uLiAg Ki8NCj4gICAgIGF0dHIgPSBkd2FyZjJfYXR0ciAoZGllLCBEV19BVF9ub3JldHVybiwgY3UpOw0K PiAgICAgaWYgKGF0dHIgJiYgYXR0ci0+YXNfYm9vbGVhbiAoKSkNCj4gLSAgICBUWVBFX05PX1JF VFVSTiAoZnR5cGUpID0gMTsNCj4gKyAgICBUWVBFX0ZVTkNfRkxBR1MgKGZ0eXBlKSB8PSBGVU5D X1RZUEVfTk9fUkVUVVJOOw0KPiAgIA0KPiAgICAgLyogV2UgbmVlZCB0byBhZGQgdGhlIHN1YnJv dXRpbmUgdHlwZSB0byB0aGUgZGllIGltbWVkaWF0ZWx5IHNvDQo+ICAgICAgICB3ZSBkb24ndCBp bmZpbml0ZWx5IHJlY3Vyc2Ugd2hlbiBkZWFsaW5nIHdpdGggcGFyYW1ldGVycyBkaWZmIA0KPiAt LWdpdCBhL2dkYi9nZGJ0eXBlcy5jIGIvZ2RiL2dkYnR5cGVzLmMgaW5kZXggYzUyNzI5NzljYjku LjczNTUzMTdmN2RiIA0KPiAxMDA2NDQNCj4gLS0tIGEvZ2RiL2dkYnR5cGVzLmMNCj4gKysrIGIv Z2RiL2dkYnR5cGVzLmMNCj4gQEAgLTUwOTEsNiArNTA5MSwzMyBAQCBwcmludF9maXhlZF9wb2lu dF90eXBlX2luZm8gKHN0cnVjdCB0eXBlICp0eXBlLCBpbnQgc3BhY2VzKQ0KPiAgIAkgICAgICB0 eXBlLT5maXhlZF9wb2ludF9zY2FsaW5nX2ZhY3RvciAoKS5zdHIgKCkuY19zdHIgKCkpOw0KPiAg IH0NCj4gICANCj4gKy8qIFByaW50IHRoZSBjb250ZW50cyBvZiB0aGUgVFlQRSdzIHNlbGZfdHJh bXBvbGluZV90YXJnZXQsIGFzc3VtaW5nIHRoYXQgaXRzDQo+ICsgICB0eXBlLXNwZWNpZmljIGtp bmQgaXMgVFlQRV9TUEVDSUZJQ19GVU5DIGFuZCBpc190cmFtcG9saW5lIGlzIG5vdCANCj4gKzAu ICAqLyBzdGF0aWMgdm9pZCBwcmludF90cmFtcG9saW5lX3RhcmdldF9pbmZvIChzdHJ1Y3QgdHlw ZSAqdHlwZSwgDQo+ICtpbnQgc3BhY2VzKSB7DQo+ICsgIHN3aXRjaCAoVFlQRV9UUkFNUE9MSU5F X1RBUkdFVCAodHlwZSktPnRhcmdldF9raW5kICgpKQ0KPiArICAgIHsNCj4gKyAgICBjYXNlIFRS QU1QT0xJTkVfVEFSR0VUX1BIWVNBRERSOg0KPiArICAgICAgZ2RiX3ByaW50ZiAoIiUqc3Rhcmdl dCBwaHlzYWRkcjogMHglc1xuIiwgc3BhY2VzICsgMiwgIiIsDQo+ICsJCSAgcHJpbnRfY29yZV9h ZGRyZXNzICh0eXBlLT5hcmNoX293bmVyICgpLA0KPiArCQkJCSAgICAgIFRZUEVfVFJBTVBPTElO RV9UQVJHRVQgKHR5cGUpDQo+ICsJCQkJICAgICAgLT50YXJnZXRfcGh5c2FkZHIgKCkpKTsNCj4g KyAgICAgIGJyZWFrOw0KPiArICAgIGNhc2UgVFJBTVBPTElORV9UQVJHRVRfUEhZU05BTUU6DQo+ ICsgICAgICBnZGJfcHJpbnRmICgiJSpzdGFyZ2V0IHBoeXNuYW1lOiAlc1xuIiwgc3BhY2VzICsg MiwgIiIsDQo+ICsJCSAgVFlQRV9UUkFNUE9MSU5FX1RBUkdFVCAodHlwZSktPnRhcmdldF9waHlz bmFtZSAoKSk7DQo+ICsgICAgICBicmVhazsNCj4gKyAgICBjYXNlIFRSQU1QT0xJTkVfVEFSR0VU X0ZMQUc6DQo+ICsgICAgICBnZGJfcHJpbnRmICgiJSpzdGFyZ2V0IGZsYWc6ICVkXG4iLCBzcGFj ZXMgKyAyLCAiIiwNCj4gKwkJICBUWVBFX1RSQU1QT0xJTkVfVEFSR0VUICh0eXBlKS0+dGFyZ2V0 X2ZsYWcgKCkpOw0KPiArICAgICAgYnJlYWs7DQo+ICsgICAgZGVmYXVsdDoNCj4gKyAgICAgIGdk Yl9hc3NlcnRfbm90X3JlYWNoZWQgKCJ1bmhhbmRsZWQgdHJhbXBvbGluZSB0YXJnZXQga2luZCIp Ow0KPiArICAgICAgYnJlYWs7DQo+ICsgICAgfQ0KPiArfQ0KPiArDQo+ICAgc3RhdGljIHN0cnVj dCBvYnN0YWNrIGRvbnRfcHJpbnRfdHlwZV9vYnN0YWNrOw0KPiAgIA0KPiAgIC8qIFByaW50IHRo ZSBkeW5hbWljX3Byb3AgUFJPUC4gICovDQo+IEBAIC01NDE3LDYgKzU0NDQsMTAgQEAgcmVjdXJz aXZlX2R1bXBfdHlwZSAoc3RydWN0IHR5cGUgKnR5cGUsIGludCBzcGFjZXMpDQo+ICAgCWdkYl9w cmludGYgKCIlKnNjYWxsaW5nX2NvbnZlbnRpb24gJWRcbiIsIHNwYWNlcywgIiIsDQo+ICAgCQkg ICAgVFlQRV9DQUxMSU5HX0NPTlZFTlRJT04gKHR5cGUpKTsNCj4gICAJLyogdGFpbF9jYWxsX2xp c3QgaXMgbm90IHByaW50ZWQuICAqLw0KPiArCWdkYl9wcmludGYgKCIlKnNmdW5jX3R5cGVfZmxh Z3MgJXVcbiIsIHNwYWNlcywgIiIsDQo+ICsJCSAgICAodW5zaWduZWQgaW50KSBUWVBFX0ZVTkNf RkxBR1MgKHR5cGUpKTsNCj4gKwlpZiAoVFlQRV9JU19UUkFNUE9MSU5FICh0eXBlKSkNCj4gKwkg IHByaW50X3RyYW1wb2xpbmVfdGFyZ2V0X2luZm8gKHR5cGUsIHNwYWNlcyk7DQo+ICAgCWJyZWFr Ow0KPiAgIA0KPiAgICAgICAgIGNhc2UgVFlQRV9TUEVDSUZJQ19TRUxGX1RZUEU6DQo+IEBAIC01 NjMzLDggKzU2NjQsMTAgQEAgY29weV90eXBlX3JlY3Vyc2l2ZSAoc3RydWN0IHR5cGUgKnR5cGUs IGh0YWJfdCBjb3BpZWRfdHlwZXMpDQo+ICAgICAgIGNhc2UgVFlQRV9TUEVDSUZJQ19GVU5DOg0K PiAgICAgICAgIElOSVRfRlVOQ19TUEVDSUZJQyAobmV3X3R5cGUpOw0KPiAgICAgICAgIFRZUEVf Q0FMTElOR19DT05WRU5USU9OIChuZXdfdHlwZSkgPSBUWVBFX0NBTExJTkdfQ09OVkVOVElPTiAo dHlwZSk7DQo+IC0gICAgICBUWVBFX05PX1JFVFVSTiAobmV3X3R5cGUpID0gVFlQRV9OT19SRVRV Uk4gKHR5cGUpOw0KPiArICAgICAgVFlQRV9GVU5DX0ZMQUdTIChuZXdfdHlwZSkgfD0gVFlQRV9O T19SRVRVUk4gKHR5cGUpOw0KPiAgICAgICAgIFRZUEVfVEFJTF9DQUxMX0xJU1QgKG5ld190eXBl KSA9IE5VTEw7DQo+ICsgICAgICBUWVBFX0ZVTkNfRkxBR1MgKG5ld190eXBlKSB8PSBUWVBFX0lT X1RSQU1QT0xJTkUgKHR5cGUpOw0KDQpXaHkgbm90IGp1c3QgaGF2ZQ0KDQogwqDCoCBUWVBFX0ZV TkNfRkxBR1MgKG5ld190eXBlKSA9IFRZUEVfRlVOQ19GTEFHUyAodHlwZSk7DQoNCj8NCg0KPiAr ICAgICAgVFlQRV9UUkFNUE9MSU5FX1RBUkdFVCAobmV3X3R5cGUpID0gVFlQRV9UUkFNUE9MSU5F X1RBUkdFVCANCj4gKyAodHlwZSk7DQo+ICAgICAgICAgYnJlYWs7DQo+ICAgICAgIGNhc2UgVFlQ RV9TUEVDSUZJQ19GTE9BVEZPUk1BVDoNCj4gICAgICAgICBUWVBFX0ZMT0FURk9STUFUIChuZXdf dHlwZSkgPSBUWVBFX0ZMT0FURk9STUFUICh0eXBlKTsgZGlmZiANCj4gLS1naXQgYS9nZGIvZ2Ri dHlwZXMuaCBiL2dkYi9nZGJ0eXBlcy5oIGluZGV4IGFlZGFmNTNjZDVkLi5hMTc4OTIyM2NkNSAN Cj4gMTAwNjQ0DQo+IC0tLSBhL2dkYi9nZGJ0eXBlcy5oDQo+ICsrKyBiL2dkYi9nZGJ0eXBlcy5o DQo+IEBAIC0xMDYsNiArMTA2LDIxIEBAIGVudW0gdHlwZV9pbnN0YW5jZV9mbGFnX3ZhbHVlIDog dW5zaWduZWQNCj4gICANCj4gICBERUZfRU5VTV9GTEFHU19UWVBFIChlbnVtIHR5cGVfaW5zdGFu Y2VfZmxhZ192YWx1ZSwgDQo+IHR5cGVfaW5zdGFuY2VfZmxhZ3MpOw0KPiAgIA0KPiArLyogKiBE ZWZpbmUgZmxhZ3MgZm9yIGZ1bmN0aW9uIHR5cGVzLiAgKi8gZW51bSBmdW5jX3R5cGVfZmxhZ192 YWx1ZSA6IA0KPiArdW5zaWduZWQgew0KPiArICAvKiAqIEZsYWcgaW5kaWNhdGVzLCB3aGV0aGVy IHRoaXMgZnVuY3Rpb24gbm9ybWFsbHkgcmV0dXJucyB0byBpdHMNCj4gKyAgICAgY2FsbGVyLiAg SXQgaXMgc2V0IGZyb20gdGhlIERXX0FUX25vcmV0dXJuIGF0dHJpYnV0ZSBpZiBzZXQgb24NCj4g KyAgICAgdGhlIERXX1RBR19zdWJwcm9ncmFtLiAgKi8NCj4gKyAgRlVOQ19UWVBFX05PX1JFVFVS TiA9ICgxIDw8IDApLA0KPiArDQo+ICsgIC8qICogRmxhZyBpcyB1c2VkIGZvciBmdW5jdGlvbnMg bWFya2VkIHdpdGggRFdfQVRfdHJhbXBvbGluZS4gIFRoZXNlDQo+ICsgICAgIGFyZSBjb21waWxl ciBnZW5lcmF0ZWQgd3JhcHBlcnMgdGhhdCBzaG91bGQgYmUgaGlkZGVuIGZyb20gdGhlIA0KPiAr dXNlci4gICovDQo+ICsgIEZVTkNfVFlQRV9UUkFNUE9MSU5FID0gKDEgPDwgMSkNCj4gK307DQo+ ICsNCj4gK0RFRl9FTlVNX0ZMQUdTX1RZUEUgKGVudW0gZnVuY190eXBlX2ZsYWdfdmFsdWUsIGZ1 bmNfdHlwZV9mbGFncyk7DQo+ICsNCj4gICAvKiAqIE5vdCB0ZXh0dWFsLiAgQnkgZGVmYXVsdCwg R0RCIHRyZWF0cyBhbGwgc2luZ2xlIGJ5dGUgaW50ZWdlcnMgYXMNCj4gICAgICBjaGFyYWN0ZXJz IChvciBlbGVtZW50cyBvZiBzdHJpbmdzKSB1bmxlc3MgdGhpcyBmbGFnIGlzIHNldC4gICovDQo+ ICAgDQo+IEBAIC0xNzMwLDExICsxNzQ1LDkgQEAgc3RydWN0IGZ1bmNfdHlwZQ0KPiAgIA0KPiAg ICAgICBFTlVNX0JJVEZJRUxEIChkd2FyZl9jYWxsaW5nX2NvbnZlbnRpb24pIGNhbGxpbmdfY29u dmVudGlvbiA6IDg7DQo+ICAgDQo+IC0gICAgLyogKiBXaGV0aGVyIHRoaXMgZnVuY3Rpb24gbm9y bWFsbHkgcmV0dXJucyB0byBpdHMgY2FsbGVyLiAgSXQgaXMNCj4gLSAgICAgICBzZXQgZnJvbSB0 aGUgRFdfQVRfbm9yZXR1cm4gYXR0cmlidXRlIGlmIHNldCBvbiB0aGUNCj4gLSAgICAgICBEV19U QUdfc3VicHJvZ3JhbS4gICovDQo+ICsgICAgLyogKiBGb3Igc3RvcmluZyBmdW5jdGlvbiB0eXBl cyBkZWZpbmVkIGluIGV1bm0gDQo+ICsgZnVuY190eXBlX2ZsYWdfdmFsdWUuICAqLw0KPiAgIA0K PiAtICAgIHVuc2lnbmVkIGludCBpc19ub3JldHVybiA6IDE7DQo+ICsgICAgZnVuY190eXBlX2Zs YWdzIGZsYWdzOw0KPiAgIA0KPiAgICAgICAvKiAqIE9ubHkgdGhvc2UgRFdfVEFHX2NhbGxfc2l0 ZSdzIGluIHRoaXMgZnVuY3Rpb24gdGhhdCBoYXZlDQo+ICAgICAgICAgIERXX0FUX2NhbGxfdGFp bF9jYWxsIHNldCBhcmUgbGlua2VkIGluIHRoaXMgbGlzdC4gIEZ1bmN0aW9uIA0KPiBAQCAtMTc0 OSw2ICsxNzYyLDc4IEBAIHN0cnVjdCBmdW5jX3R5cGUNCj4gICAgICAgICAgY29udGFpbnMgdGhl IG1ldGhvZC4gICovDQo+ICAgDQo+ICAgICAgIHN0cnVjdCB0eXBlICpzZWxmX3R5cGU7DQo+ICsN Cj4gKyAgICBzdHJ1Y3QgdHJhbXBvbGluZV90YXJnZXQgKnNlbGZfdHJhbXBvbGluZV90YXJnZXQ7 DQoNClRoaXMgbWVtYmVyIHNob3VsZCBoYXZlIGEgY29tbWVudCBkZXNjcmliaW5nIGl0Lg0KDQpB bHNvLCB3aHkgZGlkIHlvdSBjYWxsIGl0IHNlbGZfdHJhbXBvbGluZV90YXJnZXQgaW5zdGVhZCBv ZiB0cmFtcG9saW5lX3RhcmdldD8gVGhlIG9ubHkgb3RoZXIgbWVtYmVyIHByZWZpeGVkIHdpdGgg c2VsZl8gaW4gdGhpcyBzdHJ1Y3QgaXMgc2VsZl90eXBlLCBhbmQgdGhhdCBoYXMgaXQgYmVjYXVz ZSB3aGVuIGEgbWV0aG9kIHdhbnRzIHRvIGtub3cgdGhlIHR5cGUgcG9pbnRlZCBhdCBieSB0aGUg InNlbGYiIG9yICJ0aGlzIiB2YXJpYWJsZSwgaXQgd2lsbCBjaGVjayB0aGF0IHBvaW50ZXIsIG5v dCBkdWUgdG8gc2VsZiByZWZlcmVuY2luZyBzdHVmZiwgaWYgSSB1bmRlcnN0b29kIGl0IGNvcnJl Y3RseS4NCg0KPiArICB9Ow0KPiArDQo+ICsvKiBUaGUga2luZCBvZiBsb2NhdGlvbiBoZWxkIGJ5 IHRoaXMgY2FsbCBzaXRlIHRhcmdldC4gICovIGVudW0gDQo+ICt0cmFtcG9saW5lX3RhcmdldF9r aW5kDQo+ICsgIHsNCj4gKyAgICAvKiBBbiBhZGRyZXNzLiAgKi8NCj4gKyAgICBUUkFNUE9MSU5F X1RBUkdFVF9QSFlTQUREUiwNCj4gKyAgICAvKiBBIChtYW5nbGVkKSBuYW1lLiAgKi8NCj4gKyAg ICBUUkFNUE9MSU5FX1RBUkdFVF9QSFlTTkFNRSwNCg0KQWZ0ZXIgc29tZSB0aW1lIGxvb2tpbmcg aW50byBob3cgR0RCIGNhbGN1bGF0ZXMgbmFtZXMgYW5kIHdoYXQgbm90LCBJIGRvbid0IHRoaW5r IGNhbGxpbmcgdGhpcyAicGh5c25hbWUiIGlzIGEgZ29vZCBpZGVhLCBJIHRoaW5rIGl0IHdvdWxk IGJlIGJldHRlciB0byBjYWxsIGl0IFRSQU1QT0xJTkVfVEFSR0VUX01BTkdMRURfTkFNRS4NCg0K TXkgcmVhc29uaW5nIGZvciB0aGF0IGlzIHRoYXQgcGh5c25hbWUgaXMgbm90IHNvbWUgd2VsbCBk ZWZpbmVkIHRoaW5nLCBpdCBpcyBhIG5hbWUgdGhhdCBhIEdEQiBkZXZlbG9wZXIgY2FtZSB1cCB3 aXRoIHRvIGNhbGwgd2hhdCBoYXBwZW5zIHdoZW4gR0RCIG5lZWRzIHRvIGNhbGN1bGF0ZSBtYW5n bGVkIG5hbWVzIG91cnNlbHZlcyBiZWNhdXNlIHRoZSBjb21waWxlciBkaWRuJ3QgYWRkIGEgbGlu a2FnZSBuYW1lLCBhcyBmYXIgYXMgSSB1bmRlcnN0b29kIGl0LiBTaW5jZSB0aGUgc3RydWN0IHRy YW1wb2xpbmVfdGFyZ2V0IGRvZXNuJ3QgY2FyZSBhYm91dCBob3cgYSBtYW5nbGVkIG5hbWUgd2Fz IGNhbGN1bGF0ZWQsIGFuZCBtYW5nbGVkIG5hbWUgaXMgYSB3ZWxsIGRlZmluZWQgdGhpbmcgd2hp bGUgcGh5c25hbWUgaXMgbm90LCBJIHRoaW5rIGl0cyBiZXR0ZXIgdG8gdXNlIHRoZSBsYXR0ZXIu DQoNCj4gKyAgICAvKiBBbiBmbGFnICh0YXJnZXQgaXMgdW5rbm93bikuICAqLw0Kcy9Bbi9BDQo+ ICsgICAgVFJBTVBPTElORV9UQVJHRVRfRkxBRywNCj4gKyAgfTsNCj4gKw0KPiArc3RydWN0IHRy YW1wb2xpbmVfdGFyZ2V0DQpUaGUgc3RydWN0IGFuZCBhbGwgbWV0aG9kcyBpbiBpdCBzaG91bGQg YWxzbyBoYXZlIGNvbW1lbnRzLg0KPiArICB7DQo+ICsgICAgdHJhbXBvbGluZV90YXJnZXRfa2lu ZCB0YXJnZXRfa2luZCAoKSBjb25zdA0KPiArICAgIHsNCj4gKyAgICAgIHJldHVybiBtX3Rhcmdl dF9raW5kOw0KPiArICAgIH0NCj4gKw0KPiArICAgIHZvaWQgc2V0X3RhcmdldF9waHlzYWRkciAo Q09SRV9BRERSIHBoeXNhZGRyKQ0KPiArICAgIHsNCj4gKyAgICAgIG1fdGFyZ2V0X2tpbmQgPSBU UkFNUE9MSU5FX1RBUkdFVF9QSFlTQUREUjsNCj4gKyAgICAgIG1fdHJhbXBvbGluZV90YXJnZXQu cGh5c2FkZHIgPSBwaHlzYWRkcjsNCj4gKyAgICB9DQo+ICsNCj4gKyAgICBDT1JFX0FERFIgdGFy Z2V0X3BoeXNhZGRyICgpIGNvbnN0DQo+ICsgICAgew0KPiArICAgICAgZ2RiX2Fzc2VydCAobV90 YXJnZXRfa2luZCA9PSBUUkFNUE9MSU5FX1RBUkdFVF9QSFlTQUREUik7DQo+ICsgICAgICByZXR1 cm4gbV90cmFtcG9saW5lX3RhcmdldC5waHlzYWRkcjsNCj4gKyAgICB9DQo+ICsNCj4gKyAgICB2 b2lkIHNldF90YXJnZXRfcGh5c25hbWUgKGNvbnN0IGNoYXIgKnBoeXNuYW1lKQ0KPiArICAgIHsN Cj4gKyAgICAgIG1fdGFyZ2V0X2tpbmQgPSBUUkFNUE9MSU5FX1RBUkdFVF9QSFlTTkFNRTsNCj4g KyAgICAgIG1fdHJhbXBvbGluZV90YXJnZXQucGh5c25hbWUgPSBwaHlzbmFtZTsNCj4gKyAgICB9 DQo+ICsNCj4gKyAgICBjb25zdCBjaGFyICp0YXJnZXRfcGh5c25hbWUgKCkgY29uc3QNCj4gKyAg ICB7DQo+ICsgICAgICBnZGJfYXNzZXJ0IChtX3RhcmdldF9raW5kID09IFRSQU1QT0xJTkVfVEFS R0VUX1BIWVNOQU1FKTsNCj4gKyAgICAgIHJldHVybiBtX3RyYW1wb2xpbmVfdGFyZ2V0LnBoeXNu YW1lOw0KPiArICAgIH0NCj4gKw0KPiArICAgIHZvaWQgc2V0X3RhcmdldF9mbGFnIChib29sIGZs YWcpDQo+ICsgICAgew0KPiArICAgICAgbV90YXJnZXRfa2luZCA9IFRSQU1QT0xJTkVfVEFSR0VU X0ZMQUc7DQo+ICsgICAgICBtX3RyYW1wb2xpbmVfdGFyZ2V0LmZsYWcgPSBmbGFnOw0KPiArICAg IH0NCj4gKw0KPiArICAgIGJvb2wgdGFyZ2V0X2ZsYWcgKCkgY29uc3QNCj4gKyAgICB7DQo+ICsg ICAgICBnZGJfYXNzZXJ0IChtX3RhcmdldF9raW5kID09IFRSQU1QT0xJTkVfVEFSR0VUX0ZMQUcp Ow0KPiArICAgICAgcmV0dXJuIG1fdHJhbXBvbGluZV90YXJnZXQuZmxhZzsNCj4gKyAgICB9DQo+ ICsNCj4gKyAgcHJpdmF0ZToNCj4gKw0KPiArICAgIHVuaW9uDQo+ICsgICAgew0KPiArICAgICAg LyogQWRkcmVzcy4gICovDQo+ICsgICAgICBDT1JFX0FERFIgcGh5c2FkZHI7DQo+ICsgICAgICAv KiBNYW5nbGVkIG5hbWUuICAqLw0KPiArICAgICAgY29uc3QgY2hhciAqcGh5c25hbWU7DQo+ICsg ICAgICAvKiBGbGFnLiAgKi8NCj4gKyAgICAgIGJvb2wgZmxhZzsNCj4gKyAgICB9IG1fdHJhbXBv bGluZV90YXJnZXQ7DQo+ICsNCj4gKyAgICAvKiAqIERpc2NyaW1pbmFudCBmb3IgdW5pb24gbV90 cmFtcG9saW5lX3RhcmdldC4gICovDQo+ICsgICAgRU5VTV9CSVRGSUVMRCAodHJhbXBvbGluZV90 YXJnZXRfa2luZCkgbV90YXJnZXRfa2luZCA6IDI7DQo+ICAgICB9Ow0KPiAgIA0KPiAgIC8qIFRo ZSB0eXBlLXNwZWNpZmljIGluZm8gZm9yIFRZUEVfQ09ERV9GSVhFRF9QT0lOVCB0eXBlcy4gICov IEBAIA0KPiAtMTg5MSw4ICsxOTc2LDE2IEBAIGV4dGVybiB2b2lkIHNldF90eXBlX3ZwdHJfYmFz ZXR5cGUgKHN0cnVjdCB0eXBlICosIHN0cnVjdCB0eXBlICopOw0KPiAgICNkZWZpbmUgVFlQRV9H TkFUX1NQRUNJRklDKHRoaXN0eXBlKSBUWVBFX01BSU5fVFlQRSh0aGlzdHlwZSktPnR5cGVfc3Bl Y2lmaWMuZ25hdF9zdHVmZg0KPiAgICNkZWZpbmUgVFlQRV9ERVNDUklQVElWRV9UWVBFKHRoaXN0 eXBlKSBUWVBFX0dOQVRfU1BFQ0lGSUModGhpc3R5cGUpLT5kZXNjcmlwdGl2ZV90eXBlDQo+ICAg I2RlZmluZSBUWVBFX0NBTExJTkdfQ09OVkVOVElPTih0aGlzdHlwZSkgDQo+IFRZUEVfTUFJTl9U WVBFKHRoaXN0eXBlKS0+dHlwZV9zcGVjaWZpYy5mdW5jX3N0dWZmLT5jYWxsaW5nX2NvbnZlbnRp b24NCj4gLSNkZWZpbmUgVFlQRV9OT19SRVRVUk4odGhpc3R5cGUpIA0KPiBUWVBFX01BSU5fVFlQ RSh0aGlzdHlwZSktPnR5cGVfc3BlY2lmaWMuZnVuY19zdHVmZi0+aXNfbm9yZXR1cm4NCj4gKyNk ZWZpbmUgVFlQRV9GVU5DX0ZMQUdTKHRoaXN0eXBlKSBcDQo+ICsgIFRZUEVfTUFJTl9UWVBFKHRo aXN0eXBlKS0+dHlwZV9zcGVjaWZpYy5mdW5jX3N0dWZmLT5mbGFncw0KPiArI2RlZmluZSBUWVBF X05PX1JFVFVSTih0aGlzdHlwZSkgXA0KPiArICAoVFlQRV9NQUlOX1RZUEUodGhpc3R5cGUpLT50 eXBlX3NwZWNpZmljLmZ1bmNfc3R1ZmYtPmZsYWdzIFwNCj4gKyAgICYgRlVOQ19UWVBFX05PX1JF VFVSTikNCj4gICAjZGVmaW5lIFRZUEVfVEFJTF9DQUxMX0xJU1QodGhpc3R5cGUpIA0KPiBUWVBF X01BSU5fVFlQRSh0aGlzdHlwZSktPnR5cGVfc3BlY2lmaWMuZnVuY19zdHVmZi0+dGFpbF9jYWxs X2xpc3QNCj4gKyNkZWZpbmUgVFlQRV9JU19UUkFNUE9MSU5FKHRoaXN0eXBlKSBcDQo+ICsgIChU WVBFX01BSU5fVFlQRSh0aGlzdHlwZSktPnR5cGVfc3BlY2lmaWMuZnVuY19zdHVmZi0+ZmxhZ3Mg XA0KPiArICAgJiBGVU5DX1RZUEVfVFJBTVBPTElORSkNCk1pbm9yIG5pdCwgYnV0IEknZCBtb3Zl IHRoaXMgdXAgYWJvdmUgdHlwZV90YWlsX2NhbGxfbGlzdCwganVzdCB0byBrZWVwIGFsbCBmdW5j X2ZsYWcgc3R1ZmYgdG9nZXRoZXIuDQo+ICsjZGVmaW5lIFRZUEVfVFJBTVBPTElORV9UQVJHRVQo dGhpc3R5cGUpIA0KPiArVFlQRV9NQUlOX1RZUEUodGhpc3R5cGUpLT50eXBlX3NwZWNpZmljLmZ1 bmNfc3R1ZmYtPnNlbGZfdHJhbXBvbGluZV90DQo+ICthcmdldA0KPiAgICNkZWZpbmUgVFlQRV9C QVNFQ0xBU1ModGhpc3R5cGUsaW5kZXgpICgodGhpc3R5cGUpLT5maWVsZCAoaW5kZXgpLnR5cGUg KCkpDQo+ICAgI2RlZmluZSBUWVBFX05fQkFTRUNMQVNTRVModGhpc3R5cGUpIFRZUEVfQ1BMVVNf U1BFQ0lGSUModGhpc3R5cGUpLT5uX2Jhc2VjbGFzc2VzDQo+ICAgI2RlZmluZSBUWVBFX0JBU0VD TEFTU19OQU1FKHRoaXN0eXBlLGluZGV4KSAodGhpc3R5cGUtPmZpZWxkIA0KPiAoaW5kZXgpLm5h bWUgKCkpDQoNCg0KLS0NCkNoZWVycywNCkJydW5vDQoNCkludGVsIERldXRzY2hsYW5kIEdtYkgK UmVnaXN0ZXJlZCBBZGRyZXNzOiBBbSBDYW1wZW9uIDEwLCA4NTU3OSBOZXViaWJlcmcsIEdlcm1h bnkKVGVsOiArNDkgODkgOTkgODg1My0wLCB3d3cuaW50ZWwuZGUgPGh0dHA6Ly93d3cuaW50ZWwu ZGU+Ck1hbmFnaW5nIERpcmVjdG9yczogQ2hyaXN0aW4gRWlzZW5zY2htaWQsIFNoYXJvbiBIZWNr LCBUaWZmYW55IERvb24gU2lsdmEgIApDaGFpcnBlcnNvbiBvZiB0aGUgU3VwZXJ2aXNvcnkgQm9h cmQ6IE5pY29sZSBMYXUKUmVnaXN0ZXJlZCBPZmZpY2U6IE11bmljaApDb21tZXJjaWFsIFJlZ2lz dGVyOiBBbXRzZ2VyaWNodCBNdWVuY2hlbiBIUkIgMTg2OTI4Cg==