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 Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 255A7C25B4E for ; Sun, 22 Jan 2023 16:41:31 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229963AbjAVQla (ORCPT ); Sun, 22 Jan 2023 11:41:30 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:50752 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229766AbjAVQl3 (ORCPT ); Sun, 22 Jan 2023 11:41:29 -0500 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2043.outbound.protection.outlook.com [40.107.93.43]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 952D1196A3 for ; Sun, 22 Jan 2023 08:41:27 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JsAi3I3fXI4dJHTDiSGupldVzOFCqGQePQQUrGGVBfvJ+gTVQi+zfvX9xoJFOYtzDyllA6KHnF6JyCdkJvBn59Ran5jR+0S5Fvf9UO2hWwV1sQpbIqMFSeeJy0dh8iOGnFXQuR+0UjSPsfr/iR2/i0B9haQoupP6AiFfAmTqVdMgMO8kZd038yq/Eckjm0dvHMCxAF4qXD8vucXahNXv+kKTKcXl34SJjOaX0BqVgx41w0dvgdIqihd4/CW/U+k0ILy3Ny73LoZiTU31ZkrZBjFZ9GEIzmRRRLxsXJxDEYjEQNWoAvD6bMCP3n+pob/srPSInw7HpgBF4UJYgYImZw== 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=Ucjpf5lK5atZ8R7eyRRlIyOxMP3TUwueIQcl9akHYJ0=; b=Pn2S2CXnVuTVTjtoAJqPz2JG96NmqNEXEsa/s8BboHJlyMgom2s/fzRr8Scvwb0pHVNvoJ8O3bRu7KsDsz2Wtvq0U2Py12/X3wzHWBhXL3bnYNk6JXcvkyS9xemRvwiREVMhJIUCcc+hZYUVN6q+2L5ZDUu2YyOYO1GBzQo/QQL+wMYU1RTA9Cy1jsY+8et0oyhPZpLHRY3RHHHYoRj3XLtDMHYYiCg+BVw+mbAlFTvT44772GD1koPbpdw+SN4h570IZEjCGRLSMpv55EKDPLXVNfF6hH1JLNgNtODrDtbgniO+mMsP4ZzU2/P75bkgoseMsuakG7rx+jT50hf5ZQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Ucjpf5lK5atZ8R7eyRRlIyOxMP3TUwueIQcl9akHYJ0=; b=n3NewU8b/PfFHPB51dDnOWS2BVtrd0E15HlcGjtNYNhsaNZWoBk+ka52NBYkT6Zsc87VnYe+LEbyvJbR4BEPQ2JMYhtGtsCeZWBqyRmSwKIB/mfR1XXP71qEjE/Uu9HXW1QRh0O7ovzXmof/iaUMB9on6l8LTtjPoQNBoB2ktMs= Received: from DM6PR12MB4202.namprd12.prod.outlook.com (2603:10b6:5:219::22) by PH7PR12MB5593.namprd12.prod.outlook.com (2603:10b6:510:133::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6002.31; Sun, 22 Jan 2023 16:41:24 +0000 Received: from DM6PR12MB4202.namprd12.prod.outlook.com ([fe80::33a7:54d4:2de0:3939]) by DM6PR12MB4202.namprd12.prod.outlook.com ([fe80::33a7:54d4:2de0:3939%9]) with mapi id 15.20.6002.028; Sun, 22 Jan 2023 16:41:24 +0000 From: "Lucero Palau, Alejandro" To: Jiri Pirko , "Lucero Palau, Alejandro" CC: "netdev@vger.kernel.org" , "linux-net-drivers (AMD-Xilinx)" , "davem@davemloft.net" , "kuba@kernel.org" , "pabeni@redhat.com" , "edumazet@google.com" , "ecree.xilinx@gmail.com" Subject: Re: [PATCH net-next 6/7] sfc: add support for port_function_hw_addr_get devlink in ef100 Thread-Topic: [PATCH net-next 6/7] sfc: add support for port_function_hw_addr_get devlink in ef100 Thread-Index: AQHZK/nEMuz6Wh6wlUm2jwuAZPXg2K6lqlIAgAAq54CAAVElAIADgiYA Date: Sun, 22 Jan 2023 16:41:24 +0000 Message-ID: <70aaf8f3-5294-82c6-0ff3-fa8d9efbcca7@amd.com> References: <20230119113140.20208-1-alejandro.lucero-palau@amd.com> <20230119113140.20208-7-alejandro.lucero-palau@amd.com> <5db90827-a93b-d876-a312-420278c8caa5@amd.com> Accept-Language: en-US Content-Language: en-GB X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Microsoft-MacOutlook/16.53.21091200 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DM6PR12MB4202:EE_|PH7PR12MB5593:EE_ x-ms-office365-filtering-correlation-id: 7ba1ecdd-66fb-49dc-2500-08dafc977fdf x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: pGTxo4NOC8uzIfk8h4UPq2JSZDyqyXeYKc+/LExVG8+2+JDuSlovP19G0BEzNxNRKBqKcWMlkeJlqOEm+gDw/4Bj5PA+BNWfUtDo79ZUm44hFXNFuGeOjirh6q0JD0flxDzbZEV893+5eoMW/Ik0k8PzDMB4dx69FtE0E6CuqP5bgahC22GLD9DeMZMbZ+TqTSIhgMRTICzOFY7kZjgDTxtXtYulQiJv5PUKdC0u+185WzXa1B6FHySjD6zoxzXOTVSu4MK3EqjdERcKi+n+kReyv2sDV6VAXFYtfLYcPiJd6f/bw+H3YWsF1oyZNXKNf7g1ZMWB5SSlnSSmKRihdppnZbYwnahpgTvVGs/OWEW0Yukh9pvuQubMhwvp469PTmmJqBgJFl1di51uS0g5BaHzHg0m0108UBieFT7V/CQ2hHQMrX1j3yklcnfd6CLzoygOQEgfzPQmyWCUkxhTYrg8TpQsfgQ5FQ1BM0jZVowIuDuiEwFw9NSTCML0Hu1etKYJOyoGv4930Jp2QsIg1LVes6D3BCksC8JqWQRBfdSpduQUD9FaD+OoGLkTvDOuxyYGq6Km73sKzSclv4/jhNN6ZgqeH5WvNDF50b7bkMbIxnf1/Q2ODkiV/FSqJJ8GILYnICqGpRrOloRnfSRhB+p2h0HjvmeLv+J6FSY1x6WDayQkddC/HkyBMrPQ02bdsRGGD5X3ExiwACkSsALxWHxhITWkJRAPqblCiVwIpX8= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR12MB4202.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(4636009)(366004)(136003)(396003)(346002)(376002)(39860400002)(451199015)(31686004)(36756003)(38070700005)(86362001)(8676002)(66946007)(66556008)(64756008)(4326008)(66476007)(91956017)(2906002)(76116006)(5660300002)(66446008)(31696002)(8936002)(38100700002)(122000001)(71200400001)(478600001)(110136005)(316002)(54906003)(6486002)(41300700001)(186003)(26005)(6512007)(6506007)(83380400001)(53546011)(2616005)(45980500001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?RUdmQ2xHaEZnSDRaa3FJNTYyazBUT2xqc1ROMEwrSHU1cjl5MnRNSUFycXNq?= =?utf-8?B?d1pqeThwQVRMWnRyaG82K0FMSlVTSVBXK05iUFBUQlB5Zk10WU1aV1JYTW1N?= =?utf-8?B?b2ppcFd4MUlSRXNpemZMNkZKUFpFT3owWmdTRWM1RGZoeXFqLzBBK1BJL1p3?= =?utf-8?B?VTV5b1NaRHQyVUNwdmRoc0Z3UE8yUkx4bkFDbnNVb2xDWURsUERGSVoyOG90?= =?utf-8?B?djlRYlI0M29WQ3dJQ0ozcTU0ZG5ldnJlK2RnaXFrdVZRbko5NS9UTnNiTVNJ?= =?utf-8?B?UVF5ZnZRK3lXemhBN3ZIYlV5alozeWREakZvN0l6RHZzOFZmK3RQMXRSMXRk?= =?utf-8?B?RlJPM0ZUaGpXa0h5ODhROXFCU2pZU2tzakFQQ09TZHg1Slc4enBob2t6ay9T?= =?utf-8?B?ZnJidHlHQ3VTaFVnQlRuSWs5Tjc5Ykt1c09oMEFkWFdqaTRVdndUTHBSeXpX?= =?utf-8?B?eTdUMEZXdFRjakJhZEZqanFOak9Rd3BIeUxUSGV6clN2NFNVZVRHZkEwTnov?= =?utf-8?B?NWxZL2hSODVyMTZJZFU3Q1JTcmdmM2luNWc5UkdJZkdJYm1vVG9DclRvNTJW?= =?utf-8?B?b1FTaEViZHExRDF5d2pSNWtNSVNGRStwRVpva1I0ZTliRXAzRGFESHlLc3R0?= =?utf-8?B?aWNjdzREbjFsNGY4azZEWmRiZEoyMTc1cW85UEZhVHhoQ1FDTEp3QnJ2QU1t?= =?utf-8?B?NC8zY3hRaERvUUhQM2tReUZYNGhZRS8rV2E5TFpub2s2c3o0OUkxNDhYdmJV?= =?utf-8?B?ck9zVUppNExOY1NBMUhwK0dRSjlNRjZWUWdWMWNWOEJsUHlDYUhlWWd4QU5l?= =?utf-8?B?aGVxYkdEWVh0RkRTc252VzBCQmIzQU1HNnE4Y0xFLzlhTFp0UThYNXpURW1k?= =?utf-8?B?MUJEOTlrdERwM1Y5eEtsbUQydWh0NFZBMkRVcGFld0plZ1ZvNXh1MXBXamIz?= =?utf-8?B?K052Y3cvOXhOc1I0TlQxZU9Dd3lIWkR4L2ZyL3h4Q1YwcVdGakxWSVQ5dGhY?= =?utf-8?B?K1Rkc052anc5OHI3N1RmUVI0UEdKY2pLYmxrTXVZZHJSR0cwWmpub2tUUmhC?= =?utf-8?B?aW5tMlhUV1RtZDczbTREeUZLbEFvVXBObmplclg5V3ZTekkvQlZIVEhLUWYw?= =?utf-8?B?bkdlbVpVbVNqZmpLWWVleCtwOVRzeTYwM2E4QkMyYTVRSTFFMmFzOUFObGxS?= =?utf-8?B?NklhRlVHVy9nd2pLK0NoYmF1cGRUQnRKYTVBa29WRTVnL2dPbGNVUVJBM3RR?= =?utf-8?B?NktRQUxqOEErTGU0MnMrT2ZGT1FtVXEwcTdaVVBTOXh5eityNDV0dTdqdjFV?= =?utf-8?B?dkZJVEpmaHQrZXBxaEliVTZGZmpYTmNoKzJJOXVEaFhtdjdwY0dXbnpvWERO?= =?utf-8?B?UVZuaWEwZzZoMHJNMko3SjUxem9TcEN3SEpabzN0NTRjS1MvdkhZSVBJT1dl?= =?utf-8?B?QmxSczVmSWZQWkdSaVBoc0MycXJhc2c5UzVLdW0xN1BLTVpwa21vai9odmo3?= =?utf-8?B?MHFpME1sOUNkSnpaODJqZURoVEt0ZTNVd1VuUDRiL2dXaXBTaGQwK0laT0Vu?= =?utf-8?B?WnhhQm1SQ3FmSk41Wkw5ajdMazNpRG9ZL1AvL0hFZDdiakpUS0dpcHVxb21w?= =?utf-8?B?eWkxNmNPMWQzbmp3NXVLYjltMmtoOEhYZm1SemVDWmh2ODQ2NkJxbTZqVHRX?= =?utf-8?B?eVAxNnhUVHM5Nm5JakpVU1JRbTB5T0lTUVRRQk5OUzZPMUVVL2NpYXYyejhC?= =?utf-8?B?eWpkbm52Y3lRY2FzQWpwcGdiU1lXaWxmNTlCMVNIeCt6T0dncTV0bkoveTdB?= =?utf-8?B?TkM5Vm0rQnIvZHAyT09YeVFLUU9EM21YL09HTmNhdDBpQ3ljejV5cytvUVYx?= =?utf-8?B?Sk8yZjRWanpTdXA4QjdreG1Wd0FTWVV6ZzJ1dnBzcldkSC9HN3hLNUJxREQ1?= =?utf-8?B?VGVNQnFnRnVFVlU4S240YTllUkh2bmV4Q0p2S3pYSW1aNlpnRXFvTEsvd3Z4?= =?utf-8?B?S1ZLUzVSY2NOVlpnVEdXOWFXbXFyTTlMWTBpR0pUTjFaaUFUeldFeVVYR2FU?= =?utf-8?B?RlNJT2dRV3JjM1pMQU9LaDhicW54Vm92R3BuakZuTXREUWJIZ2pacVI1L2Uz?= =?utf-8?Q?jP+BN2MJf1Lm9ZLAKqnOnV7hg?= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM6PR12MB4202.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7ba1ecdd-66fb-49dc-2500-08dafc977fdf X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Jan 2023 16:41:24.1313 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 4IdkApAfx9uWcwpcrRIzdtKJ5aaznVWSyDzLyO8j7bCDAp32uWs1Zll4Kt4uLFHLCdJp/APvWuHcL2BULHX2ag== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB5593 Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org DQpPbiAxLzIwLzIzIDExOjA1LCBKaXJpIFBpcmtvIHdyb3RlOg0KPiBUaHUsIEphbiAxOSwgMjAy MyBhdCAwMzo1OTo0MFBNIENFVCwgYWxlamFuZHJvLmx1Y2Vyby1wYWxhdUBhbWQuY29tIHdyb3Rl Og0KPj4gT24gMS8xOS8yMyAxMjoyNSwgSmlyaSBQaXJrbyB3cm90ZToNCj4+PiBUaHUsIEphbiAx OSwgMjAyMyBhdCAxMjozMTozOVBNIENFVCwgYWxlamFuZHJvLmx1Y2Vyby1wYWxhdUBhbWQuY29t IHdyb3RlOg0KPj4+PiBGcm9tOiBBbGVqYW5kcm8gTHVjZXJvIDxhbGVqYW5kcm8ubHVjZXJvLXBh bGF1QGFtZC5jb20+DQo+Pj4+DQo+Pj4+IFVzaW5nIHRoZSBidWlsdGluIGNsaWVudCBoYW5kbGUg aWQgaW5mcmFzdHJ1Y3R1cmUsIHRoaXMgcGF0Y2ggYWRkcw0KPj4+PiBzdXBwb3J0IGZvciBvYnRh aW5pbmcgdGhlIG1hYyBhZGRyZXNzIGxpbmtlZCB0byBtcG9ydHMgaW4gZWYxMDAuIFRoaXMNCj4+ Pj4gaW1wbGllcyB0byBleGVjdXRlIGFuIE1DREkgY29tbWFuZCBmb3IgZ2V0dGluZyB0aGUgZGF0 YSBmcm9tIHRoZQ0KPj4+PiBmaXJtd2FyZSBmb3IgZWFjaCBkZXZsaW5rIHBvcnQuDQo+Pj4+DQo+ Pj4+IFNpZ25lZC1vZmYtYnk6IEFsZWphbmRybyBMdWNlcm8gPGFsZWphbmRyby5sdWNlcm8tcGFs YXVAYW1kLmNvbT4NCj4+Pj4gLS0tDQo+Pj4+IGRyaXZlcnMvbmV0L2V0aGVybmV0L3NmYy9lZjEw MF9uaWMuYyAgIHwgMjcgKysrKysrKysrKysrKysrKw0KPj4+PiBkcml2ZXJzL25ldC9ldGhlcm5l dC9zZmMvZWYxMDBfbmljLmggICB8ICAxICsNCj4+Pj4gZHJpdmVycy9uZXQvZXRoZXJuZXQvc2Zj L2VmMTAwX3JlcC5jICAgfCAgOCArKysrKw0KPj4+PiBkcml2ZXJzL25ldC9ldGhlcm5ldC9zZmMv ZWYxMDBfcmVwLmggICB8ICAxICsNCj4+Pj4gZHJpdmVycy9uZXQvZXRoZXJuZXQvc2ZjL2VmeF9k ZXZsaW5rLmMgfCA0NCArKysrKysrKysrKysrKysrKysrKysrKysrKw0KPj4+PiA1IGZpbGVzIGNo YW5nZWQsIDgxIGluc2VydGlvbnMoKykNCj4+Pj4NCj4+Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv bmV0L2V0aGVybmV0L3NmYy9lZjEwMF9uaWMuYyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L3NmYy9l ZjEwMF9uaWMuYw0KPj4+PiBpbmRleCBmNGU5MTM1OTNmMmIuLjQ0MDBjZTYyMjIyOCAxMDA2NDQN Cj4+Pj4gLS0tIGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvc2ZjL2VmMTAwX25pYy5jDQo+Pj4+ICsr KyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L3NmYy9lZjEwMF9uaWMuYw0KPj4+PiBAQCAtMTEyMSw2 ICsxMTIxLDMzIEBAIHN0YXRpYyBpbnQgZWYxMDBfcHJvYmVfbWFpbihzdHJ1Y3QgZWZ4X25pYyAq ZWZ4KQ0KPj4+PiAJcmV0dXJuIHJjOw0KPj4+PiB9DQo+Pj4+DQo+Pj4+ICsvKiBNQ0RJIGNvbW1h bmRzIGFyZSByZWxhdGVkIHRvIHRoZSBzYW1lIGRldmljZSBpc3N1aW5nIHRoZW0uIFRoaXMgZnVu Y3Rpb24NCj4+Pj4gKyAqIGFsbG93cyB0byBkbyBhbiBNQ0RJIGNvbW1hbmQgb24gYmVoYWxmIG9m IGFub3RoZXIgZGV2aWNlLCBtYWlubHkgUEZzIHNldHRpbmcNCj4+Pj4gKyAqIHRoaW5ncyBmb3Ig VkZzLg0KPj4+PiArICovDQo+Pj4+ICtpbnQgZWZ4X2VmMTAwX2xvb2t1cF9jbGllbnRfaWQoc3Ry dWN0IGVmeF9uaWMgKmVmeCwgZWZ4X3F3b3JkX3QgcGNpZWZuLCB1MzIgKmlkKQ0KPj4+PiArew0K Pj4+PiArCU1DRElfREVDTEFSRV9CVUYob3V0YnVmLCBNQ19DTURfR0VUX0NMSUVOVF9IQU5ETEVf T1VUX0xFTik7DQo+Pj4+ICsJTUNESV9ERUNMQVJFX0JVRihpbmJ1ZiwgTUNfQ01EX0dFVF9DTElF TlRfSEFORExFX0lOX0xFTik7DQo+Pj4+ICsJdTY0IHBjaWVmbl9mbGF0ID0gbGU2NF90b19jcHUo cGNpZWZuLnU2NFswXSk7DQo+Pj4+ICsJc2l6ZV90IG91dGxlbjsNCj4+Pj4gKwlpbnQgcmM7DQo+ Pj4+ICsNCj4+Pj4gKwlNQ0RJX1NFVF9EV09SRChpbmJ1ZiwgR0VUX0NMSUVOVF9IQU5ETEVfSU5f VFlQRSwNCj4+Pj4gKwkJICAgICAgIE1DX0NNRF9HRVRfQ0xJRU5UX0hBTkRMRV9JTl9UWVBFX0ZV TkMpOw0KPj4+PiArCU1DRElfU0VUX1FXT1JEKGluYnVmLCBHRVRfQ0xJRU5UX0hBTkRMRV9JTl9G VU5DLA0KPj4+PiArCQkgICAgICAgcGNpZWZuX2ZsYXQpOw0KPj4+PiArDQo+Pj4+ICsJcmMgPSBl ZnhfbWNkaV9ycGMoZWZ4LCBNQ19DTURfR0VUX0NMSUVOVF9IQU5ETEUsIGluYnVmLCBzaXplb2Yo aW5idWYpLA0KPj4+PiArCQkJICBvdXRidWYsIHNpemVvZihvdXRidWYpLCAmb3V0bGVuKTsNCj4+ Pj4gKwlpZiAocmMpDQo+Pj4+ICsJCXJldHVybiByYzsNCj4+Pj4gKwlpZiAob3V0bGVuIDwgc2l6 ZW9mKG91dGJ1ZikpDQo+Pj4+ICsJCXJldHVybiAtRUlPOw0KPj4+PiArCSppZCA9IE1DRElfRFdP UkQob3V0YnVmLCBHRVRfQ0xJRU5UX0hBTkRMRV9PVVRfSEFORExFKTsNCj4+Pj4gKwlyZXR1cm4g MDsNCj4+Pj4gK30NCj4+Pj4gKw0KPj4+PiBpbnQgZWYxMDBfcHJvYmVfbmV0ZGV2X3BmKHN0cnVj dCBlZnhfbmljICplZngpDQo+Pj4+IHsNCj4+Pj4gCXN0cnVjdCBlZjEwMF9uaWNfZGF0YSAqbmlj X2RhdGEgPSBlZngtPm5pY19kYXRhOw0KPj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZXRo ZXJuZXQvc2ZjL2VmMTAwX25pYy5oIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvc2ZjL2VmMTAwX25p Yy5oDQo+Pj4+IGluZGV4IGU1OTA0NDA3MjMzMy4uZjFlZDQ4MWMxMjYwIDEwMDY0NA0KPj4+PiAt LS0gYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9zZmMvZWYxMDBfbmljLmgNCj4+Pj4gKysrIGIvZHJp dmVycy9uZXQvZXRoZXJuZXQvc2ZjL2VmMTAwX25pYy5oDQo+Pj4+IEBAIC05NCw0ICs5NCw1IEBA IGludCBlZjEwMF9maWx0ZXJfdGFibGVfcHJvYmUoc3RydWN0IGVmeF9uaWMgKmVmeCk7DQo+Pj4+ DQo+Pj4+IGludCBlZjEwMF9nZXRfbWFjX2FkZHJlc3Moc3RydWN0IGVmeF9uaWMgKmVmeCwgdTgg Km1hY19hZGRyZXNzLA0KPj4+PiAJCQkgIGludCBjbGllbnRfaGFuZGxlLCBib29sIGVtcHR5X29r KTsNCj4+Pj4gK2ludCBlZnhfZWYxMDBfbG9va3VwX2NsaWVudF9pZChzdHJ1Y3QgZWZ4X25pYyAq ZWZ4LCBlZnhfcXdvcmRfdCBwY2llZm4sIHUzMiAqaWQpOw0KPj4+PiAjZW5kaWYJLyogRUZYX0VG MTAwX05JQ19IICovDQo+Pj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9zZmMv ZWYxMDBfcmVwLmMgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9zZmMvZWYxMDBfcmVwLmMNCj4+Pj4g aW5kZXggZmYwYzhkYTYxOTE5Li45NzRjOWZmOTAxYTAgMTAwNjQ0DQo+Pj4+IC0tLSBhL2RyaXZl cnMvbmV0L2V0aGVybmV0L3NmYy9lZjEwMF9yZXAuYw0KPj4+PiArKysgYi9kcml2ZXJzL25ldC9l dGhlcm5ldC9zZmMvZWYxMDBfcmVwLmMNCj4+Pj4gQEAgLTM2Miw2ICszNjIsMTQgQEAgYm9vbCBl ZjEwMF9tcG9ydF9vbl9sb2NhbF9pbnRmKHN0cnVjdCBlZnhfbmljICplZngsDQo+Pj4+IAkJICAg ICBtcG9ydF9kZXNjLT5pbnRlcmZhY2VfaWR4ID09IG5pY19kYXRhLT5sb2NhbF9tYWVfaW50ZjsN Cj4+Pj4gfQ0KPj4+Pg0KPj4+PiArYm9vbCBlZjEwMF9tcG9ydF9pc192ZihzdHJ1Y3QgbWFlX21w b3J0X2Rlc2MgKm1wb3J0X2Rlc2MpDQo+Pj4+ICt7DQo+Pj4+ICsJYm9vbCBwY2llX2Z1bmM7DQo+ Pj4+ICsNCj4+Pj4gKwlwY2llX2Z1bmMgPSBlZjEwMF9tcG9ydF9pc19wY2llX3ZuaWMobXBvcnRf ZGVzYyk7DQo+Pj4+ICsJcmV0dXJuIHBjaWVfZnVuYyAmJiAobXBvcnRfZGVzYy0+dmZfaWR4ICE9 IE1BRV9NUE9SVF9ERVNDX1ZGX0lEWF9OVUxMKTsNCj4+Pj4gK30NCj4+Pj4gKw0KPj4+PiB2b2lk IGVmeF9lZjEwMF9pbml0X3JlcHMoc3RydWN0IGVmeF9uaWMgKmVmeCkNCj4+Pj4gew0KPj4+PiAJ c3RydWN0IGVmMTAwX25pY19kYXRhICpuaWNfZGF0YSA9IGVmeC0+bmljX2RhdGE7DQo+Pj4+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9zZmMvZWYxMDBfcmVwLmggYi9kcml2ZXJz L25ldC9ldGhlcm5ldC9zZmMvZWYxMDBfcmVwLmgNCj4+Pj4gaW5kZXggOWNjYTQxNjE0OTgyLi43 NDg1M2NjYmM5MzcgMTAwNjQ0DQo+Pj4+IC0tLSBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L3NmYy9l ZjEwMF9yZXAuaA0KPj4+PiArKysgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9zZmMvZWYxMDBfcmVw LmgNCj4+Pj4gQEAgLTc1LDQgKzc1LDUgQEAgdm9pZCBlZnhfZWYxMDBfZmluaV9yZXBzKHN0cnVj dCBlZnhfbmljICplZngpOw0KPj4+PiBzdHJ1Y3QgbWFlX21wb3J0X2Rlc2M7DQo+Pj4+IGJvb2wg ZWYxMDBfbXBvcnRfb25fbG9jYWxfaW50ZihzdHJ1Y3QgZWZ4X25pYyAqZWZ4LA0KPj4+PiAJCQkg ICAgICAgc3RydWN0IG1hZV9tcG9ydF9kZXNjICptcG9ydF9kZXNjKTsNCj4+Pj4gK2Jvb2wgZWYx MDBfbXBvcnRfaXNfdmYoc3RydWN0IG1hZV9tcG9ydF9kZXNjICptcG9ydF9kZXNjKTsNCj4+Pj4g I2VuZGlmIC8qIEVGMTAwX1JFUF9IICovDQo+Pj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9l dGhlcm5ldC9zZmMvZWZ4X2RldmxpbmsuYyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L3NmYy9lZnhf ZGV2bGluay5jDQo+Pj4+IGluZGV4IGJiMTlkM2FkN2ZmZC4uMmE1N2M0ZjZkMmIyIDEwMDY0NA0K Pj4+PiAtLS0gYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9zZmMvZWZ4X2RldmxpbmsuYw0KPj4+PiAr KysgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9zZmMvZWZ4X2RldmxpbmsuYw0KPj4+PiBAQCAtNDI5 LDYgKzQyOSw0OSBAQCBzdGF0aWMgaW50IGVmeF9kZXZsaW5rX2FkZF9wb3J0KHN0cnVjdCBlZnhf bmljICplZngsDQo+Pj4+IAlyZXR1cm4gZXJyOw0KPj4+PiB9DQo+Pj4+DQo+Pj4+ICtzdGF0aWMg aW50IGVmeF9kZXZsaW5rX3BvcnRfYWRkcl9nZXQoc3RydWN0IGRldmxpbmtfcG9ydCAqcG9ydCwg dTggKmh3X2FkZHIsDQo+Pj4+ICsJCQkJICAgICBpbnQgKmh3X2FkZHJfbGVuLA0KPj4+PiArCQkJ CSAgICAgc3RydWN0IG5ldGxpbmtfZXh0X2FjayAqZXh0YWNrKQ0KPj4+PiArew0KPj4+PiArCXN0 cnVjdCBlZnhfZGV2bGluayAqZGV2bGluayA9IGRldmxpbmtfcHJpdihwb3J0LT5kZXZsaW5rKTsN Cj4+Pj4gKwlzdHJ1Y3QgbWFlX21wb3J0X2Rlc2MgKm1wb3J0X2Rlc2M7DQo+Pj4+ICsJZWZ4X3F3 b3JkX3QgcGNpZWZuOw0KPj4+PiArCXUzMiBjbGllbnRfaWQ7DQo+Pj4+ICsJaW50IHJjID0gMDsN Cj4+Pj4gKw0KPj4+PiArCW1wb3J0X2Rlc2MgPSBlZnhfbWFlX2dldF9tcG9ydChkZXZsaW5rLT5l ZngsIHBvcnQtPmluZGV4KTsNCj4+PiBEb250IHVzZSBwb3J0LT5pbmRleCwgbmV2ZXIuIEl0J3Mg ZGV2bGluayBpbnRlcm5hbC4gWW91IGhhdmUgcG9ydA0KPj4+IHBvaW50ZXIgcGFzc2VkIGhlcmUu IFVzdWFsbHksIHdoYXQgZHJpdmVycyBkbyBpcyB0byBlbWJlZA0KPj4+IHRoZSBzdHJ1Y3QgZGV2 bGlua19wb3J0IGluIHRoZSBkcml2ZXIgcG9ydCBzdHJ1Y3QuIFRoZW4geW91IGRvIGp1c3QNCj4+ PiBzaW1wbGUgY29udGFpbmVyIG9mIHRvIGdldCBpdCBoZXJlLiBNbHhzdyBleGFtcGxlOg0KPj4g SSBkbyBub3QgdW5kZXJzdGFuZCB0aGlzLiBQb3J0IGluZGV4IGlzIHNldCBieSB0aGUgZHJpdmVy IG5vdCBieSB0aGUNCj4+IGRldmxpbmsgaW50ZXJmYWNlIGltcGxlbWVudGF0aW9uLg0KPj4NCj4+ IFdoeSBjYW4gSSBub3QgdXNlIGl0Pw0KPiBXZWxsIHlvdSBjYW4sIGJ1dCB0aGluZ3MgY291bGQg YmUgZG9uZSBtdWNoIG5pY2VyLCB3aGVuIHlvdSB1c2UNCj4gZGV2bGlua19wb3J0IHBvaW50ZXIu IEFsc28sIGJldHRlciBub3QgdG8gYWNjZXNzIGRldmxpbmtfcG9ydCBzdHJ1Y3QNCj4gaW50ZXJu YWxzLCBkcml2ZXIgc2hvdWxkIG5ldmVyIG5lZWQgaXQuDQo+DQoNCkkgdGhpbmsgYWRkaW5nIGEg bmV3IGZpZWxkIGluIG1wb3J0IHN0cnVjdCBmb3IgdGhpcyBpcyBub3QgaGFyZCwgc28gSSdsbCAN CmZvbGxvdyB5b3VyIGFkdmljZSBhbmQgY2hhbmdlIGl0IGluIHRoZSBuZXh0IHBhdGNoc2V0IHZl cnNpb24uDQoNClRoYW5rcy4NCg0KPj4+IHN0YXRpYyB2b2lkICpfX2RsX3BvcnQoc3RydWN0IGRl dmxpbmtfcG9ydCAqZGV2bGlua19wb3J0KQ0KPj4+IHsNCj4+PiAgICAgICAgICAgcmV0dXJuIGNv bnRhaW5lcl9vZihkZXZsaW5rX3BvcnQsIHN0cnVjdCBtbHhzd19jb3JlX3BvcnQsIGRldmxpbmtf cG9ydCk7DQo+Pj4gfQ0KPj4+DQo+Pj4gc3RhdGljIGludCBtbHhzd19kZXZsaW5rX3BvcnRfc3Bs aXQoc3RydWN0IGRldmxpbmsgKmRldmxpbmssDQo+Pj4gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBzdHJ1Y3QgZGV2bGlua19wb3J0ICpwb3J0LA0KPj4+ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGNvdW50LA0KPj4+ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IG5ldGxpbmtfZXh0X2FjayAq ZXh0YWNrKQ0KPj4+IHsNCj4+PiAgICAgICAgICAgc3RydWN0IG1seHN3X2NvcmVfcG9ydCAqbWx4 c3dfY29yZV9wb3J0ID0gX19kbF9wb3J0KHBvcnQpOw0KPj4+IC4uLg0KPj4+DQo+Pj4NCj4+Pg0K Pj4+PiArCWlmICghbXBvcnRfZGVzYykNCj4+PiBUZWxsIHRoZSB1c2VyIHdoYXQncyB3cm9uZywg ZXh0YWNrIGlzIGhlcmUgZm9yIHRoYXQuDQo+Pj4NCj4+IEknbGwgZG8uDQo+Pj4+ICsJCXJldHVy biAtRUlOVkFMOw0KPj4+PiArDQo+Pj4+ICsJaWYgKCFlZjEwMF9tcG9ydF9vbl9sb2NhbF9pbnRm KGRldmxpbmstPmVmeCwgbXBvcnRfZGVzYykpDQo+Pj4+ICsJCWdvdG8gb3V0Ow0KPj4+PiArDQo+ Pj4+ICsJaWYgKGVmMTAwX21wb3J0X2lzX3ZmKG1wb3J0X2Rlc2MpKQ0KPj4+PiArCQlFRlhfUE9Q VUxBVEVfUVdPUkRfMyhwY2llZm4sDQo+Pj4+ICsJCQkJICAgICBQQ0lFX0ZVTkNUSU9OX1BGLCBQ Q0lFX0ZVTkNUSU9OX1BGX05VTEwsDQo+Pj4+ICsJCQkJICAgICBQQ0lFX0ZVTkNUSU9OX1ZGLCBt cG9ydF9kZXNjLT52Zl9pZHgsDQo+Pj4+ICsJCQkJICAgICBQQ0lFX0ZVTkNUSU9OX0lOVEYsIFBD SUVfSU5URVJGQUNFX0NBTExFUik7DQo+Pj4+ICsJZWxzZQ0KPj4+PiArCQlFRlhfUE9QVUxBVEVf UVdPUkRfMyhwY2llZm4sDQo+Pj4+ICsJCQkJICAgICBQQ0lFX0ZVTkNUSU9OX1BGLCBtcG9ydF9k ZXNjLT5wZl9pZHgsDQo+Pj4+ICsJCQkJICAgICBQQ0lFX0ZVTkNUSU9OX1ZGLCBQQ0lFX0ZVTkNU SU9OX1ZGX05VTEwsDQo+Pj4+ICsJCQkJICAgICBQQ0lFX0ZVTkNUSU9OX0lOVEYsIFBDSUVfSU5U RVJGQUNFX0NBTExFUik7DQo+Pj4+ICsNCj4+Pj4gKwlyYyA9IGVmeF9lZjEwMF9sb29rdXBfY2xp ZW50X2lkKGRldmxpbmstPmVmeCwgcGNpZWZuLCAmY2xpZW50X2lkKTsNCj4+Pj4gKwlpZiAocmMp IHsNCj4+Pj4gKwkJbmV0aWZfZXJyKGRldmxpbmstPmVmeCwgZHJ2LCBkZXZsaW5rLT5lZngtPm5l dF9kZXYsDQo+Pj4+ICsJCQkgICJGYWlsZWQgdG8gZ2V0IGNsaWVudCBJRCBmb3IgcG9ydCBpbmRl eCAldSwgcmMgJWRcbiIsDQo+Pj4+ICsJCQkgIHBvcnQtPmluZGV4LCByYyk7DQo+Pj4gRG9uJ3Qg d3JpdGUgdG8gZG1lc2csIHVzZSBleHRhY2sgbXNnIGluc3RlYWQuDQo+Pg0KPj4gSSdsbCBkby4N Cj4+DQo+PiBUaGFua3MNCj4+DQo+Pj4+ICsJCXJldHVybiByYzsNCj4+Pj4gKwl9DQo+Pj4+ICsN Cj4+Pj4gKwlyYyA9IGVmMTAwX2dldF9tYWNfYWRkcmVzcyhkZXZsaW5rLT5lZngsIGh3X2FkZHIs IGNsaWVudF9pZCwgdHJ1ZSk7DQo+Pj4gQWdhaW4sIGV4dGFjayB3b3VsZCBiZSBuaWNlIGhlcmUg aWYgKHJjKQ0KPj4+DQo+PiBBZ2FpbiwgSSdsbCBkby4NCj4+Pj4gK291dDoNCj4+Pj4gKwkqaHdf YWRkcl9sZW4gPSBFVEhfQUxFTjsNCj4+Pj4gKw0KPj4+PiArCXJldHVybiByYzsNCj4+Pj4gK30N Cj4+Pj4gKw0KPj4+PiBzdGF0aWMgaW50IGVmeF9kZXZsaW5rX2luZm9fZ2V0KHN0cnVjdCBkZXZs aW5rICpkZXZsaW5rLA0KPj4+PiAJCQkJc3RydWN0IGRldmxpbmtfaW5mb19yZXEgKnJlcSwNCj4+ Pj4gCQkJCXN0cnVjdCBuZXRsaW5rX2V4dF9hY2sgKmV4dGFjaykNCj4+Pj4gQEAgLTQ0Miw2ICs0 ODUsNyBAQCBzdGF0aWMgaW50IGVmeF9kZXZsaW5rX2luZm9fZ2V0KHN0cnVjdCBkZXZsaW5rICpk ZXZsaW5rLA0KPj4+Pg0KPj4+PiBzdGF0aWMgY29uc3Qgc3RydWN0IGRldmxpbmtfb3BzIHNmY19k ZXZsaW5rX29wcyA9IHsNCj4+Pj4gCS5pbmZvX2dldAkJCT0gZWZ4X2RldmxpbmtfaW5mb19nZXQs DQo+Pj4+ICsJLnBvcnRfZnVuY3Rpb25faHdfYWRkcl9nZXQJPSBlZnhfZGV2bGlua19wb3J0X2Fk ZHJfZ2V0LA0KPj4+PiB9Ow0KPj4+Pg0KPj4+PiBzdGF0aWMgc3RydWN0IGRldmxpbmtfcG9ydCAq ZWYxMDBfc2V0X2RldmxpbmtfcG9ydChzdHJ1Y3QgZWZ4X25pYyAqZWZ4LCB1MzIgaWR4KQ0KPj4+ PiAtLSANCj4+Pj4gMi4xNy4xDQo+Pj4+DQoNCg==