From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 37E11A00BE; Tue, 7 Jul 2020 15:38:43 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 0B38C1D931; Tue, 7 Jul 2020 15:38:43 +0200 (CEST) Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-eopbgr140054.outbound.protection.outlook.com [40.107.14.54]) by dpdk.org (Postfix) with ESMTP id 9A0A21D8EE for ; Tue, 7 Jul 2020 15:38:41 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NH78dVXEHGj4IiMKobNjJQ6NSxRjGCaB/i/T4eQSmxxHMGX6wOEMiottsnvUhyooH0T6uo0xtoLQrtsSIu2kxYSJoAJT2ZBz23XsCQ+WhOBSKWpuFWJy7GwkiygJnr+on5NvVDoV2qyDuVVAvqhR5R/kH367L1PVNMnNWU9EfVxf8nPaq08fd3Ky6GprwOedFmQ9qsa/9fFDjYMWzJEUANk6wegVv1qURi7w1bbK1UsgrTduRTEIg/UMWJCI44A9bjWXxPH60IoL4V78tQBjXZwsG0YdJ1da0bti5Dk9emHZ8RJjZ6THyaJzwpNa1Ys5OHHb1c8DK6py6WfllNlKpw== 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=TGXPxs0i4Pv7CnJjgRhypaPrLoPsD31rzTiwvmX+a4s=; b=RRWlQmdjIvb9IeDOy+wGYs3f/d0KrgCUXIG+ur3IovVF6qskavqIOyipD9Z34JIkU+5bT3qBh1WvDwC0DTeTOgA+WWdEg/+r6Yu5Y/dJdp7bi3yk6aSzBouDEYano4Bd52Qji48s0jNW7AJ5yAKahOpJIWe/dJLPypq4MQ0Uwb5GmPElBdIIidn4XDEBPtGTCyYSNXAzoK3gFCaa3VtDtA7Uctoz4c9g8GmWKrUcOcR67l+ukhQWifCc2OTtI3tJu3uj7X4jR4lVY8RoN+4t7CvKNsTbkRDiXLpaRcU0OoNlfozoajaYeho4zr/ZwLhsLINeFus971yPV49j4mkBeQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=mellanox.com; dmarc=pass action=none header.from=mellanox.com; dkim=pass header.d=mellanox.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=TGXPxs0i4Pv7CnJjgRhypaPrLoPsD31rzTiwvmX+a4s=; b=gYFNsnQXtFevoS4h03jNAUTosDPfidsXAsuA5/He3lpUGb2hzm4McIEaarg+zvzD0YnNfLTC07f7OrMruDCUCKoFttuJAf1Zh9URLPpvJNC5gH1FCXZlEhtd90LZ5uVGUQ8qSm0QJG+LYrYewKXv23IGO/iOC9Kqj3zrsMx50zA= Received: from AM4PR05MB3265.eurprd05.prod.outlook.com (2603:10a6:205:8::26) by AM0PR05MB5795.eurprd05.prod.outlook.com (2603:10a6:208:111::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3153.27; Tue, 7 Jul 2020 13:38:36 +0000 Received: from AM4PR05MB3265.eurprd05.prod.outlook.com ([fe80::194e:dc46:7543:50ed]) by AM4PR05MB3265.eurprd05.prod.outlook.com ([fe80::194e:dc46:7543:50ed%2]) with mapi id 15.20.3153.029; Tue, 7 Jul 2020 13:38:36 +0000 From: Slava Ovsiienko To: Jeff Guo , "Wei Hu (Xavier)" , "dev@dpdk.org" Thread-Topic: [dpdk-dev] [PATCH v6 2/2] ethdev: fix VLAN offloads set if no relative capabilities Thread-Index: AQHWVDFGzwUQ/TzoTUGio90+B73VH6j8H2JQ Date: Tue, 7 Jul 2020 13:38:36 +0000 Message-ID: References: <1594019191-54524-1-git-send-email-xavier.huwei@huawei.com> <1594019191-54524-3-git-send-email-xavier.huwei@huawei.com> <11592f75-03bf-7f0e-1bb9-cdd82d6c5ed7@intel.com> In-Reply-To: <11592f75-03bf-7f0e-1bb9-cdd82d6c5ed7@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=mellanox.com; x-originating-ip: [95.164.10.10] x-ms-publictraffictype: Email x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: a17df549-b0e6-4c02-4fae-08d8227b0cde x-ms-traffictypediagnostic: AM0PR05MB5795: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:449; x-forefront-prvs: 0457F11EAF x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 1PCVyAPn5PZN9jfz8FJIjDgKdjrXqvo+AQH6tz68E+JTp/h9zrsMJsHtddQWxlx4cHiAtWnY+aTuiGIsHImoOHAw6FNPs98HlqOLZioGlIKGcPiYaVYpCxjdTUISmL0OIYVsNuWq54C1Cvi/qyWlDLPifjB62R+1TUSCZZFUHwfJRzKVkTupCnLilFueYnQkgcH0aU+48OWAmlxCo+0baGiC0Ds5TCqOIYmiKrNXrswuJHdimZZSGJDpmXzeJlGj62wOFkotByC/uAjgYj4Na7p4ZwFRygM/rt5TJclsEMajwEwfCAhXHYDYlQiMeUhPy9l949ZLoSw0QjJOefDiVw== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM4PR05MB3265.eurprd05.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(4636009)(366004)(8676002)(66946007)(76116006)(66476007)(66556008)(64756008)(55016002)(83380400001)(66446008)(33656002)(30864003)(53546011)(498600001)(86362001)(71200400001)(8936002)(110136005)(5660300002)(7696005)(26005)(6506007)(9686003)(2906002)(186003)(52536014); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: IoHrUZb9JPDxLZfleR7F+6m8IBdq6dMh0T5BR45D0/woDgDFc2VKTONHnRQz4Sf+mlGRJ6Wq1nAnmqLRnN5Qp6iohjX3WMsoqm5A25l2LO942ks5NMFESfkVwW+YXvwbm3rmDE4TEtEkCBDrzQkTOzeE2pTcVObUCEtWQX2iOa5hMmBKx0lS9+5eauKrXBEkdPtwMiaAxL65zewpTGTRmDuvPTuNVlDTsJPTNcnLYBctEw42v6gx59p/Qe60Ie/q8ZKu4u/Scw/5yZisq66Lo7dSMlf55mUU5AfZlLdv700bu47EYLw7Q2HEvsgYxwSfn6kySlrQ087AdSIbF8pDE0qftSfwc/EYcORT7X2URcpGtQe7M+Fh8sL8kbosG+1JS/WPMmO5IYqOLvT+kSPdFSaGNvQBdaQXIUESGdcWalihMzB7iGEE8QYLKy8U+UDTYUk3e6i21WdoDchsNo1SqGP/zYhLArpdZ3KPBK/zwsY= x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: AM4PR05MB3265.eurprd05.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a17df549-b0e6-4c02-4fae-08d8227b0cde X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Jul 2020 13:38:36.3783 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: g4BgcWXtVK7eM8sl55qthj6bcHsDXY63+peBVuBoSdIUC2zTzxgBgMuQEdp2ZIqjq3KsOqnqQUIzxe0yEU/WRfegQ2sfC59wSsCSG2/oBtg= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR05MB5795 Subject: Re: [dpdk-dev] [PATCH v6 2/2] ethdev: fix VLAN offloads set if no relative capabilities X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" QWNrZWQtYnk6IFZpYWNoZXNsYXYgT3ZzaWllbmtvIDx2aWFjaGVzbGF2b0BtZWxsYW5veC5jb20+ DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogZGV2IDxkZXYtYm91bmNl c0BkcGRrLm9yZz4gT24gQmVoYWxmIE9mIEplZmYgR3VvDQo+IFNlbnQ6IFR1ZXNkYXksIEp1bHkg NywgMjAyMCAxMDozNg0KPiBUbzogV2VpIEh1IChYYXZpZXIpIDx4YXZpZXIuaHV3ZWlAaHVhd2Vp LmNvbT47IGRldkBkcGRrLm9yZw0KPiBTdWJqZWN0OiBSZTogW2RwZGstZGV2XSBbUEFUQ0ggdjYg Mi8yXSBldGhkZXY6IGZpeCBWTEFOIG9mZmxvYWRzIHNldCBpZiBubw0KPiByZWxhdGl2ZSBjYXBh YmlsaXRpZXMNCj4gDQo+IA0KPiBPbiA3LzYvMjAyMCAzOjA2IFBNLCBXZWkgSHUgKFhhdmllcikg d3JvdGU6DQo+ID4gQ3VycmVudGx5LCB0aGVyZSBpcyBhIHBvdGVudGlhbCBwcm9ibGVtIHRoYXQg Y2FsbGluZyB0aGUgQVBJIGZ1bmN0aW9uDQo+ID4gcnRlX2V0aF9kZXZfc2V0X3ZsYW5fb2ZmbG9h ZCB0byBzdGFydCBWTEFOIGhhcmR3YXJlIG9mZmxvYWRzIHdoaWNoIHRoZQ0KPiA+IGRyaXZlciBk b2VzIG5vdCBzdXBwb3J0LiBJZiB0aGUgUE1EIGRyaXZlciBkb2VzIG5vdCBzdXBwb3J0IGNlcnRh aW4NCj4gPiBWTEFOIGhhcmR3YXJlIG9mZmxvYWRzIGFuZCBkb2VzIG5vdCBjaGVjayBmb3IgaXQs IHRoZSBoYXJkd2FyZSBzZXR0aW5nDQo+ID4gd2lsbCBub3QgY2hhbmdlLCBidXQgdGhlIFZMQU4g b2ZmbG9hZHMgaW4NCj4gPiBkZXYtPmRhdGEtPmRldl9jb25mLnJ4bW9kZS5vZmZsb2Fkcw0KPiA+ IHdpbGwgYmUgdHVybmVkIG9uLg0KPiA+DQo+ID4gSXQgaXMgc3VwcG9zZWQgdG8gY2hlY2sgdGhl IGhhcmR3YXJlIGNhcGFiaWxpdGllcyB0byBkZWNpZGUgd2hldGhlcg0KPiA+IHRoZSByZWxhdGl2 ZSBjYWxsYmFjayBuZWVkcyB0byBiZSBjYWxsZWQganVzdCBsaWtlIHRoZSBiZWhhdmlvciBpbiB0 aGUNCj4gPiBBUEkgZnVuY3Rpb24gbmFtZWQgcnRlX2V0aF9kZXZfY29uZmlndXJlLiBBbmQgaXQg aXMgYWxzbyBuZWVkZWQgdG8NCj4gPiBjbGVhbnVwIGR1cGxpY2F0ZWQgY2hlY2tzIHdoaWNoIGFy ZSBkb25lIGluIHNvbWUgUE1Ecy4gQWxzbywgbm90ZSB0aGF0DQo+ID4gaXQgaXMgYmVoYXZpb3Vy IGNoYW5nZSBmb3Igc29tZSBQTURzIHdoaWNoIHNpbXBseSBpZ25vcmUgKHdpdGgNCj4gPiBlcnJv ci93YXJuaW5nIGxvZw0KPiA+IG1lc3NhZ2UpIHVuc3VwcG9ydGVkIFZMQU4gb2ZmbG9hZHMsIGJ1 dCBub3cgaXQgd2lsbCBmYWlsLg0KPiA+DQo+ID4gRml4ZXM6IGE0OTk2YmQ4OWM0MiAoImV0aGRl djogbmV3IFJ4L1R4IG9mZmxvYWRzIEFQSSIpDQo+ID4gRml4ZXM6IDBlYmNlNjEyOWJjNiAoIm5l dC9kcGFhMjogc3VwcG9ydCBuZXcgZXRoZGV2IG9mZmxvYWQgQVBJcyIpDQo+ID4gRml4ZXM6IGY5 NDE2YmJhZmQ5OCAoIm5ldC9lbmljOiByZW1vdmUgVkxBTiBmaWx0ZXIgaGFuZGxlciIpDQo+ID4g Rml4ZXM6IDRmN2Q5ZTM4M2U1YyAoImZtMTBrOiB1cGRhdGUgdmxhbiBvZmZsb2FkIGZlYXR1cmVz IikNCj4gPiBGaXhlczogZmRiYTNiZjE1YzdiICgibmV0L2hpbmljOiBhZGQgVkxBTiBmaWx0ZXIg YW5kIG9mZmxvYWQiKQ0KPiA+IEZpeGVzOiBiOTZmYjJmMGQyMmIgKCJuZXQvaTQwZTogaGFuZGxl IFFpblEgc3RyaXAiKQ0KPiA+IEZpeGVzOiBkNGEyN2EzYjA5MmEgKCJuZnA6IGFkZCBiYXNpYyBm ZWF0dXJlcyIpDQo+ID4gRml4ZXM6IDU2MTM5ZTg1YWJlYyAoIm5ldC9vY3Rlb250eDogc3VwcG9y dCBWTEFOIGZpbHRlciBvZmZsb2FkIikNCj4gPiBGaXhlczogYmExYjNiMDgxZWRmICgibmV0L29j dGVvbnR4Mjogc3VwcG9ydCBWTEFOIG9mZmxvYWRzIikNCj4gPiBGaXhlczogZDg3MjQ2YTQzNzU5 ICgibmV0L3FlZGU6IGVuYWJsZSBhbmQgZGlzYWJsZSBWTEFOIGZpbHRlcmluZyIpDQo+ID4gQ2M6 IHN0YWJsZUBkcGRrLm9yZw0KPiA+DQo+ID4gU2lnbmVkLW9mZi1ieTogQ2hlbmdjaGFuZyBUYW5n IDx0YW5nY2hlbmdjaGFuZ0BodWF3ZWkuY29tPg0KPiA+IFNpZ25lZC1vZmYtYnk6IFdlaSBIdSAo WGF2aWVyKSA8eGF2aWVyLmh1d2VpQGh1YXdlaS5jb20+DQo+ID4gQWNrZWQtYnk6IEFuZHJldyBS eWJjaGVua28gPGFyeWJjaGVua29Ac29sYXJmbGFyZS5jb20+DQo+ID4gQWNrZWQtYnk6IEh5b25n IFlvdWIgS2ltIDxoeW9ua2ltQGNpc2NvLmNvbT4NCj4gPiBBY2tlZC1ieTogU2FjaGluIFNheGVu YSA8c2FjaGluLnNheGVuYUBvc3MubnhwLmNvbT4NCj4gPiBBY2tlZC1ieTogWGlhb3l1biB3YW5n IDxjbG91ZC53YW5neGlhb3l1bkBodWF3ZWkuY29tPg0KPiA+IEFja2VkLWJ5OiBIYXJtYW4gS2Fs cmEgPGhrYWxyYUBtYXJ2ZWxsLmNvbT4NCj4gDQo+IA0KPiBBY2tlZC1ieTogSmVmZiBHdW8gPGpp YS5ndW9AaW50ZWwuY29tPg0KPiANCj4gDQo+ID4gLS0tDQo+ID4gdjUgLT4gdjY6IGFkZCB0aGUg cmVsYXRlZCBoaXN0b3J5IHBhdGNoIGludG8gdGhlIEZpeGVzIGNvbW1pdCBsb2cuDQo+ID4gdjQg LT4gdjU6IG5vIGNoYW5nZS4NCj4gPiB2MyAtPiB2NDogRGVsZXRlICJuZXh0X21hc2siIGxhYmVs IGFuZCBtb2RpZnkgdGhlIGZ1bmN0aW9uIHRoYXQgd2hlbiB0aGUNCj4gPiAgICAgICAgICAgIG9m ZmxvYWQgaXMgbm90IHN1cHBvcnRlZCB0aGUgZnVuY3Rpb24gZmFpbC4NCj4gPiB2MiAtPiB2Mzog QWRkIF9fcnRlX3VudXNlZCB0byBhdm9pZCB1bnVzZWQgcGFyYW1ldGVyICdkZXYnIGFuZCAnbWFz aycNCj4gPiAgICAgICAgICAgIHdhcm5pbmcuDQo+ID4gdjEgLT4gdjI6IENsZWFudXAgZHVwbGlj YXRlZCBjaGVja3Mgd2hpY2ggYXJlIGRvbmUgaW4gc29tZSBQTURzLg0KPiA+IC0tLQ0KPiA+ICAg ZHJpdmVycy9uZXQvZHBhYTIvZHBhYTJfZXRoZGV2LmMgICAgICAgICAgIHwgMTIgKysrLS0tLS0t LS0tDQo+ID4gICBkcml2ZXJzL25ldC9lbmljL2VuaWNfZXRoZGV2LmMgICAgICAgICAgICAgfCAx MiAtLS0tLS0tLS0tLS0NCj4gPiAgIGRyaXZlcnMvbmV0L2ZtMTBrL2ZtMTBrX2V0aGRldi5jICAg ICAgICAgICB8IDIzICsrLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+ID4gICBkcml2ZXJzL25ldC9o aW5pYy9oaW5pY19wbWRfZXRoZGV2LmMgICAgICAgfCAgNiAtLS0tLS0NCj4gPiAgIGRyaXZlcnMv bmV0L2k0MGUvaTQwZV9ldGhkZXYuYyAgICAgICAgICAgICB8ICA1IC0tLS0tDQo+ID4gICBkcml2 ZXJzL25ldC9uZnAvbmZwX25ldC5jICAgICAgICAgICAgICAgICAgfCAgNSAtLS0tLQ0KPiA+ICAg ZHJpdmVycy9uZXQvb2N0ZW9udHgvb2N0ZW9udHhfZXRoZGV2X29wcy5jIHwgMTAgLS0tLS0tLS0t LQ0KPiA+ICAgZHJpdmVycy9uZXQvb2N0ZW9udHgyL290eDJfdmxhbi5jICAgICAgICAgIHwgIDUg LS0tLS0NCj4gPiAgIGRyaXZlcnMvbmV0L3FlZGUvcWVkZV9ldGhkZXYuYyAgICAgICAgICAgICB8 ICAzIC0tLQ0KPiA+ICAgbGliL2xpYnJ0ZV9ldGhkZXYvcnRlX2V0aGRldi5jICAgICAgICAgICAg IHwgMjEgKysrKysrKysrKysrKysrKysrKysrDQo+ID4gICAxMCBmaWxlcyBjaGFuZ2VkLCAyNiBp bnNlcnRpb25zKCspLCA3NiBkZWxldGlvbnMoLSkNCj4gPg0KPiA+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL25ldC9kcGFhMi9kcGFhMl9ldGhkZXYuYw0KPiA+IGIvZHJpdmVycy9uZXQvZHBhYTIvZHBh YTJfZXRoZGV2LmMNCj4gPiBpbmRleCBhMWYxOTE5Li40ODlkNzQ0IDEwMDY0NA0KPiA+IC0tLSBh L2RyaXZlcnMvbmV0L2RwYWEyL2RwYWEyX2V0aGRldi5jDQo+ID4gKysrIGIvZHJpdmVycy9uZXQv ZHBhYTIvZHBhYTJfZXRoZGV2LmMNCj4gPiBAQCAtMTQ1LDcgKzE0NSw3IEBAIGRwYWEyX3ZsYW5f b2ZmbG9hZF9zZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYsDQo+IGludCBtYXNrKQ0KPiA+ICAg ew0KPiA+ICAgCXN0cnVjdCBkcGFhMl9kZXZfcHJpdiAqcHJpdiA9IGRldi0+ZGF0YS0+ZGV2X3By aXZhdGU7DQo+ID4gICAJc3RydWN0IGZzbF9tY19pbyAqZHBuaSA9IGRldi0+cHJvY2Vzc19wcml2 YXRlOw0KPiA+IC0JaW50IHJldDsNCj4gPiArCWludCByZXQgPSAwOw0KPiA+DQo+ID4gICAJUE1E X0lOSVRfRlVOQ19UUkFDRSgpOw0KPiA+DQo+ID4gQEAgLTE1Myw3ICsxNTMsNyBAQCBkcGFhMl92 bGFuX29mZmxvYWRfc2V0KHN0cnVjdCBydGVfZXRoX2RldiAqZGV2LA0KPiBpbnQgbWFzaykNCj4g PiAgIAkJLyogVkxBTiBGaWx0ZXIgbm90IGF2YWlhbGJsZSAqLw0KPiA+ICAgCQlpZiAoIXByaXYt Pm1heF92bGFuX2ZpbHRlcnMpIHsNCj4gPiAgIAkJCURQQUEyX1BNRF9JTkZPKCJWTEFOIGZpbHRl ciBub3QgYXZhaWxhYmxlIik7DQo+ID4gLQkJCWdvdG8gbmV4dF9tYXNrOw0KPiA+ICsJCQlyZXR1 cm4gLUVOT1RTVVA7DQo+ID4gICAJCX0NCj4gPg0KPiA+ICAgCQlpZiAoZGV2LT5kYXRhLT5kZXZf Y29uZi5yeG1vZGUub2ZmbG9hZHMgJiBAQCAtMTY2LDE0DQo+ICsxNjYsOCBAQA0KPiA+IGRwYWEy X3ZsYW5fb2ZmbG9hZF9zZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYsIGludCBtYXNrKQ0KPiA+ ICAgCQlpZiAocmV0IDwgMCkNCj4gPiAgIAkJCURQQUEyX1BNRF9JTkZPKCJVbmFibGUgdG8gc2V0 IHZsYW4gZmlsdGVyID0gJWQiLA0KPiByZXQpOw0KPiA+ICAgCX0NCj4gPiAtbmV4dF9tYXNrOg0K PiA+IC0JaWYgKG1hc2sgJiBFVEhfVkxBTl9FWFRFTkRfTUFTSykgew0KPiA+IC0JCWlmIChkZXYt PmRhdGEtPmRldl9jb25mLnJ4bW9kZS5vZmZsb2FkcyAmDQo+ID4gLQkJCURFVl9SWF9PRkZMT0FE X1ZMQU5fRVhURU5EKQ0KPiA+IC0JCQlEUEFBMl9QTURfSU5GTygiVkxBTiBleHRlbmQgb2ZmbG9h ZCBub3QNCj4gc3VwcG9ydGVkIik7DQo+ID4gLQl9DQo+ID4NCj4gPiAtCXJldHVybiAwOw0KPiA+ ICsJcmV0dXJuIHJldDsNCj4gPiAgIH0NCj4gPg0KPiA+ICAgc3RhdGljIGludA0KPiA+IGRpZmYg LS1naXQgYS9kcml2ZXJzL25ldC9lbmljL2VuaWNfZXRoZGV2LmMNCj4gPiBiL2RyaXZlcnMvbmV0 L2VuaWMvZW5pY19ldGhkZXYuYyBpbmRleCA2YTM1ODBmLi4zMGE1OTlkIDEwMDY0NA0KPiA+IC0t LSBhL2RyaXZlcnMvbmV0L2VuaWMvZW5pY19ldGhkZXYuYw0KPiA+ICsrKyBiL2RyaXZlcnMvbmV0 L2VuaWMvZW5pY19ldGhkZXYuYw0KPiA+IEBAIC0zNjcsMTggKzM2Nyw2IEBAIHN0YXRpYyBpbnQg ZW5pY3BtZF92bGFuX29mZmxvYWRfc2V0KHN0cnVjdA0KPiBydGVfZXRoX2RldiAqZXRoX2Rldiwg aW50IG1hc2spDQo+ID4gICAJCQllbmljLT5pZ192bGFuX3N0cmlwX2VuID0gMDsNCj4gPiAgIAl9 DQo+ID4NCj4gPiAtCWlmICgobWFzayAmIEVUSF9WTEFOX0ZJTFRFUl9NQVNLKSAmJg0KPiA+IC0J ICAgIChvZmZsb2FkcyAmIERFVl9SWF9PRkZMT0FEX1ZMQU5fRklMVEVSKSkgew0KPiA+IC0JCWRl dl93YXJuaW5nKGVuaWMsDQo+ID4gLQkJCSJDb25maWd1cmF0aW9uIG9mIFZMQU4gZmlsdGVyIGlz IG5vdCBzdXBwb3J0ZWRcbiIpOw0KPiA+IC0JfQ0KPiA+IC0NCj4gPiAtCWlmICgobWFzayAmIEVU SF9WTEFOX0VYVEVORF9NQVNLKSAmJg0KPiA+IC0JICAgIChvZmZsb2FkcyAmIERFVl9SWF9PRkZM T0FEX1ZMQU5fRVhURU5EKSkgew0KPiA+IC0JCWRldl93YXJuaW5nKGVuaWMsDQo+ID4gLQkJCSJD b25maWd1cmF0aW9uIG9mIGV4dGVuZGVkIFZMQU4gaXMgbm90DQo+IHN1cHBvcnRlZFxuIik7DQo+ ID4gLQl9DQo+ID4gLQ0KPiA+ICAgCXJldHVybiBlbmljX3NldF92bGFuX3N0cmlwKGVuaWMpOw0K PiA+ICAgfQ0KPiA+DQo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2ZtMTBrL2ZtMTBrX2V0 aGRldi5jDQo+ID4gYi9kcml2ZXJzL25ldC9mbTEway9mbTEwa19ldGhkZXYuYw0KPiA+IGluZGV4 IGNiMGRkM2IuLmI1NzQ2OTMgMTAwNjQ0DQo+ID4gLS0tIGEvZHJpdmVycy9uZXQvZm0xMGsvZm0x MGtfZXRoZGV2LmMNCj4gPiArKysgYi9kcml2ZXJzL25ldC9mbTEway9mbTEwa19ldGhkZXYuYw0K PiA+IEBAIC0xNTYyLDI4ICsxNTYyLDkgQEAgZm0xMGtfdmxhbl9maWx0ZXJfc2V0KHN0cnVjdCBy dGVfZXRoX2RldiAqZGV2LA0KPiB1aW50MTZfdCB2bGFuX2lkLCBpbnQgb24pDQo+ID4gICB9DQo+ ID4NCj4gPiAgIHN0YXRpYyBpbnQNCj4gPiAtZm0xMGtfdmxhbl9vZmZsb2FkX3NldChzdHJ1Y3Qg cnRlX2V0aF9kZXYgKmRldiwgaW50IG1hc2spDQo+ID4gK2ZtMTBrX3ZsYW5fb2ZmbG9hZF9zZXQo c3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYgX19ydGVfdW51c2VkLA0KPiA+ICsJCSAgICAgICBpbnQg bWFzayBfX3J0ZV91bnVzZWQpDQo+ID4gICB7DQo+ID4gLQlpZiAobWFzayAmIEVUSF9WTEFOX1NU UklQX01BU0spIHsNCj4gPiAtCQlpZiAoIShkZXYtPmRhdGEtPmRldl9jb25mLnJ4bW9kZS5vZmZs b2FkcyAmDQo+ID4gLQkJCURFVl9SWF9PRkZMT0FEX1ZMQU5fU1RSSVApKQ0KPiA+IC0JCQlQTURf SU5JVF9MT0coRVJSLCAiVkxBTiBzdHJpcHBpbmcgaXMgIg0KPiA+IC0JCQkJCSJhbHdheXMgb24g aW4gZm0xMGsiKTsNCj4gPiAtCX0NCj4gPiAtDQo+ID4gLQlpZiAobWFzayAmIEVUSF9WTEFOX0VY VEVORF9NQVNLKSB7DQo+ID4gLQkJaWYgKGRldi0+ZGF0YS0+ZGV2X2NvbmYucnhtb2RlLm9mZmxv YWRzICYNCj4gPiAtCQkJREVWX1JYX09GRkxPQURfVkxBTl9FWFRFTkQpDQo+ID4gLQkJCVBNRF9J TklUX0xPRyhFUlIsICJWTEFOIFFpblEgaXMgbm90ICINCj4gPiAtCQkJCQkic3VwcG9ydGVkIGlu IGZtMTBrIik7DQo+ID4gLQl9DQo+ID4gLQ0KPiA+IC0JaWYgKG1hc2sgJiBFVEhfVkxBTl9GSUxU RVJfTUFTSykgew0KPiA+IC0JCWlmICghKGRldi0+ZGF0YS0+ZGV2X2NvbmYucnhtb2RlLm9mZmxv YWRzICYNCj4gPiAtCQkJREVWX1JYX09GRkxPQURfVkxBTl9GSUxURVIpKQ0KPiA+IC0JCQlQTURf SU5JVF9MT0coRVJSLCAiVkxBTiBmaWx0ZXIgaXMgYWx3YXlzIG9uIGluDQo+IGZtMTBrIik7DQo+ ID4gLQl9DQo+ID4gLQ0KPiA+ICAgCXJldHVybiAwOw0KPiA+ICAgfQ0KPiA+DQo+ID4gZGlmZiAt LWdpdCBhL2RyaXZlcnMvbmV0L2hpbmljL2hpbmljX3BtZF9ldGhkZXYuYw0KPiA+IGIvZHJpdmVy cy9uZXQvaGluaWMvaGluaWNfcG1kX2V0aGRldi5jDQo+ID4gaW5kZXggMGQzZDYyYi4uNjdlNmFm YyAxMDA2NDQNCj4gPiAtLS0gYS9kcml2ZXJzL25ldC9oaW5pYy9oaW5pY19wbWRfZXRoZGV2LmMN Cj4gPiArKysgYi9kcml2ZXJzL25ldC9oaW5pYy9oaW5pY19wbWRfZXRoZGV2LmMNCj4gPiBAQCAt MTcwOSwxMiArMTcwOSw2IEBAIHN0YXRpYyBpbnQgaGluaWNfdmxhbl9vZmZsb2FkX3NldChzdHJ1 Y3QNCj4gcnRlX2V0aF9kZXYgKmRldiwgaW50IG1hc2spDQo+ID4gICAJCQkgIG5pY19kZXYtPnBy b2NfZGV2X25hbWUsIGRldi0+ZGF0YS0+cG9ydF9pZCk7DQo+ID4gICAJfQ0KPiA+DQo+ID4gLQlp ZiAobWFzayAmIEVUSF9WTEFOX0VYVEVORF9NQVNLKSB7DQo+ID4gLQkJUE1EX0RSVl9MT0coRVJS LCAiRG9uJ3Qgc3VwcG9ydCB2bGFuIHFpbnEsIGRldmljZTogJXMsDQo+IHBvcnRfaWQ6ICVkIiwN Cj4gPiAtCQkJICBuaWNfZGV2LT5wcm9jX2Rldl9uYW1lLCBkZXYtPmRhdGEtPnBvcnRfaWQpOw0K PiA+IC0JCXJldHVybiAtRU5PVFNVUDsNCj4gPiAtCX0NCj4gPiAtDQo+ID4gICAJcmV0dXJuIDA7 DQo+ID4gICB9DQo+ID4NCj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0 aGRldi5jDQo+ID4gYi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmMgaW5kZXggNDcyY2Uy YS4uYzg5MjkwZCAxMDA2NDQNCj4gPiAtLS0gYS9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2 LmMNCj4gPiArKysgYi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmMNCj4gPiBAQCAtMzg2 NSwxMSArMzg2NSw2IEBAIGk0MGVfdmxhbl9vZmZsb2FkX3NldChzdHJ1Y3QgcnRlX2V0aF9kZXYN Cj4gKmRldiwgaW50IG1hc2spDQo+ID4gICAJc3RydWN0IGk0MGVfdnNpICp2c2kgPSBwZi0+bWFp bl92c2k7DQo+ID4gICAJc3RydWN0IHJ0ZV9ldGhfcnhtb2RlICpyeG1vZGU7DQo+ID4NCj4gPiAt CWlmIChtYXNrICYgRVRIX1FJTlFfU1RSSVBfTUFTSykgew0KPiA+IC0JCVBNRF9EUlZfTE9HKEVS UiwgIlN0cmlwIHFpbnEgaXMgbm90IHN1cHBvcnRlZC4iKTsNCj4gPiAtCQlyZXR1cm4gLUVOT1RT VVA7DQo+ID4gLQl9DQo+ID4gLQ0KPiA+ICAgCXJ4bW9kZSA9ICZkZXYtPmRhdGEtPmRldl9jb25m LnJ4bW9kZTsNCj4gPiAgIAlpZiAobWFzayAmIEVUSF9WTEFOX0ZJTFRFUl9NQVNLKSB7DQo+ID4g ICAJCWlmIChyeG1vZGUtPm9mZmxvYWRzICYgREVWX1JYX09GRkxPQURfVkxBTl9GSUxURVIpDQo+ IGRpZmYgLS1naXQNCj4gPiBhL2RyaXZlcnMvbmV0L25mcC9uZnBfbmV0LmMgYi9kcml2ZXJzL25l dC9uZnAvbmZwX25ldC5jIGluZGV4DQo+ID4gODhlM2YwMS4uNDc0NzE5YiAxMDA2NDQNCj4gPiAt LS0gYS9kcml2ZXJzL25ldC9uZnAvbmZwX25ldC5jDQo+ID4gKysrIGIvZHJpdmVycy9uZXQvbmZw L25mcF9uZXQuYw0KPiA+IEBAIC0yMzUzLDExICsyMzUzLDYgQEAgbmZwX25ldF92bGFuX29mZmxv YWRfc2V0KHN0cnVjdCBydGVfZXRoX2Rldg0KPiAqZGV2LCBpbnQgbWFzaykNCj4gPiAgIAlodyA9 IE5GUF9ORVRfREVWX1BSSVZBVEVfVE9fSFcoZGV2LT5kYXRhLT5kZXZfcHJpdmF0ZSk7DQo+ID4g ICAJbmV3X2N0cmwgPSAwOw0KPiA+DQo+ID4gLQlpZiAoKG1hc2sgJiBFVEhfVkxBTl9GSUxURVJf T0ZGTE9BRCkgfHwNCj4gPiAtCSAgICAobWFzayAmIEVUSF9WTEFOX0VYVEVORF9PRkZMT0FEKSkN Cj4gPiAtCQlQTURfRFJWX0xPRyhJTkZPLCAiTm8gc3VwcG9ydCBmb3INCj4gRVRIX1ZMQU5fRklM VEVSX09GRkxPQUQgb3IiDQo+ID4gLQkJCSIgRVRIX1ZMQU5fRVhURU5EX09GRkxPQUQiKTsNCj4g PiAtDQo+ID4gICAJLyogRW5hYmxlIHZsYW4gc3RyaXAgaWYgaXQgaXMgbm90IGNvbmZpZ3VyZWQg eWV0ICovDQo+ID4gICAJaWYgKChtYXNrICYgRVRIX1ZMQU5fU1RSSVBfT0ZGTE9BRCkgJiYNCj4g PiAgIAkgICAgIShody0+Y3RybCAmIE5GUF9ORVRfQ0ZHX0NUUkxfUlhWTEFOKSkgZGlmZiAtLWdp dA0KPiA+IGEvZHJpdmVycy9uZXQvb2N0ZW9udHgvb2N0ZW9udHhfZXRoZGV2X29wcy5jDQo+ID4g Yi9kcml2ZXJzL25ldC9vY3Rlb250eC9vY3Rlb250eF9ldGhkZXZfb3BzLmMNCj4gPiBpbmRleCBm ZjYyN2E2Li5kYmUxM2NlIDEwMDY0NA0KPiA+IC0tLSBhL2RyaXZlcnMvbmV0L29jdGVvbnR4L29j dGVvbnR4X2V0aGRldl9vcHMuYw0KPiA+ICsrKyBiL2RyaXZlcnMvbmV0L29jdGVvbnR4L29jdGVv bnR4X2V0aGRldl9vcHMuYw0KPiA+IEBAIC00MywxNiArNDMsNiBAQCBvY3Rlb250eF9kZXZfdmxh bl9vZmZsb2FkX3NldChzdHJ1Y3QgcnRlX2V0aF9kZXYNCj4gPiAqZGV2LCBpbnQgbWFzaykNCj4g Pg0KPiA+ICAgCXJ4bW9kZSA9ICZkZXYtPmRhdGEtPmRldl9jb25mLnJ4bW9kZTsNCj4gPg0KPiA+ IC0JaWYgKG1hc2sgJiBFVEhfVkxBTl9FWFRFTkRfTUFTSykgew0KPiA+IC0JCW9jdGVvbnR4X2xv Z19lcnIoIkV4dGVuZCBvZmZsb2FkIG5vdCBzdXBwb3J0ZWQiKTsNCj4gPiAtCQlyZXR1cm4gLUVO T1RTVVA7DQo+ID4gLQl9DQo+ID4gLQ0KPiA+IC0JaWYgKG1hc2sgJiBFVEhfVkxBTl9TVFJJUF9N QVNLKSB7DQo+ID4gLQkJb2N0ZW9udHhfbG9nX2VycigiVkxBTiBzdHJpcCBvZmZsb2FkIG5vdCBz dXBwb3J0ZWQiKTsNCj4gPiAtCQlyZXR1cm4gLUVOT1RTVVA7DQo+ID4gLQl9DQo+ID4gLQ0KPiA+ ICAgCWlmIChtYXNrICYgRVRIX1ZMQU5fRklMVEVSX01BU0spIHsNCj4gPiAgIAkJaWYgKHJ4bW9k ZS0+b2ZmbG9hZHMgJiBERVZfUlhfT0ZGTE9BRF9WTEFOX0ZJTFRFUikgew0KPiA+ICAgCQkJcmMg PSBvY3Rlb250eF92bGFuX2h3X2ZpbHRlcihuaWMsIHRydWUpOyBkaWZmIC0tZ2l0DQo+ID4gYS9k cml2ZXJzL25ldC9vY3Rlb250eDIvb3R4Ml92bGFuLmMNCj4gPiBiL2RyaXZlcnMvbmV0L29jdGVv bnR4Mi9vdHgyX3ZsYW4uYw0KPiA+IGluZGV4IDMyMmE1NjUuLjczNTdiMDYgMTAwNjQ0DQo+ID4g LS0tIGEvZHJpdmVycy9uZXQvb2N0ZW9udHgyL290eDJfdmxhbi5jDQo+ID4gKysrIGIvZHJpdmVy cy9uZXQvb2N0ZW9udHgyL290eDJfdmxhbi5jDQo+ID4gQEAgLTcxNywxMSArNzE3LDYgQEAgb3R4 Ml9uaXhfdmxhbl9vZmZsb2FkX3NldChzdHJ1Y3QgcnRlX2V0aF9kZXYNCj4gPiAqZXRoX2Rldiwg aW50IG1hc2spDQo+ID4NCj4gPiAgIAlyeG1vZGUgPSAmZXRoX2Rldi0+ZGF0YS0+ZGV2X2NvbmYu cnhtb2RlOw0KPiA+DQo+ID4gLQlpZiAobWFzayAmIEVUSF9WTEFOX0VYVEVORF9NQVNLKSB7DQo+ ID4gLQkJb3R4Ml9lcnIoIkV4dGVuZCBvZmZsb2FkIG5vdCBzdXBwb3J0ZWQiKTsNCj4gPiAtCQly ZXR1cm4gLUVOT1RTVVA7DQo+ID4gLQl9DQo+ID4gLQ0KPiA+ICAgCWlmIChtYXNrICYgRVRIX1ZM QU5fU1RSSVBfTUFTSykgew0KPiA+ICAgCQlpZiAocnhtb2RlLT5vZmZsb2FkcyAmIERFVl9SWF9P RkZMT0FEX1ZMQU5fU1RSSVApIHsNCj4gPiAgIAkJCW9mZmxvYWRzIHw9IERFVl9SWF9PRkZMT0FE X1ZMQU5fU1RSSVA7IGRpZmYgLS0NCj4gZ2l0DQo+ID4gYS9kcml2ZXJzL25ldC9xZWRlL3FlZGVf ZXRoZGV2LmMgYi9kcml2ZXJzL25ldC9xZWRlL3FlZGVfZXRoZGV2LmMNCj4gPiBpbmRleCA3ZjVh MzRiLi5mMmVkMDNiIDEwMDY0NA0KPiA+IC0tLSBhL2RyaXZlcnMvbmV0L3FlZGUvcWVkZV9ldGhk ZXYuYw0KPiA+ICsrKyBiL2RyaXZlcnMvbmV0L3FlZGUvcWVkZV9ldGhkZXYuYw0KPiA+IEBAIC0x MDMxLDkgKzEwMzEsNiBAQCBzdGF0aWMgaW50IHFlZGVfdmxhbl9vZmZsb2FkX3NldChzdHJ1Y3QN Cj4gcnRlX2V0aF9kZXYgKmV0aF9kZXYsIGludCBtYXNrKQ0KPiA+ICAgCQl9DQo+ID4gICAJfQ0K PiA+DQo+ID4gLQlpZiAobWFzayAmIEVUSF9WTEFOX0VYVEVORF9NQVNLKQ0KPiA+IC0JCURQX0VS UihlZGV2LCAiRXh0ZW5kIFZMQU4gbm90IHN1cHBvcnRlZFxuIik7DQo+ID4gLQ0KPiA+ICAgCXFk ZXYtPnZsYW5fb2ZmbG9hZF9tYXNrID0gbWFzazsNCj4gPg0KPiA+ICAgCURQX0lORk8oZWRldiwg IlZMQU4gb2ZmbG9hZCBtYXNrICVkXG4iLCBtYXNrKTsgZGlmZiAtLWdpdA0KPiA+IGEvbGliL2xp YnJ0ZV9ldGhkZXYvcnRlX2V0aGRldi5jIGIvbGliL2xpYnJ0ZV9ldGhkZXYvcnRlX2V0aGRldi5j DQo+ID4gaW5kZXggNTBjM2YxOC4uMDc4YmIyNSAxMDA2NDQNCj4gPiAtLS0gYS9saWIvbGlicnRl X2V0aGRldi9ydGVfZXRoZGV2LmMNCj4gPiArKysgYi9saWIvbGlicnRlX2V0aGRldi9ydGVfZXRo ZGV2LmMNCj4gPiBAQCAtMzI1OCwxMiArMzI1OCwxNCBAQCBydGVfZXRoX2Rldl9zZXRfdmxhbl9l dGhlcl90eXBlKHVpbnQxNl90DQo+IHBvcnRfaWQsDQo+ID4gICBpbnQNCj4gPiAgIHJ0ZV9ldGhf ZGV2X3NldF92bGFuX29mZmxvYWQodWludDE2X3QgcG9ydF9pZCwgaW50IG9mZmxvYWRfbWFzaykN Cj4gPiAgIHsNCj4gPiArCXN0cnVjdCBydGVfZXRoX2Rldl9pbmZvIGRldl9pbmZvOw0KPiA+ICAg CXN0cnVjdCBydGVfZXRoX2RldiAqZGV2Ow0KPiA+ICAgCWludCByZXQgPSAwOw0KPiA+ICAgCWlu dCBtYXNrID0gMDsNCj4gPiAgIAlpbnQgY3VyLCBvcmcgPSAwOw0KPiA+ICAgCXVpbnQ2NF90IG9y aWdfb2ZmbG9hZHM7DQo+ID4gICAJdWludDY0X3QgZGV2X29mZmxvYWRzOw0KPiA+ICsJdWludDY0 X3QgbmV3X29mZmxvYWRzOw0KPiA+DQo+ID4gICAJUlRFX0VUSF9WQUxJRF9QT1JUSURfT1JfRVJS X1JFVChwb3J0X2lkLCAtRU5PREVWKTsNCj4gPiAgIAlkZXYgPSAmcnRlX2V0aF9kZXZpY2VzW3Bv cnRfaWRdOw0KPiA+IEBAIC0zMzE3LDYgKzMzMTksMjUgQEAgcnRlX2V0aF9kZXZfc2V0X3ZsYW5f b2ZmbG9hZCh1aW50MTZfdA0KPiBwb3J0X2lkLCBpbnQgb2ZmbG9hZF9tYXNrKQ0KPiA+ICAgCWlm IChtYXNrID09IDApDQo+ID4gICAJCXJldHVybiByZXQ7DQo+ID4NCj4gPiArCXJldCA9IHJ0ZV9l dGhfZGV2X2luZm9fZ2V0KHBvcnRfaWQsICZkZXZfaW5mbyk7DQo+ID4gKwlpZiAocmV0ICE9IDAp DQo+ID4gKwkJcmV0dXJuIHJldDsNCj4gPiArDQo+ID4gKwkvKg0KPiA+ICsJICogTmV3IGFkZGVk IFJ4IFZMQU4gb2ZmbG9hZGluZyB3aGljaCBhcmUgbm90IGVuYWJsZWQgaW4NCj4gPiArCSAqIHJ0 ZV9ldGhfZGV2X2NvbmZpZ3VyZSgpIG11c3QgYmUgd2l0aGluIGl0cyBkZXZpY2UgY2FwYWJpbGl0 aWVzDQo+ID4gKwkgKi8NCj4gPiArCWlmICgoZGV2X29mZmxvYWRzICYgZGV2X2luZm8ucnhfb2Zm bG9hZF9jYXBhKSAhPSBkZXZfb2ZmbG9hZHMpIHsNCj4gPiArCQluZXdfb2ZmbG9hZHMgPSBkZXZf b2ZmbG9hZHMgJiB+b3JpZ19vZmZsb2FkczsNCj4gPiArCQlSVEVfRVRIREVWX0xPRyhFUlIsDQo+ ID4gKwkJCSJFdGhkZXYgcG9ydF9pZD0ldSByZXF1ZXN0ZWQgbmV3IGFkZGVkIFZMQU4NCj4gb2Zm bG9hZHMgIg0KPiA+ICsJCQkiMHglIiBQUkl4NjQgIiBtdXN0IGJlIHdpdGhpbiBSeCBvZmZsb2Fk cw0KPiBjYXBhYmlsaXRpZXMgIg0KPiA+ICsJCQkiMHglIiBQUkl4NjQgIiBpbiAlcygpXG4iLA0K PiA+ICsJCQlwb3J0X2lkLCBuZXdfb2ZmbG9hZHMsIGRldl9pbmZvLnJ4X29mZmxvYWRfY2FwYSwN Cj4gPiArCQkJX19mdW5jX18pOw0KPiA+ICsJCXJldHVybiAtRUlOVkFMOw0KPiA+ICsJfQ0KPiA+ ICsNCj4gPiAgIAlSVEVfRlVOQ19QVFJfT1JfRVJSX1JFVCgqZGV2LT5kZXZfb3BzLT52bGFuX29m ZmxvYWRfc2V0LCAtDQo+IEVOT1RTVVApOw0KPiA+ICAgCWRldi0+ZGF0YS0+ZGV2X2NvbmYucnht b2RlLm9mZmxvYWRzID0gZGV2X29mZmxvYWRzOw0KPiA+ICAgCXJldCA9ICgqZGV2LT5kZXZfb3Bz LT52bGFuX29mZmxvYWRfc2V0KShkZXYsIG1hc2spOw0K