From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.2 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id AA1E8C4338F for ; Wed, 18 Aug 2021 10:18:14 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 8E3AC60E09 for ; Wed, 18 Aug 2021 10:18:14 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232546AbhHRKSq (ORCPT ); Wed, 18 Aug 2021 06:18:46 -0400 Received: from mail-eopbgr20118.outbound.protection.outlook.com ([40.107.2.118]:17795 "EHLO EUR02-VE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S230435AbhHRKSp (ORCPT ); Wed, 18 Aug 2021 06:18:45 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QeEP2wyRGtMOQZSo4k81OKXQKIOwMTTem2zFx5+ZOVdrEc0vh1kd6yYM7KOUknAOy9vqZE+kM2QL+Z4BE/uXt2HvD+H6K+mP8cGm13f9GRCYPGMFdop4K46fN1MfrgTkk/eZqg7sPWiHMZQgKXNdAreW26rttM3sZvOjOqTGqXNPGLER5pXZUmQtoxngkwqnTSodKTjYyq7IDpD9iW69PyP5yc7mKVVcUfvVXVg3hYxOIEHOiRCdCap3J3OsNRJ0UG2inbnkeOC81MvB9Ao8xMn2CBoo0voep3KlbyEfNGbj5Iz7LtQ0V7IxahwNARdN7c7tSKFEfB4a1yPOyk0+Wg== 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=3x7LPKNqdGc5eYj5/ngJkVijlB1j5q/xWD5tF1+hwcE=; b=Z0ra61NzTkpmYeYhybSXRxWSY+FO0lUttihpB8WwRo4km3yBzF/UU5viRvrh9+UkyPXCuZP8xWSdQscfrL/4RsTkV2570ISKJzEbxrwp2uSpXH5x+c1ftbxlFXnehVgi9WpTZ5xyImOzYy1XCp8Va6i3URFTxo36/KUdjYCwYkxXnrSTbx7ku4pcJmb94V4cvJ0xzGw3gKgCfaBSjdO1eWUOH+1L5i5Z4/sb3C7PyJN41vxjqOsOOHSfk4C6EcuHIbN8LALUQmafevhurSaNwlisUByPeRjKc8xIj7cs1q5DEK3j1IwsGavbCVNMFUXpCt3hfcIUcjojrwrID06eMQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=bang-olufsen.dk; dmarc=pass action=none header.from=bang-olufsen.dk; dkim=pass header.d=bang-olufsen.dk; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bang-olufsen.dk; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3x7LPKNqdGc5eYj5/ngJkVijlB1j5q/xWD5tF1+hwcE=; b=inUZ8DcmUCyRyA9mgf+k5USEhZZgHh4Rfgtbn+FsgV3lE8Por6FA2zydjme8Lwc33H9UZit8Zn6aaGpFrzo1BC70Tn/B6jMu4EGfiNjSCF2nRlVYQQgHqfnYnYVkg+iKvRAhX8LEz+lcUFV5XtXijhd8B4QeEewK2QmYSTKvlSg= Received: from HE1PR03MB3114.eurprd03.prod.outlook.com (2603:10a6:7:60::18) by HE1PR0302MB2684.eurprd03.prod.outlook.com (2603:10a6:3:eb::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4415.19; Wed, 18 Aug 2021 10:18:07 +0000 Received: from HE1PR03MB3114.eurprd03.prod.outlook.com ([fe80::7cc8:2d4:32b3:320f]) by HE1PR03MB3114.eurprd03.prod.outlook.com ([fe80::7cc8:2d4:32b3:320f%5]) with mapi id 15.20.4415.024; Wed, 18 Aug 2021 10:18:06 +0000 From: =?utf-8?B?QWx2aW4gxaBpcHJhZ2E=?= To: Saravana Kannan , Vladimir Oltean CC: Vladimir Oltean , "netdev@vger.kernel.org" , Jakub Kicinski , "David S. Miller" , Florian Fainelli , Andrew Lunn , Vivien Didelot , Frank Rowand , Rob Herring Subject: Re: [PATCH net] net: dsa: sja1105: fix use-after-free after calling of_find_compatible_node, or worse Thread-Topic: [PATCH net] net: dsa: sja1105: fix use-after-free after calling of_find_compatible_node, or worse Thread-Index: AQHXk3edAldLqW55BEm1kFydkTRTGqt4NdyAgAASUYCAAEdPAIAAfkAA Date: Wed, 18 Aug 2021 10:18:06 +0000 Message-ID: <6b89a9e1-e92e-ca99-9fbd-1d98f6a7864b@bang-olufsen.dk> References: <20210817145245.3555077-1-vladimir.oltean@nxp.com> <20210817223101.7wbdofi7xkeqa2cp@skbuf> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.12.0 authentication-results: google.com; dkim=none (message not signed) header.d=none;google.com; dmarc=none action=none header.from=bang-olufsen.dk; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 75a3eeb5-eb86-4975-cf19-08d9623178c3 x-ms-traffictypediagnostic: HE1PR0302MB2684: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8882; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: kjbNYQkE+u1Gi/Ej9GMaUganKogPFicWA1odSpI9JtAIwp8NE+/be2G2c5SqI2d6Hy2a7IIVqoGhz90DhWr1IuAhEHdMsYFfw7/GcqOvmSlOVfQ+CJ3ik8EqZGrUc3Pxei8cxGrhBmI+NQ1fTzF7v8enyNyjw2IiW8ewsNinHQYgCeaMWjcko1J1JNLQF2+qct2CqaZLru797cRkDq3w5F9tIr147DE2oOIbtQrEDKo8omoyZ0TY14d/8p2L2OZiwvOFeQCaW8eaQ0yTA7XXb29TTgkL07hhgcc6tv9ndRLhi6tCzoYVosTAbSnIRNjOBltmRZpQYCfToCrGjq3eGRjClkpxvBdHFYpVwAqZeJXLTUJ7L6RxVAQlWoeu2n/eSolW1UZ8lAp01XuKBlY2rRPzxTai7X16sMRuu/UsSaUeFJRHK7o33JbqJpNvpKVBEoND/IGF5Gn+rSM0UyHbKoLhtTlkszqXG0wafkl39Pw3jnUD1asxplas66TFG1PQ3AOcRUUHvvihsgb6N2HX8Q6CoDv1ZjJucWI1eqUN0PGiVf5lG85MwidDY1ZNvGpe1b/tv/hukWe4TNl7cFqeCNuHXqWPMX7cWKXUU71Q5Vc2g4V6MqyYkWLrz60boeKCYg5XFNHNQcRl8EC8uMg8GHZCRhggoPldJijYD5chzI4R0fwGt4JAVbaq+w7oQlMqmzYrbW7mhS/vBW4hxBYvaEsFMQY9QXD5ioLha113fAZE0doUQFxsXHcz9lr016VWhtFCu0gsctH3C4bBghytYUTIaertOt80utdnme7SRLIpLrR5VTon0HnF6aoOLikMTwKSfUjgO7otGxy5AoUDnDGMStFq/KqGt3xM5CDbryU= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:HE1PR03MB3114.eurprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(346002)(136003)(396003)(366004)(39850400004)(91956017)(110136005)(54906003)(186003)(2616005)(8676002)(66556008)(316002)(85182001)(66476007)(38070700005)(83380400001)(66946007)(5660300002)(6512007)(71200400001)(76116006)(6486002)(2906002)(31686004)(966005)(478600001)(122000001)(6506007)(36756003)(66446008)(38100700002)(7416002)(31696002)(8976002)(8936002)(86362001)(85202003)(53546011)(4326008)(64756008)(26005)(66574015)(45980500001)(43740500002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?L2lZd0NLK1dvaXo1R0M5dDlhQnN1MDJ1MmZrUUdmN1cwaEd6ejNkbXp2TDRi?= =?utf-8?B?SkhzV3R0TEhmMjFyQ3ZYaVp3L2o1a1dOZHRZZWpXOHlWNm1RcFVHcEFyVjR1?= =?utf-8?B?QlB4THlXYXBMeWdyaFZaTEI5Nmk0VksrMzhQNVlrVSs5azlNVFhnQU9YU0dW?= =?utf-8?B?MEN5bFVBejRFNDF2MUNnaHliVUZSSzR4aTdTUHlScW1VNWxOSUZmQlc2WjRO?= =?utf-8?B?NU0vNG5oRHpBRTdSZHB6QktVd1BnaWFjM3hZdTZLajNmcHVqV3ZBN1VSL0JU?= =?utf-8?B?Mk9WVDJqeGpiaXhVNHV0Ykk2emtNT3pPUkYxSktkTkZWTzFnVmxrK3NqYW04?= =?utf-8?B?dEdKYXc4OCtuY0ptcXR1OVRUYWFRZWxkajFFeFdRSHBRT3llcnNJdFpXRGxE?= =?utf-8?B?eDFzQnB3MEwwRkErN0lzaS9YTkk2TzR1bkNDZFIwNGQzM1FTMVYyb0RPaGpW?= =?utf-8?B?SWFxTFAycXN6SlB6K0xaSkxDSHJRcElYY3B5TlcyU0JDcS9kcGtHak4yMU1L?= =?utf-8?B?THEya2lJTU43eEhQanRUSVhZWUlTZUxVbEQ5U1I2ZGU0VG5SckExWWhvYmpP?= =?utf-8?B?VmtQL2c5eC8rNHNRZnlOSG44Y0tmQm9ma0VwUGdUL011c3pIRWplQTlBeXJz?= =?utf-8?B?ZmFLRG1zMW1tOWhGQzI5L3NGWDBpMHQ1L0o3VDErL2hNYkhVY3lUeURpc244?= =?utf-8?B?TkU3RDZTUHRkZkRxMUxUemlWNVJuVldldHRRbVBxbHlMV2NaRFF0UGlodytD?= =?utf-8?B?YVg4Yk9KWnl5ZUpwQWNyRFY2cUJRTVc1UzQ0ZWN6VGlIaFRjNjZ5b0VOQmVG?= =?utf-8?B?MVNUb3ZRTXNXdkF4ODVyeDgrV2pSTFZBSnk5WWEzMGU5UWhZUTJtZXJ1VUJH?= =?utf-8?B?RzA5Nnd1bEdVTHRraFF3WEVXMEpjS2IzOFFCRjd4NnFlVzV4Q0ZpTWV5aHhp?= =?utf-8?B?WHRiR2paUDdNUmJsK2ZldnhpRThKQWdTMjFmS2ZXUkdQQzdKZy9hVzYwWDgy?= =?utf-8?B?YVluZnZNaDdTZmNUTXo3dm4zMlc3THdOTDJpMGJDbTBGem5PKzBxU0pWcDd0?= =?utf-8?B?SncvRHRBajdRTElHK2tiYXdDbjY4ZGc1ZFRKRWtaTjRhTVFOcThsYzk1aDhO?= =?utf-8?B?T29yRlF0QWFqRG5GTHQ5eEQwbkpiRmZHY21ucHMzR1lIV2t3cEJiWVRudmFx?= =?utf-8?B?bllhUDFvRm9Cdm9jdXpQelovWnRMa2FrUGpZYlpIZlBQd0FYZW04UmY3a1NV?= =?utf-8?B?WklSTUVWRzZIVUY5SlV1OU1acG1iNGdnelVrNllpVEtuUFI0RDlibjdKcDJx?= =?utf-8?B?SWZhT2hzdE9VUFhnU3NabzZsQnduRGk0S3k4a2xGMmZWaGN0Sitzb1FNSFJk?= =?utf-8?B?TndGelFVYm5xb0ZYK1RFQ29xYmx3U0dKMEZFdVpWMTR6Z01UdmhmSXJ3SWRx?= =?utf-8?B?cFZ3eVVuVTR5WGNuR2kwMDRwWlBJTGJuYUgybVZ0K21GdisrcGRKU285aTZH?= =?utf-8?B?aWZmWkl3UEZjMEtDVllJZldHblpLaVgveHV6anNOSDZGcnYrTHozUWJiNDNq?= =?utf-8?B?SWpWS0U3di9sRHBVek9aTGdEZGgweFhDb3lxRXRDQTBrclJTZ2VKbW9iWmNX?= =?utf-8?B?ZUdZZXptUjhCRXErQmF2NkRlYUFmdnYvYUdzb0pTYW5WU2szbXdDa2pOUGJo?= =?utf-8?B?Q2c1UTczYmtjaUlVdjJ1ekp5bWdKblcwcXIxelpzUGVXUFZnTmJYTmczT0tt?= =?utf-8?Q?lczG6V1ZgAgcNxnaSPn1kPMNgvBzWUapiwZqNJk?= x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="utf-8" Content-ID: <66647B14419F1E4D8155D36170212F38@eurprd03.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: bang-olufsen.dk X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: HE1PR03MB3114.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 75a3eeb5-eb86-4975-cf19-08d9623178c3 X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Aug 2021 10:18:06.6664 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 210d08b8-83f7-470a-bc96-381193ca14a1 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: tuYNbFvIQ9aUjmIfQQv2wHDuOz7CwCdhdC8T79/NVlHh5rHx9B5C/cpjgqsXXOmrCFanb/0hVP4KEcXAs11xyg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0302MB2684 Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org SGkgU2FyYXZhbmEsDQoNCk9uIDgvMTgvMjEgNDo0NiBBTSwgU2FyYXZhbmEgS2FubmFuIHdyb3Rl Og0KPiBPbiBUdWUsIEF1ZyAxNywgMjAyMSBhdCAzOjMxIFBNIFZsYWRpbWlyIE9sdGVhbiA8b2x0 ZWFudkBnbWFpbC5jb20+IHdyb3RlOg0KPj4NCj4+IEhpIEFsdmluLA0KPj4NCj4+IE9uIFR1ZSwg QXVnIDE3LCAyMDIxIGF0IDA5OjI1OjI4UE0gKzAwMDAsIEFsdmluIMWgaXByYWdhIHdyb3RlOg0K Pj4+IEkgaGF2ZSBhbiBvYnNlcnZhdGlvbiB0aGF0J3Mgc2xpZ2h0bHkgb3V0IG9mIHRoZSBzY29w ZSBvZiB5b3VyIHBhdGNoLA0KPj4+IGJ1dCBJJ2xsIHBvc3QgaGVyZSBvbiB0aGUgb2ZmIGNoYW5j ZSB0aGF0IHlvdSBmaW5kIGl0IHJlbGV2YW50Lg0KPj4+IEFwb2xvZ2llcyBpZiBpdCdzIG91dCBv ZiBwbGFjZS4NCj4+Pg0KPj4+IERvIHRoZXNlIGludGVncmF0ZWQgTlhQIFBIWXMgdXNlIGEgc3Bl Y2lmaWMgUEhZIGRyaXZlciwgb3IgZG8gdGhleSBqdXN0DQo+Pj4gdXNlIHRoZSBHZW5lcmljIFBI WSBkcml2ZXI/DQo+Pg0KPj4gVGhleSByZWZ1c2UgdG8gcHJvYmUgYXQgYWxsIHdpdGggdGhlIEdl bmVyaWMgUEhZIGRyaXZlci4gSSBoYXZlIGJlZW4NCj4+IGNhdWdodCBvZmYgZ3VhcmQgYSBmZXcg dGltZXMgbm93IHdoZW4gSSBoYWQgYSBrZXJuZWwgYnVpbHQgd2l0aA0KPj4gQ09ORklHX05YUF9D NDVfVEpBMTFYWF9QSFk9biBhbmQgdGhlaXIgcHJvYmluZyByZXR1cm5zIC0yMiBpbiB0aGF0IGNh c2UuDQo+Pg0KPj4+IElmIHRoZSBmb3JtZXIgaXMgdGhlIGNhc2UsIGRvIHlvdSBleHBlcmllbmNl IHRoYXQgdGhlIFBIWSBkcml2ZXIgZmFpbHMNCj4+PiB0byBnZXQgcHJvYmVkIGR1cmluZyBtZGlv YnVzIHJlZ2lzdHJhdGlvbiBpZiB0aGUga2VybmVsIHVzZXMNCj4+PiBmd19kZXZsaW5rPW9uPw0K Pj4NCj4+IEkgZG9uJ3QgdGVzdCB3aXRoICJmd19kZXZsaW5rPW9uIiBpbiAvcHJvYy9jbWRsaW5l LCB0aGlzIGlzIHRoZSBmaXJzdA0KPj4gdGltZSBJIGRvIGl0LiBJdCBiZWhhdmVzIGV4YWN0bHkg YXMgeW91IHNheS4NCj4+DQo+Pj4NCj4+PiBJbiBteSBjYXNlIEkgYW0gd3JpdGluZyBhIG5ldyBz dWJkcml2ZXIgZm9yIHJlYWx0ZWstc21pLCBhIERTQSBkcml2ZXINCj4+PiB3aGljaCByZWdpc3Rl cnMgYW4gaW50ZXJuYWwgTURJTyBidXMgYW5hbG9nb3VzbHkgdG8gc2phMTEwNSwgd2hpY2ggaXMN Cj4+PiB3aHkgSSdtIGFza2luZy4gSSBub3RpY2VkIGEgZGVmZXJyZWQgcHJvYmUgb2YgdGhlIFBI WSBkcml2ZXIgYmVjYXVzZSB0aGUNCj4+PiBzdXBwbGllciAoZXRoZXJuZXQtc3dpdGNoKSBpcyBu b3QgcmVhZHkgLSBwcmVzdW1hYmx5IGJlY2F1c2UgYWxsIG9mIHRoaXMNCj4+PiBpcyBoYXBwZW5p bmcgaW4gdGhlIHByb2JlIG9mIHRoZSBzd2l0Y2ggZHJpdmVyLiBTZWUgYmVsb3c6DQo+Pj4NCj4+ PiBbICAgODMuNjUzMjEzXSBkZXZpY2VfYWRkOjMyNzA6IGRldmljZTogJ1NNSS0wJzogZGV2aWNl X2FkZA0KPj4+IFsgICA4My42NTM5MDVdIGRldmljZV9wbV9hZGQ6MTM2OiBQTTogQWRkaW5nIGlu Zm8gZm9yIE5vIEJ1czpTTUktMA0KPj4+IFsgICA4My42NTQwNTVdIGRldmljZV9hZGQ6MzI3MDog ZGV2aWNlOiAncGxhdGZvcm06ZXRoZXJuZXQtc3dpdGNoLS1tZGlvX2J1czpTTUktMCc6IGRldmlj ZV9hZGQNCj4+PiBbICAgODMuNjU0MjI0XSBkZXZpY2VfbGlua19hZGQ6ODQzOiBtZGlvX2J1cyBT TUktMDogTGlua2VkIGFzIGEgc3luYyBzdGF0ZSBvbmx5IGNvbnN1bWVyIHRvIGV0aGVybmV0LXN3 aXRjaA0KPj4+IFsgICA4My42NTQyOTFdIGxpYnBoeTogU01JIHNsYXZlIE1JSTogcHJvYmVkDQo+ Pj4gLi4uDQo+Pj4gWyAgIDgzLjY1OTgwOV0gZGV2aWNlX2FkZDozMjcwOiBkZXZpY2U6ICdTTUkt MDowMCc6IGRldmljZV9hZGQNCj4+PiBbICAgODMuNjU5ODgzXSBidXNfYWRkX2RldmljZTo0NDc6 IGJ1czogJ21kaW9fYnVzJzogYWRkIGRldmljZSBTTUktMDowMA0KPj4+IFsgICA4My42NTk5NzBd IGRldmljZV9wbV9hZGQ6MTM2OiBQTTogQWRkaW5nIGluZm8gZm9yIG1kaW9fYnVzOlNNSS0wOjAw DQo+Pj4gWyAgIDgzLjY2MDEyMl0gZGV2aWNlX2FkZDozMjcwOiBkZXZpY2U6ICdwbGF0Zm9ybTpl dGhlcm5ldC1zd2l0Y2gtLW1kaW9fYnVzOlNNSS0wOjAwJzogZGV2aWNlX2FkZA0KPj4+IFsgICA4 My42NjAyNzRdIGRldmljZXNfa3NldF9tb3ZlX2xhc3Q6MjcwMTogZGV2aWNlc19rc2V0OiBNb3Zp bmcgU01JLTA6MDAgdG8gZW5kIG9mIGxpc3QNCj4+PiBbICAgODMuNjYwMjgyXSBkZXZpY2VfcG1f bW92ZV9sYXN0OjIwMzogUE06IE1vdmluZyBtZGlvX2J1czpTTUktMDowMCB0byBlbmQgb2YgbGlz dA0KPj4+IFsgICA4My42NjAyOTNdIGRldmljZV9saW5rX2FkZDo4NTk6IG1kaW9fYnVzIFNNSS0w OjAwOiBMaW5rZWQgYXMgYSBjb25zdW1lciB0byBldGhlcm5ldC1zd2l0Y2gNCj4+PiBbICAgODMu NjYwMzUwXSBfX2RyaXZlcl9wcm9iZV9kZXZpY2U6NzM2OiBidXM6ICdtZGlvX2J1cyc6IF9fZHJp dmVyX3Byb2JlX2RldmljZTogbWF0Y2hlZCBkZXZpY2UgU01JLTA6MDAgd2l0aCBkcml2ZXIgUlRM ODM2NU1CLVZDIEdpZ2FiaXQgRXRoZXJuZXQNCj4+PiBbICAgODMuNjYwMzY1XSBkZXZpY2VfbGlu a3NfY2hlY2tfc3VwcGxpZXJzOjEwMDE6IG1kaW9fYnVzIFNNSS0wOjAwOiBwcm9iZSBkZWZlcnJh bCAtIHN1cHBsaWVyIGV0aGVybmV0LXN3aXRjaCBub3QgcmVhZHkNCj4+PiBbICAgODMuNjYwMzc2 XSBkcml2ZXJfZGVmZXJyZWRfcHJvYmVfYWRkOjEzODogbWRpb19idXMgU01JLTA6MDA6IEFkZGVk IHRvIGRlZmVycmVkIGxpc3QNCj4+DQo+PiBTbyBpdCdzIGEgY2lyY3VsYXIgZGVwZW5kZW5jeT8g U3dpdGNoIGNhbm5vdCBmaW5pc2ggcHJvYmluZyBiZWNhdXNlIGl0DQo+PiBjYW5ub3QgY29ubmVj dCB0byBQSFksIHdoaWNoIGNhbm5vdCBwcm9iZSBiZWNhdXNlIHN3aXRjaCBoYXMgbm90DQo+PiBm aW5pc2hlZCBwcm9iaW5nLCB3aGljaC4uLi4NCj4gDQo+IEhpIFZsYWRpbWlyL0FsdmluLA0KPiAN Cj4gSWYgdGhlcmUncyBhIGN5Y2xpYyBkZXBlbmRlbmN5IGJldHdlZW4gdHdvIGRldmljZXMsIHRo ZW4gZndfZGV2bGluaz1vbg0KPiBpcyBzbWFydCBlbm91Z2ggdG8gbm90aWNlIHRoYXQuIE9uY2Ug aXQgbm90aWNlcyBhIGN5Y2xlLCBpdCBrbm93cyB0aGF0DQo+IGl0IGNhbid0IHRlbGwgd2hpY2gg b25lIGlzIHRoZSByZWFsIGRlcGVuZGVuY3kgYW5kIHdoaWNoIG9uZSBpcyB0aGUNCj4gZmFsc2Ug ZGVwZW5kZW5jeSBhbmQgc28gc3RvcHMgZW5mb3JjaW5nIG9yZGVyaW5nIGJldHdlZW4gdGhlIGRl dmljZXMNCj4gaW4gdGhlIGN5Y2xlLg0KPiANCj4gQnV0IGZ3X2RldmxpbmsgZG9lc24ndCB1bmRl cnN0YW5kIGFsbCB0aGUgcHJvcGVydGllcyB5ZXQuIEp1c3QgbW9zdCBvZg0KPiB0aGVtIGFuZCBJ J20gYWx3YXlzIHRyeWluZyB0byBhZGQgbW9yZS4gU28gd2hlbiBpdCBvbmx5IHVuZGVyc3RhbmRz DQo+IHRoZSBwcm9wZXJ0eSB0aGF0J3MgY2F1c2luZyB0aGUgZmFsc2UgZGVwZW5kZW5jeSBidXQg bm90IHRoZSBwcm9wZXJ0eQ0KPiB0aGF0IGNhdXNlcyB0aGUgcmVhbCBkZXBlbmRlbmN5LCBpdCBj YW4gY2F1c2UgaXNzdWVzIGxpa2UgdGhpcyB3aGVyZQ0KPiBmd19kZXZsaW5rPW9uIGVuZm9yY2Vz IHRoZSBmYWxzZSBkZXBlbmRlbmN5IGFuZCB0aGUgZHJpdmVyL2NvZGUNCj4gZW5mb3JjZXMgdGhl IHJlYWwgZGVwZW5kZW5jeS4gVGhlc2UgYXJlIGdlbmVyYWxseSBlYXN5IHRvIGZpeCAtLSB5b3UN Cj4ganVzdCBuZWVkIHRvIHRlYWNoIGZ3X2RldmxpbmsgaG93IHRvIHBhcnNlIG1vcmUgcHJvcGVy dGllcy4NCj4gDQo+IFRoaXMgaXMganVzdCBhIHByZWxpbWluYXJ5IGFuYWx5c2lzIHNpbmNlIEkg ZG9uJ3QgaGF2ZSBhbGwgdGhlIGluZm8NCj4geWV0IC0tIHNvIEkgY291bGQgYmUgd3JvbmcuIFdp dGggdGhhdCBzYWlkLCBJIGhhcHBlbmVkIHRvIGJlIHdvcmtpbmcNCj4gb24gYWRkaW5nIGZ3X2Rl dmxpbmsgc3VwcG9ydCBmb3IgcGh5LWhhbmRsZSBwcm9wZXJ0eSBhbmQgSSB0aGluayBpdA0KPiBz aG91bGQgZml4IHlvdXIgaXNzdWUgd2l0aCBmd19kZXZsaW5rPW9uLiBDYW4geW91IGdpdmUgWzFd IGEgc2hvdD8NCg0KSSB0cmllZCBbMV0gYnV0IGl0IGRpZCBub3Qgc2VlbSB0byBoYXZlIGFueSBl ZmZlY3QuDQoNCj4gDQo+IElmIGl0IGRvZXNuJ3QgZml4IGl0LCBjYW4gb25lIG9mIHlvdSBwbGVh c2UgcG9pbnQgbWUgdG8gYW4gdXBzdHJlYW0NCj4gZHRzIChub3QgZHRzaSkgZmlsZSBmb3IgYSBw bGF0Zm9ybSBpbiB3aGljaCB5b3Ugc2VlIHRoaXMgaXNzdWU/IEFuZA0KPiBpZGVhbGx5IGFsc28g dGhlIERUIG5vZGVzIGFuZCB0aGVpciBkcml2ZXJzIHRoYXQgYXJlIGludm9sdmVkIGluIHRoaXMN Cj4gY3ljbGU/IFdpdGggdGhhdCBpbmZvLCBJIHNob3VsZCBiZSBhYmxlIHRvIHJvb3QgY2F1c2Ug dGhpcyBpZiB0aGUNCj4gcGF0Y2ggYWJvdmUgZG9lc24ndCBhbHJlYWR5IGZpeCBpdC4NCg0KSSdt IHdvcmtpbmcgd2l0aCBhIG5vbi11cHN0cmVhbSBkdHMgLSBtYXliZSBWbGFkaW1pciBpcyB1c2lu ZyBhbiANCnVwc3RyZWFtIG9uZT8gVGhlIHBhdHRlcm4gYW1vbmcgdGhlIGRyaXZlcnMvZHRzIGlz IGNvbW1vbiBiZXR3ZWVuIG91ciANCnR3byBjYXNlcy4NCg0KQnV0IGZvciB0aGUgc2FrZSBvZiB0 aGlzIGRpc2N1c3Npb24sIG15IGR0cyBpcyBwcmV0dHkgbXVjaCB0aGUgc2FtZSBhcyANCndoYXQg eW91IHdpbGwgZmluZCBpbiBhcmNoL2FybS9ib290L2R0cy9nZW1pbmktZGxpbmstZGlyLTY4NS5k dHMuIFRoZSANCm5vZGVzIG9mIGludGVyZXN0IGZyb20gdGhhdCBkdHMgZmlsZSBhcmUgYmVsb3cs IGFuZCB0aGUgZHJpdmVyIGlzIGluIA0KZHJpdmVycy9uZXQvZHMve3JlYWx0ZWstc21pLWNvcmUu YyxydGw4MzY2cmIuY30uIEl0J3MgZXhwZWN0ZWQgdGhhdCB0aGUgDQpSZWFsdGVrIFBIWSBkcml2 ZXIgaW4gZHJpdmVycy9uZXQvcGh5L3JlYWx0ZWsuYyB3aWxsIGdldCBwcm9iZWQgYXMgcGFydCAN Cm9mIHRoZSBtZGlvYnVzIHJlZ2lzdHJhdGlvbiwgYnV0IHRoYXQgbmV2ZXIgaGFwcGVucy4gU2Vl IG15IHByZXZpb3VzIA0KcmVwbHkgZm9yIGEgZGVidWcgbG9nLg0KDQovIHsNCglzd2l0Y2ggew0K CQljb21wYXRpYmxlID0gInJlYWx0ZWsscnRsODM2NnJiIjsNCgkJbWRjLWdwaW9zID0gPCZncGlv MCAyMSBHUElPX0FDVElWRV9ISUdIPjsNCgkJbWRpby1ncGlvcyA9IDwmZ3BpbzAgMjIgR1BJT19B Q1RJVkVfSElHSD47DQoJCXJlc2V0LWdwaW9zID0gPCZncGlvMCAxNCBHUElPX0FDVElWRV9MT1c+ Ow0KCQlyZWFsdGVrLGRpc2FibGUtbGVkczsNCg0KCQlzd2l0Y2hfaW50YzogaW50ZXJydXB0LWNv bnRyb2xsZXIgew0KCQkJLyogR1BJTyAxNSBwcm92aWRlcyB0aGUgaW50ZXJydXB0ICovDQoJCQlp bnRlcnJ1cHQtcGFyZW50ID0gPCZncGlvMD47DQoJCQlpbnRlcnJ1cHRzID0gPDE1IElSUV9UWVBF X0xFVkVMX0xPVz47DQoJCQlpbnRlcnJ1cHQtY29udHJvbGxlcjsNCgkJCSNhZGRyZXNzLWNlbGxz ID0gPDA+Ow0KCQkJI2ludGVycnVwdC1jZWxscyA9IDwxPjsNCgkJfTsNCg0KCQlwb3J0cyB7DQoJ CQkvKiBzbmlwICovDQoJCX07DQoNCgkJbWRpbyB7DQoJCQljb21wYXRpYmxlID0gInJlYWx0ZWss c21pLW1kaW8iOw0KCQkJI2FkZHJlc3MtY2VsbHMgPSA8MT47DQoJCQkjc2l6ZS1jZWxscyA9IDww PjsNCg0KCQkJcGh5MDogcGh5QDAgew0KCQkJCXJlZyA9IDwwPjsNCgkJCQlpbnRlcnJ1cHQtcGFy ZW50ID0gPCZzd2l0Y2hfaW50Yz47DQoJCQkJaW50ZXJydXB0cyA9IDwwPjsNCgkJCX07DQoJCQlw aHkxOiBwaHlAMSB7DQoJCQkJcmVnID0gPDE+Ow0KCQkJCWludGVycnVwdC1wYXJlbnQgPSA8JnN3 aXRjaF9pbnRjPjsNCgkJCQlpbnRlcnJ1cHRzID0gPDE+Ow0KCQkJfTsNCgkJCXBoeTI6IHBoeUAy IHsNCgkJCQlyZWcgPSA8Mj47DQoJCQkJaW50ZXJydXB0LXBhcmVudCA9IDwmc3dpdGNoX2ludGM+ Ow0KCQkJCWludGVycnVwdHMgPSA8Mj47DQoJCQl9Ow0KCQkJcGh5MzogcGh5QDMgew0KCQkJCXJl ZyA9IDwzPjsNCgkJCQlpbnRlcnJ1cHQtcGFyZW50ID0gPCZzd2l0Y2hfaW50Yz47DQoJCQkJaW50 ZXJydXB0cyA9IDwzPjsNCgkJCX07DQoJCQlwaHk0OiBwaHlANCB7DQoJCQkJcmVnID0gPDQ+Ow0K CQkJCWludGVycnVwdC1wYXJlbnQgPSA8JnN3aXRjaF9pbnRjPjsNCgkJCQlpbnRlcnJ1cHRzID0g PDEyPjsNCgkJCX07DQoJCX07DQoJfTsNCn07DQoNClRoYW5rcyBmb3IgbG9va2luZyBpbnRvIHRo aXMuIExldCBtZSBrbm93IGlmIHlvdSBuZWVkIGFueSBvdGhlciBpbmZvIG9yIA0Kd2FudCBzb21l dGhpbmcgdGVzdGVkLg0KDQpLaW5kIHJlZ2FyZHMsDQpBbHZpbg0KDQo+IA0KPj4NCj4+IFNvIGhv dyBpcyBpdCBzdXBwb3NlZCB0byBiZSBzb2x2ZWQgdGhlbj8gSW50dWl0aXZlbHkgdGhlICdtZGlv X2J1cyBTTUktMDowMCcNCj4+IGRldmljZSBzaG91bGQgbm90IGJlIGFkZGVkIHRvIHRoZSBkZWZl cnJlZCBsaXN0LCBpdCBzaG91bGQgaGF2ZSBldmVyeXRoaW5nDQo+PiBpdCBuZWVkcyByaWdodCBu b3cgKGFmdGVyIGFsbCwgaXQgd29ya3Mgd2l0aG91dCBmd19kZXZsaW5rKS4gTm8/DQo+Pg0KPj4g SXQgbWlnaHQgYmUgdGhlIGxhdGUgaG91ciBvdmVyIGhlcmUgdG9vLCBidXQgcmlnaHQgbm93IEkg anVzdCBkb24ndA0KPj4ga25vdy4gTGV0IG1lIGFkZCBTYXJhdmFuYSB0byB0aGUgZGlzY3Vzc2lv biB0b28sIGhlIG1hZGUgYW4gaW1wcmVzc2l2ZQ0KPj4gYW5hbHlzaXMgcmVjZW50bHkgb24gYSBQ SFkgcHJvYmluZyBpc3N1ZSB3aXRoIG1kaW8tbXV4LA0KPiANCj4gTG9sLCB0aGFua3MgZm9yIHRo ZSBraW5kIHdvcmRzLg0KPiANCj4+IHNvIHRoZSBQSFkNCj4+IGxpYnJhcnkgcHJvYmluZyBkZXBl bmRlbmNpZXMgc2hvdWxkIHN0aWxsIGJlIGZyZXNoIGluIGhpcyBtaW5kLCBtYXliZSBoZQ0KPj4g aGFzIGFuIGlkZWEgd2hhdCdzIHdyb25nLg0KPiANCj4gWzFdIC0gaHR0cHM6Ly9sb3JlLmtlcm5l bC5vcmcvbGttbC8yMDIxMDgxODAyMTcxNy4zMjY4MjU1LTEtc2FyYXZhbmFrQGdvb2dsZS5jb20v VC8jdT4+IA0KPiBUaGFua3MsDQo+IFNhcmF2YW5hDQo+IA0K