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 2CD3AA0C40; Fri, 25 Jun 2021 09:26:28 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 9F09840698; Fri, 25 Jun 2021 09:26:27 +0200 (CEST) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id 9471D4068A for ; Fri, 25 Jun 2021 09:26:25 +0200 (CEST) IronPort-SDR: USe2YJHVhan/qamt4QQ0S6RGoDGe+zODdqddscKrrSNGOiO5UPTKQdgxL6HyOZop6pz/lnGI49 JEgIO/Ye0nfA== X-IronPort-AV: E=McAfee;i="6200,9189,10025"; a="207561614" X-IronPort-AV: E=Sophos;i="5.83,298,1616482800"; d="scan'208";a="207561614" Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 25 Jun 2021 00:26:24 -0700 IronPort-SDR: 4FuWoareDrvwhmkS+5PF7gMLNNm9boIctwOfVdDJh23BvlTU8nivT5pNDFuIk5sKQCQoSXdC8f IqqA2mO1Z+oA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.83,298,1616482800"; d="scan'208";a="481773580" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by FMSMGA003.fm.intel.com with ESMTP; 25 Jun 2021 00:26:23 -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.2242.4; Fri, 25 Jun 2021 00:26:23 -0700 Received: from fmsmsx605.amr.corp.intel.com (10.18.126.85) 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.2242.4; Fri, 25 Jun 2021 00:26:23 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx605.amr.corp.intel.com (10.18.126.85) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4 via Frontend Transport; Fri, 25 Jun 2021 00:26:23 -0700 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.173) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.4; Fri, 25 Jun 2021 00:26:21 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Zl4T2zo8vqrfOGoeSv4CAfspklSHGZ/R3XL9KuE3rPZloOuhMkZxsX+c5QppCByEEUZSaiu2D75fVfNR7IAiLrS6VntXdFWPZwr2ND/tw6mvLLR/ZpmZXJ58B4SGKvdgHEw0PWj2C1Z+r49b+FnpH2sWe5KeTbNeaSM4HJ+6S5OJSPl4xPLOCI31sxTY5rN8FsAJhX5JSVnhBt9Ab8h6QUjTGxTBslUjeo2ik/m3ypvgPA01z7teHjFoIJ8AlqtDJJ/gd2cGJpoye+Yg0X3hYcCp9i5e9+/PVxfuO5l2OWgWBzcJ0yuMiKM+xmd5/3B+wDH8HMR4jHrV/I3ggU4q2g== 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=nBrsuai3BB3W/L4u44Z/rKd2fK3g5IqwqZkZP32xYoc=; b=MXeGlQEyom7Sy8DcSBWvDOik9WN8QdEJb7lTy+fpewJH67Ij8jAuZ/qiDUFkuMnfVrqoAflZHYhtt47rMf5HblZ1JyApN9iZedcIk3cmS9HZEhTqMOPBuFJTl/NKEuMusu5BSBAc2tp5hhAhFklXlGMGX+LvRq1Z5Q91Q9gmceh6sJ2ZtSDXgqrAMpKk/mJFveVOZqpu8gh+7usSUHzvhC1MTm0lQMXD+wN5uARbcZkLULGxBKIGb3I1pXHjcy9UC35l6VlIemDppgLwr8By2vBajiukdDXaytbJ+o1NORiT1pPGd06UfuW2H2g58w4vS0QBjNDjHDipnQcrB0yw1Q== 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=nBrsuai3BB3W/L4u44Z/rKd2fK3g5IqwqZkZP32xYoc=; b=FyQwGPzMMjQW/i6q5MbOFvtpdK268Xq7uHryc/a/S5D7Ttal/rmgacKB/3aFV2PbzunwisJgZOqps64U8cQF/DdQwqK7dteZ4QgfUSlifj41zR9y3AEJKGf2aPepBrhFxAeJGrf87TmmYpkECUnthG303f/BFgXMSk8EpquQArA= Received: from MN2PR11MB4063.namprd11.prod.outlook.com (2603:10b6:208:13f::22) by MN2PR11MB4728.namprd11.prod.outlook.com (2603:10b6:208:261::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4264.19; Fri, 25 Jun 2021 07:26:19 +0000 Received: from MN2PR11MB4063.namprd11.prod.outlook.com ([fe80::d447:3a7a:aad7:4d32]) by MN2PR11MB4063.namprd11.prod.outlook.com ([fe80::d447:3a7a:aad7:4d32%7]) with mapi id 15.20.4264.023; Fri, 25 Jun 2021 07:26:19 +0000 From: "Xia, Chenbo" To: Maxime Coquelin , "dev@dpdk.org" , "david.marchand@redhat.com" Thread-Topic: [PATCH v6 7/7] vhost: convert inflight data to DPDK allocation API Thread-Index: AQHXZErbsgx3DQqKPESwZkMcRSSEm6skXaCQ Date: Fri, 25 Jun 2021 07:26:19 +0000 Message-ID: References: <20210618140357.255995-1-maxime.coquelin@redhat.com> <20210618140357.255995-8-maxime.coquelin@redhat.com> In-Reply-To: <20210618140357.255995-8-maxime.coquelin@redhat.com> Accept-Language: en-US, zh-CN 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.102.204.51] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 31cdcde7-8bc0-42d2-cbb5-08d937aa869d x-ms-traffictypediagnostic: MN2PR11MB4728: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:5797; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 0RAUEoLXY1wBibKBczE6Lwae/854OuQqubCyRy4BKvlawvzIGGsKBSVsKcyB9lFH3XSu2ZbSEbCYHPXWXftfw+zfqbmfaGfGrcT5AvtX/sHKiGDFB7WuDlkrN+vgwRdOz2PuBKK2JLkJSvGd6VKAWfWfOJ1Kge+FONQ61PgMKRpqecrxIMnY4P5pu6n3zl9qjbEmM5QrzSDRN8XovZoL6ibyL6qYJm8VmsuFHfQ1bNISy8BDn3r73gK5iKJ8oUnydNXFBeoCwCp9YEP9JARcjtqv806SFQhSh/8/Movp32NsizVn/PpS22mRAP4Rcl0+egpZzVsMvb5QZoi1AfpMZowutg+M9uj269zQfQg3UbFHwPxizwOg9t3SNwqUF5EaEsRg/0bI+F/+fSdfJU7B3uxwbJG/dxBZ+wODDfjn+fQ6sez/kjDtgb/WnaGM+Xy+HzAFaVNxxhB4mOzbO+G+u1aFe4avJaddXu/eVR4qGCOTIoMOVxfCUxsNWuGTZmkwkwBEeem1hHnQrtXt5/deWTeVKFdYnQeWslwurT7FwrwVgDHXCKOk67bGQqVHMMQRBSdABi6E1efOKrMzj6v1ulgZnooU2I+vxF2p8lnNsVMq5+FxwKykZGiln0alJ6j7bITLyym4emtinKw57AjTgQ== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MN2PR11MB4063.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(39860400002)(396003)(136003)(346002)(376002)(366004)(6506007)(7696005)(5660300002)(55016002)(53546011)(86362001)(9686003)(122000001)(38100700002)(71200400001)(66476007)(66556008)(186003)(66446008)(64756008)(316002)(26005)(52536014)(8936002)(33656002)(8676002)(2906002)(83380400001)(110136005)(478600001)(66946007)(76116006); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?OGRmcEg1dG13RXlKekpYbitrSWFFWjBlZjhnZkMxbUpNWkVhbGJKaU1oOTlH?= =?utf-8?B?WDE0K05Fc01COTE0YnJBNDRxOWtYb3JuNHhhdFREYzVHNlRTM0FJcks3UkEz?= =?utf-8?B?cVBJOUpGb2ptcXAwaUFSb2RRcldFdHFiQkFsaVNvaWs4QzYrbU5CSEZRTGNC?= =?utf-8?B?OTFBUHk5d3JWNGtYVGFudEFaa0RiR3dtRURsSGlyaEJWaEoyQXk0RWl4K2g0?= =?utf-8?B?b2NONFNkMGFtSW9DT1JTTGdZdmEwcmM1aURtamk4WjhuOG9HV2t5OVBkWDNK?= =?utf-8?B?M2J6VVBGL1NFVGpzVmNGMmpNMFBvK0RQQzV5VjFuTEJhbHh2cXpxMzdwWDJS?= =?utf-8?B?NTF3UVIydE0wWVJXc2FmbUVnRlYydTk5cFNqeHEwNjJiRGllL3JJTllXTW82?= =?utf-8?B?U2FCM2s4Q0REZGlQenJnOUpuOTFRWXd1K2s1WDRyQ0ZZSUU3MlV5OEM3MHpG?= =?utf-8?B?SC9rZjhQblArc2RHRlIxQzVNRGdtd0xsZkt2SGlUV3N6TitLVk1nK0UyK3Qw?= =?utf-8?B?bDVZSU44NGliSWpld2ZJTzFsTDQ5RXhyd1k1d3Q2S0k3NFRSdjd3bVhqcTlo?= =?utf-8?B?T0UxWmNSL3A2KzNNa25tWEJGSjhYWnF0SG1HVDRVUjNKVDdiMWFFb3UyQzlI?= =?utf-8?B?eTlrVUJMd1FtVDRpRnptekszclFhZFNpdGFDTnEzZXpmcGdQUHB3R1JhbzJh?= =?utf-8?B?WkYwaTZkZlJZd1dGTXBpNjFKRm42aFAvbi9SYVdzTWNkMUpPejZTRVpudk5p?= =?utf-8?B?b0RjU1puWENrTkE1OC9kY2pyRHVLclNQT1dtQjlBNjFySUhhUkY0MHFEMHAx?= =?utf-8?B?NTJVUjVINlFLK0NINGpYaFg4anVnWVl4Qi95ejg4a2JCUnZNUkUrdEI4SGhH?= =?utf-8?B?alhjQnM0U3NIODd1U0YwVmxiNXBRV3FzQmJCOVVQMEh4Z3M3dCtCWUtOZFVY?= =?utf-8?B?ZEh1a1B4STBFOXVSQW4ySGhiVm4zWkpoVEZiK1ZIMnMrbWU5SWphaTUzd2ZV?= =?utf-8?B?clRROHJ4STk4RXhZelhVTkFlUDF3VnVXZnBsVUJLQ3NweElZTmwxRVBPNXlQ?= =?utf-8?B?L1BjRnUrZWpvU0l6dFZmcjhVVDhQRWQ5Zm5PZFRJTTR4WHNvVWlnWjRnNVZO?= =?utf-8?B?OUo1TjB2UFlQS1huWW14S2g5RlFxMVZHWUt2SDJGc01hK3VOTDdRSWc3TGpw?= =?utf-8?B?Y29KM09tNm1iTkluQ0Z4Q0ZpeXUxMWF5UktvS05TaU96d1AwZjZud0xuSndG?= =?utf-8?B?enR6R3dHYjd6RlhOR2pkSVQzVWwvRDBDeE04aVpFY2ZuWjFTa3pCaEtWb2dv?= =?utf-8?B?eHVDOHFJT1dCZHdacjhaZnVsOVVOODA1S1JOVkkwUndzdWpVVVpnUnhieXkr?= =?utf-8?B?YUJ5VFUrOS9DbFAxWlZRei9yMGwyczUweHMwVzZDL3M1ejdGRjZ0ZTdNVmlX?= =?utf-8?B?Ri9pNXVyYTBGeTNLUnl4Sy94Q21UanhaNk1PY3JQOHFBM0pjNWtWVE5QNjhW?= =?utf-8?B?c1hwV3JPZFpEQWQ3dVBOYVBSb1g2cHpIbkZIRVZYQjhQTGkwTWZwUFNMaTJl?= =?utf-8?B?ODBPb09aQjFYMlhnU042L1IxYnQ2Umx1MERUUm56MW9rd2ZKdXJ3UDVpQzJX?= =?utf-8?B?cTFERnpYalczUTk0L0hucFo5UmhJT2w5eEhEeEF1VG1kYU9XYkl4dnZ3MUtu?= =?utf-8?B?TDBoSlFGdVlEbjBwU1U0K0g2SXJEOU14dEo2QVRPRjhzVCs1Q0VDVGpYejFy?= =?utf-8?Q?80Uodh0GTEdq8nnKtXYQSVBZ8Vs2aYnaPBpdn9a?= x-ms-exchange-transport-forked: True 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: MN2PR11MB4063.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 31cdcde7-8bc0-42d2-cbb5-08d937aa869d X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Jun 2021 07:26:19.0862 (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: UpFhyr9SL8Qy0ubXWoRxt+kiHS/Lbg08KNSu00tFI9bDihl3fGZfwVZf/G+VoXXuo8Wye3wrE6qePclK+g7tcA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR11MB4728 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH v6 7/7] vhost: convert inflight data to DPDK allocation API 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 Sender: "dev" SGkgTWF4aW1lLA0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IE1heGlt ZSBDb3F1ZWxpbiA8bWF4aW1lLmNvcXVlbGluQHJlZGhhdC5jb20+DQo+IFNlbnQ6IEZyaWRheSwg SnVuZSAxOCwgMjAyMSAxMDowNCBQTQ0KPiBUbzogZGV2QGRwZGsub3JnOyBkYXZpZC5tYXJjaGFu ZEByZWRoYXQuY29tOyBYaWEsIENoZW5ibyA8Y2hlbmJvLnhpYUBpbnRlbC5jb20+DQo+IENjOiBN YXhpbWUgQ29xdWVsaW4gPG1heGltZS5jb3F1ZWxpbkByZWRoYXQuY29tPg0KPiBTdWJqZWN0OiBb UEFUQ0ggdjYgNy83XSB2aG9zdDogY29udmVydCBpbmZsaWdodCBkYXRhIHRvIERQREsgYWxsb2Nh dGlvbiBBUEkNCj4gDQo+IEluZmxpZ2h0IG1ldGFkYXRhIGFyZSBhbGxvY2F0ZWQgdXNpbmcgZ2xp YmMncyBjYWxsb2MuDQo+IFRoaXMgcGF0Y2ggY29udmVydHMgdGhlbSB0byBydGVfem1hbGxvY19z b2NrZXQgdG8gdGFrZQ0KPiBjYXJlIG9mIHRoZSBOVU1BIGFmZmluaXR5Lg0KPiANCj4gU2lnbmVk LW9mZi1ieTogTWF4aW1lIENvcXVlbGluIDxtYXhpbWUuY29xdWVsaW5AcmVkaGF0LmNvbT4NCj4g LS0tDQo+ICBsaWIvdmhvc3Qvdmhvc3QuYyAgICAgIHwgIDQgKy0tDQo+ICBsaWIvdmhvc3Qvdmhv c3RfdXNlci5jIHwgNjcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0t DQo+ICAyIGZpbGVzIGNoYW5nZWQsIDU4IGluc2VydGlvbnMoKyksIDEzIGRlbGV0aW9ucygtKQ0K PiANCj4gZGlmZiAtLWdpdCBhL2xpYi92aG9zdC92aG9zdC5jIGIvbGliL3Zob3N0L3Zob3N0LmMN Cj4gaW5kZXggMDAwMGNkMzI5Ny4uNTNhNDcwZjU0NyAxMDA2NDQNCj4gLS0tIGEvbGliL3Zob3N0 L3Zob3N0LmMNCj4gKysrIGIvbGliL3Zob3N0L3Zob3N0LmMNCg0KWy4uLl0NCg0KPiBAQCAtMTc3 OSwxNSArMTgyMCwxNyBAQCB2aG9zdF9jaGVja19xdWV1ZV9pbmZsaWdodHNfc3BsaXQoc3RydWN0 IHZpcnRpb19uZXQNCj4gKmRldiwNCj4gIAl2cS0+bGFzdF9hdmFpbF9pZHggKz0gcmVzdWJtaXRf bnVtOw0KPiANCj4gIAlpZiAocmVzdWJtaXRfbnVtKSB7DQo+IC0JCXJlc3VibWl0ICA9IGNhbGxv YygxLCBzaXplb2Yoc3RydWN0IHJ0ZV92aG9zdF9yZXN1Ym1pdF9pbmZvKSk7DQo+ICsJCXJlc3Vi bWl0ICA9IHJ0ZV96bWFsbG9jX3NvY2tldCgicmVzdWJtaXQiLCBzaXplb2Yoc3RydWN0DQo+IHJ0 ZV92aG9zdF9yZXN1Ym1pdF9pbmZvKSwNCj4gKwkJCQkwLCB2cS0+bnVtYV9ub2RlKTsNCj4gIAkJ aWYgKCFyZXN1Ym1pdCkgew0KPiAgCQkJVkhPU1RfTE9HX0NPTkZJRyhFUlIsDQo+ICAJCQkJImZh aWxlZCB0byBhbGxvY2F0ZSBtZW1vcnkgZm9yIHJlc3VibWl0IGluZm8uXG4iKTsNCj4gIAkJCXJl dHVybiBSVEVfVkhPU1RfTVNHX1JFU1VMVF9FUlI7DQo+ICAJCX0NCj4gDQo+IC0JCXJlc3VibWl0 LT5yZXN1Ym1pdF9saXN0ID0gY2FsbG9jKHJlc3VibWl0X251bSwNCj4gLQkJCXNpemVvZihzdHJ1 Y3QgcnRlX3Zob3N0X3Jlc3VibWl0X2Rlc2MpKTsNCj4gKwkJcmVzdWJtaXQtPnJlc3VibWl0X2xp c3QgPSBydGVfem1hbGxvY19zb2NrZXQoInJlc3VibWl0X2xpc3QiLA0KPiArCQkJCXJlc3VibWl0 X251bSAqIHNpemVvZihzdHJ1Y3QgcnRlX3Zob3N0X3Jlc3VibWl0X2Rlc2MpLA0KPiArCQkJCTAs IHZxLT5udW1hX25vZGUpOw0KPiAgCQlpZiAoIXJlc3VibWl0LT5yZXN1Ym1pdF9saXN0KSB7DQo+ ICAJCQlWSE9TVF9MT0dfQ09ORklHKEVSUiwNCj4gIAkJCQkiZmFpbGVkIHRvIGFsbG9jYXRlIG1l bW9yeSBmb3IgaW5mbGlnaHQgZGVzYy5cbiIpOw0KPiBAQCAtMTg3MywxNSArMTkxNiwxNyBAQCB2 aG9zdF9jaGVja19xdWV1ZV9pbmZsaWdodHNfcGFja2VkKHN0cnVjdCB2aXJ0aW9fbmV0DQo+ICpk ZXYsDQo+ICAJfQ0KPiANCj4gIAlpZiAocmVzdWJtaXRfbnVtKSB7DQo+IC0JCXJlc3VibWl0ID0g Y2FsbG9jKDEsIHNpemVvZihzdHJ1Y3QgcnRlX3Zob3N0X3Jlc3VibWl0X2luZm8pKTsNCj4gKwkJ cmVzdWJtaXQgID0gcnRlX3ptYWxsb2Nfc29ja2V0KCJyZXN1Ym1pdCIsIHNpemVvZihzdHJ1Y3QN Cj4gcnRlX3Zob3N0X3Jlc3VibWl0X2luZm8pLA0KPiArCQkJCTAsIHZxLT5udW1hX25vZGUpOw0K DQpUaGVyZSBhcmUgc3RpbGwgdHdvICdmcmVlKHJlc3VibWl0KScgaW4gdmhvc3RfY2hlY2tfcXVl dWVfaW5mbGlnaHRzX3NwbGl0IGFuZA0Kdmhvc3RfY2hlY2tfcXVldWVfaW5mbGlnaHRzX3BhY2tl ZCwgd2hpY2ggc2hvdWxkIGJlIHJlcGxhY2VkIHdpdGggcnRlX2ZyZWUoKQ0KDQpUaGFua3MsDQpD aGVuYm8gDQoNCj4gIAkJaWYgKHJlc3VibWl0ID09IE5VTEwpIHsNCj4gIAkJCVZIT1NUX0xPR19D T05GSUcoRVJSLA0KPiAgCQkJCSJmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciByZXN1Ym1p dCBpbmZvLlxuIik7DQo+ICAJCQlyZXR1cm4gUlRFX1ZIT1NUX01TR19SRVNVTFRfRVJSOw0KPiAg CQl9DQo+IA0KPiAtCQlyZXN1Ym1pdC0+cmVzdWJtaXRfbGlzdCA9IGNhbGxvYyhyZXN1Ym1pdF9u dW0sDQo+IC0JCQlzaXplb2Yoc3RydWN0IHJ0ZV92aG9zdF9yZXN1Ym1pdF9kZXNjKSk7DQo+ICsJ CXJlc3VibWl0LT5yZXN1Ym1pdF9saXN0ID0gcnRlX3ptYWxsb2Nfc29ja2V0KCJyZXN1Ym1pdF9s aXN0IiwNCj4gKwkJCQlyZXN1Ym1pdF9udW0gKiBzaXplb2Yoc3RydWN0IHJ0ZV92aG9zdF9yZXN1 Ym1pdF9kZXNjKSwNCj4gKwkJCQkwLCB2cS0+bnVtYV9ub2RlKTsNCj4gIAkJaWYgKHJlc3VibWl0 LT5yZXN1Ym1pdF9saXN0ID09IE5VTEwpIHsNCj4gIAkJCVZIT1NUX0xPR19DT05GSUcoRVJSLA0K PiAgCQkJCSJmYWlsZWQgdG8gYWxsb2NhdGUgbWVtb3J5IGZvciByZXN1Ym1pdCBkZXNjLlxuIik7 DQo+IC0tDQo+IDIuMzEuMQ0KDQo=