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 84502A04B1; Wed, 23 Sep 2020 10:14:58 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 57AB91DB71; Wed, 23 Sep 2020 10:14:57 +0200 (CEST) Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by dpdk.org (Postfix) with ESMTP id EE6471D903 for ; Wed, 23 Sep 2020 10:14:54 +0200 (CEST) IronPort-SDR: eMEc1r2sB2dOrfoVUCBKXuwKFHuVZEAMLkkkfOfjYTTEQ7e1mSak2mSGvOkZ7dp5ujbPdaz7ys RdkIVqqYhteQ== X-IronPort-AV: E=McAfee;i="6000,8403,9752"; a="158210108" X-IronPort-AV: E=Sophos;i="5.77,293,1596524400"; d="scan'208";a="158210108" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 23 Sep 2020 01:14:52 -0700 IronPort-SDR: 1+h4MJAANhrjIUjykRrFNElOpvI7ecdqXRx2Ytk2ykO0+XDLTz2mr7564uzNYfmIYg4bsTp8GC yBiqfv97GudQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,293,1596524400"; d="scan'208";a="510907276" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by fmsmga006.fm.intel.com with ESMTP; 23 Sep 2020 01:14:52 -0700 Received: from fmsmsx603.amr.corp.intel.com (10.18.126.83) 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, 23 Sep 2020 01:14:52 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx603.amr.corp.intel.com (10.18.126.83) 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, 23 Sep 2020 01:14:52 -0700 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.104) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.1713.5; Wed, 23 Sep 2020 01:14:51 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=McccD4HAm9nl9iC16iKye+/I+Py+Ml/3m3l/f0ub/KvcwWBXF3ExtrknyY0UAvs3dKISUogXMDhh2XMorH8Wx+9K7xq9OwuNDTcTJMBs6wSSQlDMxgLOgpnVyplJvpl74AdGS8y5C0emoNgF0gXipuUmEFOOaJ7bbSfkvqZ8FpNsL6Uz811quHi9xfVGW54jQaIw652NKhkaWZnuan1oO0RrpZe+w+LBJNFap/fFEKnPtUipPwFiOUKvhhKzPufdCozBmP/UjDCDq7B3DvouwbIsACWkSe/o2MvPVlWoIOTpCD1VVWClLC9lyyvDJNXmMr8A2alzj2+quz8nDcSvtQ== 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=4AkK4uUAe35BIZUThL4S5oTiM8Uj6NP5PDaPb4ncT/4=; b=m+ca6BySh5cyRtvkcXC85z0tcxyi7btIW+LrDkVtoJvvthhvMZ/P3CYHDSqNMsXsouuWzyl1i5mCU0RnlS+PjsbFuSrQZbOjJTNqdtY3H0kPXY+Ou3VbqdRjTniHhgGyp+vS6NrTpMd0PnYS2LEfO1ERDj7k4K3+4ZSc4LID+7zjhYu0cP3cR93FFI8qe62LxF1kkpZd7VdmHvOk+zFAfCfGobhZDzId9MX4R364M8Bv62apwVBRmnigeKQXah/RUKewZseUIiB/xTnjI8/gRiUDCZOInt7Ov66QjFxYc3mTNOR2hqI2U+w4wvrmLRv3YVXM31JRlhR+oB4j6WcMrQ== 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=4AkK4uUAe35BIZUThL4S5oTiM8Uj6NP5PDaPb4ncT/4=; b=p0FB40+/WF5HwjDys1khyAU+DV4DO/blsi1mBzEK+LxuSgufyrBjHO+gm1ZXw/QBzkixRF0v4aBDNFOip4cdNzX0E5sW36KpLFtnvh2/Xpz6iwU1BR8bGLu71rVcHJDhAka8JvbIVyJJSFCsMxy28MfoyGPCJC6eCETf2HGsl9g= Received: from BN7PR11MB2739.namprd11.prod.outlook.com (2603:10b6:406:a9::12) by BN6PR1101MB2258.namprd11.prod.outlook.com (2603:10b6:405:5b::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3412.20; Wed, 23 Sep 2020 08:14:50 +0000 Received: from BN7PR11MB2739.namprd11.prod.outlook.com ([fe80::2cc8:a95d:aa08:c552]) by BN7PR11MB2739.namprd11.prod.outlook.com ([fe80::2cc8:a95d:aa08:c552%5]) with mapi id 15.20.3391.027; Wed, 23 Sep 2020 08:14:50 +0000 From: "Liu, Changpeng" To: Maxime Coquelin , "dev@dpdk.org" CC: "matan@mellanox.com" , "Xia, Chenbo" , "Zawadzki, Tomasz" Thread-Topic: [PATCH] vhost: return ready when at least 1 vring is configured Thread-Index: AQHWgCl2jFYICMp/WEWJtA8bZ8pvjqluQtQAgARkE2CAAFo8gIABPCPggAHC/ICAAAEkQA== Date: Wed, 23 Sep 2020 08:14:50 +0000 Message-ID: References: <1598944057-32690-1-git-send-email-changpeng.liu@intel.com> <8e0e8343-4e85-71f3-8c85-07eb1cff6079@redhat.com> <06542643-cc20-5e3e-26ae-7100005dc97d@redhat.com> <24b547af-2cda-36db-cb66-e5523d169556@redhat.com> In-Reply-To: <24b547af-2cda-36db-cb66-e5523d169556@redhat.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-version: 11.5.1.3 dlp-reaction: no-action 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.198.147.223] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 47c908eb-d45b-4503-5dd1-08d85f98be5c x-ms-traffictypediagnostic: BN6PR1101MB2258: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: PO6jRknnZo1okquqZPO2biSugJnqqbbrR38OLi60bEDwb90dT9GZxYJhwNozVvDnTt+6Dj1jpNz3JLh0swMgBONBkVgnkB8m58TjD8URNhJWIzjPbLtVPSQkXtpQ8MfHAbGn9rqwhjAw1skUSb6e9MwjwaszAN0Ldba00kEGTjL+PKSC8vbcdH4i0if7TdbAZXh9VZcJt76Kgymm0WvCtSccA7Ti2jzpXLgKvxFjiJblp7gMCgYTgnTKULS6gDbB9P+lXIsfPYjdyvQGxU+9B4MmozshLGB7g6T48nH4DHVxGsYIJOcz4Yvohqd2wGDXaH7AjEeZS1cyf3XEPCbGXQ== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BN7PR11MB2739.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(346002)(396003)(136003)(376002)(366004)(39860400002)(6506007)(4326008)(71200400001)(7696005)(26005)(186003)(107886003)(53546011)(478600001)(54906003)(8676002)(316002)(110136005)(5660300002)(33656002)(2906002)(86362001)(52536014)(83380400001)(9686003)(66946007)(66556008)(64756008)(55016002)(66446008)(8936002)(76116006)(66476007); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata: b2KrHytIoHUxPCZIQ+1W0dX4AXzYzS7f+x2i9mfvYuddk3lOt+eT1MMcnsQAasABuTTC+finn19KNE4B84fLHDxrSTERpgRpx/s7B9uAw+5smQ47mTtbSmbjhj6+7v/FVsGFXZK3tMadPF6Ntw/nL1iP5Is7qgPgowjCFanbwq1t98mCsaE8DOt0oXb3tXV6IPMnccSditWHEzKyQtBQLuanSfyb2GKKVcrxb0FqLNLtfgPbW86bvICtJPmjlV/qzENYS3Jxk64MovzrMVGZd0GWWLXOZJrYghbx4C2zsnjFQ6glYFjJMpzm4+RsfiOj2r6T7ZTOLj3QRp0yDoIGq53qOfs97qOvBMszjCeVSPtVYPo+21tyIyHdcJeID7dpsV5N/XBhPmmgocozcwnyKAD4o9oZ6vhgXxDI6KD9x6E6lXPHvvjqJS17l/dNYBTipHQztPiOvxtS+Nf/JFoP7SsdpFWJNCxQRdV6ZwlmrZ1aKsqRbJa/mNjSlPL55c5pu4X9WpLa63uaucwsyUEv2ijVfY3OwCuaQdKeaj1ze8hgIdoXeIQCgxyTFVlCwDajaw/Sezj5p4BWYtMgusIXigLCz0pglrY7eIBqgnxjVyZbyEGqcvLMmNwA9RPefMrmVOWxGJyp+bUKj9cfd1KqPA== 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: BN7PR11MB2739.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 47c908eb-d45b-4503-5dd1-08d85f98be5c X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Sep 2020 08:14:50.4578 (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: XI83ORmw5hn8eSIOzWHCTuRvORPLIseNV72Jqv+mvlOb4sJB4wiqzHdviZRrYp4g1YqDD17Mk/NpTUU07Lx5/w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR1101MB2258 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH] vhost: return ready when at least 1 vring is configured 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" DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogTWF4aW1lIENvcXVlbGlu IDxtYXhpbWUuY29xdWVsaW5AcmVkaGF0LmNvbT4NCj4gU2VudDogV2VkbmVzZGF5LCBTZXB0ZW1i ZXIgMjMsIDIwMjAgNDowNSBQTQ0KPiBUbzogTGl1LCBDaGFuZ3BlbmcgPGNoYW5ncGVuZy5saXVA aW50ZWwuY29tPjsgZGV2QGRwZGsub3JnDQo+IENjOiBtYXRhbkBtZWxsYW5veC5jb207IFhpYSwg Q2hlbmJvIDxjaGVuYm8ueGlhQGludGVsLmNvbT47IFphd2FkemtpLA0KPiBUb21hc3ogPHRvbWFz ei56YXdhZHpraUBpbnRlbC5jb20+DQo+IFN1YmplY3Q6IFJlOiBbUEFUQ0hdIHZob3N0OiByZXR1 cm4gcmVhZHkgd2hlbiBhdCBsZWFzdCAxIHZyaW5nIGlzIGNvbmZpZ3VyZWQNCj4gDQo+IEhpIENo YW5ncGVuZywNCj4gDQo+IE9uIDkvMjIvMjAgOToyMiBBTSwgTGl1LCBDaGFuZ3Blbmcgd3JvdGU6 DQo+ID4gSGkgTWF4aW1lLA0KPiA+DQo+ID4gVGhlIGNvZGUgeW91IHdyb3RlIHN0aWxsIG5lZWQg dG8gY2hlY2sgbnJfdnJpbmcgaXMgMCBvciBub3QsIHNlZSB0aGUgZXh0cmEgMiBsaW5lcw0KPiBh ZGRlZCBiZWxvdywgdGhlbiBpdCBjYW4gd29yayB3aXRoIG15IHRlc3RzIGZvciBub3csIGNvdWxk IHlvdSBzdWJtaXQgYSBwYXRjaA0KPiB0byBEUERLIHRvIGFwcGx5IHRoZSBwYXRjaD8gVGhhbmtz Lg0KPiANCj4gVGhhbmtzISBZb3UgYXJlIHJpZ2h0Lg0KPiANCj4gSSdsbCBzZW5kIHRoZSBwYXRj aCBub3cgaW5jbHVkaW5nIHlvdXIgZml4Lg0KPiANCj4gPiBCVFcsIGRwZGsgdmhvc3QgbGlicmFy eSBzdGlsbCBoYXMgYW4gaXNzdWUsIGl0J3Mgbm90IHJlbGF0ZWQgd2l0aCBjb21taXQgZDBmY2Mz OGYsDQo+IHRoZSBHdWVzdCBkcml2ZXIgbWF5IG9ubHkga2ljayAxIHZyaW5nIGV2ZW4gaXQgc2Vu ZHMgTlVNX1FVRVVFUyB3aXRoIGEgYmlnZ2VyDQo+IHZhbHVlLA0KPiA+IHRoaXMgaXMgcXVpdGUg Y29tbW9uIGluIHNlYWJpb3MsIGUuZzogdmlydGlvX2JsayB3aWxsIG9ubHkgdXNlIDEgdnJpbmcg aW4gc2VhYmlvcywNCj4gdGhpcyBtZWFucyB0aGUgYmFja2VuZCB3aWxsIG5ldmVyIGdldCBzdGFy dGVkIGluIEJJT1MuDQo+ID4NCj4gDQo+IElmIEkgdW5kZXJzdGFuZCBjb3JyZWN0bHksIHRoaXMg aXMgbm90IGEgcmVncmVzc2lvbiBidXQgaGFzIGFsd2F5cyBiZWVuDQo+IGhlcmU/DQpZZXMsIEkg anVzdCBmb3VuZCB0aGF0IHJlY2VudGx5LCBpdCBhbHJlYWR5IGV4aXN0cyBmb3IgYSB3aGlsZS4N Cj4gDQo+IFdlIHNob3VsZCB3b3JrIG9uIGZpeGluZyBpdCBhbnl3YXksIGJ1dCBJJ20gbm90IHN1 cmUgdG8gaGF2ZSB0aGUgdGltZQ0KPiBmb3IgdjIwLjExLjAuIEl0IHdvdWxkIGJlIGdyZWF0IGlm IHlvdSBjb3VsZCBwcm92aWRlIHN0ZXBzIHRvIHJlcHJvZHVjZQ0KPiBpdC4gTWF5YmUgZmlsZSBh IGJ1ZyBpbiBEUERLIHRyYWNrZXI/DQpObyBodXJyaWVzICwgSSBjYW4gc3VibWl0IGFuIGlzc3Vl IHRyYWNrZXIsIGl0IGRvZXNuJ3QgYWZmZWN0IE5FVCBkZXZpY2UgYW5kIG1vc3Qgb2YgdGhlIHN0 b3JhZ2Ugc2NlbmFyaW9zLg0KPiANCj4gVGhhbmtzLA0KPiBNYXhpbWUNCj4gDQo+ID4+IC0tLS0t T3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4+IEZyb206IE1heGltZSBDb3F1ZWxpbiA8bWF4aW1l LmNvcXVlbGluQHJlZGhhdC5jb20+DQo+ID4+IFNlbnQ6IE1vbmRheSwgU2VwdGVtYmVyIDIxLCAy MDIwIDY6MjAgUE0NCj4gPj4gVG86IExpdSwgQ2hhbmdwZW5nIDxjaGFuZ3BlbmcubGl1QGludGVs LmNvbT47IGRldkBkcGRrLm9yZw0KPiA+PiBDYzogbWF0YW5AbWVsbGFub3guY29tOyBYaWEsIENo ZW5ibyA8Y2hlbmJvLnhpYUBpbnRlbC5jb20+OyBaYXdhZHpraSwNCj4gPj4gVG9tYXN6IDx0b21h c3ouemF3YWR6a2lAaW50ZWwuY29tPg0KPiA+PiBTdWJqZWN0OiBSZTogW1BBVENIXSB2aG9zdDog cmV0dXJuIHJlYWR5IHdoZW4gYXQgbGVhc3QgMSB2cmluZyBpcyBjb25maWd1cmVkDQo+ID4+DQo+ ID4+DQo+ID4+DQo+ID4+IE9uIDkvMjEvMjAgNzowMyBBTSwgTGl1LCBDaGFuZ3Blbmcgd3JvdGU6 DQo+ID4+PiBIaSBNYXhpbWUsDQo+ID4+Pg0KPiA+Pj4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0t LS0tDQo+ID4+Pj4gRnJvbTogTWF4aW1lIENvcXVlbGluIDxtYXhpbWUuY29xdWVsaW5AcmVkaGF0 LmNvbT4NCj4gPj4+PiBTZW50OiBGcmlkYXksIFNlcHRlbWJlciAxOCwgMjAyMCA1OjU0IFBNDQo+ ID4+Pj4gVG86IExpdSwgQ2hhbmdwZW5nIDxjaGFuZ3BlbmcubGl1QGludGVsLmNvbT47IGRldkBk cGRrLm9yZw0KPiA+Pj4+IENjOiBtYXRhbkBtZWxsYW5veC5jb207IFhpYSwgQ2hlbmJvIDxjaGVu Ym8ueGlhQGludGVsLmNvbT47IFphd2FkemtpLA0KPiA+Pj4+IFRvbWFzeiA8dG9tYXN6Lnphd2Fk emtpQGludGVsLmNvbT4NCj4gPj4+PiBTdWJqZWN0OiBSZTogW1BBVENIXSB2aG9zdDogcmV0dXJu IHJlYWR5IHdoZW4gYXQgbGVhc3QgMSB2cmluZyBpcyBjb25maWd1cmVkDQo+ID4+Pj4NCj4gPj4+ PiBIaSBDaGFuZ3BlbmcsDQo+ID4+Pj4NCj4gPj4+PiBPbiA5LzEvMjAgOTowNyBBTSwgQ2hhbmdw ZW5nIExpdSB3cm90ZToNCj4gPj4+Pj4gQ29tbWl0IGQwZmNjMzhmICJ2aG9zdDogaW1wcm92ZSBk ZXZpY2UgcmVhZGluZXNzIG5vdGlmaWNhdGlvbnMiDQo+ID4+Pj4+IG5lZWRzIGF0IGxlYXN0IDIg dnJpbmdzIGJlZm9yZSBjaGFuZ2luZyB0aGUgZGV2aWNlIHN0YXRlIHRvDQo+ID4+Pj4+IHJlYWR5 LCB0aGlzIGlzIGZpbmUgZm9yIE5FVCBkZXZpY2UgYnV0IG5vdCBjb3JyZWN0IGZvciBCTEsNCj4g Pj4+Pj4gZGV2aWNlLg0KPiA+Pj4+Pg0KPiA+Pj4+PiBUaGUgbnVtYmVyIG9mIHZyaW5nIHJlcXVp cmVkIHNob3VsZCBiZSBiYXNlZCBvbiB0aGUgZGV2aWNlDQo+ID4+Pj4+IHR5cGUsIGUuZy4gdmly dGlvX3Njc2kgZGV2aWNlIG5lZWRzIGF0IGxlYXN0IDMgdnJpbmdzLCBhbmQNCj4gPj4+Pj4gdmly dGlvX25ldCBuZWVkcyBhdCBsZWFzdCAyIHZyaW5ncywgdmlydGlvX2JsayBuZWVkcyBhdCBsZWFz dA0KPiA+Pj4+PiAxIHZyaW5nLiBTbyBpbnN0ZWFkIG9mIGRvaW5nIGl0IGluIHZob3N0IGxpYnJh cnkgaXQncyBiZXR0ZXINCj4gPj4+Pj4gdGhhdCB0aGUgYXBwbGljYXRpb24gd2hvIHVzZXMgdGhp cyBsaWJyYXJ5IGRvIHRoaXMgY2hlY2suDQo+ID4+Pj4+DQo+ID4+Pj4+IFNpZ25lZC1vZmYtYnk6 IENoYW5ncGVuZyBMaXUgPGNoYW5ncGVuZy5saXVAaW50ZWwuY29tPg0KPiA+Pj4+PiAtLS0NCj4g Pj4+Pj4gIGxpYi9saWJydGVfdmhvc3Qvdmhvc3RfdXNlci5jIHwgMiArLQ0KPiA+Pj4+PiAgMSBm aWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pDQo+ID4+Pj4+DQo+ID4+ Pj4+IGRpZmYgLS1naXQgYS9saWIvbGlicnRlX3Zob3N0L3Zob3N0X3VzZXIuYyBiL2xpYi9saWJy dGVfdmhvc3Qvdmhvc3RfdXNlci5jDQo+ID4+Pj4+IGluZGV4IGMzYzkyNGYuLjRkMTg4M2MgMTAw NjQ0DQo+ID4+Pj4+IC0tLSBhL2xpYi9saWJydGVfdmhvc3Qvdmhvc3RfdXNlci5jDQo+ID4+Pj4+ ICsrKyBiL2xpYi9saWJydGVfdmhvc3Qvdmhvc3RfdXNlci5jDQo+ID4+Pj4+IEBAIC0xMzQzLDcg KzEzNDMsNyBAQA0KPiA+Pj4+PiAgCSAgICAgICB2cS0+ZW5hYmxlZDsNCj4gPj4+Pj4gIH0NCj4g Pj4+Pj4NCj4gPj4+Pj4gLSNkZWZpbmUgVklSVElPX0RFVl9OVU1fVlFTX1RPX0JFX1JFQURZIDJ1 DQo+ID4+Pj4+ICsjZGVmaW5lIFZJUlRJT19ERVZfTlVNX1ZRU19UT19CRV9SRUFEWSAxdQ0KPiA+ Pj4+DQo+ID4+Pj4gSSB0aGluayBpdCB3b3VsZCBiZSBiZXR0ZXIgdG8gcmVseSBvbiBWSVJUSU9f REVWX0JVSUxUSU5fVklSVElPX05FVCB0bw0KPiA+Pj4+IGtub3cgd2hldGhlciBpdCBzaG91bGQg d2FpdCBmb3IgMSBvciAyIHF1ZXVlcyB0byBkZXRlcm1pbmUgaWYgcmVhZHkuDQo+ID4+PiB2aXJ0 aW9fc2NzaSBuZWVkcyBhdCBsZWFzdCAzIHZyaW5ncywgc28gYm90aCAxIGFuZCAyIGNhbid0IHdv cmsgZm9yIHZpcnRpb19zY3NpDQo+ID4+IGRldmljZS4NCj4gPj4+IENhbiB3ZSBleHBvc2UgYW4g QVBJIHRvIGxldCB0aGUgY2FsbGVyIHRvIHNldCB0aGUgbWluaW11bSBudW1iZXIgb2YgdnJpbmdz DQo+ID4+IHJlcXVpcmVkIGJ5DQo+ID4+PiB2aXJ0aW8gZGV2aWNlPw0KPiA+Pg0KPiA+PiBPSywg dGhhbmtzIGZvciBwb2ludGluZyB0aGlzIG91dCwgSSBtaXNzZWQgaXQuDQo+ID4+DQo+ID4+IEkn bSBub3QgaW4gZmF2b3Igb2YgaW50cm9kdWNpbmcgYW4gbmV3IEFQSSBmb3IgdGhpcy4NCj4gPj4g SSBwcm9wb3NlIHRvIHJlc3RyaWN0IGNoYW5nZSBpbnRyb2R1Y2VkIGluIGNvbW1pdCBkMGZjYzM4 ZiB0byB0aGUNCj4gPj4gYnVpbHRpbiBuZXQgYmFja2VuZC4gQ2FuIHlvdSBoYXZlIGEgdHJ5IHdp dGggYmVsb3cgcGF0Y2g/DQo+ID4+DQo+ID4+IFRoYW5rcyBpbiBhZHZhbmNlLA0KPiA+PiBNYXhp bWUNCj4gPj4NCj4gPj4+Pg0KPiA+Pj4+DQo+ID4+Pj4+ICBzdGF0aWMgaW50DQo+ID4+Pj4+ICB2 aXJ0aW9faXNfcmVhZHkoc3RydWN0IHZpcnRpb19uZXQgKmRldikNCj4gPj4+Pj4NCj4gPj4+DQo+ ID4+DQo+ID4+IGRpZmYgLS1naXQgYS9saWIvbGlicnRlX3Zob3N0L3Zob3N0X3VzZXIuYyBiL2xp Yi9saWJydGVfdmhvc3Qvdmhvc3RfdXNlci5jDQo+ID4+IGluZGV4IDUwMTIxOGUxOTIuLmY1NzFl ZjkzZmMgMTAwNjQ0DQo+ID4+IC0tLSBhL2xpYi9saWJydGVfdmhvc3Qvdmhvc3RfdXNlci5jDQo+ ID4+ICsrKyBiL2xpYi9saWJydGVfdmhvc3Qvdmhvc3RfdXNlci5jDQo+ID4+IEBAIC0xMzQzLDIx ICsxMzQzLDI1IEBAIHZxX2lzX3JlYWR5KHN0cnVjdCB2aXJ0aW9fbmV0ICpkZXYsIHN0cnVjdA0K PiA+PiB2aG9zdF92aXJ0cXVldWUgKnZxKQ0KPiA+PiAgICAgICAgICAgICAgICB2cS0+ZW5hYmxl ZDsNCj4gPj4gIH0NCj4gPj4NCj4gPj4gLSNkZWZpbmUgVklSVElPX0RFVl9OVU1fVlFTX1RPX0JF X1JFQURZIDJ1DQo+ID4+ICsjZGVmaW5lIFZJUlRJT19CVUlMVElOX05VTV9WUVNfVE9fQkVfUkVB RFkgMnUNCj4gPj4NCj4gPj4gIHN0YXRpYyBpbnQNCj4gPj4gIHZpcnRpb19pc19yZWFkeShzdHJ1 Y3QgdmlydGlvX25ldCAqZGV2KQ0KPiA+PiAgew0KPiA+PiAgICAgICAgIHN0cnVjdCB2aG9zdF92 aXJ0cXVldWUgKnZxOw0KPiA+PiAtICAgICAgIHVpbnQzMl90IGk7DQo+ID4+ICsgICAgICAgdWlu dDMyX3QgaSwgbnJfdnJpbmcgPSBkZXYtPm5yX3ZyaW5nOw0KPiA+Pg0KPiA+PiAgICAgICAgIGlm IChkZXYtPmZsYWdzICYgVklSVElPX0RFVl9SRUFEWSkNCj4gPj4gICAgICAgICAgICAgICAgIHJl dHVybiAxOw0KPiA+Pg0KPiA+PiAtICAgICAgIGlmIChkZXYtPm5yX3ZyaW5nIDwgVklSVElPX0RF Vl9OVU1fVlFTX1RPX0JFX1JFQURZKQ0KPiA+PiAtICAgICAgICAgICAgICAgcmV0dXJuIDA7DQo+ ID4+ICsgICAgICAgaWYgKGRldi0+ZmxhZ3MgJiBWSVJUSU9fREVWX0JVSUxUSU5fVklSVElPX05F VCkgew0KPiA+PiArICAgICAgICAgICAgICAgbnJfdnJpbmcgPSBWSVJUSU9fQlVJTFRJTl9OVU1f VlFTX1RPX0JFX1JFQURZOw0KPiA+PiArDQo+ID4+ICsgICAgICAgICAgICAgICBpZiAoZGV2LT5u cl92cmluZyA8IG5yX3ZyaW5nKQ0KPiA+PiArICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4g MDsNCj4gPj4gKyAgICAgICB9DQo+ID4NCj4gPiAgICArICAgICAgICAgaWYoIW5yX3ZyaW5nKQ0K PiA+ICAgICsgICAgICAgICAgICAgcmV0dXJuIDA7DQo+ID4+DQo+ID4+IC0gICAgICAgZm9yIChp ID0gMDsgaSA8IFZJUlRJT19ERVZfTlVNX1ZRU19UT19CRV9SRUFEWTsgaSsrKSB7DQo+ID4+ICsg ICAgICAgZm9yIChpID0gMDsgaSA8IG5yX3ZyaW5nOyBpKyspIHsNCj4gPj4gICAgICAgICAgICAg ICAgIHZxID0gZGV2LT52aXJ0cXVldWVbaV07DQo+ID4+DQo+ID4+ICAgICAgICAgICAgICAgICBp ZiAoIXZxX2lzX3JlYWR5KGRldiwgdnEpKQ0KPiA+DQoNCg==