From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by mx.groups.io with SMTP id smtpd.web10.2166.1670534119950674015 for ; Thu, 08 Dec 2022 13:15:20 -0800 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=cvr93zqY; spf=pass (domain: intel.com, ip: 134.134.136.31, 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=1670534119; x=1702070119; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=OO/nQ6sMBxAqujjLn2vmI7UI7TR1CToZngjZPN3u0ew=; b=cvr93zqYwshTyVLk0bB4XNMlYSd1SbJdTRoibnbg71uPk68owaeMXCli mTwnGMKtkZcL16/FdMRF8piE5qDpPcfK53LyeVExzj954+kI48SP2ggaB bOTOJY+h2F6pqaPVhNTGwegLhG2fFKiE2gQjRrXMiqgQIS8qhWgm/8qF1 s+j37VZtQX37k13QwPOjlxdhihqbWIEHaREI1+jNol8Vh4ZDTore042A1 zQLbACmEx+r3is6eFa0PbqDHvD1cTON6LrtsCxmI9lbqCn/F/euK60eO5 tW8dKT2/GLJDfZG4S3DksOLM8wjxAmpFjLCHtR08hn4HoOSOZmNUjhmAA Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10555"; a="379515543" X-IronPort-AV: E=Sophos;i="5.96,228,1665471600"; d="scan'208";a="379515543" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Dec 2022 13:15:18 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10555"; a="789480083" X-IronPort-AV: E=Sophos;i="5.96,228,1665471600"; d="scan'208";a="789480083" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by fmsmga001.fm.intel.com with ESMTP; 08 Dec 2022 13:15:17 -0800 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx602.amr.corp.intel.com (10.18.126.82) 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:15:16 -0800 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by fmsmsx611.amr.corp.intel.com (10.18.126.91) 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:15:16 -0800 Received: from NAM02-DM3-obe.outbound.protection.outlook.com (104.47.56.47) by edgegateway.intel.com (192.55.55.71) 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:15:16 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nmwpqXyFRVVxXvseIgrS3SqsVFOWcIiqj30ZnoXNuNWBNWDQ8EerWHubkQZXKI6UsmyKyBBhh4uU1JuilLAdM6N1AHHs9BRvrsJWOj4/kbY8AeFHPPkO65sMkRqDdGCZoR//2z6tqmBqPpQR9YkfRcBeErWj+elb920LEksslpayWvC4aqOpdiVwezA57bwcPQpyqiHO1bN2pAUVZSngC/+0QVBtE/gxB1oM8YdRWPdiIhuctDLUAxt5uT814rBYEpfgoVxEJ6OlqKiDCsBT4XB328tr+zE+43ZM1y3zMl7AMChJvb6BJKwefGndPEZQNd47MJK+6VH7NNyqaSOaXg== 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=OO/nQ6sMBxAqujjLn2vmI7UI7TR1CToZngjZPN3u0ew=; b=BKCIT1O1LHClegW9lAStTl3IJsGQaptZgutvM8JKFQiQpH8Ly4iVg2OcpqlNFftWchJaLrZ1WEJ3VnKDsPYzlR9lcguWTjK0nreCnf4yhRBTLuO5P32DKc2uB4xF0FRBM78Nb2vVFPSpJge0lW4Un51Kshq7Wz4vUa5S6QnTxmN/rpGM8rj90AeSdhoenlKs/Q0YAv6F+imwrgVP/NU1F0DY1dfZEM3nPGMZjAZ9AnMamyNlFRjkgu62K5wBm/NyOYWTBYIDGMpGS1TDmrG0XLVpYJl2+MV7uextfqM7N79JdJGabE9ER86UQcBBz3Gg4/uOlH2VGVtOsjXKIN20ng== 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 PH7PR11MB6748.namprd11.prod.outlook.com (2603:10b6:510:1b6::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5880.14; Thu, 8 Dec 2022 21:15:09 +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:15:09 +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/6X65kNccQgAAI5gCAAA6Y8IAACFeAgAAI6HCAAA95AIAABeHg Date: Thu, 8 Dec 2022 21:15:09 +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_|PH7PR11MB6748:EE_ x-ms-office365-filtering-correlation-id: 96bc7211-6c48-461b-7fea-08dad9614968 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: XI1z0MlOZV1Arn9AITaEvZ2Hi89Clzn5HB7zHop0Mw4Jpt0LAJ5WE5I8VMFg1mOZcD5LoGxFMIB2oMw68D0jhRO9fbP6xotvo8bEzMFSK4K09XG7V2f3gGnkYkT4T8aNFunNNUUFOBKS9CnOqPd16zCOJzUKKL0cAALZg/GmGgqbzIGgFe6YbgHOYSldm6daqhcQoESbFMSZjJl/IM1SiI6XrJGCu/4COVuR+kkWGjEQyYrAyVrfMnXGzktRB3ozuhuP3gU/IrU1d/nqeXznAH1DredSJZADOtxpSI353NtBz4KiQtUvriqM2lPQBC4WwZIZFEWpT6ftGNVPZiI+kMZDIfiiHsXLUlmWvyB2tMXUfo+NCVG8QNrMhVDmuu1H2e6F1wLV0Ucx64Ef86RSe7M387hv/hYXGhWmVjRIWp6BijrSkKgDt63knT4QgwoI11I7rNyxYWzY6ttxt6lmA+xxZlkMNHneTLhpP/RUGFpuiRVpLLQlO3aaLVX0oTT4Tcr7OxglLep5JWXfG++9up9PEUPmtYFvkMHF5HsbyZBP/xGG9ra5PWfSE7Dj2rPxPIDpYTsWG0NqXhESn3jK9x2oKOc9lQx7+E7V6K1qJN5xtxNiG12qRi5409QLZMgY3Z333+wov4wNRwBUPR/GBzDV8hssC/5NKGdXV2we+Q7jdrkSSgyJgHQz56gYN7tDBgxXVsEX+pJu3Ot5bC98zMyKvzJ2WB80dqi1ws5w+7xj0YryL62IQKlzw8n24UHYUrAFMveF/8oJ4Di1LgRyGQ== 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)(376002)(39860400002)(366004)(136003)(346002)(396003)(451199015)(38070700005)(55016003)(316002)(86362001)(54906003)(186003)(33656002)(478600001)(110136005)(38100700002)(966005)(5660300002)(52536014)(71200400001)(8936002)(8676002)(66556008)(64756008)(4326008)(66476007)(76116006)(41300700001)(2906002)(66946007)(66446008)(6506007)(7696005)(53546011)(82960400001)(107886003)(26005)(9686003)(122000001)(83380400001)(66899015);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?Q1NtZkJsSnM1Q0pOMkZKRDNwNm04QUpoZzRDeTAvb2plejByZW1MQ0RrQWtI?= =?utf-8?B?bVRSKzZUSTNBZ3NPeW1SWDREV3lzdzBDZjVKY2NzdjZZVCtQNFZjUmdmZ2Zk?= =?utf-8?B?OWtyNjc4OTV0aTZIUG9Vcld5dXZiUlNhZFlNUGpqRDF5cHhTMFRHSXpHTnhR?= =?utf-8?B?Z2M2eStQajE0enN2dWtYZHd2SFNOR2htdlA4T0FsaTd2eUhGblIxN3pnZEpm?= =?utf-8?B?ZHNIY3NrVmpiWEZqZ212S0F5TDZXNG1KcFhTZUhkSEUwSHNjL3lJQWZsRjVC?= =?utf-8?B?TVJLZU5QT1Bia3RWVm5kaktRVjFaa3FUUnFYa2pyTzNwLzd0SEE1bndBVmFH?= =?utf-8?B?S1hlR1BrWDNmcHRoSDY3SGp4QXY0dkpQa0dpZG5wVnVIWjQwdk5aU21WTGxj?= =?utf-8?B?ai9xRmRyZzZzcXVOcFhvMG9jSDA3WGV4b1dRSDJqaTZNRGNkRjlRZFBWVW8y?= =?utf-8?B?Yk1waEV0RGdBWWNIV2ovajg1MVQwams0WExrRFE2bkdyK2NzbGlTR05Qb2ZD?= =?utf-8?B?ZlZiTW90em8wUFZpNDU1OC9OTEZTK3pZR1pia2RGQ000WDYwQTUwS2VNL0lT?= =?utf-8?B?dHZmSnZKLzE4UHhvMkJpbkhGdUlQWSsyaWdhTm5jd05GQnBsOUxqdjhQaWhZ?= =?utf-8?B?QUVHeVluaUdSTk1Kd3IyTXlqZG5rckNpRzF4a0xESE1Ndk9kYjlmb0pkZzl6?= =?utf-8?B?bVZQRlNVTG1VYld2MTcrREhxQUJGa3NDaXdRby8yMmp6VjVOUWhYMTRndEgz?= =?utf-8?B?Vzl5MCtsNmlLWDVPL1VoR2tUVzNvRnhrM0VadlF4STlkRGxCUjJ0TnA4S0ts?= =?utf-8?B?V0FoSWhVZWlvNGQzU1ZGQ0o0dzJDWmxZZmx5dmw1VU9rMmRMK05XRjJjZnVZ?= =?utf-8?B?czFjWit5K0pIOEFHdzZscjlRYzFkVE00SnFERjRWVUcwOVVjSit0YUErY2Fv?= =?utf-8?B?WE01VEJEOXg5SzJodllmWHFPV3pUbFhhcjk2dFlwRW5CRWtXcXIxWm5lRUpD?= =?utf-8?B?cUJDQTU2bDVKSUczWVVYNUZ0NVY4alRPL0FBTnZ5N29BQVVQbjFEVzZtOVMw?= =?utf-8?B?YmQ5SEY5R3VkSHptTUxzWHhXdGIzYWhZVVBVaVFSU0d1MFN0ZVgzOTdUeGpQ?= =?utf-8?B?bFRRYW1PL3ZiUW5mTFJGZitNMHgra2k3NUhIdUNPbUpTYnpweVkrczVQeSti?= =?utf-8?B?TWJ6L3BQUHZ5MW42dFo0cjhlQlRiZHJhOU15bDV0Q1E1dlJXVHVXanFNMFhx?= =?utf-8?B?VTU5dTRyR1VXQ01FNmxlQnNoMEJLdXowTFlxMkI0aVBWdzk5U3BIVkUveG50?= =?utf-8?B?VDNHZGtiWHdidWdkTGFVL3VieUk2aGUrMjFhS0xBUnhPUkl1ZHpBNS82UVhE?= =?utf-8?B?TlFWTFBVQ0VpZjBvZStnU0dCMzlIVVBBWmNPaGhRZm1PcWM0VHdBNktIcWVI?= =?utf-8?B?Mm9kQlV2RTVOWkJlOE1mSlI5bmRDTHhoL3pvWUZBMXpLZzF1cmRyKzlkZFZk?= =?utf-8?B?aXgvZjRDSlZTVmhJQ0hxTjFOQms5aWlUZWpwWHRiaDdzcXVBWWl4YWZhd2pr?= =?utf-8?B?azh1ZUlGUjlVTEtNZFRPeWJRTDZrcU95MUZIK1Q3blhWMkNvZEIwS1hmRVVB?= =?utf-8?B?WVFueG4xYXZialZ5L3ZyWDAxeXE0aUFucVFoS2dmRmxxSFFIYWZQazlSRFJT?= =?utf-8?B?QkpDMnFZSXhzWW9rZXo4SncvZ1VxWXhmTE5aY1hmQmdZZERESVhrbzZNc0Rp?= =?utf-8?B?L1RwOXZDWTFjNi9sSDVWa29pSTh3bithcUwyRmZ1dlpJbEVzSklVV2N2WTN6?= =?utf-8?B?SHZ0emF3UWlLd0Z6UTkycW1DMVppQy9uYTVlU2ZFMmRtVG5mLzQ2aDRVcnJa?= =?utf-8?B?dXNBSlZ4QnR5ZjdJc2xVNzlPOGlIZjR5N3R5VU5ERDRCdTJZeFh3NEF0eVRT?= =?utf-8?B?SFBlTzNyQmhBTFVJazRkc05lU0dVbGp2cTFEcStOYzZJUTYzclNTY29kbVkz?= =?utf-8?B?T3JxN0ZubE02Ujlvb0daOFQ5ZUhVaFh1Zm9UYm1PTnVVdTdpcGZLUDFVWG5j?= =?utf-8?B?dXVDMm5qQWVVM2FVZkZRUmVMWFpmN0dtMmxzTVRXL3gwbzU5SVlpWnFDZjlS?= =?utf-8?B?bDU1dVdJNElMUkptZ2Ric3JZQkU0UkM0TVFIKzI0MVRvSzZRVHhTRmpzSGhY?= =?utf-8?B?QWc9PQ==?= 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: 96bc7211-6c48-461b-7fea-08dad9614968 X-MS-Exchange-CrossTenant-originalarrivaltime: 08 Dec 2022 21:15:09.2518 (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: E+KGgbBtOGOwCW7mlLbmIBe38fXLTT8PjdyWTGp1dR3Bn72IDIQAyXMfJtS0H332pO8TfGNCHh1X2vEeqFGO+N7sckMvh15B5BjIs/Ylodk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR11MB6748 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 SGkgQXJkLA0KDQpUaGVyZSBpcyBhIGRpZmZlcmVuY2UgYmV0d2VlbiByZXR1cm5pbmcgYSBwb2lu dGVyIHRvIGEgZGV2aWNlIHBhdGggDQphbmQgbW9kaWZ5aW5nIHRoZSBkZXZpY2UgcGF0aCBjb250 ZW50cy4NCg0KSWYgeW91IGFkZCBDT05TVCB0byB0aGUgYXJndW1lbnQsIHRoZW4gYW4gdXBkYXRl ZCBwb2ludGVyIHRvIGEgZGV2aWNlDQpwYXRoIGNhbiBub3QgYmUgcmV0dXJuZWQuDQoNClRoZSBB UEkgY2xlYXIgZGVzY3JpYmVzIHJldHVybmluZyBhbiB1cGRhdGVkIGRldmljZSBwYXRoIHBvaW50 ZXIsIHNvDQp0aGUgQVBJIGlzIGRlY2xhcmVkIGNvcnJlY3RseSB3aXRob3V0IENPTlNULg0KDQpU aGUgQVBJIGRvZXMgbm90IHN0YXRlIHRoYXQgdGhlIGNvbnRlbnRzIG9mIHRoZSBkZXZpY2UgcGF0 aCBhcmUgbW9kaWZpZWQuDQoNCkFuIEFQSSB0aGF0IHVzZXMgQ09OU1QgRUZJX0RFVklDRV9QQVRI KiB3b3VsZCBpbmRpY2F0ZSB0aGF0IHRoZSBBUEkNCnNob3VsZCBub3QgbW9kaWZ5IHRoZSBjb250 ZW50cyBvZiB0aGUgZGV2aWNlIHBhdGguICBGb3IgZXhhbXBsZToNCg0KLyoqDQogIFJldHVybnMg dGhlIHNpemUgb2YgYSBkZXZpY2UgcGF0aCBpbiBieXRlcy4NCg0KICBUaGlzIGZ1bmN0aW9uIHJl dHVybnMgdGhlIHNpemUsIGluIGJ5dGVzLCBvZiB0aGUgZGV2aWNlIHBhdGggZGF0YSBzdHJ1Y3R1 cmUNCiAgc3BlY2lmaWVkIGJ5IERldmljZVBhdGggaW5jbHVkaW5nIHRoZSBlbmQgb2YgZGV2aWNl IHBhdGggbm9kZS4NCiAgSWYgRGV2aWNlUGF0aCBpcyBOVUxMIG9yIGludmFsaWQsIHRoZW4gMCBp cyByZXR1cm5lZC4NCg0KICBAcGFyYW0gIERldmljZVBhdGggIEEgcG9pbnRlciB0byBhIGRldmlj ZSBwYXRoIGRhdGEgc3RydWN0dXJlLg0KDQogIEByZXR2YWwgMCAgICAgICAgICAgSWYgRGV2aWNl UGF0aCBpcyBOVUxMIG9yIGludmFsaWQuDQogIEByZXR2YWwgT3RoZXJzICAgICAgVGhlIHNpemUg b2YgYSBkZXZpY2UgcGF0aCBpbiBieXRlcy4NCg0KKiovDQpVSU5UTg0KRUZJQVBJDQpHZXREZXZp Y2VQYXRoU2l6ZSAoDQogIElOIENPTlNUIEVGSV9ERVZJQ0VfUEFUSF9QUk9UT0NPTCAgKkRldmlj ZVBhdGgNCiAgKTsNCg0KTWlrZQ0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZy b206IGRldmVsQGVkazIuZ3JvdXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4gT24gQmVoYWxm IE9mIEFyZCBCaWVzaGV1dmVsDQo+IFNlbnQ6IFRodXJzZGF5LCBEZWNlbWJlciA4LCAyMDIyIDEy OjEyIFBNDQo+IFRvOiBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5j b20+DQo+IENjOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsgTmksIFJheSA8cmF5Lm5pQGludGVsLmNv bT47IEdhbywgWmhpY2hhbyA8emhpY2hhby5nYW9AaW50ZWwuY29tPg0KPiBTdWJqZWN0OiBSZTog W2VkazItZGV2ZWxdIFtQQVRDSF0gU2hlbGxQa2c6IEF2b2lkIGNvcnJ1cHRpbmcgaW5zdGFsbGVk IGRldmljZSBwYXRoIHByb3RvY29scw0KPiANCj4gT24gVGh1LCA4IERlYyAyMDIyIGF0IDIwOjIw LCBLaW5uZXksIE1pY2hhZWwgRA0KPiA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+IHdyb3Rl Og0KPiA+DQo+ID4gSGkgQXJkLA0KPiA+DQo+ID4gTXVjaCBvZiB0aGlzIGNvZGUgaGFzIG5vdCBi ZWVuIHVwZGF0ZWQgc2luY2UgaW5pdGlhbGx5IGFkZGVkIGluIDIwMTAuDQo+ID4NCj4gPiBMb29r cyBsaWtlIGEgYnVnIHRvIG1lIHRoYXQgaGFzIGJlZW4gdGhlcmUgdGhlIHdob2xlIHRpbWUuDQo+ ID4NCj4gPiBJIGFncmVlIGl0IGlzIGEgYmVoYXZpb3IgY2hhbmdlIGluIHRoZSBpbXBsZW1lbnRh dGlvbi4gIEJ1dCB1bmxlc3MNCj4gPiBuZXcgY29kZSB1c2Ugb2YgdGhpcyBBUEkgbG9va3MgYXQg dGhlIGltcGxlbWVudGF0aW9uLCB0aGV5IHdvdWxkDQo+ID4gbm90IGtub3cgaXQgaXMgZGVzdHJ1 Y3RpdmUgYW5kIHRoZXkgbmVlZCB0byBtYWtlIGEgY29weS4gIFRoaXMNCj4gPiBBUEkgaXMgYXZh aWxhYmxlIHRvIGV4dGVybmFsIHNoZWxsIGFwcHMgdGhhdCB1c2UgdGhlIHNoZWxsIHByb3RvY29s Lg0KPiA+DQo+IA0KPiBXZWxsLCBub3QgZW50aXJlbHkuIFRoZSBmdW5jdGlvbiB0YWtlcyBFRklf REVWSUNFX1BBVEhfUFJPVE9DT0wqKiBub3QNCj4gQ09OU1QgRUZJX0RFVklDRV9QQVRIX1BST1RP Q09MKiosIGFuZCBzbyBvbmUgbWlnaHQgYXJndWUgdGhhdCB0aGUNCj4gdW5kZXJseWluZyBvYmpl Y3QgaXMgbW9kaWZpYWJsZSBieSB0aGUgY2FsbGVlLiBBbmQgc2ltaWxhcmx5LCB0aGF0DQo+IHNo ZWxsIGNvZGUgc2hvdWxkIG5vdCBncmFiIGEgRUZJIGRldmljZSBwYXRoIHByb3RvY29sIHBvaW50 ZXIgZnJvbSB0aGUNCj4gZGF0YWJhc2UgYW5kIHBhc3MgaXQgdG8gYSBmdW5jdGlvbiB0aGF0IGRv ZXMgbm90IHVzZSBhIENPTlNUIHF1YWxpZmllZA0KPiBFRklfREVWSUNFX1BBVEhfUFJPVE9DT0wg cG9pbnRlciB0byBhY2NlcHQgdGhlIGFyZ3VtZW50Lg0KPiANCj4gPiBXZSBzaG91bGQgZ2V0IHRo ZSBzaGVsbCBvd25lcnMgdG8gZXZhbHVhdGUgcmVtb3ZpbmcgdGhlIGRlc3RydWN0aXZlDQo+ID4g YmVoYXZpb3IuDQo+ID4NCj4gDQo+IEkgc3VwcG9zZSBjaGFuZ2luZyB0aGUgcHJvdG90eXBlcyBp cyBvdXQgb2YgdGhlIHF1ZXN0aW9uLCBhcyBkb2luZyBzbw0KPiB3b3VsZCByZXF1aXJlIGEgbmV3 IHZlcnNpb24gb2YgdGhlIHNoZWxsIHByb3RvY29sPw0KPiANCj4gPiA+IC0tLS0tT3JpZ2luYWwg TWVzc2FnZS0tLS0tDQo+ID4gPiBGcm9tOiBBcmQgQmllc2hldXZlbCA8YXJkYkBrZXJuZWwub3Jn Pg0KPiA+ID4gU2VudDogVGh1cnNkYXksIERlY2VtYmVyIDgsIDIwMjIgMTA6NDUgQU0NCj4gPiA+ IFRvOiBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQo+ID4g PiBDYzogZGV2ZWxAZWRrMi5ncm91cHMuaW87IE5pLCBSYXkgPHJheS5uaUBpbnRlbC5jb20+OyBH YW8sIFpoaWNoYW8gPHpoaWNoYW8uZ2FvQGludGVsLmNvbT4NCj4gPiA+IFN1YmplY3Q6IFJlOiBb ZWRrMi1kZXZlbF0gW1BBVENIXSBTaGVsbFBrZzogQXZvaWQgY29ycnVwdGluZyBpbnN0YWxsZWQg ZGV2aWNlIHBhdGggcHJvdG9jb2xzDQo+ID4gPg0KPiA+ID4gT24gVGh1LCA4IERlYyAyMDIyIGF0 IDE5OjI4LCBLaW5uZXksIE1pY2hhZWwgRA0KPiA+ID4gPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwu Y29tPiB3cm90ZToNCj4gPiA+ID4NCj4gPiA+ID4gSGkgQXJkLA0KPiA+ID4gPg0KPiA+ID4gPiBG cm9tIHRoaXMgZGVzY3JpcHRpb24sIGl0IGRvZXMgbm90IGxvb2sgbGlrZSBpdCBzaG91bGQgYmUg bW9kaWZ5aW5nIHRoZQ0KPiA+ID4gPiBjb250ZW50cyBvZiB0aGUgZGV2aWNlIHBhdGguICBKdXN0 IHBvaW50IHRvIHRoZSBkZXZpY2UgcGF0aCBlbmQgbm9kZSB0aGF0DQo+ID4gPiA+IGZvbGxvd3Mg dGhlIG1hdGNoIGZvdW5kLg0KPiA+ID4gPg0KPiA+ID4gPiAvKioNCj4gPiA+ID4gICBHZXRzIHRo ZSBtYXBwaW5nIHRoYXQgbW9zdCBjbG9zZWx5IG1hdGNoZXMgdGhlIGRldmljZSBwYXRoLg0KPiA+ ID4gPg0KPiA+ID4gPiAgIFRoaXMgZnVuY3Rpb24gZ2V0cyB0aGUgbWFwcGluZyB3aGljaCBjb3Jy ZXNwb25kcyB0byB0aGUgZGV2aWNlIHBhdGggKkRldmljZVBhdGguIElmDQo+ID4gPiA+ICAgdGhl cmUgaXMgbm8gZXhhY3QgbWF0Y2gsIHRoZW4gdGhlIG1hcHBpbmcgd2hpY2ggbW9zdCBjbG9zZWx5 IG1hdGNoZXMgKkRldmljZVBhdGgNCj4gPiA+ID4gICBpcyByZXR1cm5lZCwgYW5kICpEZXZpY2VQ YXRoIGlzIHVwZGF0ZWQgdG8gcG9pbnQgdG8gdGhlIHJlbWFpbmluZyBwb3J0aW9uIG9mIHRoZQ0K PiA+ID4gPiAgIGRldmljZSBwYXRoLiBJZiB0aGVyZSBpcyBhbiBleGFjdCBtYXRjaCwgdGhlIG1h cHBpbmcgaXMgcmV0dXJuZWQgYW5kICpEZXZpY2VQYXRoDQo+ID4gPiA+ICAgcG9pbnRzIHRvIHRo ZSBlbmQtb2YtZGV2aWNlLXBhdGggbm9kZS4NCj4gPiA+ID4NCj4gPiA+ID4gICBAcGFyYW0gRGV2 aWNlUGF0aCAgICAgICAgICAgICBPbiBlbnRyeSwgcG9pbnRzIHRvIGEgZGV2aWNlIHBhdGggcG9p bnRlci4gT24NCj4gPiA+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBleGl0LCB1 cGRhdGVzIHRoZSBwb2ludGVyIHRvIHBvaW50IHRvIHRoZQ0KPiA+ID4gPiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHBvcnRpb24gb2YgdGhlIGRldmljZSBwYXRoIGFmdGVyIHRoZSBt YXBwaW5nLg0KPiA+ID4gPg0KPiA+ID4gPiAgIEByZXR2YWwgTlVMTCAgICAgICAgICAgICAgICAg IE5vIG1hcHBpbmcgd2FzIGZvdW5kLg0KPiA+ID4gPiAgIEByZXR1cm4gIT1OVUxMICAgICAgICAg ICAgICAgIFBvaW50ZXIgdG8gTlVMTC10ZXJtaW5hdGVkIG1hcHBpbmcuIFRoZSBidWZmZXINCj4g PiA+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpcyBjYWxsZWUgYWxsb2NhdGVk IGFuZCBzaG91bGQgYmUgZnJlZWQgYnkgdGhlIGNhbGxlci4NCj4gPiA+ID4gKiovDQo+ID4gPiA+ IENPTlNUIENIQVIxNiAqDQo+ID4gPiA+IEVGSUFQSQ0KPiA+ID4gPiBFZmlTaGVsbEdldE1hcEZy b21EZXZpY2VQYXRoICgNCj4gPiA+ID4gICBJTiBPVVQgRUZJX0RFVklDRV9QQVRIX1BST1RPQ09M ICAqKkRldmljZVBhdGgNCj4gPiA+ID4gICApOw0KPiA+ID4gPg0KPiA+ID4gPiBJIHNlZSB0aGlz IEFQSSB1c2VkIGluIG1hbnkgcGxhY2VzLCBhbmQgaXQgbG9va3MgbGlrZSBpdCB3b3VsZCBiZQ0K PiA+ID4gPiBkZXN0cnVjdGl2ZSB0byBhbnkgbXVsdGktaW5zdGFuY2UgZGV2aWNlIHBhdGguIE11 bHRpLWluc3RhbmNlDQo+ID4gPiA+IGRldmljZSBwYXRocyBhcmUgdHlwaWNhbGx5IHVzZWQgZm9y IGNvbnNvbGVzLCBzbyB3ZSBtYXkgbm90IGhhdmUNCj4gPiA+ID4gbm90aWNlZCB0aGlzIGRlc3Ry dWN0aXZlIGJlaGF2aW9yIHdpdGggZmlsZSBzeXN0ZW0gbWFwcGluZyBwYXRocy4NCj4gPiA+ID4N Cj4gPiA+ID4gRGlkIHlvdSB0cnkgcmVtb3ZpbmcgdGhlIGNhbGwgdG8gU2V0RGV2aWNlUGF0aEVu ZE5vZGUgKCpEZXZpY2VQYXRoKTsgID8NCj4gPiA+ID4NCj4gPiA+DQo+ID4gPiBObywgYnV0IHRo YXQgd291bGQgYmUgYSBmdW5jdGlvbmFsIGNoYW5nZSB2aXNpYmxlIHRvIGFsbCB1c2VycyBvZiB0 aGUNCj4gPiA+IGN1cnJlbnQgQVBJLg0KPiA+ID4NCj4gPiA+IEFuZCBub3RlIHRoYXQgdGhlIGNh bGxpbmcgY29kZSBhbHJlYWR5IGhhcyAnRGV2aWNlUGF0aENvcHknIHZhcmlhYmxlcywNCj4gPiA+ IGl0IGp1c3QgZG9lc24ndCBib3RoZXIgdXNpbmcgdGhlbSwgc28gdGhlIGludGVudCBpcyBjbGVh cmx5IHRvIHBhc3MgYQ0KPiA+ID4gY29weSwgbm90IHRoZSBhY3R1YWwgZGV2aWNlIHBhdGguDQo+ IA0KPiANCj4gDQo+IA0KDQo=