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 0570043B51; Tue, 20 Feb 2024 03:03:11 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id E648A402CB; Tue, 20 Feb 2024 03:03:10 +0100 (CET) Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on2063.outbound.protection.outlook.com [40.107.249.63]) by mails.dpdk.org (Postfix) with ESMTP id 64C40402B8 for ; Tue, 20 Feb 2024 03:03:09 +0100 (CET) ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass; b=H84D+d7JUFdmkFUfbWNtmYgK6X54UNZMjsQ+GBboDogdyyPinTrjMWJKIjdOiaVGR4E9KvL6W/1z04egKnk0hW2o/FyuGrwIDfXPnhXFD5m2Gi5folr+HRQDIbzNels66MCuZA+lZPqdWyZRGV3PFazcpdNPBauNpbHwxYDjtyWd+J8ESgNAxkztJvQ6xWsHir70s/JRRWm6TxiP1jUf+G7Psn5KDuEzSuQSyGLl2kgg0CE1qlek8cf8a+zfTxhtmJPemVufDEOhRYaNEDkTQ59EGZqdlHb0IinY+hGjLXFNwqZGFTTBWfO1uShJcoDBrfeMaqvKPNVVSBxX72CMlg== ARC-Message-Signature: i=2; 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=sRKk4GBVscpAucmQWGFkwTrQ3+PHqgYrzfmPa7y3i3Q=; b=DKxem3ECdY4nXJAxd0xS0jcetO9HStfGPuIYJhZ5WTaW6d6WjT3aosenkW0XzZ0BRYzDJknxG8CbBdVh8bEpNgHFeYCm6K0NvGXQaAcjgFxpcRYJMPBqNpWFa666yQSji9xC6T3Je7s58X0A9bcDGzHPpJaW61WymxnnorAcyIJ5sIoObq5gv9smQW8QSE247+XSTs7CN1tXHzHxcAqm8KfoBEjMJ7RCDjwg/7QM5tgJcbOiYbQuFMhSgV7C6WcCxYBymV5wXt7akJh1qE4abxFysyXmGvdip39IZdGY1e0rUUJwSBm/EB0Dy4Fm85PTT90jH8Vc3LFt2DZzwXsgPA== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=dpdk.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=sRKk4GBVscpAucmQWGFkwTrQ3+PHqgYrzfmPa7y3i3Q=; b=Db2l67Zv+dohXrq6Iv7LE2W2+cwPhnwbwu108B7wzQqYaTPcgfazRr5mnunk4mqdss0TmSuvGYgGxA9Up+Jrpb8Uiz0AbLJmgmdIsO0gA20jpny8LATFhP/3QuXcFCNVXjDW5bZB+Q09I1TVzYzAXjJXJ73YYmAr+cqtOOddRUI= Received: from DU6P191CA0070.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:53e::18) by PAVPR08MB9626.eurprd08.prod.outlook.com (2603:10a6:102:31a::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7292.39; Tue, 20 Feb 2024 02:03:04 +0000 Received: from DB1PEPF0003922F.eurprd03.prod.outlook.com (2603:10a6:10:53e:cafe::e4) by DU6P191CA0070.outlook.office365.com (2603:10a6:10:53e::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7292.39 via Frontend Transport; Tue, 20 Feb 2024 02:03:04 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DB1PEPF0003922F.mail.protection.outlook.com (10.167.8.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7292.25 via Frontend Transport; Tue, 20 Feb 2024 02:03:04 +0000 Received: ("Tessian outbound 081d54b8cc4c:v228"); Tue, 20 Feb 2024 02:03:04 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: a3f385733b041aeb X-CR-MTA-TID: 64aa7808 Received: from 7beef5591d13.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id C2766C98-05E4-4BCA-B137-A09EE80DA6D5.1; Tue, 20 Feb 2024 02:02:58 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 7beef5591d13.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 20 Feb 2024 02:02:58 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iZiO1W0TapOP2dT7vJqQ+OExQfZOJFSQDChRCL/bwLxQWNDr25HBjeCm/8Q5C96aseNi0e0z2YB7OajOEyQxdegndU4/H1duaWS9TbfW8RDdXfwkxZa3imaDfLO7ipqqCSCJgTvVf9QTgR75Az/SizJXBn0Sk79P8EM3XNgRqu2Vrw/Rde8SYTi9RmTENtDgM5sY32tHvHBe0RN/KF++a3dhzUzde+S1fQtCavIdPmboisHJ12FNDtJU+vAaOoWAt39WicAVuz3wXJY4SuoO1+bfTYYfcJUtYtblqJsAKKEdFDqJNIWJ/kknb1zdS4H27zAkHkk3LU/HeRm1+q/SyA== 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=sRKk4GBVscpAucmQWGFkwTrQ3+PHqgYrzfmPa7y3i3Q=; b=GgUyTDW+HmHYpbfFPYhmrldDCCghY2l631fOZnbl1AP4hxxynRKUVGDrIETth+AOF6iIB91RMDnEWIm1zSQy6do2qPKyMu42xlc65//aayRtQFQQ7dE+usONQcekzQXzKjH1+0P8Yr59NoTNmW+oFjTESSb++weNBsWtyDca4ICCppN4MRXLx0uCyxDqghkDlIXJq6yzKUC3noBDW7rWJjFV/eJCkt0UWij6KnuASQYm41mlDx4tF9Pd5Pi86fzt/6Z5grGYfOuli1f6HoqCffzEtE+UruL+Gi0to7bLlxLDdpTKKGoJBtwhiIEyNGIyy05inXuIGxbTRa8oh7sh9A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=sRKk4GBVscpAucmQWGFkwTrQ3+PHqgYrzfmPa7y3i3Q=; b=Db2l67Zv+dohXrq6Iv7LE2W2+cwPhnwbwu108B7wzQqYaTPcgfazRr5mnunk4mqdss0TmSuvGYgGxA9Up+Jrpb8Uiz0AbLJmgmdIsO0gA20jpny8LATFhP/3QuXcFCNVXjDW5bZB+Q09I1TVzYzAXjJXJ73YYmAr+cqtOOddRUI= Received: from DBAPR08MB5814.eurprd08.prod.outlook.com (2603:10a6:10:1b1::6) by AS8PR08MB8733.eurprd08.prod.outlook.com (2603:10a6:20b:565::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7292.39; Tue, 20 Feb 2024 02:02:56 +0000 Received: from DBAPR08MB5814.eurprd08.prod.outlook.com ([fe80::53cb:3883:87b4:516f]) by DBAPR08MB5814.eurprd08.prod.outlook.com ([fe80::53cb:3883:87b4:516f%3]) with mapi id 15.20.7292.036; Tue, 20 Feb 2024 02:02:56 +0000 From: Honnappa Nagarahalli To: Andrew Boyer CC: "dev@dpdk.org" , Neel Patel , R Mohamed Shah , Alfredo Cardigliano , nd Subject: Re: [PATCH 3/3] net/ionic: add vdev support for embedded applications Thread-Topic: [PATCH 3/3] net/ionic: add vdev support for embedded applications Thread-Index: AQHaYPq5PEQooYaP8U+UnLUVYpS7DLESf9SA Date: Tue, 20 Feb 2024 02:02:56 +0000 Message-ID: References: <20240216170704.55523-1-andrew.boyer@amd.com> <20240216170704.55523-4-andrew.boyer@amd.com> In-Reply-To: <20240216170704.55523-4-andrew.boyer@amd.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3774.400.31) Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: DBAPR08MB5814:EE_|AS8PR08MB8733:EE_|DB1PEPF0003922F:EE_|PAVPR08MB9626:EE_ X-MS-Office365-Filtering-Correlation-Id: e7fda32f-850e-4b95-7414-08dc31b8133a x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: Xz3MyVNE70MLytrebmE/CiClxXaBCLebkO1Tpk7BW5apo0VxjSxCz8N7t2rzQvuRnhZW4icjO4VzZoRDTPUE3CB84wc+FcPL7HKYHE0J4poPn935nUWhf1HHz1vdva0aSzGYNRuw2k9QkP9FaLaWrIhP0yVXPJS6Dcn1Giq6KWYhpRlzCXIZSRt4ujJgOuBfZzFEG0AAXdJz6D6aMqPu/E1svPshc23BrnIz+cchADxm85GIYd2tQ8cxa9shGeUQ0Iguns63yPyoyF9gHuvwROQsQXPK69yMdH46P6RDIkPehMuCMlxMvbZ7xWu+ofIWlNDej2ANt1h/MfYkn7go+YO2vqfnb1bKJGX4FygfJvdLZAy9PgnJuo39Zhg9sXfUH+zluSfLDPFg71VBZEMWfdv02bIlQCDZuCdZV/d+36cGOY1iRMRIQ25nSrcLi7eguM8lIadmGqKOu+L3Qs9TRofPv6AGS5GBrDr2qt2no07jTWtKhgtZkkX6z3ohBgf74miBteG2kxhxFETSSXKLdIdS8jM0JH0xEhC80G6jUcvsdWu4ZvGGgs37sUnAtj9Cj/n8GsmT5VKN91pQ9yvb/9NcNFW9K4OACrqpNwgCzcqJLxWVjf1+cpRBXxFcPuzI X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DBAPR08MB5814.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031)(38070700009); DIR:OUT; SFP:1101; Content-Type: text/plain; charset="utf-8" Content-ID: <1D38B930663CCB4D92AA599557C375B2@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB8733 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DB1PEPF0003922F.eurprd03.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: bd60d661-be81-4d10-1a04-08dc31b80e3d X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Rg4DN2jAIaGxvQ6k8on617tyViztVhaOMo/uUIwAQZaWND3ITOVLt4KZgd6gtQZ3Rf9ocGLMxuSPhySNpeRKKdK2tWAY104TnzyyK14/kppqrw7g5JwpX7CwMuw0SlR/D7X0TYz/WeHC8f5KSelraFv8l3SJX1FZ7hMCgKy9WuRUyzeWWNW1+zxu37ScFEYuVhhcGGuCEWmQhfX5/EuW35WNrajuziGI5LcL5HGxORb3g5xMmbzlmCtl7uEinJfPpca1BxLiHhNLMK2NWgLr92K5zU5Chb83DFQwivkfSf5osCJ6OkZMCdYTqJ6vYOkQvcrRp6m7kR/4G/XS3COQxiqo6FMBvj9ChGgzVqVp9Lkxqm2yWwGGEhrwOClgT5d8xNOYwA0BaoaMUHlyf/SHk02yNn2M6TqGoG6xDsqDlMPVaB3/3BmXGGCpsGFfN3UM0M/fJ7DiqOmI9G9an3/E/lrUqiFDRiMZ92R8Y0GquYX3PCGCjh4pGmGKKwWK22wskclGro/hJgzSeC60/JFGXD87g+On7O76gVgkFcAd4d13d94FyClQS5R7oe7pImz2PU2+hC9W0mvJJFyTTsV438JXCKkIwDkQKJGAs+iWYhW5NjO+JtNlAWsyPptLtiKi546b8foaGKAts8oAaz0sNemLSuGF0/v8t3743AogP+0= X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFS:(13230031)(36860700004)(40470700004)(46966006); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Feb 2024 02:03:04.6109 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: e7fda32f-850e-4b95-7414-08dc31b8133a X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123]; Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DB1PEPF0003922F.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB9626 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 DQoNCj4gT24gRmViIDE2LCAyMDI0LCBhdCAxMTowN+KAr0FNLCBBbmRyZXcgQm95ZXIgPGFuZHJl dy5ib3llckBhbWQuY29tPiB3cm90ZToNCj4gDQo+IEFkZCBzdXBwb3J0IGZvciBydW5uaW5nIERQ REsgYXBwbGljYXRpb25zIGRpcmVjdGx5IG9uIEFNRCBQZW5zYW5kbw0KPiBlbWJlZGRlZCBIVy4g VGhlIHBsYXRmb3JtIGV4cG9zZXMgdGhlIGRldmljZSBCQVJzIHRocm91Z2ggVUlPLiBUaGUNCj4g VUlPIGNvZGUgaW4gdGhlIGNvbW1vbi9pb25pYyBsaWJyYXJ5IHdhbGtzIHRoZSBzeXNmcyBmaWxl c3lzdGVtDQo+IHRvIGlkZW50aWZ5IHRoZSByZWxldmFudCBCQVJzIGFuZCBtYXAgdGhlbSBpbnRv IHByb2Nlc3MgbWVtb3J5Lg0KPiANCj4gVGhlIFNvQ3MgYXJlIG5hbWVkICdDYXByaScgYW5kICdF bGJhJy4NCj4gDQo+IFRoZSB2ZGV2IGRldmljZSBpbnRlcmZhY2UgY29kZSBpcyBsb2NhdGVkIGlu IGlvbmljX2Rldl92ZGV2LmMuDQo+IA0KPiBTb21lIGRhdGFwYXRoIG9wZXJhdGlvbnMgYXJlICNp ZmRlZi1lZCBvdXQgdG8gc2F2ZSBvbiByZXNvdXJjZXMgd2hlbg0KPiBydW5uaW5nIGluIGVtYmVk ZGVkIG1vZGUuDQo+IA0KPiBTb21lIGNvbnRyb2xwYXRoIG9wZXJhdGlvbnMgYXJlIHNraXBwZWQg YnkgdGhlIGlvbmljX2lzX2VtYmVkZGVkKCkNCj4gaGVscGVyIGZ1bmN0aW9uLg0KPiANCj4gQmVm b3JlIHJpbmdpbmcgdGhlIGRvb3JiZWxsLCB1c2UgYW4gQVJNICdkc2Igc3QnIGJhcnJpZXIuIFRo ZSBub3JtYWwNCj4gYmFycmllciBpbnNpZGUgcnRlX3dyaXRlNjQoKSBpcyBpbnN1ZmZpY2llbnQg b24gdGhlc2UgZGV2aWNlcyBkdWUgdG8NCj4gYSBjaGlwIGVycmF0YS4NCj4gDQo+IFNpZ25lZC1v ZmYtYnk6IEFuZHJldyBCb3llciA8YW5kcmV3LmJveWVyQGFtZC5jb20+DQo+IFNpZ25lZC1vZmYt Ynk6IE5lZWwgUGF0ZWwgPG5lZWwucGF0ZWxAYW1kLmNvbT4NCj4gU2lnbmVkLW9mZi1ieTogUiBN b2hhbWVkIFNoYWggPG1vaGFtZWRzaGFoLnJAYW1kLmNvbT4NCj4gU2lnbmVkLW9mZi1ieTogQWxm cmVkbyBDYXJkaWdsaWFubyA8Y2FyZGlnbGlhbm9AbnRvcC5vcmc+DQo+IC0tLQ0KPiBjb25maWcv YXJtL2FybTY0X2NhcHJpX2xpbnV4X2djYyAgIHwgIDE2ICsrKw0KPiBjb25maWcvYXJtL2FybTY0 X2VsYmFfbGludXhfZ2NjICAgIHwgIDE2ICsrKw0KPiBjb25maWcvYXJtL21lc29uLmJ1aWxkICAg ICAgICAgICAgIHwgIDQyICsrKysrKysrDQo+IGRyaXZlcnMvbmV0L2lvbmljL2lvbmljLmggICAg ICAgICAgfCAgIDIgKy0NCj4gZHJpdmVycy9uZXQvaW9uaWMvaW9uaWNfZGV2LmggICAgICB8ICAx NyArKysrDQo+IGRyaXZlcnMvbmV0L2lvbmljL2lvbmljX2Rldl92ZGV2LmMgfCAxNTYgKysrKysr KysrKysrKysrKysrKysrKysrKysrKysNCj4gZHJpdmVycy9uZXQvaW9uaWMvaW9uaWNfZXRoZGV2 LmMgICB8ICAgNyArKw0KPiBkcml2ZXJzL25ldC9pb25pYy9pb25pY19saWYuYyAgICAgIHwgIDE5 ICsrKysNCj4gZHJpdmVycy9uZXQvaW9uaWMvaW9uaWNfcnh0eC5oICAgICB8ICAgNCArDQo+IGRy aXZlcnMvbmV0L2lvbmljL21lc29uLmJ1aWxkICAgICAgfCAgIDEgKw0KPiAxMCBmaWxlcyBjaGFu Z2VkLCAyNzkgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQ0KPiBjcmVhdGUgbW9kZSAxMDA2 NDQgY29uZmlnL2FybS9hcm02NF9jYXByaV9saW51eF9nY2MNCj4gY3JlYXRlIG1vZGUgMTAwNjQ0 IGNvbmZpZy9hcm0vYXJtNjRfZWxiYV9saW51eF9nY2MNCj4gY3JlYXRlIG1vZGUgMTAwNjQ0IGRy aXZlcnMvbmV0L2lvbmljL2lvbmljX2Rldl92ZGV2LmMNCj4gDQo+IGRpZmYgLS1naXQgYS9jb25m aWcvYXJtL2FybTY0X2NhcHJpX2xpbnV4X2djYyBiL2NvbmZpZy9hcm0vYXJtNjRfY2FwcmlfbGlu dXhfZ2NjDQo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+IGluZGV4IDAwMDAwMDAwMDAuLjFhNjMx M2U2ODQNCj4gLS0tIC9kZXYvbnVsbA0KPiArKysgYi9jb25maWcvYXJtL2FybTY0X2NhcHJpX2xp bnV4X2djYw0KPiBAQCAtMCwwICsxLDE2IEBADQo+ICtbYmluYXJpZXNdDQo+ICtjID0gWydjY2Fj aGUnLCAnYWFyY2g2NC1saW51eC1nbnUtZ2NjJ10NCj4gK2NwcCA9IFsnY2NhY2hlJywgJ2FhcmNo NjQtbGludXgtZ251LWcrKyddDQo+ICthciA9ICdhYXJjaDY0LWxpbnV4LWdudS1nY2MtYXInDQo+ ICtzdHJpcCA9ICdhYXJjaDY0LWxpbnV4LWdudS1zdHJpcCcNCj4gK3BrZ2NvbmZpZyA9ICdhYXJj aDY0LWxpbnV4LWdudS1wa2ctY29uZmlnJw0KPiArcGNhcC1jb25maWcgPSAnJw0KPiArDQo+ICtb aG9zdF9tYWNoaW5lXQ0KPiArc3lzdGVtID0gJ2xpbnV4Jw0KPiArY3B1X2ZhbWlseSA9ICdhYXJj aDY0Jw0KPiArY3B1ID0gJ2FybXY4LWEnDQo+ICtlbmRpYW4gPSAnbGl0dGxlJw0KPiArDQo+ICtb cHJvcGVydGllc10NCj4gK3BsYXRmb3JtID0gJ2NhcHJpJw0KPiBkaWZmIC0tZ2l0IGEvY29uZmln L2FybS9hcm02NF9lbGJhX2xpbnV4X2djYyBiL2NvbmZpZy9hcm0vYXJtNjRfZWxiYV9saW51eF9n Y2MNCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gaW5kZXggMDAwMDAwMDAwMC4uNGQ4OTFiZDVh Nw0KPiAtLS0gL2Rldi9udWxsDQo+ICsrKyBiL2NvbmZpZy9hcm0vYXJtNjRfZWxiYV9saW51eF9n Y2MNCj4gQEAgLTAsMCArMSwxNiBAQA0KPiArW2JpbmFyaWVzXQ0KPiArYyA9IFsnY2NhY2hlJywg J2FhcmNoNjQtbGludXgtZ251LWdjYyddDQo+ICtjcHAgPSBbJ2NjYWNoZScsICdhYXJjaDY0LWxp bnV4LWdudS1nKysnXQ0KPiArYXIgPSAnYWFyY2g2NC1saW51eC1nbnUtZ2NjLWFyJw0KPiArc3Ry aXAgPSAnYWFyY2g2NC1saW51eC1nbnUtc3RyaXAnDQo+ICtwa2djb25maWcgPSAnYWFyY2g2NC1s aW51eC1nbnUtcGtnLWNvbmZpZycNCj4gK3BjYXAtY29uZmlnID0gJycNCj4gKw0KPiArW2hvc3Rf bWFjaGluZV0NCj4gK3N5c3RlbSA9ICdsaW51eCcNCj4gK2NwdV9mYW1pbHkgPSAnYWFyY2g2NCcN Cj4gK2NwdSA9ICdhcm12OC1hJw0KPiArZW5kaWFuID0gJ2xpdHRsZScNCj4gKw0KPiArW3Byb3Bl cnRpZXNdDQo+ICtwbGF0Zm9ybSA9ICdlbGJhJw0KPiBkaWZmIC0tZ2l0IGEvY29uZmlnL2FybS9t ZXNvbi5idWlsZCBiL2NvbmZpZy9hcm0vbWVzb24uYnVpbGQNCj4gaW5kZXggMzZmMjFkMjI1OS4u MjMyNjAyMWZlZCAxMDA2NDQNCj4gLS0tIGEvY29uZmlnL2FybS9tZXNvbi5idWlsZA0KPiArKysg Yi9jb25maWcvYXJtL21lc29uLmJ1aWxkDQo+IEBAIC0xNjUsNiArMTY1LDMzIEBAIGltcGxlbWVu dGVyX2Nhdml1bSA9IHsNCj4gICAgIH0NCj4gfQ0KPiANCj4gK2ltcGxlbWVudGVyX2lvbmljID0g ew0KPiArICAgICdkZXNjcmlwdGlvbic6ICdBTUQgUGVuc2FuZG8nLA0KPiArICAgICdmbGFncyc6 IFsNCj4gKyAgICAgICAgWydSVEVfTUFYX05VTUFfTk9ERVMnLCAxXSwNCj4gKyAgICAgICAgWydS VEVfQ0FDSEVfTElORV9TSVpFJywgNjRdLA0KPiArICAgICAgICBbJ1JURV9MSUJSVEVfVkhPU1Rf TlVNQScsIGZhbHNlXSwNCj4gKyAgICAgICAgWydSVEVfRUFMX05VTUFfQVdBUkVfSFVHRVBBR0VT JywgZmFsc2VdLA0KPiArICAgICAgICBbJ1JURV9MSUJSVEVfSU9OSUNfUE1EX0VNQkVEREVEJywg dHJ1ZV0sDQo+ICsgICAgXSwNCj4gKyAgICAncGFydF9udW1iZXJfY29uZmlnJzogew0KPiArICAg ICAgICAnMHhjMSc6IHsNCj4gKyAgICAgICAgICAgICdjb21waWxlcl9vcHRpb25zJzogIFsnLW1j cHU9Y29ydGV4LWE3MiddLA0KPiArICAgICAgICAgICAgJ2ZsYWdzJzogWw0KPiArICAgICAgICAg ICAgICAgIFsnUlRFX01BWF9MQ09SRScsIDRdLA0KPiArICAgICAgICAgICAgICAgIFsnUlRFX0xJ QlJURV9JT05JQ19QTURfQkFSUklFUl9FUlJBVEEnLCB0cnVlXSwNCj4gKyAgICAgICAgICAgIF0N Cj4gKyAgICAgICAgfSwNCj4gKyAgICAgICAgJzB4YzInOiB7DQo+ICsgICAgICAgICAgICAnY29t cGlsZXJfb3B0aW9ucyc6ICBbJy1tY3B1PWNvcnRleC1hNzInXSwNCj4gKyAgICAgICAgICAgICdm bGFncyc6IFsNCj4gKyAgICAgICAgICAgICAgICBbJ1JURV9NQVhfTENPUkUnLCAxNl0sDQo+ICsg ICAgICAgICAgICAgICAgWydSVEVfTElCUlRFX0lPTklDX1BNRF9CQVJSSUVSX0VSUkFUQScsIHRy dWVdLA0KPiArICAgICAgICAgICAgXQ0KPiArICAgICAgICB9DQo+ICsgICAgfQ0KPiArfQ0KDQpD YW4geW91IHBsYWNlIGl0IHN1Y2ggdGhhdCBpdCBpcyBvcmRlcmVkIGFscGhhYmV0aWNhbGx5PyAo SSB1bmRlcnN0YW5kIHRoYXQgY3VycmVudGx5IHRoaW5ncyBhcmUgbm90IG9yZGVyZWQgYWxwaGFi ZXRpY2FsbHksIEkgaGF2ZSBwbGFucyB0byBmaXggdGhhdCkNCg0KPiArDQo+IGltcGxlbWVudGVy X2FtcGVyZSA9IHsNCj4gICAgICdkZXNjcmlwdGlvbic6ICdBbXBlcmUgQ29tcHV0aW5nJywNCj4g ICAgICdmbGFncyc6IFsNCj4gQEAgLTI5NCw2ICszMjEsNyBAQCBpbXBsZW1lbnRlcnMgPSB7DQo+ ICAgICAnMHg1MCc6IGltcGxlbWVudGVyX2FtcGVyZSwNCj4gICAgICcweDUxJzogaW1wbGVtZW50 ZXJfcXVhbGNvbW0sDQo+ICAgICAnMHg3MCc6IGltcGxlbWVudGVyX3BoeXRpdW0sDQo+ICsgICAg JzB4NzUnOiBpbXBsZW1lbnRlcl9pb25pYywNCj4gICAgICcweGMwJzogaW1wbGVtZW50ZXJfYW1w ZXJlLA0KPiB9DQo+IA0KPiBAQCAtNTE3LDYgKzU0NSwxOCBAQCBzb2NfYmx1ZWZpZWxkMyA9IHsN Cj4gICAgJ251bWEnOiBmYWxzZQ0KPiB9DQo+IA0KPiArc29jX2lvbmljX2NhcHJpID0gew0KPiAr ICAgICdkZXNjcmlwdGlvbic6ICdBTUQgUGVuc2FuZG8gQ2FwcmknLA0KPiArICAgICdpbXBsZW1l bnRlcic6ICcweDc1JywNCj4gKyAgICAncGFydF9udW1iZXInOiAnMHhjMScNCj4gK30NCj4gKw0K PiArc29jX2lvbmljX2VsYmEgPSB7DQo+ICsgICAgJ2Rlc2NyaXB0aW9uJzogJ0FNRCBQZW5zYW5k byBFbGJhJywNCj4gKyAgICAnaW1wbGVtZW50ZXInOiAnMHg3NScsDQo+ICsgICAgJ3BhcnRfbnVt YmVyJzogJzB4YzInDQo+ICt9DQo+ICsNCj4gJycnDQo+IFN0YXJ0IG9mIFNvQ3MgbGlzdA0KPiBn ZW5lcmljOiAgICAgICAgIEdlbmVyaWMgdW4tb3B0aW1pemVkIGJ1aWxkIGZvciBhcm12OCBhYXJj aDY0IGV4ZWN1dGlvbiBtb2RlLg0KPiBAQCAtNTc2LDYgKzYxNiw4IEBAIHNvY3MgPSB7DQo+ICAg ICAndGh1bmRlcngyJzogc29jX3RodW5kZXJ4MiwNCj4gICAgICd0aHVuZGVyeHQ4OCc6IHNvY190 aHVuZGVyeHQ4OCwNCj4gICAgICd0aHVuZGVyeHQ4Myc6IHNvY190aHVuZGVyeHQ4MywNCj4gKyAg ICAnY2FwcmknOiBzb2NfaW9uaWNfY2FwcmksDQo+ICsgICAgJ2VsYmEnOiBzb2NfaW9uaWNfZWxi YSwNClNhbWUgaGVyZSwgcGxhY2UgdGhlbSBpbiBhbHBoYWJldGljYWwgb3JkZXIgd2l0aCByZXNw ZWN0IHRvIGV4aXN0aW5nIFNPQ3MNCg0KPiB9DQo+IA0KPiBkcGRrX2NvbmYuc2V0KCdSVEVfQVJD SF9BUk0nLCAxKQ0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvaW9uaWMvaW9uaWMuaCBiL2Ry aXZlcnMvbmV0L2lvbmljL2lvbmljLmgNCj4gaW5kZXggYTRhMmUyNzU2ZC4uYmFhMTMyMjE4NiAx MDA2NDQNCj4gLS0tIGEvZHJpdmVycy9uZXQvaW9uaWMvaW9uaWMuaA0KPiArKysgYi9kcml2ZXJz L25ldC9pb25pYy9pb25pYy5oDQo+IEBAIC0xNSw3ICsxNSw3IEBADQo+IA0KPiAjZGVmaW5lIElP TklDX0RSVl9OQU1FICJpb25pYyINCj4gI2RlZmluZSBJT05JQ19EUlZfREVTQ1JJUFRJT04gIkFN RCBQZW5zYW5kbyBFdGhlcm5ldCBOSUMgRHJpdmVyIg0KPiAtI2RlZmluZSBJT05JQ19EUlZfVkVS U0lPTiAiMC4xMS4wLTQ5Ig0KPiArI2RlZmluZSBJT05JQ19EUlZfVkVSU0lPTiAiMS4zLjAtMTEy Ig0KPiANCj4gLyogVmVuZG9yIElEICovDQo+ICNkZWZpbmUgSU9OSUNfUEVOU0FORE9fVkVORE9S X0lEIDB4MWRkOA0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvaW9uaWMvaW9uaWNfZGV2Lmgg Yi9kcml2ZXJzL25ldC9pb25pYy9pb25pY19kZXYuaA0KPiBpbmRleCBiOGVlYmNkMTgxLi4zZWM2 YWE1ZjZkIDEwMDY0NA0KPiAtLS0gYS9kcml2ZXJzL25ldC9pb25pYy9pb25pY19kZXYuaA0KPiAr KysgYi9kcml2ZXJzL25ldC9pb25pYy9pb25pY19kZXYuaA0KPiBAQCAtMTcxLDYgKzE3MSw3IEBA IHN0cnVjdCBpb25pY19kZXZfaW50ZiB7DQo+IHN0cnVjdCBydGVfZXRoX2RldiAqZXRoX2Rldik7 DQo+IGludCAgKCpjb25maWd1cmVfaW50cikoc3RydWN0IGlvbmljX2FkYXB0ZXIgKmFkYXB0ZXIp Ow0KPiB2b2lkICgqdW5jb25maWd1cmVfaW50cikoc3RydWN0IGlvbmljX2FkYXB0ZXIgKmFkYXB0 ZXIpOw0KPiArIHZvaWQgKCpwb2xsKShzdHJ1Y3QgaW9uaWNfYWRhcHRlciAqYWRhcHRlcik7DQo+ IHZvaWQgKCp1bm1hcF9iYXJzKShzdHJ1Y3QgaW9uaWNfYWRhcHRlciAqYWRhcHRlcik7DQo+IH07 DQo+IA0KPiBAQCAtMjQ1LDcgKzI0NiwyMyBAQCBpb25pY19xX2ZsdXNoKHN0cnVjdCBpb25pY19x dWV1ZSAqcSkNCj4gew0KPiB1aW50NjRfdCB2YWwgPSBJT05JQ19EQkVMTF9RSUQocS0+aHdfaW5k ZXgpIHwgcS0+aGVhZF9pZHg7DQo+IA0KPiArI2lmIGRlZmluZWQoUlRFX0xJQlJURV9JT05JQ19Q TURfQkFSUklFUl9FUlJBVEEpDQo+ICsgLyogT24gc29tZSBkZXZpY2VzIHRoZSBzdGFuZGFyZCAn ZG1iJyBiYXJyaWVyIGlzIGluc3VmZmljaWVudCAqLw0KPiArIGFzbSB2b2xhdGlsZSgiZHNiIHN0 IiA6IDogOiAibWVtb3J54oCdKTsNClRoYW5rcyBmb3Iga2VlcGluZyB0aGlzIHByaXZhdGUgdG8g dGhlIGRyaXZlci4NCg0KPiArIHJ0ZV93cml0ZTY0X3JlbGF4ZWQocnRlX2NwdV90b19sZV82NCh2 YWwpLCBxLT5kYik7DQo+ICsjZWxzZQ0KPiBydGVfd3JpdGU2NChydGVfY3B1X3RvX2xlXzY0KHZh bCksIHEtPmRiKTsNCj4gKyNlbmRpZg0KPiArfQ0KPiArDQo+ICtzdGF0aWMgaW5saW5lIGJvb2wN Cj4gK2lvbmljX2lzX2VtYmVkZGVkKHZvaWQpDQo+ICt7DQo+ICsjaWYgZGVmaW5lZChSVEVfTElC UlRFX0lPTklDX1BNRF9FTUJFRERFRCkNCj4gKyByZXR1cm4gdHJ1ZTsNCj4gKyNlbHNlDQo+ICsg cmV0dXJuIGZhbHNlOw0KPiArI2VuZGlmDQo+IH0NCj4gDQo+ICNlbmRpZiAvKiBfSU9OSUNfREVW X0hfICovDQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9pb25pYy9pb25pY19kZXZfdmRldi5j IGIvZHJpdmVycy9uZXQvaW9uaWMvaW9uaWNfZGV2X3ZkZXYuYw0KPiBuZXcgZmlsZSBtb2RlIDEw MDY0NA0KPiBpbmRleCAwMDAwMDAwMDAwLi4zMTgyNGM2Yzg5DQo+IC0tLSAvZGV2L251bGwNCj4g KysrIGIvZHJpdmVycy9uZXQvaW9uaWMvaW9uaWNfZGV2X3ZkZXYuYw0KPiBAQCAtMCwwICsxLDE1 NiBAQA0KPiArLyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZQ0KPiArICog Q29weXJpZ2h0IDIwMTktMjAyNCBBZHZhbmNlZCBNaWNybyBEZXZpY2VzLCBJbmMuDQo+ICsgKi8N Cj4gKw0KPiArI2luY2x1ZGUgPHN0ZGludC5oPg0KPiArI2luY2x1ZGUgPHN0ZGxpYi5oPg0KPiAr I2luY2x1ZGUgPGVycm5vLmg+DQo+ICsNCj4gKyNpbmNsdWRlIDxydGVfZXJybm8uaD4NCj4gKyNp bmNsdWRlIDxydGVfY29tbW9uLmg+DQo+ICsjaW5jbHVkZSA8cnRlX2xvZy5oPg0KPiArI2luY2x1 ZGUgPHJ0ZV9lYWwuaD4NCj4gKyNpbmNsdWRlIDxidXNfdmRldl9kcml2ZXIuaD4NCj4gKyNpbmNs dWRlIDxydGVfZGV2Lmg+DQo+ICsjaW5jbHVkZSA8cnRlX3N0cmluZ19mbnMuaD4NCj4gKyNpbmNs dWRlIDxydGVfa3ZhcmdzLmg+DQo+ICsNCj4gKyNpbmNsdWRlICJpb25pYy5oIg0KPiArI2luY2x1 ZGUgImlvbmljX2NvbW1vbi5oIg0KPiArI2luY2x1ZGUgImlvbmljX2xvZ3MuaCINCj4gKyNpbmNs dWRlICJpb25pY19ldGhkZXYuaCINCj4gKw0KPiArI2RlZmluZSBJT05JQ19WREVWX0RFVl9CQVIg ICAgICAgICAgMA0KPiArI2RlZmluZSBJT05JQ19WREVWX0lOVFJfQ1RMX0JBUiAgICAgMQ0KPiAr I2RlZmluZSBJT05JQ19WREVWX0lOVFJfQ0ZHX0JBUiAgICAgMg0KPiArI2RlZmluZSBJT05JQ19W REVWX0RCX0JBUiAgICAgICAgICAgMw0KPiArI2RlZmluZSBJT05JQ19WREVWX0JBUlNfTUFYICAg ICAgICAgNA0KPiArDQo+ICsjZGVmaW5lIElPTklDX1ZERVZfREVWX0lORk9fUkVHU19PRkZTRVQg ICAgICAweDAwMDANCj4gKyNkZWZpbmUgSU9OSUNfVkRFVl9ERVZfQ01EX1JFR1NfT0ZGU0VUICAg ICAgIDB4MDgwMA0KPiArDQo+ICsjZGVmaW5lIElPTklDX1ZERVZfRldfV0FJVF9VUyAgICAgICAx MDAwICAgICAvKiAxbXMgKi8NCj4gKyNkZWZpbmUgSU9OSUNfVkRFVl9GV19XQUlUX01BWCAgICAg IDUwMDAgICAgIC8qIDVzICovDQo+ICsNCj4gK3N0YXRpYyBpbnQNCj4gK2lvbmljX3ZkZXZfc2V0 dXAoc3RydWN0IGlvbmljX2FkYXB0ZXIgKmFkYXB0ZXIpDQo+ICt7DQo+ICsgc3RydWN0IGlvbmlj X2JhcnMgKmJhcnMgPSAmYWRhcHRlci0+YmFyczsNCj4gKyBzdHJ1Y3QgaW9uaWNfZGV2ICppZGV2 ID0gJmFkYXB0ZXItPmlkZXY7DQo+ICsgdWludDhfdCAqYmFyMF9iYXNlOw0KPiArIHVpbnQzMl90 IHNpZzsNCj4gKyB1aW50MzJfdCBmd193YWl0cyA9IDA7DQo+ICsgdWludDhfdCBmdzsNCj4gKw0K PiArIElPTklDX1BSSU5UX0NBTEwoKTsNCj4gKw0KPiArIC8qIEJBUjA6IGRldl9jbWQgYW5kIGlu dGVycnVwdHMgKi8NCj4gKyBpZiAoYmFycy0+bnVtX2JhcnMgPCAxKSB7DQo+ICsgSU9OSUNfUFJJ TlQoRVJSLCAiTm8gYmFycyBmb3VuZCwgYWJvcnRpbmciKTsNCj4gKyByZXR1cm4gLUVGQVVMVDsN Cj4gKyB9DQo+ICsNCj4gKyBiYXIwX2Jhc2UgPSBiYXJzLT5iYXJbSU9OSUNfVkRFVl9ERVZfQkFS XS52YWRkcjsNCj4gKyBpZGV2LT5kZXZfaW5mbyA9ICh1bmlvbiBpb25pY19kZXZfaW5mb19yZWdz ICopDQo+ICsgJmJhcjBfYmFzZVtJT05JQ19WREVWX0RFVl9JTkZPX1JFR1NfT0ZGU0VUXTsNCj4g KyBpZGV2LT5kZXZfY21kID0gKHVuaW9uIGlvbmljX2Rldl9jbWRfcmVncyAqKQ0KPiArICZiYXIw X2Jhc2VbSU9OSUNfVkRFVl9ERVZfQ01EX1JFR1NfT0ZGU0VUXTsNCj4gKyBpZGV2LT5pbnRyX2N0 cmwgPSAodm9pZCAqKWJhcnMtPmJhcltJT05JQ19WREVWX0lOVFJfQ1RMX0JBUl0udmFkZHI7DQo+ ICsgaWRldi0+ZGJfcGFnZXMgPSAodm9pZCAqKWJhcnMtPmJhcltJT05JQ19WREVWX0RCX0JBUl0u dmFkZHI7DQo+ICsNCj4gKyBzaWcgPSBpb3JlYWQzMigmaWRldi0+ZGV2X2luZm8tPnNpZ25hdHVy ZSk7DQo+ICsgaWYgKHNpZyAhPSBJT05JQ19ERVZfSU5GT19TSUdOQVRVUkUpIHsNCj4gKyBJT05J Q19QUklOVChFUlIsICJJbmNvbXBhdGlibGUgZmlybXdhcmUgc2lnbmF0dXJlICV4Iiwgc2lnKTsN Cj4gKyByZXR1cm4gLUVGQVVMVDsNCj4gKyB9DQo+ICsNCj4gKyAvKiBXYWl0IGZvciB0aGUgRlcg dG8gaW5kaWNhdGUgcmVhZGluZXNzICovDQo+ICsgd2hpbGUgKDEpIHsNCj4gKyBmdyA9IGlvcmVh ZDgoJmlkZXYtPmRldl9pbmZvLT5md19zdGF0dXMpOw0KPiArIGlmICgoZncgJiBJT05JQ19GV19T VFNfRl9SVU5OSU5HKSAhPSAwKQ0KPiArIGJyZWFrOw0KPiArDQo+ICsgaWYgKGZ3X3dhaXRzID4g SU9OSUNfVkRFVl9GV19XQUlUX01BWCkgew0KPiArIElPTklDX1BSSU5UKEVSUiwgIkZpcm13YXJl IHJlYWRpbmVzcyBiaXQgbm90IHNldCIpOw0KPiArIHJldHVybiAtRVRJTUVET1VUOw0KPiArIH0N Cj4gKw0KPiArIGZ3X3dhaXRzKys7DQo+ICsgcnRlX2RlbGF5X3VzX2Jsb2NrKElPTklDX1ZERVZf RldfV0FJVF9VUyk7DQo+ICsgfQ0KPiArIElPTklDX1BSSU5UKERFQlVHLCAiRmlybXdhcmUgcmVh ZHkgKCV1IHdhaXRzKSIsIGZ3X3dhaXRzKTsNCj4gKw0KPiArIGFkYXB0ZXItPm5hbWUgPSBydGVf dmRldl9kZXZpY2VfbmFtZShhZGFwdGVyLT5idXNfZGV2KTsNCj4gKw0KPiArIHJldHVybiAwOw0K PiArfQ0KPiArDQo+ICtzdGF0aWMgdm9pZA0KPiAraW9uaWNfdmRldl9wb2xsKHN0cnVjdCBpb25p Y19hZGFwdGVyICphZGFwdGVyKQ0KPiArew0KPiArIGlvbmljX2Rldl9pbnRlcnJ1cHRfaGFuZGxl cihhZGFwdGVyKTsNCj4gK30NCj4gKw0KPiArc3RhdGljIHZvaWQNCj4gK2lvbmljX3ZkZXZfdW5t YXBfYmFycyhzdHJ1Y3QgaW9uaWNfYWRhcHRlciAqYWRhcHRlcikNCj4gK3sNCj4gKyBzdHJ1Y3Qg aW9uaWNfYmFycyAqYmFycyA9ICZhZGFwdGVyLT5iYXJzOw0KPiArIHVpbnQzMl90IGk7DQo+ICsN Cj4gKyBmb3IgKGkgPSAwOyBpIDwgSU9OSUNfVkRFVl9CQVJTX01BWDsgaSsrKQ0KPiArIGlvbmlj X3Vpb19yZWxfcnNyYyhhZGFwdGVyLT5uYW1lLCBpLCAmYmFycy0+YmFyW2ldKTsNCj4gK30NCj4g Kw0KPiArc3RhdGljIGNvbnN0IHN0cnVjdCBpb25pY19kZXZfaW50ZiBpb25pY192ZGV2X2ludGYg PSB7DQo+ICsgLnNldHVwID0gaW9uaWNfdmRldl9zZXR1cCwNCj4gKyAucG9sbCA9IGlvbmljX3Zk ZXZfcG9sbCwNCj4gKyAudW5tYXBfYmFycyA9IGlvbmljX3ZkZXZfdW5tYXBfYmFycywNCj4gK307 DQo+ICsNCj4gK3N0YXRpYyBpbnQNCj4gK2V0aF9pb25pY192ZGV2X3Byb2JlKHN0cnVjdCBydGVf dmRldl9kZXZpY2UgKnZkZXYpDQo+ICt7DQo+ICsgc3RydWN0IGlvbmljX2JhcnMgYmFycyA9IHt9 Ow0KPiArIGNvbnN0IGNoYXIgKm5hbWUgPSBydGVfdmRldl9kZXZpY2VfbmFtZSh2ZGV2KTsNCj4g KyB1bnNpZ25lZCBpbnQgaTsNCj4gKw0KPiArIElPTklDX1BSSU5UKE5PVElDRSwgIkluaXRpYWxp emluZyBkZXZpY2UgJXMiLA0KPiArIHJ0ZV9lYWxfcHJvY2Vzc190eXBlKCkgPT0gUlRFX1BST0Nf U0VDT05EQVJZID8NCj4gKyAiW1NFQ09OREFSWV0iIDogIiIpOw0KPiArDQo+ICsgZm9yIChpID0g MDsgaSA8IElPTklDX1ZERVZfQkFSU19NQVg7IGkrKykNCj4gKyBpb25pY191aW9fZ2V0X3JzcmMo bmFtZSwgaSwgJmJhcnMuYmFyW2ldKTsNCj4gKw0KPiArIGJhcnMubnVtX2JhcnMgPSBJT05JQ19W REVWX0JBUlNfTUFYOw0KPiArDQo+ICsgcmV0dXJuIGV0aF9pb25pY19kZXZfcHJvYmUoKHZvaWQg Kil2ZGV2LA0KPiArICZ2ZGV2LT5kZXZpY2UsDQo+ICsgJmJhcnMsDQo+ICsgJmlvbmljX3ZkZXZf aW50ZiwNCj4gKyBJT05JQ19ERVZfSURfRVRIX1ZGLA0KPiArIElPTklDX1BFTlNBTkRPX1ZFTkRP Ul9JRCk7DQo+ICt9DQo+ICsNCj4gK3N0YXRpYyBpbnQNCj4gK2V0aF9pb25pY192ZGV2X3JlbW92 ZShzdHJ1Y3QgcnRlX3ZkZXZfZGV2aWNlICp2ZGV2KQ0KPiArew0KPiArIHJldHVybiBldGhfaW9u aWNfZGV2X3JlbW92ZSgmdmRldi0+ZGV2aWNlKTsNCj4gK30NCj4gKw0KPiArc3RhdGljIHN0cnVj dCBydGVfdmRldl9kcml2ZXIgcnRlX3ZkZXZfaW9uaWNfcG1kID0gew0KPiArIC5wcm9iZSA9IGV0 aF9pb25pY192ZGV2X3Byb2JlLA0KPiArIC5yZW1vdmUgPSBldGhfaW9uaWNfdmRldl9yZW1vdmUs DQo+ICt9Ow0KPiArDQo+ICtSVEVfUE1EX1JFR0lTVEVSX1ZERVYobmV0X2lvbmljLCBydGVfdmRl dl9pb25pY19wbWQpOw0KPiArDQo+ICtzdGF0aWMgdm9pZA0KPiArdmRldl9pb25pY19zY2FuX2Ni KF9fcnRlX3VudXNlZCB2b2lkICphcmcpDQo+ICt7DQo+ICsgaW9uaWNfdWlvX3NjYW5fbW5ldF9k ZXZpY2VzKCk7DQo+ICt9DQo+ICsNCj4gK1JURV9JTklUKHZkZXZfaW9uaWNfY3VzdG9tX2FkZCkN Cj4gK3sNCj4gKyBydGVfdmRldl9hZGRfY3VzdG9tX3NjYW4odmRldl9pb25pY19zY2FuX2NiLCBO VUxMKTsNCj4gK30NCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2lvbmljL2lvbmljX2V0aGRl di5jIGIvZHJpdmVycy9uZXQvaW9uaWMvaW9uaWNfZXRoZGV2LmMNCj4gaW5kZXggN2U4MDc1MTg0 Ni4uYWEyMmI2YTcwZCAxMDA2NDQNCj4gLS0tIGEvZHJpdmVycy9uZXQvaW9uaWMvaW9uaWNfZXRo ZGV2LmMNCj4gKysrIGIvZHJpdmVycy9uZXQvaW9uaWMvaW9uaWNfZXRoZGV2LmMNCj4gQEAgLTMw MCw2ICszMDAsMTMgQEAgaW9uaWNfZGV2X2xpbmtfdXBkYXRlKHN0cnVjdCBydGVfZXRoX2RldiAq ZXRoX2RldiwNCj4gDQo+IElPTklDX1BSSU5UX0NBTEwoKTsNCj4gDQo+ICsgLyoNCj4gKyAqIFRo ZXJlIGlzIG5vIHdheSB0byBob29rIHVwIHRoZSBkZXZpY2UgaW50ZXJydXB0cyBpbiB0aGUgdmRl dg0KPiArICogZnJhbWV3b3JrLiBJbnN0ZWFkLCBwb2xsIGZvciB1cGRhdGVzIG9uIHRoZSBhZGFw dGVyLg0KPiArICovDQo+ICsgaWYgKGFkYXB0ZXItPmludGYgJiYgYWRhcHRlci0+aW50Zi0+cG9s bCkNCj4gKyAoKmFkYXB0ZXItPmludGYtPnBvbGwpKGFkYXB0ZXIpOw0KPiArDQo+IC8qIEluaXRp YWxpemUgKi8NCj4gbWVtc2V0KCZsaW5rLCAwLCBzaXplb2YobGluaykpOw0KPiANCj4gZGlmZiAt LWdpdCBhL2RyaXZlcnMvbmV0L2lvbmljL2lvbmljX2xpZi5jIGIvZHJpdmVycy9uZXQvaW9uaWMv aW9uaWNfbGlmLmMNCj4gaW5kZXggOTNhMTAxMTc3Mi4uN2YwMmI2NzYxMCAxMDA2NDQNCj4gLS0t IGEvZHJpdmVycy9uZXQvaW9uaWMvaW9uaWNfbGlmLmMNCj4gKysrIGIvZHJpdmVycy9uZXQvaW9u aWMvaW9uaWNfbGlmLmMNCj4gQEAgLTU0MCw2ICs1NDAsMTAgQEAgaW9uaWNfbGlmX2NoYW5nZV9t dHUoc3RydWN0IGlvbmljX2xpZiAqbGlmLCB1aW50MzJfdCBuZXdfbXR1KQ0KPiB9LA0KPiB9Ow0K PiANCj4gKyAvKiBOb3QgbmVlZGVkIGZvciBlbWJlZGRlZCBhcHBsaWNhdGlvbnMgKi8NCj4gKyBp ZiAoaW9uaWNfaXNfZW1iZWRkZWQoKSkNCj4gKyByZXR1cm4gMDsNCj4gKw0KPiByZXR1cm4gaW9u aWNfYWRtaW5xX3Bvc3Rfd2FpdChsaWYsICZjdHgpOw0KPiB9DQo+IA0KPiBAQCAtOTc1LDYgKzk3 OSwxMyBAQCBpb25pY19saWZfcXVldWVfaWRlbnRpZnkoc3RydWN0IGlvbmljX2xpZiAqbGlmKQ0K PiANCj4gbWVtc2V0KHF0aSwgMCwgc2l6ZW9mKCpxdGkpKTsNCj4gDQo+ICsgaWYgKGlvbmljX2lz X2VtYmVkZGVkKCkpIHsNCj4gKyAvKiBXaGVuIGVtYmVkZGVkLCBGVyB3aWxsIGFsd2F5cyBtYXRj aCB0aGUgZHJpdmVyICovDQo+ICsgcXRpLT52ZXJzaW9uID0gaW9uaWNfcXR5cGVfdmVyc1txdHlw ZV07DQo+ICsgY29udGludWU7DQo+ICsgfQ0KPiArDQo+ICsgLyogT24gdGhlIGhvc3QsIHF1ZXJ5 IHRoZSBGVyBmb3IgaW5mbyAqLw0KPiBpb25pY19kZXZfY21kX3F1ZXVlX2lkZW50aWZ5KGlkZXYs IElPTklDX0xJRl9UWVBFX0NMQVNTSUMsDQo+IHF0eXBlLCBpb25pY19xdHlwZV92ZXJzW3F0eXBl XSk7DQo+IGVyciA9IGlvbmljX2Rldl9jbWRfd2FpdF9jaGVjayhpZGV2LCBJT05JQ19ERVZDTURf VElNRU9VVCk7DQo+IEBAIC0xMjQ2LDYgKzEyNTcsMTAgQEAgaW9uaWNfbGlmX3Jzc19zZXR1cChz dHJ1Y3QgaW9uaWNfbGlmICpsaWYpDQo+IHN0YXRpYyB2b2lkDQo+IGlvbmljX2xpZl9yc3NfdGVh cmRvd24oc3RydWN0IGlvbmljX2xpZiAqbGlmKQ0KPiB7DQo+ICsgLyogTm90IG5lZWRlZCBmb3Ig ZW1iZWRkZWQgYXBwbGljYXRpb25zICovDQo+ICsgaWYgKGlvbmljX2lzX2VtYmVkZGVkKCkpDQo+ ICsgcmV0dXJuOw0KPiArDQo+IGlmIChsaWYtPnJzc19pbmRfdGJsKSB7DQo+IGxpZi0+cnNzX2lu ZF90YmwgPSBOVUxMOw0KPiBsaWYtPnJzc19pbmRfdGJsX3BhID0gMDsNCj4gQEAgLTE3NzAsNiAr MTc4NSwxMCBAQCBpb25pY19saWZfc2V0X25hbWUoc3RydWN0IGlvbmljX2xpZiAqbGlmKQ0KPiB9 LA0KPiB9Ow0KPiANCj4gKyAvKiBOb3QgbmVlZGVkIGZvciBlbWJlZGRlZCBhcHBsaWNhdGlvbnMg Ki8NCj4gKyBpZiAoaW9uaWNfaXNfZW1iZWRkZWQoKSkNCj4gKyByZXR1cm47DQo+ICsNCj4gbWVt Y3B5KGN0eC5jbWQubGlmX3NldGF0dHIubmFtZSwgbGlmLT5uYW1lLA0KPiBzaXplb2YoY3R4LmNt ZC5saWZfc2V0YXR0ci5uYW1lKSAtIDEpOw0KPiANCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0 L2lvbmljL2lvbmljX3J4dHguaCBiL2RyaXZlcnMvbmV0L2lvbmljL2lvbmljX3J4dHguaA0KPiBp bmRleCA2M2RmZmI3ODY2Li5iM2U0ZTVlNWIzIDEwMDY0NA0KPiAtLS0gYS9kcml2ZXJzL25ldC9p b25pYy9pb25pY19yeHR4LmgNCj4gKysrIGIvZHJpdmVycy9uZXQvaW9uaWMvaW9uaWNfcnh0eC5o DQo+IEBAIC0xMDEsNiArMTAxLDcgQEAgaW50IGlvbmljX3J4X2ZpbGxfc2coc3RydWN0IGlvbmlj X3J4X3FjcSAqcnhxKTsNCj4gc3RhdGljIGlubGluZSB2b2lkDQo+IGlvbmljX3J4cV9mbHVzaChz dHJ1Y3QgaW9uaWNfcXVldWUgKnEpDQo+IHsNCj4gKyNpZm5kZWYgUlRFX0xJQlJURV9JT05JQ19Q TURfRU1CRURERUQNCj4gc3RydWN0IGlvbmljX3J4cV9kZXNjICpkZXNjX2Jhc2UgPSBxLT5iYXNl Ow0KPiBzdHJ1Y3QgaW9uaWNfcnhxX2Rlc2MgKmNtYl9kZXNjX2Jhc2UgPSBxLT5jbWJfYmFzZTsN Cj4gDQo+IEBAIC0xMjIsNiArMTIzLDcgQEAgaW9uaWNfcnhxX2ZsdXNoKHN0cnVjdCBpb25pY19x dWV1ZSAqcSkNCj4gfQ0KPiBxLT5jbWJfaGVhZF9pZHggPSBxLT5oZWFkX2lkeDsNCj4gfQ0KPiAr I2VuZGlmIC8qIFJURV9MSUJSVEVfSU9OSUNfUE1EX0VNQkVEREVEICovDQo+IA0KPiBpb25pY19x X2ZsdXNoKHEpOw0KPiB9DQo+IEBAIC0xMjksNiArMTMxLDcgQEAgaW9uaWNfcnhxX2ZsdXNoKHN0 cnVjdCBpb25pY19xdWV1ZSAqcSkNCj4gc3RhdGljIGlubGluZSB2b2lkDQo+IGlvbmljX3R4cV9m bHVzaChzdHJ1Y3QgaW9uaWNfcXVldWUgKnEpDQo+IHsNCj4gKyNpZm5kZWYgUlRFX0xJQlJURV9J T05JQ19QTURfRU1CRURERUQNCj4gc3RydWN0IGlvbmljX3R4cV9kZXNjICpkZXNjX2Jhc2UgPSBx LT5iYXNlOw0KPiBzdHJ1Y3QgaW9uaWNfdHhxX2Rlc2MgKmNtYl9kZXNjX2Jhc2UgPSBxLT5jbWJf YmFzZTsNCj4gDQo+IEBAIC0xNTAsNiArMTUzLDcgQEAgaW9uaWNfdHhxX2ZsdXNoKHN0cnVjdCBp b25pY19xdWV1ZSAqcSkNCj4gfQ0KPiBxLT5jbWJfaGVhZF9pZHggPSBxLT5oZWFkX2lkeDsNCj4g fQ0KPiArI2VuZGlmIC8qIFJURV9MSUJSVEVfSU9OSUNfUE1EX0VNQkVEREVEICovDQo+IA0KPiBp b25pY19xX2ZsdXNoKHEpOw0KPiB9DQo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9pb25pYy9t ZXNvbi5idWlsZCBiL2RyaXZlcnMvbmV0L2lvbmljL21lc29uLmJ1aWxkDQo+IGluZGV4IDlmNzM1 ZTM1M2UuLmNjNmQ1Y2U0ZGIgMTAwNjQ0DQo+IC0tLSBhL2RyaXZlcnMvbmV0L2lvbmljL21lc29u LmJ1aWxkDQo+ICsrKyBiL2RyaXZlcnMvbmV0L2lvbmljL21lc29uLmJ1aWxkDQo+IEBAIC0xMiw2 ICsxMiw3IEBAIGRlcHMgKz0gWydjb21tb25faW9uaWMnXQ0KPiBzb3VyY2VzID0gZmlsZXMoDQo+ ICAgICAgICAgJ2lvbmljX2Rldi5jJywNCj4gICAgICAgICAnaW9uaWNfZGV2X3BjaS5jJywNCj4g KyAgICAgICAgJ2lvbmljX2Rldl92ZGV2LmMnLA0KPiAgICAgICAgICdpb25pY19ldGhkZXYuYycs DQo+ICAgICAgICAgJ2lvbmljX2xpZi5jJywNCj4gICAgICAgICAnaW9uaWNfbWFjX2FwaS5jJywN Cj4gLS0gDQo+IDIuMTcuMQ0KPiANCg0K