From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by mx.groups.io with SMTP id smtpd.web11.3326.1670536673458335641 for ; Thu, 08 Dec 2022 13:57:54 -0800 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=cs+B37tW; spf=pass (domain: intel.com, ip: 192.55.52.120, mailfrom: michael.d.kinney@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1670536673; x=1702072673; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=rScDQBouaGs32XmBmF/8g0Bt5MbWWW+kr5KLVWWkPq4=; b=cs+B37tWvo8Y2WUZXSB9MoDVgZ0SfcUIpk5/qXb5MrzFLTcE10UQBbMC 1jZaKs1GKkm8YnQ0lJe4q5rfZm6XlthcZiRVZPCpDTLPh8iS7J5cU/Itc IgU9+F3ltZmXRtKLP3tOLV4yc9r7u5DZYGKob9E1aOboQyRGMDaH1V8vq 0ipQOONuQhsGkVMthxvzZBmuC5ikzd4+MS2hvDbNnh7ns9RF9hxGkj67c BNrWoAr2Y6ziQ+PRrK50R65ZLQGhGafbLTzgHrxQJa1gVz7T6MO6lSZzE wk9f9uUNlZGZm6Mo0hW5EjTfzePP8M++H5yGUZAnsz+YuUCbSqtpKx5w6 w==; X-IronPort-AV: E=McAfee;i="6500,9779,10555"; a="316022392" X-IronPort-AV: E=Sophos;i="5.96,228,1665471600"; d="scan'208";a="316022392" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Dec 2022 13:57:52 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10555"; a="677922583" X-IronPort-AV: E=Sophos;i="5.96,228,1665471600"; d="scan'208";a="677922583" Received: from orsmsx601.amr.corp.intel.com ([10.22.229.14]) by orsmga008.jf.intel.com with ESMTP; 08 Dec 2022 13:57:52 -0800 Received: from orsmsx601.amr.corp.intel.com (10.22.229.14) by ORSMSX601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.16; Thu, 8 Dec 2022 13:57:51 -0800 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.16 via Frontend Transport; Thu, 8 Dec 2022 13:57:51 -0800 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.174) 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.2507.16; Thu, 8 Dec 2022 13:57:51 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=T4Og0lItsh29DYY05e+OTVAQUkMp2fBDJRPE505bIHNXx36QXACJfeaqRgu2pgrFRq426TrB82zpKmRWNYYqMOqMoyGNcWrIygNW57TNePkVmgWRny9nRGYV7vTCWKbHkmQgEqx3+JdGVO9J73vBsyYfv9Ug3I8/CSjly1dI21X2TXB34hIJiptBo+XW2Sx49lFjlTxqTgy2wFncgerW/+4eNdykcRlKgNSXkX8G0fXw4YA2PkBnFiosa34Zz/cKTKSv2nyL0OdQy4SLh+08MQr53nGaDO1fI+2WgzzdWKoPPnqOA+OqcUuiRetYRvgf24EcaGZrvIwZXf9wWAt2kQ== 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=rScDQBouaGs32XmBmF/8g0Bt5MbWWW+kr5KLVWWkPq4=; b=b0rt/oLiF4/wHxTlE1RIix9gIPD5sbFhxyEg3B0EKMF1tHUMiuTgtWrKC5J73f83jt8Nc0OONAIIbdlZiM+q0Pe66bECVGE0O5GpmnoU9cJTnUXzKVqEHTeGu3T/3g5/JO1pb41uWR+CXarW1wKz1D9X0hEnVdupGCBCIXckYbxofvUDviBIyqN/WuC6AViIScVtr1pKjEqGzvSUnsah56TGNpt/WwwcKOcDKupBNJVJ8kCWJ5oYV9URTQUFu9rNYKiquMSIPhRBmZeURGIZMzEpha7yHqd3UqIKuUcCAS8Vv+mqwxsRyiiInifIw7YhE9DENWM1QYrEzgmdovHIDQ== 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 CO1PR11MB4929.namprd11.prod.outlook.com (2603:10b6:303:6d::19) by BL3PR11MB6362.namprd11.prod.outlook.com (2603:10b6:208:3b5::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5880.11; Thu, 8 Dec 2022 21:57:44 +0000 Received: from CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::5b3:916c:706d:b41b]) by CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::5b3:916c:706d:b41b%6]) with mapi id 15.20.5880.016; Thu, 8 Dec 2022 21:57:44 +0000 From: "Michael D Kinney" To: "devel@edk2.groups.io" , "ardb@kernel.org" , "Kinney, Michael D" CC: "Ni, Ray" , "Gao, Zhichao" Subject: Re: [edk2-devel] [PATCH] ShellPkg: Avoid corrupting installed device path protocols Thread-Topic: [edk2-devel] [PATCH] ShellPkg: Avoid corrupting installed device path protocols Thread-Index: AQHZClbUinpGwqLgmkaFxYxlqW/6X65kNccQgAAI5gCAAA6Y8IAACFeAgAAI6HCAAA95AIAABeHggAASpoCAAAMeUA== Date: Thu, 8 Dec 2022 21:57:44 +0000 Message-ID: References: <20221207161245.2554193-1-ardb@kernel.org> In-Reply-To: Accept-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: CO1PR11MB4929:EE_|BL3PR11MB6362:EE_ x-ms-office365-filtering-correlation-id: 3c6e5a25-85af-4854-cc5d-08dad9673c5a x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: LKmdmcj7EsNPK1Zbx8jT2PxYlidfXO+sRH6AoUFZ2ILL/eAQFRYMWYv2EOESZBMK4cNKmsdinQyny/kFV84Zx4c2a/kRDQva+s43TJ/QtgBBqk6f30QlIIFeiFvZ1iGVuEeAM4YifGeHZr/4Idyli7wSJPVmEyBzstHkQ6WHL74DHrX3wPcDNX4Wd3piL6W8BHz96GJ0NVQQDhFbHweC23ykmpCaBPGSrDfmPpT7Fj0esgvPy2pj2ZJU4+gQOcHXshRwPh7J1ZzZBMepXYO3m/AzSg0dlDON5LMZiL+EO8Ie+giD6MoZ+x1YjvnC5lpfkdIQstuHtGrlI1NgIzU3IpzUdcDUQY7yAletiCuxCfaPkQfaf/MFdjkUHEIQwyaiIu1QfDMT1IBG8iALv4HZhimzLgW/0DCVgWtrU4JoRhDw2I319gNX2hXcijWJgHXcPJoDcNrfbWA67KuepXpihG2tfSxenparAJv1Pav+ECZjkQ1mVXiSEzhxrcZMtxRHosRT+03jW7K7Y1g1en04Zp60fp+AKz020H6ICLD7DPJwNM0NLMoXoLf5dUxIcwY8Vpg+QFA+/cFiKpGpTfF0F7sKaMjyXzcPNGXcxfykU8wuWyYw3RMRbxqTxlqT5dnXc+pDLQf6XNr1uflFD7siBg+JBroklSt21cYen4DMb18b+AKBVLTD+kJDdyzWEjFAguAiZC1hxq7KGNbncDeE1IsLp9JFMAUk1LCSaccO5LdiCu4vB3yDEotlAY6FcDRukoXco7cR7fK3iUjb9I+6gw== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO1PR11MB4929.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(39860400002)(136003)(396003)(346002)(376002)(366004)(451199015)(66899015)(86362001)(9686003)(110136005)(64756008)(83380400001)(6506007)(966005)(53546011)(2906002)(54906003)(316002)(186003)(26005)(7696005)(55016003)(33656002)(122000001)(66476007)(76116006)(38100700002)(4326008)(71200400001)(66556008)(107886003)(5660300002)(8676002)(82960400001)(66446008)(8936002)(66946007)(41300700001)(478600001)(38070700005)(52536014);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?SE0yVFNMdng0anRpUWEvbU5vTEZUMVlHNGdYb1pzc0NVQ09tVmdwYVp2V1Fy?= =?utf-8?B?ZGUwVHhmODVVQzBlMEZ6QzJDa0laaDUxcWg0enBQdVpGQ0huNERGTSt5bjRY?= =?utf-8?B?Z3UycDJxWmc5a0RZNUMvTlQvUWhETk5sMUFwNjRsMUxJSC95TElRZTM1THF2?= =?utf-8?B?OFYwZTF4eWduRi9NOWtoNzl5b1crd1VFc3MzTlAxL1lXNzVuK0drWGRTOFJY?= =?utf-8?B?WU1xY2t0S3hacjFNS2JEVmcvbUU5ZWo2RkdKcVJueE1wRHpNemlYc3l2TTdx?= =?utf-8?B?a2hWelM1VHQwa05mVDRHb2Z2c2s4WmRVTitacWlGYXNWQ3FIWWpObko1QWhz?= =?utf-8?B?R2VPT1U5ZkwwSEtsVEFaMytNZWxGbmJWMm1meE9udG5seFNXRnN5dkRGQWdk?= =?utf-8?B?NFBuMWZJb0pwSm9XOHFCdmFRcFdTZ1NTVEh4UEE0MWJBQkJVUFNtQUlGZ01n?= =?utf-8?B?ekRob1RaaG5ZNGI2T21GODZBZHh4amg0YitGVGNQSmJmOG52YzdVLzgvNlF1?= =?utf-8?B?Q0FhOTc1NEJzMU9RaG9YN1pxOHFaWUdVTWFnVlNlZmJxelRPdFJvNmpxZjQz?= =?utf-8?B?VEhIQUZ0enkrVlFnRkk4eG94cUozNUNVbjBZTGVPRVErWWQvNCs3a3ZZVHVu?= =?utf-8?B?WlpPVXZxbmw2aHl5ZW4vazdsc2tBR2JpaWpSbGc5bUdXY2U5WnNaRCt3RUZV?= =?utf-8?B?aUJJZlMvS09tWEQvOXlYV1FOZUorSDNDNmNYSkovYktOM1h2N0twbEppZEVo?= =?utf-8?B?S0JINzBucHJQMVhpSFB2VEY2WUtLVE81T2ZQYWVCSjZHaFZDRy95aVFKUEY4?= =?utf-8?B?QlpoSWhUOWhFUzF3OTFXVWQyQ3dMZWlvMjZQeklsZjkxMEJURFVKcXMwSVFL?= =?utf-8?B?ZFgyUGxnb1lKRlg0Y2lXckpHTHROSmQ4b09aWWIraHduTngvNmttY0xieVor?= =?utf-8?B?Y3AvcXFGUEtLcC8xSGpCYktDeDBxWWhXSFprb0QvMi9kVE1MVU4rV293YlIr?= =?utf-8?B?R21KclpxZldhMXQybXVKQnZ3RlhUSkVhQWd4Z1paek9EeURCeEFrNGFRVDky?= =?utf-8?B?UFZHQ2FtVTJHalF4SmRxSHgyalBxV3F3VExMUmRjOW1tOElGUUliZWJ3NmhT?= =?utf-8?B?MWxOR1dMSXlXNCtTWmtIZElPREdzbE5acnhsZDdVVGh1NlNqYkl4SnpVNDUx?= =?utf-8?B?NUlNRDd3Rnh2bkhxSDZ6U1VaZC83TndZakt2MWRKRzEvcWJzTm1uUjlOb2xp?= =?utf-8?B?Mnc1MVhZYkREME5MQTczZ1M0bUkzbnVBNVJHSW42YytwMkh4c2F5VGNPdnVz?= =?utf-8?B?b1dVeFhIdmJZei9mUzFVMWprZjlYRUV1ZGR5T0ZXZ1hrdEN5R2xJajFybGI3?= =?utf-8?B?MDFiQlViRUY4elJyM0s1MVgwaHN3R0pybXlVamx4TTZyQkh1R0xQODlCR1VW?= =?utf-8?B?dXJJaFplM1ZHdjRBcElVWERtalR1YnQ0U2xqcWpFMHByNWh3d1R0bXc5aFNs?= =?utf-8?B?MkV5d0hnSWo4UGZwSW5jQ21jMk1OZ01WWU9JUktSK1I1NzMyNmVZNzRXOVEy?= =?utf-8?B?YWN4NGNNeTF3VlMrYURzQkdGZEdvRG1PMkNTSnV1TEtEcS9WZ0Joc0QzaWFW?= =?utf-8?B?WHJnSHB3Tnp3cjVmcEhkWTRvOW9OOE40TGhKNVBDeDUzTTJyMnh2ZCtFNWM1?= =?utf-8?B?UzZpbHJjalVzYzdCaE44UlNiZTBSZWJ2cHJFRkU4clBZNHE0aHJ5aC84U1dV?= =?utf-8?B?aGUwc2tkSEM5KzdUNU5KaURzU3YyQzNwbk5RZ3hsMlVxUUJoYkwzUXp0YTJY?= =?utf-8?B?eEcvOTRhZDlYYUJ1V3ZwQ0xqMzBxVkd3TUhtYTU0ZW8wb3dGNnkvU25mUDMz?= =?utf-8?B?T2FNNkVxdEYrd1FXTVFEbHZpVTF4ZWFNcmhlRytoNVlyNE5ONzNNeGxqeHln?= =?utf-8?B?OXA5M2hWdWFXSEJSSFo3ZDB3TmZEN0tIZDZoQlhxczBZcVhuMWh4cjBjU3JV?= =?utf-8?B?aGZoYyt2WU01V1FCVlo5VTZNYjVkby85QmJKYnNkREtBNVJDWnpaQjd0ako2?= =?utf-8?B?OVY3SG40WXRKMGJnYjR2N3h0YlVybkxjTDJUYzNFN3VwZ2dOZ085ZW0xZnFy?= =?utf-8?B?dCt6aklEc2dWalR0NUlWa2VqWExBdnVBMzlyeHY5emY5elc3RFpKa3hCNmZ1?= =?utf-8?B?UkE9PQ==?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CO1PR11MB4929.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3c6e5a25-85af-4854-cc5d-08dad9673c5a X-MS-Exchange-CrossTenant-originalarrivaltime: 08 Dec 2022 21:57:44.3476 (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: /U8c/alzaan1A4iPV9YDtDoCf9xv2GYzU0zaVyOGapa0+hEnpMHpH5c+UiEAKYtSbSBFpvCaZYlA99XKMPXIHnlxp9F/o3Xm2CDvm5Xi1p0= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL3PR11MB6362 Return-Path: michael.d.kinney@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 QXJkLA0KDQpUaGFuayB5b3UgZm9yIHRoZSBjb3JyZWN0aW9uLg0KDQpJZiB3ZSBhZGQgdGhhdCBD T05TVCwgdGhlbiB0aGUgU2hlbGxQa2cgYnVpbGQgYnJlYWtzIHdpdGggYW4gZXJyb3INCg0KYzpc d29ya1xnaXRodWJcdGlhbm9jb3JlXGVkazJcU2hlbGxQa2dcQXBwbGljYXRpb25cU2hlbGxcU2hl bGxQcm90b2NvbC5jKDI5Nyk6IGVycm9yIEMyMjIwOiB0aGUgZm9sbG93aW5nIHdhcm5pbmcgaXMg dHJlYXRlZCBhcyBhbiBlcnJvcg0KYzpcd29ya1xnaXRodWJcdGlhbm9jb3JlXGVkazJcU2hlbGxQ a2dcQXBwbGljYXRpb25cU2hlbGxcU2hlbGxQcm90b2NvbC5jKDI5Nyk6IHdhcm5pbmcgQzQwOTA6 ICdmdW5jdGlvbic6IGRpZmZlcmVudCAnY29uc3QnIHF1YWxpZmllcnMNCg0KV2hpY2ggaXMgZXhh Y3RseSB0aGUgbGluZSB3ZSB3YW50IHRvIHJlbW92ZSB0byBwcmV2ZW50IHRoZSBkZXN0cnVjdGl2 ZSBiZWhhdmlvci4NCg0KICAgIFNldERldmljZVBhdGhFbmROb2RlICgqRGV2aWNlUGF0aCk7DQoN CklmIEkgY29tbWVudCBvdXQgdGhhdCBsaW5lLCB0aGUgU2hlbGxQa2cgYnVpbGQgY29tcGxldGVz IHdpdGggbm8gZXJyb3JzLg0KDQpJIGFncmVlIHRoYXQgaXQgd291bGQgYmUgYmV0dGVyIHRvIHVw ZGF0ZSB0aGUgcHJvdG90eXBlIGFuZCBnZXQgaGVscA0KZnJvbSB0aGUgY29tcGlsZXIgdG8gZmlu ZCBpbmNvcnJlY3QgaW1wbGVtZW50YXRpb25zLiAgRXZlbiB0aG91Z2gNCkNPTlNUIGlzIG5vdCBp biB0aGUgcHJvdG90eXBlLCBmcm9tIHJlYWRpbmcgdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBBUEkN Cml0IGRvZXMgbm90IHN0YXRlIHRoYXQgdGhlIGNvbnRlbnRzIGFyZSBtb2RpZmllZCwgc28gSSB0 aGluayB0aGUgDQppbnRlbnQgd2FzIG5vIG1vZGlmaWNhdGlvbnMuDQoNCllvdXIgc3VnZ2VzdGVk IGNoYW5nZSBpcyBzYWZlLCBidXQgaXQgaXMgaW5jb21wbGV0ZSBiZWNhdXNlIHRoZXJlDQphcmUg YWRkaXRpb25hbCBjYWxscyB0aHJvdWdoIHRoZSBwcm90b2NvbCB0aGF0IGFyZSBub3QgY292ZXJl ZA0KYnkgeW91ciBwYXRjaC4gIFdlIGFsc28gZG8gbm90IGtub3cgaG93IG1hbnkgcGxhY2VzIHRo aXMgQVBJDQppcyB1c2VkIGluIGRvd25zdHJlYW0gcHJvamVjdHMuICBUaGlzIHNpZGUgZWZmZWN0 IG9mIGEgd3JpdGUgdG8NCmEgcmVhZC1vbmx5IHBhZ2UgYW5kIHBvdGVudGlhbCBjb3JydXB0aW9u IG9mIGEgbXVsdGktaW5zdGFuY2UNCmRldmljZSBwYXRoIGxvb2tzIGxpa2UgYSBidWcgdG8gbWUg YW5kIHdlIHNob3VsZCBmaXggdGhlIHJvb3QNCmNhdXNlIGFuZCBub3QgZml4IGp1c3Qgc29tZSBv ZiB0aGUgY2FsbGVycy4NCg0KTWlrZQ0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ IEZyb206IGRldmVsQGVkazIuZ3JvdXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4gT24gQmVo YWxmIE9mIEFyZCBCaWVzaGV1dmVsDQo+IFNlbnQ6IFRodXJzZGF5LCBEZWNlbWJlciA4LCAyMDIy IDE6NDAgUE0NCj4gVG86IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBLaW5uZXksIE1pY2hhZWwgRCA8 bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQo+IENjOiBOaSwgUmF5IDxyYXkubmlAaW50ZWwu Y29tPjsgR2FvLCBaaGljaGFvIDx6aGljaGFvLmdhb0BpbnRlbC5jb20+DQo+IFN1YmplY3Q6IFJl OiBbZWRrMi1kZXZlbF0gW1BBVENIXSBTaGVsbFBrZzogQXZvaWQgY29ycnVwdGluZyBpbnN0YWxs ZWQgZGV2aWNlIHBhdGggcHJvdG9jb2xzDQo+IA0KPiBPbiBUaHUsIDggRGVjIDIwMjIgYXQgMjI6 MTUsIE1pY2hhZWwgRCBLaW5uZXkNCj4gPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPiB3cm90 ZToNCj4gPg0KPiA+IEhpIEFyZCwNCj4gPg0KPiA+IFRoZXJlIGlzIGEgZGlmZmVyZW5jZSBiZXR3 ZWVuIHJldHVybmluZyBhIHBvaW50ZXIgdG8gYSBkZXZpY2UgcGF0aA0KPiA+IGFuZCBtb2RpZnlp bmcgdGhlIGRldmljZSBwYXRoIGNvbnRlbnRzLg0KPiA+DQo+ID4gSWYgeW91IGFkZCBDT05TVCB0 byB0aGUgYXJndW1lbnQsIHRoZW4gYW4gdXBkYXRlZCBwb2ludGVyIHRvIGEgZGV2aWNlDQo+ID4g cGF0aCBjYW4gbm90IGJlIHJldHVybmVkLg0KPiA+DQo+IA0KPiBObywgdGhpcyBpcyBpbmNvcnJl Y3QuDQo+IA0KPiBUaGUgZnVuY3Rpb24gdGFrZXMgYSBwb2ludGVyICgxKSB0byBhIHBvaW50ZXIo MikgIHRvIGEgZGV2aWNlIHBhdGggcHJvdG9jb2wNCj4gDQo+IEVGSV9ERVZJQ0VfUEFUSF9QUk9U T0NPTCAqKg0KPiANCj4gU28gdGhlIGZ1bmN0aW9uIGNhbiBkZXJlZmVyZW5jZSBwb2ludGVyIDEg YW5kIG1vZGlmeSBwb2ludGVyIDINCj4gKnVubGVzcyogaXQgaXMgbWFya2VkIGFzIENPTlNULCBp LmUuDQo+IA0KPiBFRklfREVWSUNFX1BBVEhfUFJPVE9DT0wgKiBDT05TVCAqDQo+IA0KPiBpbiB3 aGljaCBjYXNlIHRoZSBwb2ludGVyIGlzIG5vdCBtb2RpZmlhYmxlLCBidXQgaXQgaXMgcGVybWl0 dGVkIHRvDQo+IGRlcmVmZXJlbmNlIHRoYXQgcG9pbnRlciB0byBtb2RpZnkgdGhlIHVuZGVybHlp bmcgb2JqZWN0Lg0KPiANCj4gSSBhbSBhcmd1aW5nIHRoYXQgdGhlIHByb3RvdHlwZSBzaG91bGQg YmUNCj4gDQo+IEVGSV9ERVZJQ0VfUEFUSF9QUk9UT0NPTCBDT05TVCAqKg0KPiANCj4gKHdoaWNo IGlzIHRoZSBzYW1lIGFzIHB1dHRpbmcgdGhlIENPTlNUIGF0IHRoZSBiZWdpbm5pbmcpDQo+IA0K PiB3aGVyZSB0aGUgY2FsbGVyJ3MgcG9pbnRlciBjYW4gYmUgYWR2YW5jZWQgYnkgdGhlIGNhbGxl ZSB2aWEgdGhlDQo+IHBvaW50ZXItdG8tcG9pbnRlci4gQnV0IHRoYXQgd291bGQgc3RpbGwgbm90 IHBlcm1pdCB0aGUgb2JqZWN0IHRvIGJlDQo+IG1vZGlmaWVkLg0KPiANCj4gPiBUaGUgQVBJIGNs ZWFyIGRlc2NyaWJlcyByZXR1cm5pbmcgYW4gdXBkYXRlZCBkZXZpY2UgcGF0aCBwb2ludGVyLCBz bw0KPiA+IHRoZSBBUEkgaXMgZGVjbGFyZWQgY29ycmVjdGx5IHdpdGhvdXQgQ09OU1QuDQo+ID4N Cj4gDQo+IFRoZSBwb2ludGVyIG1heSBiZSB1cGRhdGVkIGJ1dCBub3QgdGhlIG9iamVjdC4gSXQg cmVhbGx5IGNvbWVzIGRvd24gdG8NCj4gdGhlIGRpZmZlcmVuY2UgYmV0d2Vlbg0KPiANCj4gQ09O U1QgRUZJX0RFVklDRV9QQVRIX1BST1RPQ09MICoqDQo+IEVGSV9ERVZJQ0VfUEFUSF9QUk9UT0NP TCBDT05TVCAqKg0KPiBFRklfREVWSUNFX1BBVEhfUFJPVE9DT0wgKiBDT05TVCAqDQo+IEVGSV9E RVZJQ0VfUEFUSF9QUk9UT0NPTCAqKkNPTlNUDQo+IA0KPiAod2hlcmUgdGhlIGZpcnN0IHR3byBt ZWFuIHRoZSBzYW1lIHRoaW5nMA0KPiANCj4gPiBUaGUgQVBJIGRvZXMgbm90IHN0YXRlIHRoYXQg dGhlIGNvbnRlbnRzIG9mIHRoZSBkZXZpY2UgcGF0aCBhcmUgbW9kaWZpZWQuDQo+ID4NCj4gPiBB biBBUEkgdGhhdCB1c2VzIENPTlNUIEVGSV9ERVZJQ0VfUEFUSCogd291bGQgaW5kaWNhdGUgdGhh dCB0aGUgQVBJDQo+ID4gc2hvdWxkIG5vdCBtb2RpZnkgdGhlIGNvbnRlbnRzIG9mIHRoZSBkZXZp Y2UgcGF0aC4gIEZvciBleGFtcGxlOg0KPiA+DQo+ID4gLyoqDQo+ID4gICBSZXR1cm5zIHRoZSBz aXplIG9mIGEgZGV2aWNlIHBhdGggaW4gYnl0ZXMuDQo+ID4NCj4gPiAgIFRoaXMgZnVuY3Rpb24g cmV0dXJucyB0aGUgc2l6ZSwgaW4gYnl0ZXMsIG9mIHRoZSBkZXZpY2UgcGF0aCBkYXRhIHN0cnVj dHVyZQ0KPiA+ICAgc3BlY2lmaWVkIGJ5IERldmljZVBhdGggaW5jbHVkaW5nIHRoZSBlbmQgb2Yg ZGV2aWNlIHBhdGggbm9kZS4NCj4gPiAgIElmIERldmljZVBhdGggaXMgTlVMTCBvciBpbnZhbGlk LCB0aGVuIDAgaXMgcmV0dXJuZWQuDQo+ID4NCj4gPiAgIEBwYXJhbSAgRGV2aWNlUGF0aCAgQSBw b2ludGVyIHRvIGEgZGV2aWNlIHBhdGggZGF0YSBzdHJ1Y3R1cmUuDQo+ID4NCj4gPiAgIEByZXR2 YWwgMCAgICAgICAgICAgSWYgRGV2aWNlUGF0aCBpcyBOVUxMIG9yIGludmFsaWQuDQo+ID4gICBA cmV0dmFsIE90aGVycyAgICAgIFRoZSBzaXplIG9mIGEgZGV2aWNlIHBhdGggaW4gYnl0ZXMuDQo+ ID4NCj4gPiAqKi8NCj4gPiBVSU5UTg0KPiA+IEVGSUFQSQ0KPiA+IEdldERldmljZVBhdGhTaXpl ICgNCj4gPiAgIElOIENPTlNUIEVGSV9ERVZJQ0VfUEFUSF9QUk9UT0NPTCAgKkRldmljZVBhdGgN Cj4gPiAgICk7DQo+ID4NCj4gDQo+IFllcywgYnV0IHRoaXMgb25lIGlzIGEgcG9pbnRlciwgbm90 IGEgcG9pbnRlci10by1wb2ludGVyLiBCaWcgZGlmZmVyZW5jZS4NCj4gDQo+IA0KPiANCj4gDQoN Cg==