From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 382EDA034C; Mon, 24 Oct 2022 15:23:00 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 2220140A8B; Mon, 24 Oct 2022 15:23:00 +0200 (CEST) Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by mails.dpdk.org (Postfix) with ESMTP id DA1DD40685 for ; Mon, 24 Oct 2022 15:22:58 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1666617779; x=1698153779; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=XXaB9jlfhBuAtENEOeQGLg64mN6TRrHFGwF9tJJt4vA=; b=kyHEpNCDMbPSWvIEZ9FZGvYZ1PL/Xa7vP961eHPcZF4sQMHFgAQMNN+J Y/1mO5Hd9oWnNux7NzF210quqzw8db/MeEVByS++8mX0sGizjF3eMl8VF Iuv5sp1vPyGuFF9N1Dgzt8XYwYopf5kTeYTpGj7UaCXW5F+FGoW0hgKC7 LLxEqPpR7ISJV7JHelCg0VP8dyeVkTDma82AXv/I8/fvuRXak1A4ENUTM 5M3LlrMgCxDV930zAqUTyrFdWK+kLm0XDFsf2aMc3b6K+BrdV2iMCOaMO TRAL8Td6OMghbLtKrhS4/PctfoGeQ6DKWrsfBsoxZW+wOtkOS/1cF4HhN w==; X-IronPort-AV: E=McAfee;i="6500,9779,10510"; a="305023234" X-IronPort-AV: E=Sophos;i="5.95,209,1661842800"; d="scan'208";a="305023234" Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 24 Oct 2022 06:22:58 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10510"; a="960425720" X-IronPort-AV: E=Sophos;i="5.95,209,1661842800"; d="scan'208";a="960425720" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by fmsmga005.fm.intel.com with ESMTP; 24 Oct 2022 06:22:57 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Mon, 24 Oct 2022 06:22:57 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Mon, 24 Oct 2022 06:22:56 -0700 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31 via Frontend Transport; Mon, 24 Oct 2022 06:22:56 -0700 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (104.47.70.108) 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.2375.31; Mon, 24 Oct 2022 06:22:56 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Yz/bB1PZAtdCqIy5Jp8ctiF6nHj8FhNEkYM8nqgfBCmtrBZg0boN0V+dowqX8qJyHEyYKD42dGqDTxHWus3AhoYoSo8iU40cnDMVJk3WTmfRUvqfAIE8Z1YkKPtlQbzjeqtnx8Ne2vsawXuLO/TCDwbmV2Q+cxEziTF/w6bTW9uI8E3h7ZUN41t8iP3tyuU2zacCqWBy7fDdjQge3GxxXCnAuIXOnwVnr+/LumDv585pXkql/nJDW/woJMSgMJbn/jFRyl6GPk82IptdGhdnsBloZ72CBQjQxytJFaAeyqOE02dLbNjwreMbpXOSsljjw1ZWpqD3S1UYryRBdhytfg== 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=XXaB9jlfhBuAtENEOeQGLg64mN6TRrHFGwF9tJJt4vA=; b=d7E37ru+b8egYT4kl+w1yhKMDIQavoMBTJ87blhsWJ7aoDcZvCFXhAx4gNPIxFUg5R3EQCbtp6hPEtGfQU9Ss1SANSnxUbRLlmki0CKNXtRonFguOLtfRWORhb4eznCV9VrHHjfuxYNLgPlcomf3CDwfNjleQU5VLV+KITJFYlOGCKp7v7C5W+CyimYRpNqJCE5bKLdz6Xu5Z+UM2YxKAb7QG1mQFOf61O6zmumBzAsvw5hqMxtXDzhMZSVlB21oicyfbzX0xS4bCElGIPBTQdNGjs/N+9tXGn9o8ydP3/6yTO9quRFgZ+L7rVbiNVNnOUw1vMnKlvQNqc9uKSoV8g== 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 DM6PR11MB3723.namprd11.prod.outlook.com (2603:10b6:5:13f::25) by DM8PR11MB5575.namprd11.prod.outlook.com (2603:10b6:8:38::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5746.21; Mon, 24 Oct 2022 13:22:54 +0000 Received: from DM6PR11MB3723.namprd11.prod.outlook.com ([fe80::126d:f905:c1d6:dcb9]) by DM6PR11MB3723.namprd11.prod.outlook.com ([fe80::126d:f905:c1d6:dcb9%5]) with mapi id 15.20.5723.033; Mon, 24 Oct 2022 13:22:54 +0000 From: "Guo, Junfeng" To: Ferruh Yigit , "Zhang, Qi Z" , "Wu, Jingjing" , "Xing, Beilei" CC: "dev@dpdk.org" , "Li, Xiaoyun" , "awogbemila@google.com" , "Richardson, Bruce" , "hemant.agrawal@nxp.com" , "stephen@networkplumber.org" , "Xia, Chenbo" , "Zhang, Helin" , "Wang, Haiyue" Subject: RE: [PATCH v7 3/8] net/gve: add support for device initialization Thread-Topic: [PATCH v7 3/8] net/gve: add support for device initialization Thread-Index: AQHY5S58m4FlvfEV2ka8V4yEQzB5sq4YmpeAgARiaRCAAGSZAIAAJEkQ Date: Mon, 24 Oct 2022 13:22:54 +0000 Message-ID: References: <20221020103656.1068036-1-junfeng.guo@intel.com> <20221021091928.2674471-1-junfeng.guo@intel.com> <20221021091928.2674471-4-junfeng.guo@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.6.500.17 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: DM6PR11MB3723:EE_|DM8PR11MB5575:EE_ x-ms-office365-filtering-correlation-id: 0fa2a246-8e9b-406b-bce1-08dab5c2dc04 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 5c37dTyZpENaumKm2pCSvLKe4lqnSwaOE6B3tBs352k9t9wTd2HBxMSzYDQVXwg4G3EePpHPilGGQ7D31I9e5w7BDE8TRbraUld4TYfW0kUd9V6EaGDzWc59RZQHt/2zPa/bSiNujiGEEwbB1tS/RLp5aqBhD2NpRsLDDNkLvthtaT++SHlQJ5qtrJ9agnpU/u8OYCXDDpI+OLwmdo2UJYq1AJHbG6g52V40rF6124ErU1JpeRAqpH3+w0EcA0rPfWYOmTumwv30T4tb8w1DwHrZMnbG6VY4o9IHgJ8D/CpU2IkD7kxQTDQ+MrrFSp9/98CXucqg78gfOsq37rLgp7gURX/QxCVK/kFMbzSYTWG4kshtm61A0m1Xn6fK5Uxyfe4QZp+CwC/DKx6r6DenO9N4McwUe9KvAln08mHQbc8/mF0eQdb7WqUolAiD2Uk85XbgC5eGsgVMDw0jaMRDJacVPpt0OBq4Jf8IoZ/LUrkvUeo7jLVZ07gT5AfmURNpu6ip3vtAdhqaTQbyJMGG46PbIVURx3gFMSFaze9vxw2PX5x3pbB9oJv/x3xrKyBLpLPxCgsR45PEpgLLSUcQFPplkPWEAAaqwwKa2m66t0UNsZGNz+5Nj+J5GXKJYTC3nkrXC8liyvXnuWa2Xbig9+MdPstPOZON7KJzML+nNE+8tWtHDxmvpot989jVxTOSMxKqIVekXyYgZoxo3n/+9RG18t4boY2y3pLxwS4q82YWxXlOtNf79c39cnWZ7f3jptqh1TpvODaWmhEeh8JDEQ== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM6PR11MB3723.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(366004)(39860400002)(376002)(136003)(396003)(346002)(451199015)(83380400001)(86362001)(478600001)(71200400001)(107886003)(8676002)(26005)(316002)(64756008)(7696005)(6506007)(53546011)(110136005)(41300700001)(9686003)(52536014)(6636002)(8936002)(66476007)(66556008)(66946007)(76116006)(66446008)(54906003)(5660300002)(55016003)(38100700002)(4326008)(33656002)(122000001)(2906002)(186003)(38070700005)(82960400001); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?a3FPaGlvQ01uZDRZUkZJa2wzbzlJaDhxSTR1YmNOZEhmakZFdFhWYXVKVkZY?= =?utf-8?B?N0pNajZFQms5ZTNzQ0FDRy9zY1g1Y1ZoSFI4QXRaZDA3QTkzN2E3NzRaeGtj?= =?utf-8?B?NmxMNHIwaUg2NWRNQVl5dnBZSlY0ME8wUkdaUHJBaTE0L1NiYk5WTlp5YlI1?= =?utf-8?B?UkVZY3AybisxRUErdGpjUmg4RVBBR1Y4Mm03SE00QkNJRTFoZm85Q2R6OFdq?= =?utf-8?B?T3BCWXczdEhabTJLNStYWCtYTU9UUHc4UXlwRHMwK1NQVkNKd3BrOEl3czdu?= =?utf-8?B?Nkt4UlEycW5IRU9XbzJaVXB6cHJmVGtWVityQk40NFhCb2JmbUViOUtVZ2lD?= =?utf-8?B?bFZab0VhQkpFcnVIU2NkcDltci84TlFsTks5TENvWXZ2Yk5iZjVjbmVkWGRZ?= =?utf-8?B?c2VhVmtRaEp1ZXRZQUdqUEYrQXNZcUN6OWluKzdRZkk4YWd1T1N5VHZLK1lB?= =?utf-8?B?M05VUjJ0S1Y2Q2lGSnBiRkh6Y3JXMG10ZHhtK0s3TXhzeXA4K0NYR1RIVHNY?= =?utf-8?B?bnpheks0NGxFa3d4VnVHcVlVUW5xaWhsbFFPL1I2UGtqSmY0TVJ2ZnFob0ZD?= =?utf-8?B?SjZSWHBxUU5TbTg4dnFMZlpQb3QwTytqVGxtbU5pOU1iSmxsNU51aFFoanFt?= =?utf-8?B?NkpKTWk0WUJwditxUmtxQmtBRnZXQlhlZUFzeUk3ZVJlWGR1ekZMV0JGWXAy?= =?utf-8?B?TCtRa0NKT0ZnK0ZrckIxZnY1ZittV3c2MVBMOFVPUGtyTWlpb29uaUVlSzAr?= =?utf-8?B?VEY5c0hUMDJNYkFCR1Rnek4xQkdONmR5UmF2WXhIdUhDeXVTTUtqSnovRlNp?= =?utf-8?B?ZmhFVENWNk5zblJIcGJ4aG9taUR4akpNSm5ha1BDVkljOUVPRG04UXdMUzBU?= =?utf-8?B?dVA5YmM4TXRMeHk1SFlDRUZDYkxsV3RXeEdRWmFuZHNqMjZEUXJWcjhIVDEv?= =?utf-8?B?OXlnMGkyWkdDcSs1YytDdnFXaEcwNUhLMk14TkNHWlJiRnlsTXRuT1VXYTdM?= =?utf-8?B?Y3EvcUR3WmpieVEvak8rOEhrZGRnT2ZkM08yVlFWR3drYUFtVmVrS0RIZ3lr?= =?utf-8?B?OHYyNjdnNDU3K3ROSTN5aFNvYkJ6UWlKUFkwTmJ4NUlWQlFaSUE5dy9HK2hF?= =?utf-8?B?cEtWODlPbnd6YmRleHZLUXl0aVdIYUVJS29ja1plYXJUN2NiZloza2t0K2VU?= =?utf-8?B?Y3V2ZnN3Z2NkczA0NlAxVk94OGR4bnVBVE04SnN0bmsrdTEwR3FxeEgrSnFR?= =?utf-8?B?WmR4ajNhMkJWcVhWRk5CdUQrS004VG1JMlFORGZRM2NMckVkWllBd0lvU1A5?= =?utf-8?B?YmFpWVAyeHJRaXFpYWZXN1dNNWhURkVRVmNQUDFhWkVyc0c3OUdsSWpLcWhh?= =?utf-8?B?QlVFTkJHams0SGJNQXFNR01sTHl5N2pvOEdpNGtYT0NMTVk4U204K3dUSUJT?= =?utf-8?B?aTZvTnF2dnZzUVBMeDlBQjRQalZobzRCb1lacWkzc3U0aU5zSWZMU0J6a1FB?= =?utf-8?B?eXNBbFdEM0g0NVU2QndMWm9VVkRQQzJQTzRZMGx1QmUxdWM1TldtbU5mWVNX?= =?utf-8?B?ZVdEcWxRdGgySFhyK0pMbC9pS0lhTnlsQnk4SEtYZTJPdmJVN1liWVRZS3ZB?= =?utf-8?B?YXlxWXpZeWNxODVsUGREVDdqSDk4ZmhUYUtoTk5rQ0hENWhNN0VDcWtLcDZF?= =?utf-8?B?MU5aWXdSZWFSMUs1VFpBQWJjbzN2RERhQThwZUdzVkpwRHNpMXhTM2FmMW9I?= =?utf-8?B?OEZBN3NUbXRRZmF2TjNYQjlOejNqWVZaeXR6U010V0UxTTQyR0tCZHUzSDgw?= =?utf-8?B?Rjlscmt5Zk5UR3NzM0RWQlRveGhISDN0dExERjY5cjN3dzFEOTlGeitxYTZF?= =?utf-8?B?WVAwdVJTbzBBR0VOei9BbVRGMm1STzQzNC9yZGsvOFV1Q2g4bWplcmRiczJD?= =?utf-8?B?RTJMZWliUm5TRGRoMzZUMHczRG00YWw5K0VnTFYyOEp4bWUya0Mxd3JVOU5M?= =?utf-8?B?bkFNdXc0dkwxM2lyRXJYRldVcXdVQnF1UXNCNUU3VzgwTGN0N1k5cUxkNzNS?= =?utf-8?B?RHdjdGVSUG1sMXJLQlh6TWE1TVN3RVZIcDZ1V0ZjckFidTIxeDhGZUhYUzFu?= =?utf-8?Q?e7ro0+pWBbzXCDE3nFcVBZuAt?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM6PR11MB3723.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0fa2a246-8e9b-406b-bce1-08dab5c2dc04 X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Oct 2022 13:22:54.5771 (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: Mc8OpAQtEv16WUyu93IcGoaJ7mLMOeSWEt0xNSZLjmv5dj7MAnooZedmho5YHTe3gdZSbexKZmq8SNvm9aoAgA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM8PR11MB5575 X-OriginatorOrg: intel.com X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogRmVycnVoIFlpZ2l0IDxm ZXJydWgueWlnaXRAYW1kLmNvbT4NCj4gU2VudDogTW9uZGF5LCBPY3RvYmVyIDI0LCAyMDIyIDE4 OjQ3DQo+IFRvOiBHdW8sIEp1bmZlbmcgPGp1bmZlbmcuZ3VvQGludGVsLmNvbT47IFpoYW5nLCBR aSBaDQo+IDxxaS56LnpoYW5nQGludGVsLmNvbT47IFd1LCBKaW5namluZyA8amluZ2ppbmcud3VA aW50ZWwuY29tPjsgWGluZywNCj4gQmVpbGVpIDxiZWlsZWkueGluZ0BpbnRlbC5jb20+DQo+IENj OiBkZXZAZHBkay5vcmc7IExpLCBYaWFveXVuIDx4aWFveXVuLmxpQGludGVsLmNvbT47DQo+IGF3 b2diZW1pbGFAZ29vZ2xlLmNvbTsgUmljaGFyZHNvbiwgQnJ1Y2UNCj4gPGJydWNlLnJpY2hhcmRz b25AaW50ZWwuY29tPjsgaGVtYW50LmFncmF3YWxAbnhwLmNvbTsNCj4gc3RlcGhlbkBuZXR3b3Jr cGx1bWJlci5vcmc7IFhpYSwgQ2hlbmJvIDxjaGVuYm8ueGlhQGludGVsLmNvbT47DQo+IFpoYW5n LCBIZWxpbiA8aGVsaW4uemhhbmdAaW50ZWwuY29tPjsgV2FuZywgSGFpeXVlDQo+IDxoYWl5dWUu d2FuZ0BpbnRlbC5jb20+DQo+IFN1YmplY3Q6IFJlOiBbUEFUQ0ggdjcgMy84XSBuZXQvZ3ZlOiBh ZGQgc3VwcG9ydCBmb3IgZGV2aWNlIGluaXRpYWxpemF0aW9uDQo+IA0KPiBPbiAxMC8yNC8yMDIy IDY6MDQgQU0sIEd1bywgSnVuZmVuZyB3cm90ZToNCj4gPg0KPiA+DQo+ID4+IC0tLS0tT3JpZ2lu YWwgTWVzc2FnZS0tLS0tDQo+ID4+IEZyb206IEZlcnJ1aCBZaWdpdCA8ZmVycnVoLnlpZ2l0QGFt ZC5jb20+DQo+ID4+IFNlbnQ6IEZyaWRheSwgT2N0b2JlciAyMSwgMjAyMiAxNzo1MA0KPiA+PiBU bzogR3VvLCBKdW5mZW5nIDxqdW5mZW5nLmd1b0BpbnRlbC5jb20+OyBaaGFuZywgUWkgWg0KPiA+ PiA8cWkuei56aGFuZ0BpbnRlbC5jb20+OyBXdSwgSmluZ2ppbmcgPGppbmdqaW5nLnd1QGludGVs LmNvbT47IFhpbmcsDQo+ID4+IEJlaWxlaSA8YmVpbGVpLnhpbmdAaW50ZWwuY29tPg0KPiA+PiBD YzogZGV2QGRwZGsub3JnOyBMaSwgWGlhb3l1biA8eGlhb3l1bi5saUBpbnRlbC5jb20+Ow0KPiA+ PiBhd29nYmVtaWxhQGdvb2dsZS5jb207IFJpY2hhcmRzb24sIEJydWNlDQo+ID4+IDxicnVjZS5y aWNoYXJkc29uQGludGVsLmNvbT47IGhlbWFudC5hZ3Jhd2FsQG54cC5jb207DQo+ID4+IHN0ZXBo ZW5AbmV0d29ya3BsdW1iZXIub3JnOyBYaWEsIENoZW5ibyA8Y2hlbmJvLnhpYUBpbnRlbC5jb20+ Ow0KPiA+PiBaaGFuZywgSGVsaW4gPGhlbGluLnpoYW5nQGludGVsLmNvbT47IFdhbmcsIEhhaXl1 ZQ0KPiA+PiA8aGFpeXVlLndhbmdAaW50ZWwuY29tPg0KPiA+PiBTdWJqZWN0OiBSZTogW1BBVENI IHY3IDMvOF0gbmV0L2d2ZTogYWRkIHN1cHBvcnQgZm9yIGRldmljZQ0KPiBpbml0aWFsaXphdGlv bg0KPiA+Pg0KPiA+PiBPbiAxMC8yMS8yMDIyIDEwOjE5IEFNLCBKdW5mZW5nIEd1byB3cm90ZToN Cj4gPj4NCj4gPj4+DQo+ID4+PiBTdXBwb3J0IGRldmljZSBpbml0IGFuZCBhZGQgZm9sbG93aW5n IGRldm9wcyBza2VsZXRvbjoNCj4gPj4+ICAgIC0gZGV2X2NvbmZpZ3VyZQ0KPiA+Pj4gICAgLSBk ZXZfc3RhcnQNCj4gPj4+ICAgIC0gZGV2X3N0b3ANCj4gPj4+ICAgIC0gZGV2X2Nsb3NlDQo+ID4+ Pg0KPiA+Pj4gTm90ZSB0aGF0IGJ1aWxkIHN5c3RlbSAoaW5jbHVkaW5nIGRvYykgaXMgYWxzbyBh ZGRlZCBpbiB0aGlzIHBhdGNoLg0KPiA+Pj4NCj4gPj4+IFNpZ25lZC1vZmYtYnk6IEhhaXl1ZSBX YW5nIDxoYWl5dWUud2FuZ0BpbnRlbC5jb20+DQo+ID4+PiBTaWduZWQtb2ZmLWJ5OiBYaWFveXVu IExpIDx4aWFveXVuLmxpQGludGVsLmNvbT4NCj4gPj4+IFNpZ25lZC1vZmYtYnk6IEp1bmZlbmcg R3VvIDxqdW5mZW5nLmd1b0BpbnRlbC5jb20+DQo+ID4+DQo+ID4+IDwuLi4+DQo+ID4+DQo+ID4+ PiArc3RhdGljIGludA0KPiA+Pj4gK2d2ZV9kZXZfaW5pdChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmV0 aF9kZXYpDQo+ID4+PiArew0KPiA+Pj4gKyAgICAgICBzdHJ1Y3QgZ3ZlX3ByaXYgKnByaXYgPSBl dGhfZGV2LT5kYXRhLT5kZXZfcHJpdmF0ZTsNCj4gPj4+ICsgICAgICAgaW50IG1heF90eF9xdWV1 ZXMsIG1heF9yeF9xdWV1ZXM7DQo+ID4+PiArICAgICAgIHN0cnVjdCBydGVfcGNpX2RldmljZSAq cGNpX2RldjsNCj4gPj4+ICsgICAgICAgc3RydWN0IGd2ZV9yZWdpc3RlcnMgKnJlZ19iYXI7DQo+ ID4+PiArICAgICAgIHJ0ZV9iZTMyX3QgKmRiX2JhcjsNCj4gPj4+ICsgICAgICAgaW50IGVycjsN Cj4gPj4+ICsNCj4gPj4+ICsgICAgICAgZXRoX2Rldi0+ZGV2X29wcyA9ICZndmVfZXRoX2Rldl9v cHM7DQo+ID4+PiArDQo+ID4+PiArICAgICAgIGlmIChydGVfZWFsX3Byb2Nlc3NfdHlwZSgpICE9 IFJURV9QUk9DX1BSSU1BUlkpDQo+ID4+PiArICAgICAgICAgICAgICAgcmV0dXJuIDA7DQo+ID4+ PiArDQo+ID4+PiArICAgICAgIHBjaV9kZXYgPSBSVEVfREVWX1RPX1BDSShldGhfZGV2LT5kZXZp Y2UpOw0KPiA+Pj4gKw0KPiA+Pj4gKyAgICAgICByZWdfYmFyID0gcGNpX2Rldi0+bWVtX3Jlc291 cmNlW0dWRV9SRUdfQkFSXS5hZGRyOw0KPiA+Pj4gKyAgICAgICBpZiAoIXJlZ19iYXIpIHsNCj4g Pj4+ICsgICAgICAgICAgICAgICBQTURfRFJWX0xPRyhFUlIsICJGYWlsZWQgdG8gbWFwIHBjaSBi YXIhIik7DQo+ID4+PiArICAgICAgICAgICAgICAgcmV0dXJuIC1FTk9NRU07DQo+ID4+PiArICAg ICAgIH0NCj4gPj4+ICsNCj4gPj4+ICsgICAgICAgZGJfYmFyID0gcGNpX2Rldi0+bWVtX3Jlc291 cmNlW0dWRV9EQl9CQVJdLmFkZHI7DQo+ID4+PiArICAgICAgIGlmICghZGJfYmFyKSB7DQo+ID4+ PiArICAgICAgICAgICAgICAgUE1EX0RSVl9MT0coRVJSLCAiRmFpbGVkIHRvIG1hcCBkb29yYmVs bCBiYXIhIik7DQo+ID4+PiArICAgICAgICAgICAgICAgcmV0dXJuIC1FTk9NRU07DQo+ID4+PiAr ICAgICAgIH0NCj4gPj4+ICsNCj4gPj4+ICsgICAgICAgZ3ZlX3dyaXRlX3ZlcnNpb24oJnJlZ19i YXItPmRyaXZlcl92ZXJzaW9uKTsNCj4gPj4+ICsgICAgICAgLyogR2V0IG1heCBxdWV1ZXMgdG8g YWxsb2MgZXRoZXJkZXYgKi8NCj4gPj4+ICsgICAgICAgbWF4X3R4X3F1ZXVlcyA9IGlvcmVhZDMy YmUoJnJlZ19iYXItPm1heF90eF9xdWV1ZXMpOw0KPiA+Pj4gKyAgICAgICBtYXhfcnhfcXVldWVz ID0gaW9yZWFkMzJiZSgmcmVnX2Jhci0+bWF4X3J4X3F1ZXVlcyk7DQo+ID4+PiArDQo+ID4+PiAr ICAgICAgIHByaXYtPnJlZ19iYXIwID0gcmVnX2JhcjsNCj4gPj4+ICsgICAgICAgcHJpdi0+ZGJf YmFyMiA9IGRiX2JhcjsNCj4gPj4+ICsgICAgICAgcHJpdi0+cGNpX2RldiA9IHBjaV9kZXY7DQo+ ID4+PiArICAgICAgIHByaXYtPnN0YXRlX2ZsYWdzID0gMHgwOw0KPiA+Pj4gKw0KPiA+Pj4gKyAg ICAgICBwcml2LT5tYXhfbmJfdHhxID0gbWF4X3R4X3F1ZXVlczsNCj4gPj4+ICsgICAgICAgcHJp di0+bWF4X25iX3J4cSA9IG1heF9yeF9xdWV1ZXM7DQo+ID4+PiArDQo+ID4+PiArICAgICAgIGVy ciA9IGd2ZV9pbml0X3ByaXYocHJpdiwgZmFsc2UpOw0KPiA+Pj4gKyAgICAgICBpZiAoZXJyKQ0K PiA+Pj4gKyAgICAgICAgICAgICAgIHJldHVybiBlcnI7DQo+ID4+PiArDQo+ID4+PiArICAgICAg IGV0aF9kZXYtPmRhdGEtPm1hY19hZGRycyA9ICZwcml2LT5kZXZfYWRkcjsNCj4gPj4+ICsNCj4g Pj4NCj4gPj4gW2NvcHkvcGFzdGUgZnJvbSBwcmV2aW91cyB2ZXJzaW9uXQ0KPiA+Pg0KPiA+PiBX aGF0IGlzIHRoZSB2YWx1ZSBpbiAncHJpdi0+ZGV2X2FkZHInPw0KPiA+PiBFdmVuIGFsbG9jYXRp bmcgbWVtb3J5IGZvciAnZXRoX2Rldi0+ZGF0YS0+bWFjX2FkZHJzJyByZW1vdmVkIG9yDQo+IG5v dCwNCj4gPj4gYXMNCj4gPj4gd2UgZGlzY3Vzc2VkLCBpbmRlcGVuZGVudCBmcm9tIGl0LCBuZWVk IHRvIHNldCBhIHZhbGlkIHZhbHVlIHRvDQo+ID4+ICdwcml2LT5kZXZfYWRkcicuDQo+ID4NCj4g PiBUaGUgdmFsdWUgaW4gJ3ByaXYtPmRldl9hZGRyJyBpcyB0aGUgJ3JlYWwnIG1hYyBhZGRyZXNz IG9mIHRoZSBndm5pYyBwb3J0Lg0KPiA+IFNvIEkgc3VwcG9zZSB0aGF0IHRoZXJlIGlzIG5vIG5l ZWQgdG8gc2V0IGEgZGVmYXVsdCB2YWxpZCBvbmUsIHNpbmNlIHdlDQo+IGNhbg0KPiA+IGdldCB0 aGVtL2l0IGZyb20gdGhlIGJhY2tlbmQgaW4gZ3ZlX2FkbWlucV9kZXNjcmliZV9kZXZpY2UocHJp dikuDQo+IA0KPiBBY2ssIHRoYW5rcyBmb3IgY2xhcmlmaWNhdGlvbi4NCj4gDQo+IEluICdndmVf YWRtaW5xX2Rlc2NyaWJlX2RldmljZSgpJywgUlRFX0VUSEVSX0FERFJfUFJUX0ZNVCAmDQo+IFJU RV9FVEhFUl9BRERSX0JZVEVTIGNhbiBiZSB1c2VkIGZvciBsb2csIEkgd2lsbCBjb21tZW50IG9u IHBhdGNoLg0KDQpUaGFua3MgZm9yIHRoZSBhZHZpY2UhIFdpbGwgdHJ5IHRoaXMgaW4gdGhlIGNv bWluZyB2ZXJzaW9uLg0KDQo=