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 13E7EA034C; Mon, 14 Nov 2022 17:12:54 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id B02A840150; Mon, 14 Nov 2022 17:12:53 +0100 (CET) Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on2060.outbound.protection.outlook.com [40.107.92.60]) by mails.dpdk.org (Postfix) with ESMTP id B2D424014F for ; Mon, 14 Nov 2022 17:12:51 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VSWBZdRmjKzFJPIn1mJoeN1GoS04WrEJ1V3aotK+gYdfO0bRnibu5eoeXQWdE4za+Ywuv8TjkrZ7FUxQ5tRzi3OfzWK1Vl02ygcpwhJAFRP+BprNxbwbU0zoJ6NV6Jw14Dw4JHQzXnlCWb6pBUmaN+1xdMaXAtXrJR3oN8qPDdw4vvNGcAY5Q+evHMwBrB89h/awZhcUSURDmhHoSBjkp+J3u0xpmO39hbX9eSyU5h2TN62wvgqM3zcbBoo2uYiZZ4SqVhuTMSACaQUM0ei7LqMnaQlgYChsqZIi9867IelEDCWW5vz19+8sTrIYDiSwFD0w1HfDGyHCyktZvVU5fQ== 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=l+Mxs465hWe4HoWQuHIPowIowrkGnvlfrntmHLCCdb0=; b=h2tIkJ9WJ4mrlYoMVm1QYh1vg1jvXtRmg7PGfAQrDgWsJVd6Wkq+E2OFxBWMm1tszYVtFBUVAVmyaLBObQremqjoFrHXGbf/zsfqABd2mQE83n6XzSlRTUH6DHATiMbyrpHUl2uPDlVUTpYf0hntrHQ9SPXfPAozF2jU8uTsyKfFtXigi2aLmQMxya/4epUWE4Z/zS76CI30AkQoXwXJcODpRIgorBMPH42sS/BV068M2jNgVC/6KcWF5osD6CCZY+5oANl21OwkxNCCmOLXCn/njip01F1JNrv46hjKCJwVa6OG5yt0kLYYOuZr3c/fgyp7166H0qlnwaozBRZ1KQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=l+Mxs465hWe4HoWQuHIPowIowrkGnvlfrntmHLCCdb0=; b=mL0UcWBFE9eoNQ1foV2p87WpLHHfvMx89XaKWf2KtfXJxy25dDSNxGPorRVEg3w7iDUzarhUryfddIwWbB426b3jb7ZCfLG0vCIHTO+JkIXFwFTUnV6+Kgi+UH3xivwcKpKRXQnffq1sXlSkrWVh/W1BBGXG9YDWSDKHDTRriyhYfCPn+M8Q4FgXCy1rEqOdE4ecqXUsfag3uivE2oEUVXbUxLJzQweQpO9eKTGJj7grzvl8pvM9RgsYhFYM19bDaPAtRpHPDRKdhDXVe1EGWuo29Xj6MiWaGiSEunjvTwcxSq8ApPsZdFBVboyHRJLDWGyIiVwbe5nhawQjDih5Mw== Received: from MN0PR12MB6152.namprd12.prod.outlook.com (2603:10b6:208:3c4::21) by CY5PR12MB6058.namprd12.prod.outlook.com (2603:10b6:930:2d::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5813.17; Mon, 14 Nov 2022 16:12:50 +0000 Received: from MN0PR12MB6152.namprd12.prod.outlook.com ([fe80::e801:475:8c15:c789]) by MN0PR12MB6152.namprd12.prod.outlook.com ([fe80::e801:475:8c15:c789%8]) with mapi id 15.20.5791.026; Mon, 14 Nov 2022 16:12:49 +0000 From: Dariusz Sosnowski To: Ferruh Yigit , Aman Singh , Yuying Zhang , "NBU-Contact-Thomas Monjalon (EXTERNAL)" , Andrew Rybchenko CC: "dev@dpdk.org" Subject: RE: [PATCH v2 3/3] ethdev: document special cases of port start and stop Thread-Topic: [PATCH v2 3/3] ethdev: document special cases of port start and stop Thread-Index: AQHY9G6jrtDFdJa+20WSY0tItF82za4+fAoAgAAaW7A= Date: Mon, 14 Nov 2022 16:12:49 +0000 Message-ID: References: <20221109190639.886457-1-dsosnowski@nvidia.com> <20221109190639.886457-4-dsosnowski@nvidia.com> <2f11dfbb-fa91-6fcc-c88b-8723e6d55753@amd.com> In-Reply-To: <2f11dfbb-fa91-6fcc-c88b-8723e6d55753@amd.com> Accept-Language: en-US Content-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=nvidia.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: MN0PR12MB6152:EE_|CY5PR12MB6058:EE_ x-ms-office365-filtering-correlation-id: 5564a240-3858-4386-6a93-08dac65b1388 x-ld-processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 7AIyl6dEP3t9ic94DNm3N0ruYX8FL9Lixp1DOrN64kSE1QnqYeMl8zBG+Y/18S28rwE+vol8heC9BNc+vk5rKzG1mZcVWMOrybFWSwvs6A8sNyY5zYD6/LULbMAdCjpPbYGXakRM2d5z5mJDd8q2ANBZOvlhQLHBVye998d1ElTJ/4bMVIpZeiJkHSn7n/Db/abQRuwxDLHdOGYTqY9YcOqYeisje5fActcEf+tA/+1YXTEyGGeIibFxcU7isfrw07y+GAPv6EW+Yngr2rmw2j0ovbBbYWbqPtA1kzFsqQCXORBSNfTCnBeyOLzsTSXW+n8sDWOJxKWu/k2f/bVIjo9cRp2otbyQjGgDdnuPgR26B/dRS0XDZD7isgPrzKPwRGWO8wbDwn+cr+p/0VU6Nb7gec1tjYAUKpjDGIb62t1NLxGT5Cxx0WyJ4RovO8stu9ZMRWevhn8zCHSQVhvGWExU8WpKMyKwQS7aTyGNU9+UIpgEurT0GF4sn98mae6yr4XP3MaNjE815v2VP2KbyLOHFqxfzfsTdioqDoI4KHtK+NK4RN0mZND1aOw1c2tbC7fgoUyT6nIfPOg42QgbaUhc96AVOADh+qMh2kmCvlenpfxpfd8uoNr52D+cDRpYiyq1JQMvCYwrLVb2wgfmWO7Z5SHTOKVljpB5uvevYjm8qXxrvPGnB+woe24rj84d/MWFYKpuR2YVuCcmTXLDdqXiM8n02maYQBNSJQ1v1oN8LFgncIJfTgH1O5N/ySMmzcQuvScArLoWjLKy3vLY5g== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MN0PR12MB6152.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(4636009)(39860400002)(396003)(376002)(346002)(136003)(366004)(451199015)(186003)(110136005)(316002)(478600001)(71200400001)(26005)(53546011)(9686003)(6506007)(7696005)(38100700002)(122000001)(38070700005)(55016003)(86362001)(83380400001)(33656002)(66946007)(52536014)(66476007)(66556008)(66446008)(8936002)(76116006)(5660300002)(8676002)(4326008)(2906002)(41300700001)(64756008); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?MXBGWDBBQUlhM2VuQVo4VjNYZjlSSFF5bkMrZVFVdGQraE85a0U5aVg0Wmpn?= =?utf-8?B?dm4zNGtvU1l2UlUrR05vZHZhL1I4YVVJa292UVluUHVQc3I1aCtqVWIrbzNo?= =?utf-8?B?KzBtSCtaT3ZLZDNsOEJaU2JHQytjcnhGeHREQytBWlF2R1JyVEVpb2ptV1o4?= =?utf-8?B?RHBqSWVUUWpKcGhLRmFvOXpLTzlseERMOC9waFBVdjBqcTBrOGhWTnRyUGJJ?= =?utf-8?B?R1NUTy9kSWcvaVQ0RE5jeEFXaTFGV3Nuc3JhRFgzYllpN01EQk92eXpOalJx?= =?utf-8?B?bGpnVml5VmVpNUR1M3U2YkdUc3FRNjMvcE5nOHRKUU9BUnpCYno1dkkwUkhi?= =?utf-8?B?SlM0dGx3NlR2U0NOS0EyTEJ2VXNBbmhUUEpEQXpmeDRDSlRTWjd3aUJkR0hr?= =?utf-8?B?d1ZlSjVPV3BpRkxZTEJXYnpHR2laZFhZOVJCSGZVbmtUYkdrcnhJMFh4V3g1?= =?utf-8?B?NEVxNjU3QkVzaVlNN2poU2RVQ0hJa0ZVUUNBZUtPY2hIR1JNbnNmUnRyY2da?= =?utf-8?B?MnIxR3FHYzBWUDBJbS9ENEpIVE82dmdjbkQ5T2x6cW84dTFURjhZeVRRZG1T?= =?utf-8?B?YUlNTmc1V3d4TFE1bW0vd2VpbG5UZmVja1ZSNEZxczZvTVpMWDJEOUYzeHo3?= =?utf-8?B?ZCtmN2FBYmtVQXVZd3k0bzZXS0duRlJhVCtpQmpVdDBMMHdsYVpHaElhUDF1?= =?utf-8?B?aTRNRkZtdXRZYmxuQ0tBRVdvbmp0UWhFUWlyc0lsd2JnTjZleE1SYzhFQzY3?= =?utf-8?B?ekNpQitkUDVIMWl1dmxsMERoOElHN0dqRjhDR09WOXhoa3MyWjFpK2JKSEp2?= =?utf-8?B?RWE1ZW5uUTVzV2V5SS9ObzYzRG9iT0sweC9SUjlqNnZTMkZzVjdVd2F3RnRm?= =?utf-8?B?Q1k2WmxKcnZlL2hoUWwyMG95SDd6VFFQK2VvNDB2UmtGV1ZXN2wveWFrTU5a?= =?utf-8?B?enkvWVRnR0h1ZXhVcFdtMVVWdDlReUpxQkVhRWlKZ0VYVEFSMVhJaHVlbW5t?= =?utf-8?B?S3ZCbWlIVmxrRitudkJZUUw2NVNLRTFJUDFkamxPL0ZIdE5JZ3pMMlBhQkZT?= =?utf-8?B?YlR4blIyWGYrT0RiTUpDNGlSakx0QXBFYVM0R01YTTFzaGp5aWVpcGozOXBQ?= =?utf-8?B?eEVKVzVPQnlTMVQ5amx5RlNaNytKOUE0L1IyL01WMUFjZ3FKck5GYTJmemF1?= =?utf-8?B?NTJwZmNwTkYvbFcxSXEzQXE1YVpDTlF3bjRSSGNKTSt3TnEwUE15RzI4RWVa?= =?utf-8?B?QVU1djMrZUZxTS9HRWkvYVNZdkRsSStQNGZ6bmZCWjlNTDFKWU90THZ2VE9T?= =?utf-8?B?VVpsQVh1MWRxczZLQjgrdURjRENvNDJ1elVUVDdrSi9XNlFXbzdUR1dESCtP?= =?utf-8?B?RTN6Nit5cDVMbjY1dU9HOXdwSXhSVUdFejBKdzNtZERGcXIyTWt6UzlYa1N3?= =?utf-8?B?ck5vQ3lKenErYjRPTEtrUXhhUEVsKzVYRUNjQ0h2TkpqSFlFNHhaWDI3cDdl?= =?utf-8?B?QnR5UXovRmxMSWVubHBia1ZrWlByQWpPVjdGYnlHTis0MXQzWktZdGNFWlFD?= =?utf-8?B?bTB2blRtbk9XZHRrejYxQlg4YUVoS0N4OWZyd2xTUUhMWDdMcGREcERjZEJO?= =?utf-8?B?Q1JyK1lqS3RwR2VVNEZXK0JoZlo5K0t6Tlk0ejcvb0wwNGltTmN6czJKRGlo?= =?utf-8?B?L1duMC9MNnFBZjl1RmxETHdmVWh2Y3dPTk8xNEYxajNLWnc1eXFkRlU2eGxh?= =?utf-8?B?QlNsVGo1eEtTUDlLbldSN3F5eFJPY2ZZODd0bVBjMHFEQjl4d29YWmZwYmlM?= =?utf-8?B?WWIzYnVMVk40WTltY0JLZ2wzUTFwYTFjTDBQNGU3K3ZxbjVQVFVTVFNmb1Fv?= =?utf-8?B?bTJ6Q0diNGhNZEhGQWFtRmEwaTdwZWo0QitGdjlRczhJdCtwVm5BNTM3MWdB?= =?utf-8?B?dURmVURBbzVvZmRMdDIxNjU2MzMyVWFGUGVxUkNQR284SXM1MzMwUnRZaG0r?= =?utf-8?B?VUdGRWIvUEVRVGxKNmpXOGxWbDAxN0pYSUhGSFplS3FQeUNkQTE0MkZOVllE?= =?utf-8?B?TjJrbEpmUmdDQ3BVdWJ0Q25MUHNNeGYxQnUzOGIyV0V1aUxqMzBYQlYrbUNJ?= =?utf-8?Q?2KeW75joCkILuWGEFZy86tOy7?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MN0PR12MB6152.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5564a240-3858-4386-6a93-08dac65b1388 X-MS-Exchange-CrossTenant-originalarrivaltime: 14 Nov 2022 16:12:49.8221 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: RM04SpBEFIjJr4dWkvNOQZ5j9xN5mZu5QDEX3XuRGRuodGU63Kfvd5QuZNqDVkJzm13KOuPv8f4jLXonZ7hu1A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY5PR12MB6058 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 SGkgRmVycnVoLA0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IEZlcnJ1 aCBZaWdpdCA8ZmVycnVoLnlpZ2l0QGFtZC5jb20+DQo+IFNlbnQ6IE1vbmRheSwgTm92ZW1iZXIg MTQsIDIwMjIgMTU6MDgNCj4gVG86IERhcml1c3ogU29zbm93c2tpIDxkc29zbm93c2tpQG52aWRp YS5jb20+OyBBbWFuIFNpbmdoDQo+IDxhbWFuLmRlZXAuc2luZ2hAaW50ZWwuY29tPjsgWXV5aW5n IFpoYW5nIDx5dXlpbmcuemhhbmdAaW50ZWwuY29tPjsNCj4gTkJVLUNvbnRhY3QtVGhvbWFzIE1v bmphbG9uIChFWFRFUk5BTCkgPHRob21hc0Btb25qYWxvbi5uZXQ+Ow0KPiBBbmRyZXcgUnliY2hl bmtvIDxhbmRyZXcucnliY2hlbmtvQG9rdGV0bGFicy5ydT4NCj4gQ2M6IGRldkBkcGRrLm9yZw0K PiBTdWJqZWN0OiBSZTogW1BBVENIIHYyIDMvM10gZXRoZGV2OiBkb2N1bWVudCBzcGVjaWFsIGNh c2VzIG9mIHBvcnQgc3RhcnQgYW5kDQo+IHN0b3ANCj4gDQo+IEV4dGVybmFsIGVtYWlsOiBVc2Ug Y2F1dGlvbiBvcGVuaW5nIGxpbmtzIG9yIGF0dGFjaG1lbnRzDQo+IA0KPiANCj4gT24gMTEvOS8y MDIyIDc6MDYgUE0sIERhcml1c3ogU29zbm93c2tpIHdyb3RlOg0KPiA+IFRoaXMgcGF0Y2ggY2xh cmlmaWVzIHRoZSBoYW5kbGluZyBvZiBmb2xsb3dpbmcgY2FzZXMgaW4gdGhlIGV0aGRldiBBUEkN Cj4gPiBkb2NzOg0KPiA+DQo+ID4gLSBJZiBydGVfZXRoX2Rldl9zdGFydCgpIHJldHVybnMgKC1F QUdBSU4pIGZvciBzb21lIHBvcnQsDQo+ID4gICAgaXQgY2Fubm90IGJlIHN0YXJ0ZWQgdW50aWwg b3RoZXIgcG9ydCBpcyBzdGFydGVkLg0KPiA+IC0gSWYgcnRlX2V0aF9kZXZfc3RvcCgpIHJldHVy bnMgKC1FQlVTWSkgZm9yIHNvbWUgcG9ydCwNCj4gPiAgICBpdCBjYW5ub3QgYmUgc3RvcHBlZCB1 bnRpbCBvdGhlciBwb3J0IGlzIHN0b3BwZWQuDQo+ID4NCj4gDQo+IEVBR0FJTiBhbmQgRUJVU1kg aGFzIGtpbmQgb2Ygc3RhbmRhcmQgbWVhbmluZywgSSBhbSBub3Qgc3VyZSBpZiBpdCBpcyBnb29k DQo+IGlkZWEgdG8gY2hhbmdlIHRoaXMgbWVhbmluZyB0byBhIHNwZWNpZmljICJkZXBlbmRlbmN5 IHRvIG90aGVyIHBvcnQiIHVzZQ0KPiBjYXNlLg0KPiBXaHkgbm90IGtlZXAgY29tbW9uIGdlbmVy aWMgbWVhbmluZ3Mgb2YgdGhlIGVycm9yIGNvZGVzPw0KDQpJbiBteSBvcGluaW9uLCB1c2luZyBz dGFuZGFyZCBlcnJvciBtZWFuaW5ncyBmb3IgRUFHQUlOIGFuZCBFQlVTWSB3b3VsZCBtYWtlIHRo ZSByZXR1cm5lZCBlcnJvcnMgdG9vIHZhZ3VlIGZvciB0aGUgQVBJIHVzZXIuDQpJZiB3ZSB1c2Vk IHRoZSBzdGFuZGFyZCBtZWFuaW5ncywgaXQncyBub3QgY2xlYXIgd2h5IHRoZSBwb3J0IGNhbm5v dCBiZSBzdGFydGVkIG9yIHN0b3BwZWQgYW5kIHdoYXQgdGhlIHVzZXIgc2hvdWxkIGRvIGFib3V0 IGl0Lg0KUHJvdmlkaW5nIHNwZWNpZmljIHJlYXNvbnMgaW4gdGhlIEFQSSBtYWtlcyBpdCBtb3Jl IHVuZGVyc3RhbmRhYmxlLiBPbiB0b3Agb2YgdGhhdCwgdGhleSBhcmUgInN1YmNhc2VzIiBvZiBz dGFuZGFyZCBlcnJvcnM6DQoNCi0gIlBvcnQgY2Fubm90IGJlIHN0b3BwZWQgYmVjYXVzZSBhbm90 aGVyIHBvcnQgZGVwZW5kcyBvbiBpdCIgaXMgYSBzcGVjaWFsIGNhc2Ugb2YgIkRldmljZSBvciBy ZXNvdXJjZSBpcyBidXN5Ii4NCi0gIlBvcnQgY2Fubm90IGJlIHN0YXJ0ZWQgYmVjYXVzZSBpdCBk ZXBlbmRzIG9uIG90aGVyIHBvcnQgYmVpbmcgc3RhcnRlZCIgaXMgYSBzcGVjaWFsIGNhc2Ugb2Yg IlJlc291cmNlIHRlbXBvcmFyaWx5IHVuYXZhaWxhYmxlIi4NCg0KSG93ZXZlciwgSSBzZWUgeW91 ciBjb25jZXJuLCBzbyBtYXliZSBsZXQncyBkbyB0aGUgZm9sbG93aW5nLiBUbyBub3QgbGltaXQg dGhlIEFQSSwgd2UgY291bGQgZm9yIGV4YW1wbGU6DQoNCi0gSW4gdGhlIGRvY3VtZW50YXRpb24g b2YgcmV0dXJuZWQgdmFsdWVzIC0gcHJvdmlkZSB0aGUgZ2VuZXJpYyBtZWFuaW5nIGZvciB0aGUg RUFHQUlOIGFuZCBFQlVTWToNCiAgICAtIHJ0ZV9ldGhfZGV2X3N0b3AoKTogRUJVU1kgaXMgcmV0 dXJuZWQgaWYgc3RvcHBpbmcgdGhlIHBvcnQgaXMgbm90IGFsbG93ZWQgaW4gdGhlIGN1cnJlbnQg c3RhdGUuDQogICAgLSBydGVfZXRoX2Rldl9zdGFydCgpOiBFQUdBSU4gaXMgcmV0dXJuZWQgaWYg c3RhcnQgb3BlcmF0aW9uIG11c3QgYmUgcmV0cmllZC4NCi0gSW4gdGhlIGZ1bmN0aW9uIGRlc2Ny aXB0aW9uIHByb3ZpZGUgdGhlIHNwZWNpZmljIHVzZSBjYXNlIG9mICJkZXBlbmRlbmN5IG9uIG90 aGVyIHBvcnQiIGFzIGFuIGV4YW1wbGUNCiAgb2YgRUJVU1kvRUFHQUlOIHVzYWdlDQogICAgLSBE ZXBlbmRpbmcgb24gdGhlIHVzZSBjYXNlcyBlbWVyZ2luZyBpbiB0aGUgZnV0dXJlLCBuZXcgZXhh bXBsZXMgY2FuIGJlIGFkZGVkLA0KICAgICAgaWYgRUJVU1kvRUFHQUlOIGlzIHN1aXRhYmxlIGZv ciB0aGUgbmV3IHVzZSBjYXNlcy4NCg0KV2hhdCBkbyB5b3UgdGhpbms/DQoNCj4gPiBXaGVuIHN0 b3BwaW5nIHRoZSBwb3J0IGluIHRlc3RwbWQgZmFpbHMgZHVlIHRvICgtRUJVU1kpLCBwb3J0J3Mg c3RhdGUNCj4gPiBpcyBzd2l0Y2hlZCBiYWNrIHRvIFNUQVJURUQgdG8gYWxsb3cgdXNlcnMgdG8g bWFudWFsbHkgcmV0cnkgc3RvcHBpbmcNCj4gPiB0aGUgcG9ydC4NCj4gPg0KPiA+IE5vIGFkZGl0 aW9uYWwgY2hhbmdlcyBpbiB0ZXN0cG1kIGFyZSByZXF1aXJlZCB0byBoYW5kbGUgZmFpbHVyZSB0 bw0KPiA+IHN0YXJ0IHBvcnQgd2l0aCAoLUVBR0FJTikuDQo+ID4gSWYgcnRlX2V0aF9kZXZfc3Rh cnQoKSBmYWlscywgcG9ydCdzIHN0YXRlIGlzIHN3aXRjaGVkIHRvIFNUT1BQRUQgYW5kDQo+ID4g dXNlcnMgYXJlIGFsbG93ZWQgdG8gcmV0cnkgdGhlIG9wZXJhdGlvbi4NCj4gPg0KPiA+IFNpZ25l ZC1vZmYtYnk6IERhcml1c3ogU29zbm93c2tpIDxkc29zbm93c2tpQG52aWRpYS5jb20+DQo+ID4g LS0tDQo+ID4gICBhcHAvdGVzdC1wbWQvdGVzdHBtZC5jICB8IDEwICsrKysrKysrKy0NCj4gPiAg IGxpYi9ldGhkZXYvcnRlX2V0aGRldi5oIHwgIDkgKysrKysrKysrDQo+ID4gICAyIGZpbGVzIGNo YW5nZWQsIDE4IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkNCj4gPg0KPiA+IGRpZmYgLS1n aXQgYS9hcHAvdGVzdC1wbWQvdGVzdHBtZC5jIGIvYXBwL3Rlc3QtcG1kL3Rlc3RwbWQuYyBpbmRl eA0KPiA+IGFhN2VhMjlmMTUuLjVhNjllM2M3N2EgMTAwNjQ0DQo+ID4gLS0tIGEvYXBwL3Rlc3Qt cG1kL3Rlc3RwbWQuYw0KPiA+ICsrKyBiL2FwcC90ZXN0LXBtZC90ZXN0cG1kLmMNCj4gPiBAQCAt MzExOCw2ICszMTE4LDcgQEAgc3RvcF9wb3J0KHBvcnRpZF90IHBpZCkNCj4gPiAgICAgICBpbnQg bmVlZF9jaGVja19saW5rX3N0YXR1cyA9IDA7DQo+ID4gICAgICAgcG9ydGlkX3QgcGVlcl9wbFtS VEVfTUFYX0VUSFBPUlRTXTsNCj4gPiAgICAgICBpbnQgcGVlcl9waTsNCj4gPiArICAgICBpbnQg cmV0Ow0KPiA+DQo+ID4gICAgICAgaWYgKHBvcnRfaWRfaXNfaW52YWxpZChwaWQsIEVOQUJMRURf V0FSTikpDQo+ID4gICAgICAgICAgICAgICByZXR1cm47DQo+ID4gQEAgLTMxNjcsOSArMzE2OCwx NiBAQCBzdG9wX3BvcnQocG9ydGlkX3QgcGlkKQ0KPiA+ICAgICAgICAgICAgICAgaWYgKHBvcnQt PmZsb3dfbGlzdCkNCj4gPiAgICAgICAgICAgICAgICAgICAgICAgcG9ydF9mbG93X2ZsdXNoKHBp KTsNCj4gPg0KPiA+IC0gICAgICAgICAgICAgaWYgKGV0aF9kZXZfc3RvcF9tcChwaSkgIT0gMCkN Cj4gPiArICAgICAgICAgICAgIHJldCA9IGV0aF9kZXZfc3RvcF9tcChwaSk7DQo+ID4gKyAgICAg ICAgICAgICBpZiAocmV0ICE9IDApIHsNCj4gPiAgICAgICAgICAgICAgICAgICAgICAgUlRFX0xP RyhFUlIsIEVBTCwgInJ0ZV9ldGhfZGV2X3N0b3AgZmFpbGVkIGZvciBwb3J0ICV1XG4iLA0KPiA+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBpKTsNCj4gPiArICAgICAgICAgICAgICAg ICAgICAgaWYgKHJldCA9PSAtRUJVU1kpIHsNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAvKiBBbGxvdyB0byByZXRyeSBzdG9wcGluZyB0aGUgcG9ydC4gKi8NCj4gPiArICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBwb3J0LT5wb3J0X3N0YXR1cyA9IFJURV9QT1JUX1NUQVJU RUQ7DQo+IA0KPiBJZiB0aGUgc3RvcCgpIGZhaWxlZCwgaXNuJ3QgdGhlIGN1cnJlbnQgc3RhdHVz IHNob3VsZCBiZSBTVEFSVEVEIGluZGVwZW5kZW50DQo+IGZyb20gdGhlIGVycm9yIHR5cGU/DQoN CkNvcnJlY3QuIEknbGwgdXBkYXRlIGl0IGluIHYzLg0KDQo+ID4gKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgY29udGludWU7DQo+ID4gKyAgICAgICAgICAgICAgICAgICAgIH0NCj4gPiAr ICAgICAgICAgICAgIH0NCj4gPg0KPiA+ICAgICAgICAgICAgICAgaWYgKHBvcnQtPnBvcnRfc3Rh dHVzID09IFJURV9QT1JUX0hBTkRMSU5HKQ0KPiA+ICAgICAgICAgICAgICAgICAgICAgICBwb3J0 LT5wb3J0X3N0YXR1cyA9IFJURV9QT1JUX1NUT1BQRUQ7IGRpZmYgLS1naXQNCj4gPiBhL2xpYi9l dGhkZXYvcnRlX2V0aGRldi5oIGIvbGliL2V0aGRldi9ydGVfZXRoZGV2LmggaW5kZXgNCj4gPiAx M2ZlNzNkNWEzLi5hYmY1YTI0ZjkyIDEwMDY0NA0KPiA+IC0tLSBhL2xpYi9ldGhkZXYvcnRlX2V0 aGRldi5oDQo+ID4gKysrIGIvbGliL2V0aGRldi9ydGVfZXRoZGV2LmgNCj4gPiBAQCAtMjcwMSwx MCArMjcwMSwxNCBAQCBpbnQgcnRlX2V0aF9kZXZfdHhfcXVldWVfc3RvcCh1aW50MTZfdA0KPiBw b3J0X2lkLCB1aW50MTZfdCB0eF9xdWV1ZV9pZCk7DQo+ID4gICAgKiBPbiBzdWNjZXNzLCBhbGwg YmFzaWMgZnVuY3Rpb25zIGV4cG9ydGVkIGJ5IHRoZSBFdGhlcm5ldCBBUEkgKGxpbmsgc3RhdHVz LA0KPiA+ICAgICogcmVjZWl2ZS90cmFuc21pdCwgYW5kIHNvIG9uKSBjYW4gYmUgaW52b2tlZC4N Cj4gPiAgICAqDQo+ID4gKyAqIElmIHRoZSBwb3J0IGRlcGVuZHMgb24gYW5vdGhlciBvbmUgYmVp bmcgc3RhcnRlZCwNCj4gPiArICogUE1EcyBtaWdodCByZXR1cm4gKC1FQUdBSU4pIHRvIG5vdGlm eSBhYm91dCBzdWNoIHJlcXVpcmVtZW50Lg0KPiA+ICsgKg0KPiA+ICAgICogQHBhcmFtIHBvcnRf aWQNCj4gPiAgICAqICAgVGhlIHBvcnQgaWRlbnRpZmllciBvZiB0aGUgRXRoZXJuZXQgZGV2aWNl Lg0KPiA+ICAgICogQHJldHVybg0KPiA+ICAgICogICAtIDA6IFN1Y2Nlc3MsIEV0aGVybmV0IGRl dmljZSBzdGFydGVkLg0KPiA+ICsgKiAgIC0gLUVBR0FJTjogSWYgaXQgZGVwZW5kcyBvbiBhbm90 aGVyIHBvcnQgdG8gYmUgc3RhcnRlZCBmaXJzdC4NCj4gPiAgICAqICAgLSA8MDogRXJyb3IgY29k ZSBvZiB0aGUgZHJpdmVyIGRldmljZSBzdGFydCBmdW5jdGlvbi4NCj4gPiAgICAqLw0KPiA+ICAg aW50IHJ0ZV9ldGhfZGV2X3N0YXJ0KHVpbnQxNl90IHBvcnRfaWQpOyBAQCAtMjcxMywxMCArMjcx NywxNSBAQCBpbnQNCj4gPiBydGVfZXRoX2Rldl9zdGFydCh1aW50MTZfdCBwb3J0X2lkKTsNCj4g PiAgICAqIFN0b3AgYW4gRXRoZXJuZXQgZGV2aWNlLiBUaGUgZGV2aWNlIGNhbiBiZSByZXN0YXJ0 ZWQgd2l0aCBhIGNhbGwgdG8NCj4gPiAgICAqIHJ0ZV9ldGhfZGV2X3N0YXJ0KCkNCj4gPiAgICAq DQo+ID4gKyAqIElmIHRoZSBwb3J0IHByb3ZpZGVzIHNvbWUgcmVzb3VyY2VzIGZvciBvdGhlciBw b3J0cw0KPiA+ICsgKiBhbmQgaXQgY2Fubm90IGJlIHN0b3BwZWQgYmVmb3JlIHRoZW0sDQo+ID4g KyAqIFBNRHMgbWlnaHQgcmV0dXJuICgtRUJVU1kpIHRvIG5vdGlmeSBhYm91dCBzdWNoIHJlcXVp cmVtZW50Lg0KPiA+ICsgKg0KPiA+ICAgICogQHBhcmFtIHBvcnRfaWQNCj4gPiAgICAqICAgVGhl IHBvcnQgaWRlbnRpZmllciBvZiB0aGUgRXRoZXJuZXQgZGV2aWNlLg0KPiA+ICAgICogQHJldHVy bg0KPiA+ICAgICogICAtIDA6IFN1Y2Nlc3MsIEV0aGVybmV0IGRldmljZSBzdG9wcGVkLg0KPiA+ ICsgKiAgIC0gLUVCVVNZOiBJZiBpdCBkZXBlbmRzIG9uIGFub3RoZXIgcG9ydCB0byBiZSBzdG9w cGVkIGZpcnN0Lg0KPiA+ICAgICogICAtIDwwOiBFcnJvciBjb2RlIG9mIHRoZSBkcml2ZXIgZGV2 aWNlIHN0b3AgZnVuY3Rpb24uDQo+ID4gICAgKi8NCj4gPiAgIGludCBydGVfZXRoX2Rldl9zdG9w KHVpbnQxNl90IHBvcnRfaWQpOw0KDQpCZXN0IHJlZ2FyZHMsDQpEYXJpdXN6IFNvc25vd3NraQ0K DQo=