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 2F9A1A04DB; Thu, 15 Oct 2020 07:11:46 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 0BBF71BC81; Thu, 15 Oct 2020 07:11:45 +0200 (CEST) Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by dpdk.org (Postfix) with ESMTP id D2C381BC7E for ; Thu, 15 Oct 2020 07:11:41 +0200 (CEST) IronPort-SDR: /OCUY4FsJFRjlnpv2qEo6JFabj1054zv+negES70ZCnT9OOHkpQGCHE7kJwGIX5mQmfFlEJDW4 0Su6MmJ20gig== X-IronPort-AV: E=McAfee;i="6000,8403,9774"; a="153196413" X-IronPort-AV: E=Sophos;i="5.77,377,1596524400"; d="scan'208";a="153196413" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Oct 2020 22:11:39 -0700 IronPort-SDR: lAwkXVpB9OVA7wPjwD2Jc5O8VKX4rPm4oNdRUfAwzbpYjwRfLOfX7dzJvYJnvF5vnfP5G0Y316 Mwv+7HpiP5jg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,377,1596524400"; d="scan'208";a="520639420" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by fmsmga006.fm.intel.com with ESMTP; 14 Oct 2020 22:11:39 -0700 Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) 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.1713.5; Wed, 14 Oct 2020 22:11:39 -0700 Received: from fmsmsx606.amr.corp.intel.com (10.18.126.86) by fmsmsx612.amr.corp.intel.com (10.18.126.92) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Wed, 14 Oct 2020 22:11:33 -0700 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by fmsmsx606.amr.corp.intel.com (10.18.126.86) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5 via Frontend Transport; Wed, 14 Oct 2020 22:11:33 -0700 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.44) 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.1713.5; Wed, 14 Oct 2020 22:11:33 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kYTY3XqC1dJ6lqblACejLXTf4Rltn5LCtk8d+wP94ihB6RFfrkTZ3Yw5tKGAT9K0kVXHTvx5K7P2kBYDq2R3zrQ52PGrJIBySxB/1VWzA1DZ8gtO0q20EN4OADxqO8zyv//OH8gv3Dv0+ozbBsmAsXw5E1lR8TUew3+BWLcdTaR54T3GfoTjv2KxA3TOVoXuv7l59Haxi7w5AbUzkn36Fi/r7cPWpdYXrvy5R2si7eZBN1jiE+jFhFkxV4puOwZ3WUHKLBkMnZs2zEINMXf8kPRqCNPCvLkpuEU4L/UfGIUFTHBhT8JJxr3F49Va8ob8KvgSmcyo0AHcBEubDPntqg== 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=gFHVfpipkf4D9bDQKObL3fh8U3rP2JqqEMnxrcmekr8=; b=RTqDOliLGVERQ5I55VpJn14LzxIuxTVu2HdxD552mB9f/uJzm7+4+k0VQqh3zRmiOKK64Xst+8RIm/b3GmKFJvwXQpI6GIQ3XoWRjbNuq9mgkhTodFVNHcfzxKqka4ycHmhzz4y3cTyRXsbou1fYwdOo/KphqsiG3DgpPGgAdZsTMt/elzjRpIk8x3tr5ZKUoQc49i+Y4/1newtTGZHjCo4Z1jQecFyw9nigRPdK4qAHtom3jaResFPL73McSOy2eVS/RkIV1fFp6IQb18KFejhBE2u13Ha9lYH1aUzWTNqHk1rH8q/4LpOOvF1n0zRMxManEO1KG1gT2thT+sJUaA== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=gFHVfpipkf4D9bDQKObL3fh8U3rP2JqqEMnxrcmekr8=; b=BVQtwa3rz8lkAdWy85cEDJrpTp6VLnTCTLXTx7i3z2wOTm+IrJ1H19PW2mQ/4wge381A9if9ABP0pppZhIxz/w7oj5seMmyNb6g3FFMoQ07nbVL9m9E+ZyOuGxukdoFUsbaxj9/2ljmN1IzrE9sD2mNmpnBw0ZvYKhHgp1L5hyA= Received: from SJ0PR11MB5006.namprd11.prod.outlook.com (2603:10b6:a03:2db::22) by BY5PR11MB4401.namprd11.prod.outlook.com (2603:10b6:a03:1be::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3455.22; Thu, 15 Oct 2020 05:11:32 +0000 Received: from SJ0PR11MB5006.namprd11.prod.outlook.com ([fe80::e417:3188:5f0c:cd73]) by SJ0PR11MB5006.namprd11.prod.outlook.com ([fe80::e417:3188:5f0c:cd73%4]) with mapi id 15.20.3477.020; Thu, 15 Oct 2020 05:11:32 +0000 From: "Jiang, Cheng1" To: Maxime Coquelin , "Xia, Chenbo" , "Wang, Zhihong" CC: "dev@dpdk.org" , "Fu, Patrick" Thread-Topic: [PATCH v4 1/4] example/vhost: add async vhost args parsing function Thread-Index: AQHWoFWPx0jFol8GeUW72JeuRLFqhqmW1raAgAFLBzA= Date: Thu, 15 Oct 2020 05:11:31 +0000 Message-ID: References: <20200930030859.59989-1-Cheng1.jiang@intel.com> <20201012045456.5196-1-Cheng1.jiang@intel.com> <20201012045456.5196-2-Cheng1.jiang@intel.com> <55df4877-bc5e-13ad-a3d3-1012043a97ac@redhat.com> In-Reply-To: <55df4877-bc5e-13ad-a3d3-1012043a97ac@redhat.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: redhat.com; dkim=none (message not signed) header.d=none;redhat.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.55.46.36] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: a4e1b31d-d19f-401e-1577-08d870c8c7c2 x-ms-traffictypediagnostic: BY5PR11MB4401: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8882; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: yoj+hGl5U/cA6+Y0LIdJucFRIRH9VmatCvwTrfcHOy+ewK9FqaUZCdEQxHdtdJW3jBfDv8XPdzvFBJgzv71XLzBHkFXrOXMOC2oLsQoA8j0X+1eOL6fmuUUC8dEXcOqdllYgWXGvXQ6R361yhmy8IZ9bBWqWfzSWVyvrra265R99AgY2M65nXx4S2ab9F+0naOOHAakdz+c+6/tUIMMSJkRHaVg/HOHth4q0zq/wTYrhJIBy17LCW6PDFXh2PapLoeYU6yR68pH3Vld6619xeDV1RkMc86gDPB1rshYWyHV6jIcF6JOEZE1UzKslodMXZNgfzy7fJscp2mMsrZ6cG4D0Kke4LekSivMRdwCSlL1SrZfRE1fEdg5CExizdAGvRKqn+0DYgi223ZaKbZlckg== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SJ0PR11MB5006.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(136003)(39860400002)(396003)(346002)(376002)(366004)(2906002)(186003)(966005)(8936002)(6636002)(71200400001)(9686003)(86362001)(66476007)(66946007)(83080400001)(66446008)(4326008)(64756008)(5660300002)(7696005)(66556008)(8676002)(83380400001)(52536014)(316002)(76116006)(55016002)(110136005)(478600001)(107886003)(54906003)(33656002)(6506007)(53546011)(26005); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata: 1WdLZHjEDxbeoe1sOMX6icdj9NmyxX+fzawigMnmZE9jpCQ620+flldhER/NghwTQ3yngDpTr7eWvUA+RQXaHXDkycft/lxKgAffYHYxLmGbtygLbh41mYXyOppa8Qplmo/YET16V4qJHbXdRgxpg/VcdFd8OU41eff9zT0pJZWZsX9uKNnyaKsqXAaWeSGTcz7VbhFPSkYqbw5gqFqkfJ+UmLnHBVgNLhLQFXNh6JRRWiJ72FLHOy62qm0LfZE0HqSAh0GSrhX4KEL1kJFwy/IwlH6Fo1+EHA/t1jhwXQRVJI75p/b6e6Q6z8XcbCPOWNxK+JBlz+SrYbTJPvjkK6tkkSSL18nvfpM6VvbSpVZX8upvOL68eQoMsPrKZg2LUAz9uJxs4TpXtLB4ocwllPWlbaeXH6moW6AXv1IfSGa6dcQkIkseD73nWxnObv+5g5s/5wgyEpPJ8frkxXRdQH7jW3h8QMu87svjwy2/Jw3P+ngDfkYPbmjqLdMbCCqspFIW5QDC1ZtQUz8U3kpP3gpPVUIsvrBIxkjOXP6jjF2t3eumaWJUwDTUxCz8mZmlNe9zx5FqCzqsjPRliraVAJWvdGgBVQx8aJ5B2go0Uay0tHDlBICXRESo2paXZNoi9gm6Y/p1I3rhAUTc1Pu7vA== 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: SJ0PR11MB5006.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a4e1b31d-d19f-401e-1577-08d870c8c7c2 X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Oct 2020 05:11:31.8537 (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: YYSKatsLmqnN+jsgHvbtAbs5sr340FEbLzLImuVJPVM/N06hDHxAg4U44+p5x4KazyA4tNgBTCv/iwoskmgjOQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR11MB4401 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH v4 1/4] example/vhost: add async vhost args parsing function 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" SGkgTWF4aW1lLA0KDQpUaGUgcmVwbGllcyBhcmUgaW5saW5lLg0KDQo+IC0tLS0tT3JpZ2luYWwg TWVzc2FnZS0tLS0tDQo+IEZyb206IE1heGltZSBDb3F1ZWxpbiA8bWF4aW1lLmNvcXVlbGluQHJl ZGhhdC5jb20+DQo+IFNlbnQ6IFdlZG5lc2RheSwgT2N0b2JlciAxNCwgMjAyMCA1OjI0IFBNDQo+ IFRvOiBKaWFuZywgQ2hlbmcxIDxjaGVuZzEuamlhbmdAaW50ZWwuY29tPjsgWGlhLCBDaGVuYm8N Cj4gPGNoZW5iby54aWFAaW50ZWwuY29tPjsgV2FuZywgWmhpaG9uZyA8emhpaG9uZy53YW5nQGlu dGVsLmNvbT4NCj4gQ2M6IGRldkBkcGRrLm9yZzsgRnUsIFBhdHJpY2sgPHBhdHJpY2suZnVAaW50 ZWwuY29tPg0KPiBTdWJqZWN0OiBSZTogW1BBVENIIHY0IDEvNF0gZXhhbXBsZS92aG9zdDogYWRk IGFzeW5jIHZob3N0IGFyZ3MgcGFyc2luZw0KPiBmdW5jdGlvbg0KPiANCj4gDQo+IA0KPiBPbiAx MC8xMi8yMCA2OjU0IEFNLCBDaGVuZyBKaWFuZyB3cm90ZToNCj4gPiBUaGlzIHBhdGNoIGlzIHRv IGFkZCBhc3luYyB2aG9zdCBkcml2ZXIgYXJndW1lbnRzIHBhcnNpbmcgZnVuY3Rpb24gZm9yDQo+ ID4gQ0JETUEgY2hhbm5lbCwgRE1BIGluaXRpYXRpb24gZnVuY3Rpb24gYW5kIGFyZ3MgZGVzY3Jp cHRpb24uDQo+ID4gVGhlIG1lc29uIGJ1aWxkIGZpbGUgaXMgY2hhbmdlZCB0byBmaXggZGVwZW5k ZW5jeSBwcm9ibGVtLiBXaXRoIHRoZXNlDQo+ID4gYXJndW1lbnRzIHZob3N0IGRldmljZSBjYW4g YmUgc2V0IHRvIHVzZSBDQkRNQSBvciBDUFUgZm9yIGVucXVldWUNCj4gPiBvcGVyYXRpb24gYW5k IGJpbmQgdmhvc3QgZGV2aWNlIHdpdGggc3BlY2lmaWMgQ0JETUEgY2hhbm5lbCB0bw0KPiA+IGFj Y2VsZXJhdGUgZGF0YSBjb3B5Lg0KPiA+DQo+ID4gU2lnbmVkLW9mZi1ieTogQ2hlbmcgSmlhbmcg PENoZW5nMS5qaWFuZ0BpbnRlbC5jb20+DQo+ID4gLS0tDQo+ID4gIGV4YW1wbGVzL3Zob3N0L2lv YXQuYyAgICAgIHwgMTE3DQo+ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysN Cj4gPiAgZXhhbXBsZXMvdmhvc3QvbWFpbi5jICAgICAgfCAgMzcgKysrKysrKysrKystDQo+ID4g IGV4YW1wbGVzL3Zob3N0L21haW4uaCAgICAgIHwgICAyICsNCj4gPiAgZXhhbXBsZXMvdmhvc3Qv bWVzb24uYnVpbGQgfCAgIDQgKy0NCj4gPiAgNCBmaWxlcyBjaGFuZ2VkLCAxNTcgaW5zZXJ0aW9u cygrKSwgMyBkZWxldGlvbnMoLSkgIGNyZWF0ZSBtb2RlDQo+ID4gMTAwNjQ0IGV4YW1wbGVzL3Zo b3N0L2lvYXQuYw0KPiA+DQo+ID4gZGlmZiAtLWdpdCBhL2V4YW1wbGVzL3Zob3N0L2lvYXQuYyBi L2V4YW1wbGVzL3Zob3N0L2lvYXQuYyBuZXcgZmlsZQ0KPiA+IG1vZGUgMTAwNjQ0IGluZGV4IDAw MDAwMDAwMC4uYzMxNThkM2MzDQo+ID4gLS0tIC9kZXYvbnVsbA0KPiA+ICsrKyBiL2V4YW1wbGVz L3Zob3N0L2lvYXQuYw0KPiA+IEBAIC0wLDAgKzEsMTE3IEBADQo+ID4gKy8qIFNQRFgtTGljZW5z ZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UNCj4gPiArICogQ29weXJpZ2h0KGMpIDIwMTAtMjAx NyBJbnRlbCBDb3Jwb3JhdGlvbiAgKi8NCj4gPiArDQo+ID4gKyNpbmNsdWRlIDxydGVfdmhvc3Qu aD4NCj4gPiArI2luY2x1ZGUgPHJ0ZV9yYXdkZXYuaD4NCj4gPiArI2luY2x1ZGUgPHJ0ZV9pb2F0 X3Jhd2Rldi5oPg0KPiA+ICsjaW5jbHVkZSA8cnRlX3BjaS5oPg0KPiA+ICsNCj4gPiArI2luY2x1 ZGUgIm1haW4uaCINCj4gPiArDQo+ID4gKyNkZWZpbmUgTUFYX1ZIT1NUX0RFVklDRSAxMDI0DQo+ ID4gKyNkZWZpbmUgSU9BVF9SSU5HX1NJWkUgNDA5Ng0KPiA+ICsNCj4gPiArc3RydWN0IGRtYV9p bmZvIHsNCj4gPiArCXN0cnVjdCBydGVfcGNpX2FkZHIgYWRkcjsNCj4gPiArCXVpbnQxNl90IGRl dl9pZDsNCj4gPiArCWJvb2wgaXNfdmFsaWQ7DQo+ID4gK307DQo+ID4gKw0KPiA+ICtzdHJ1Y3Qg ZG1hX2Zvcl92aG9zdCB7DQo+ID4gKwlzdHJ1Y3QgZG1hX2luZm8gZG1hc1tSVEVfTUFYX1FVRVVF U19QRVJfUE9SVCAqIDJdOw0KPiA+ICsJdWludDE2X3QgbnI7DQo+ID4gK307DQo+ID4gKw0KPiA+ ICtzdHJ1Y3QgZG1hX2Zvcl92aG9zdCBkbWFfYmluZFtNQVhfVkhPU1RfREVWSUNFXTsNCj4gPiAr DQo+ID4gK2ludA0KPiA+ICtvcGVuX2lvYXQoY29uc3QgY2hhciAqdmFsdWUpDQo+ID4gK3sNCj4g PiArCXN0cnVjdCBkbWFfZm9yX3Zob3N0ICpkbWFfaW5mbyA9IGRtYV9iaW5kOw0KPiA+ICsJY2hh ciAqaW5wdXQgPSBzdHJuZHVwKHZhbHVlLCBzdHJsZW4odmFsdWUpICsgMSk7DQo+ID4gKwljaGFy ICphZGRycyA9IGlucHV0Ow0KPiA+ICsJY2hhciAqcHRyc1syXTsNCj4gPiArCWNoYXIgKnN0YXJ0 LCAqZW5kLCAqc3Vic3RyOw0KPiA+ICsJaW50NjRfdCB2aWQsIHZyaW5nX2lkOw0KPiA+ICsJc3Ry dWN0IHJ0ZV9pb2F0X3Jhd2Rldl9jb25maWcgY29uZmlnOw0KPiA+ICsJc3RydWN0IHJ0ZV9yYXdk ZXZfaW5mbyBpbmZvID0geyAuZGV2X3ByaXZhdGUgPSAmY29uZmlnIH07DQo+ID4gKwljaGFyIG5h bWVbMzJdOw0KPiA+ICsJaW50IGRldl9pZDsNCj4gPiArCWludCByZXQgPSAwOw0KPiA+ICsJdWlu dDE2X3QgaSA9IDA7DQo+ID4gKwljaGFyICpkbWFfYXJnW01BWF9WSE9TVF9ERVZJQ0VdOw0KPiA+ ICsJdWludDhfdCBhcmdzX25yOw0KPiA+ICsNCj4gPiArCXdoaWxlIChpc2JsYW5rKCphZGRycykp DQo+ID4gKwkJYWRkcnMrKzsNCj4gPiArCWlmICgqYWRkcnMgPT0gJ1wwJykgew0KPiA+ICsJCXJl dCA9IC0xOw0KPiA+ICsJCWdvdG8gb3V0Ow0KPiA+ICsJfQ0KPiA+ICsNCj4gPiArCS8qIHByb2Nl c3MgRE1BIGRldmljZXMgd2l0aGluIGJyYWNrZXQuICovDQo+ID4gKwlhZGRycysrOw0KPiA+ICsJ c3Vic3RyID0gc3RydG9rKGFkZHJzLCAiO10iKTsNCj4gPiArCWlmICghc3Vic3RyKSB7DQo+ID4g KwkJcmV0ID0gLTE7DQo+ID4gKwkJZ290byBvdXQ7DQo+ID4gKwl9DQo+ID4gKwlhcmdzX25yID0g cnRlX3N0cnNwbGl0KHN1YnN0ciwgc3RybGVuKHN1YnN0ciksDQo+ID4gKwkJCWRtYV9hcmcsIE1B WF9WSE9TVF9ERVZJQ0UsICcsJyk7DQo+ID4gKwlkbyB7DQo+ID4gKwkJY2hhciAqYXJnX3RlbXAg PSBkbWFfYXJnW2ldOw0KPiA+ICsJCXJ0ZV9zdHJzcGxpdChhcmdfdGVtcCwgc3RybGVuKGFyZ190 ZW1wKSwgcHRycywgMiwgJ0AnKTsNCj4gPiArDQo+ID4gKwkJc3RhcnQgPSBzdHJzdHIocHRyc1sw XSwgInR4ZCIpOw0KPiA+ICsJCWlmIChzdGFydCA9PSBOVUxMKSB7DQo+ID4gKwkJCXJldCA9IC0x Ow0KPiA+ICsJCQlnb3RvIG91dDsNCj4gPiArCQl9DQo+ID4gKw0KPiA+ICsJCXN0YXJ0ICs9IDM7 DQo+ID4gKwkJdmlkID0gc3RydG9sKHN0YXJ0LCAmZW5kLCAwKTsNCj4gPiArCQlpZiAoZW5kID09 IHN0YXJ0KSB7DQo+ID4gKwkJCXJldCA9IC0xOw0KPiA+ICsJCQlnb3RvIG91dDsNCj4gPiArCQl9 DQo+ID4gKw0KPiA+ICsJCXZyaW5nX2lkID0gMCArIFZJUlRJT19SWFE7DQo+ID4gKwkJaWYgKHJ0 ZV9wY2lfYWRkcl9wYXJzZShwdHJzWzFdLA0KPiA+ICsJCQkJJihkbWFfaW5mbyArIHZpZCktPmRt YXNbdnJpbmdfaWRdLmFkZHIpIDwgMCkNCj4gew0KPiA+ICsJCQlyZXQgPSAtMTsNCj4gPiArCQkJ Z290byBvdXQ7DQo+ID4gKwkJfQ0KPiA+ICsNCj4gPiArCQlydGVfcGNpX2RldmljZV9uYW1lKCYo ZG1hX2luZm8gKyB2aWQpLQ0KPiA+ZG1hc1t2cmluZ19pZF0uYWRkciwNCj4gPiArCQkJCW5hbWUs IHNpemVvZihuYW1lKSk7DQo+ID4gKwkJZGV2X2lkID0gcnRlX3Jhd2Rldl9nZXRfZGV2X2lkKG5h bWUpOw0KPiA+ICsJCWlmIChkZXZfaWQgPT0gKHVpbnQxNl90KSgtRU5PREVWKSB8fA0KPiA+ICsJ CWRldl9pZCA9PSAodWludDE2X3QpKC1FSU5WQUwpKSB7DQo+ID4gKwkJCXJldCA9IC0xOw0KPiA+ ICsJCQlnb3RvIG91dDsNCj4gPiArCQl9DQo+ID4gKw0KPiA+ICsJCWlmIChydGVfcmF3ZGV2X2lu Zm9fZ2V0KGRldl9pZCwgJmluZm8sIHNpemVvZihjb25maWcpKSA8IDAgfHwNCj4gPiArCQlzdHJz dHIoaW5mby5kcml2ZXJfbmFtZSwgImlvYXQiKSA9PSBOVUxMKSB7DQo+ID4gKwkJCXJldCA9IC0x Ow0KPiA+ICsJCQlnb3RvIG91dDsNCj4gPiArCQl9DQo+ID4gKw0KPiA+ICsJCShkbWFfaW5mbyAr IHZpZCktPmRtYXNbdnJpbmdfaWRdLmRldl9pZCA9IGRldl9pZDsNCj4gPiArCQkoZG1hX2luZm8g KyB2aWQpLT5kbWFzW3ZyaW5nX2lkXS5pc192YWxpZCA9IHRydWU7DQo+ID4gKwkJY29uZmlnLnJp bmdfc2l6ZSA9IElPQVRfUklOR19TSVpFOw0KPiA+ICsJCWNvbmZpZy5oZGxzX2Rpc2FibGUgPSB0 cnVlOw0KPiA+ICsJCWlmIChydGVfcmF3ZGV2X2NvbmZpZ3VyZShkZXZfaWQsICZpbmZvLCBzaXpl b2YoY29uZmlnKSkgPCAwKSB7DQo+ID4gKwkJCXJldCA9IC0xOw0KPiA+ICsJCQlnb3RvIG91dDsN Cj4gPiArCQl9DQo+ID4gKwkJcnRlX3Jhd2Rldl9zdGFydChkZXZfaWQpOw0KPiA+ICsNCj4gPiAr CQlkbWFfaW5mby0+bnIrKzsNCj4gPiArCQlpKys7DQo+ID4gKwl9IHdoaWxlIChpIDwgYXJnc19u cik7DQo+ID4gK291dDoNCj4gPiArCWZyZWUoaW5wdXQpOw0KPiA+ICsJcmV0dXJuIHJldDsNCj4g PiArfQ0KPiA+IGRpZmYgLS1naXQgYS9leGFtcGxlcy92aG9zdC9tYWluLmMgYi9leGFtcGxlcy92 aG9zdC9tYWluLmMgaW5kZXgNCj4gPiA5NTljMGMyODMuLjQ4MDY0MTlkNiAxMDA2NDQNCj4gPiAt LS0gYS9leGFtcGxlcy92aG9zdC9tYWluLmMNCj4gPiArKysgYi9leGFtcGxlcy92aG9zdC9tYWlu LmMNCj4gPiBAQCAtOTUsNiArOTUsMTAgQEAgc3RhdGljIGludCBjbGllbnRfbW9kZTsNCj4gPg0K PiA+ICBzdGF0aWMgaW50IGJ1aWx0aW5fbmV0X2RyaXZlcjsNCj4gPg0KPiA+ICtzdGF0aWMgaW50 IGFzeW5jX3Zob3N0X2RyaXZlcjsNCj4gPiArDQo+ID4gK3N0YXRpYyBjaGFyIGRtYV90eXBlW01B WF9MT05HX09QVF9TWl07DQo+ID4gKw0KPiA+ICAvKiBTcGVjaWZ5IHRpbWVvdXQgKGluIHVzZWNv bmRzKSBiZXR3ZWVuIHJldHJpZXMgb24gUlguICovICBzdGF0aWMNCj4gPiB1aW50MzJfdCBidXJz dF9yeF9kZWxheV90aW1lID0gQlVSU1RfUlhfV0FJVF9VUzsNCj4gPiAgLyogU3BlY2lmeSB0aGUg bnVtYmVyIG9mIHJldHJpZXMgb24gUlguICovIEBAIC0xODEsNiArMTg1LDE1IEBADQo+ID4gc3Ry dWN0IG1idWZfdGFibGUgbGNvcmVfdHhfcXVldWVbUlRFX01BWF9MQ09SRV07DQo+ID4gIAkJCQkg LyBVU19QRVJfUyAqIEJVUlNUX1RYX0RSQUlOX1VTKQ0KPiA+ICAjZGVmaW5lIFZMQU5fSExFTiAg ICAgICA0DQo+ID4NCj4gPiArc3RhdGljIGlubGluZSBpbnQNCj4gPiArb3Blbl9kbWEoY29uc3Qg Y2hhciAqdmFsdWUpDQo+ID4gK3sNCj4gPiArCWlmIChzdHJuY21wKGRtYV90eXBlLCAiSU9BVCIs IDQpID09IDApDQo+IA0KPiBJIHRoaW5rIGl0IGlzIGJldHRlciB0byBoYXZlIGl0IGluIGxvd2Vy IGNhc2UuDQoNClN1cmUsIGl0IHdpbGwgYmUgY2hhbmdlZCBpbiB2NS4NCg0KPiANCj4gPiArCQly ZXR1cm4gb3Blbl9pb2F0KHZhbHVlKTsNCj4gPiArCWVsc2UNCj4gPiArCQlyZXR1cm4gLTE7DQo+ ID4gK30NCj4gPiArDQo+ID4gIC8qDQo+ID4gICAqIEJ1aWxkcyB1cCB0aGUgY29ycmVjdCBjb25m aWd1cmF0aW9uIGZvciBWTURRIFZMQU4gcG9vbCBtYXANCj4gPiAgICogYWNjb3JkaW5nIHRvIHRo ZSBwb29sICYgcXVldWUgbGltaXRzLg0KPiA+IEBAIC00NDYsNyArNDU5LDkgQEAgdXNfdmhvc3Rf dXNhZ2UoY29uc3QgY2hhciAqcHJnbmFtZSkNCj4gPiAgCSIJCS0tc29ja2V0LWZpbGU6IFRoZSBw YXRoIG9mIHRoZSBzb2NrZXQgZmlsZS5cbiINCj4gPiAgCSIJCS0tdHgtY3N1bSBbMHwxXSBkaXNh YmxlL2VuYWJsZSBUWCBjaGVja3N1bQ0KPiBvZmZsb2FkLlxuIg0KPiA+ICAJIgkJLS10c28gWzB8 MV0gZGlzYWJsZS9lbmFibGUgVENQIHNlZ21lbnQgb2ZmbG9hZC5cbiINCj4gPiAtCSIJCS0tY2xp ZW50IHJlZ2lzdGVyIGEgdmhvc3QtdXNlciBzb2NrZXQgYXMgY2xpZW50DQo+IG1vZGUuXG4iLA0K PiA+ICsJIgkJLS1jbGllbnQgcmVnaXN0ZXIgYSB2aG9zdC11c2VyIHNvY2tldCBhcyBjbGllbnQN Cj4gbW9kZS5cbiINCj4gPiArCSIJCS0tZG1hLXR5cGUgcmVnaXN0ZXIgZG1hIHR5cGUgZm9yIHlv dXIgdmhvc3QgYXN5bmMNCj4gZHJpdmVyLlxuIg0KPiANCj4gSSB0aGluayB5b3Ugc2hvdWxkIG1l bnRpb24gcG9zc2libGUgRE1BIHR5cGVzLCBpLmUuICJpb2F0IiBmb3Igbm93Lg0KDQppdCB3aWxs IGJlIGFkZGVkIGluIHY1Lg0KDQo+IA0KPiA+ICsJIgkJLS1kbWFzIHJlZ2lzdGVyIGRtYSBjaGFu bmVsIGZvciBzcGVjaWZpYyB2aG9zdA0KPiBkZXZpY2UuXG4iLA0KPiA+ICAJICAgICAgIHByZ25h bWUpOw0KPiA+ICB9DQo+ID4NCj4gPiBAQCAtNDcyLDYgKzQ4Nyw4IEBAIHVzX3Zob3N0X3BhcnNl X2FyZ3MoaW50IGFyZ2MsIGNoYXIgKiphcmd2KQ0KPiA+ICAJCXsidHNvIiwgcmVxdWlyZWRfYXJn dW1lbnQsIE5VTEwsIDB9LA0KPiA+ICAJCXsiY2xpZW50Iiwgbm9fYXJndW1lbnQsICZjbGllbnRf bW9kZSwgMX0sDQo+ID4gIAkJeyJidWlsdGluLW5ldC1kcml2ZXIiLCBub19hcmd1bWVudCwgJmJ1 aWx0aW5fbmV0X2RyaXZlciwgMX0sDQo+ID4gKwkJeyJkbWEtdHlwZSIsIHJlcXVpcmVkX2FyZ3Vt ZW50LCBOVUxMLCAwfSwNCj4gPiArCQl7ImRtYXMiLCByZXF1aXJlZF9hcmd1bWVudCwgTlVMTCwg MH0sDQo+ID4gIAkJe05VTEwsIDAsIDAsIDB9LA0KPiA+ICAJfTsNCj4gPg0KPiA+IEBAIC02MTQs NiArNjMxLDI0IEBAIHVzX3Zob3N0X3BhcnNlX2FyZ3MoaW50IGFyZ2MsIGNoYXIgKiphcmd2KQ0K PiA+ICAJCQkJfQ0KPiA+ICAJCQl9DQo+ID4NCj4gPiArCQkJaWYgKCFzdHJuY21wKGxvbmdfb3B0 aW9uW29wdGlvbl9pbmRleF0ubmFtZSwNCj4gPiArCQkJCQkJImRtYS10eXBlIiwNCj4gTUFYX0xP TkdfT1BUX1NaKSkgew0KPiA+ICsJCQkJc3RyY3B5KGRtYV90eXBlLCBvcHRhcmcpOw0KPiA+ICsJ CQl9DQo+ID4gKw0KPiA+ICsJCQlpZiAoIXN0cm5jbXAobG9uZ19vcHRpb25bb3B0aW9uX2luZGV4 XS5uYW1lLA0KPiA+ICsJCQkJCQkiZG1hcyIsDQo+IE1BWF9MT05HX09QVF9TWikpIHsNCj4gPiAr CQkJCWlmIChvcGVuX2RtYShvcHRhcmcpID09IC0xKSB7DQo+ID4gKwkJCQkJaWYgKCpvcHRhcmcg PT0gLTEpIHsNCj4gPiArCQkJCQkJUlRFX0xPRyhJTkZPLA0KPiBWSE9TVF9DT05GSUcsDQo+ID4g KwkJCQkJCQkiV3JvbmcgRE1BIGFyZ3NcbiIpOw0KPiA+ICsJCQkJCQl1c192aG9zdF91c2FnZShw cmduYW1lKTsNCj4gPiArCQkJCQl9DQo+ID4gKwkJCQkJcmV0dXJuIC0xOw0KPiA+ICsJCQkJfQ0K PiA+ICsJCQkJYXN5bmNfdmhvc3RfZHJpdmVyID0gMTsNCj4gPiArCQkJfQ0KPiA+ICsNCj4gPiAg CQkJYnJlYWs7DQo+ID4NCj4gPiAgCQkJLyogSW52YWxpZCBvcHRpb24gLSBwcmludCBvcHRpb25z LiAqLyBkaWZmIC0tZ2l0DQo+ID4gYS9leGFtcGxlcy92aG9zdC9tYWluLmggYi9leGFtcGxlcy92 aG9zdC9tYWluLmggaW5kZXgNCj4gPiA3Y2JhMGVkYmYuLmVhYzE4ODI0YiAxMDA2NDQNCj4gPiAt LS0gYS9leGFtcGxlcy92aG9zdC9tYWluLmgNCj4gPiArKysgYi9leGFtcGxlcy92aG9zdC9tYWlu LmgNCj4gPiBAQCAtOTAsMyArOTAsNSBAQCB1aW50MTZfdCB2c19kZXF1ZXVlX3BrdHMoc3RydWN0 IHZob3N0X2RldiAqZGV2LA0KPiB1aW50MTZfdCBxdWV1ZV9pZCwNCj4gPiAgCQkJIHN0cnVjdCBy dGVfbWVtcG9vbCAqbWJ1Zl9wb29sLA0KPiA+ICAJCQkgc3RydWN0IHJ0ZV9tYnVmICoqcGt0cywg dWludDE2X3QgY291bnQpOyAgI2VuZGlmIC8qDQo+IF9NQUlOX0hfICovDQo+ID4gKw0KPiA+ICtp bnQgb3Blbl9pb2F0KGNvbnN0IGNoYXIgKnZhbHVlKTsNCj4gPiBkaWZmIC0tZ2l0IGEvZXhhbXBs ZXMvdmhvc3QvbWVzb24uYnVpbGQgYi9leGFtcGxlcy92aG9zdC9tZXNvbi5idWlsZA0KPiA+IGlu ZGV4IDg3MmQ1MTE1My4uY2IxMWVkZDc4IDEwMDY0NA0KPiA+IC0tLSBhL2V4YW1wbGVzL3Zob3N0 L21lc29uLmJ1aWxkDQo+ID4gKysrIGIvZXhhbXBsZXMvdmhvc3QvbWVzb24uYnVpbGQNCj4gPiBA QCAtOSw4ICs5LDggQEANCj4gPiAgaWYgbm90IGlzX2xpbnV4DQo+ID4gIAlidWlsZCA9IGZhbHNl DQo+ID4gIGVuZGlmDQo+ID4gLWRlcHMgKz0gJ3Zob3N0Jw0KPiA+ICtkZXBzICs9IFsndmhvc3Qn LCAncmF3ZGV2X2lvYXQnXQ0KPiANCj4gSXQgaXMgYnJlYWtpbmcgYnVpbGQgb24gb3RoZXIgcGxh dGZvcm1zIHRoYW4gWDg2Og0KPiBodHRwczovL3RyYXZpcy1jaS5jb20vZ2l0aHViL292c3JvYm90 L2RwZGsvYnVpbGRzLzE4OTQwNTgyMA0KPiANCj4gSXQgc2hvdWxkIGJlIGRvbmUgdGhlIG90aGVy IHdheSwgd2hpY2ggaXMgdG8gZW5hYmxlIGlvYXQgc3VwcG9ydCBpbiB0aGlzDQo+IGV4YW1wbGUg aWYgcmF3ZGV2X2lvYXQgaXMgc3VwcG9ydGVkLg0KDQpBZ3JlZWQsIGl0IHdpbGwgYmUgY2hhbmdl ZCBpbiB2NS4NCg0KVGhhbmtzLA0KQ2hlbmcNCg0KPiANCj4gPiAgYWxsb3dfZXhwZXJpbWVudGFs X2FwaXMgPSB0cnVlDQo+ID4gIHNvdXJjZXMgPSBmaWxlcygNCj4gPiAtCSdtYWluLmMnLCAndmly dGlvX25ldC5jJw0KPiA+ICsJJ21haW4uYycsICd2aXJ0aW9fbmV0LmMnLCAnaW9hdC5jJw0KPiA+ ICApDQo+ID4NCg0K