From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (xvm-189-124.dc0.ghst.net [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id C6E6DA0524; Fri, 8 Jan 2021 03:57:22 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 605E7140DCD; Fri, 8 Jan 2021 03:57:22 +0100 (CET) Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by mails.dpdk.org (Postfix) with ESMTP id 791FE140DCA for ; Fri, 8 Jan 2021 03:57:20 +0100 (CET) IronPort-SDR: ipiOW3B/g251EbjrPar/QYQobgUy65TUp7X5eh+u/Ud/HPh4lapDdB1Tgmcbie3NoCr0mQQvTs 1SYVhcjpXe1w== X-IronPort-AV: E=McAfee;i="6000,8403,9857"; a="176755131" X-IronPort-AV: E=Sophos;i="5.79,330,1602572400"; d="scan'208";a="176755131" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Jan 2021 18:57:19 -0800 IronPort-SDR: E6r2acAfikoZoeCVtkmazwacdIdWKH0U5cDYnntqqo84XpJoDMdliEcnbXB6sfHqVn5ZMJI0Rx 6BGYnosJkj9g== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.79,330,1602572400"; d="scan'208";a="347214514" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by orsmga003.jf.intel.com with ESMTP; 07 Jan 2021 18:57:19 -0800 Received: from fmsmsx602.amr.corp.intel.com (10.18.126.82) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Thu, 7 Jan 2021 18:57:18 -0800 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5 via Frontend Transport; Thu, 7 Jan 2021 18:57:18 -0800 Received: from NAM02-CY1-obe.outbound.protection.outlook.com (104.47.37.56) 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; Thu, 7 Jan 2021 18:57:17 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fJVHyGX8lR7riWE5qRV3uc4C3NIUdsnIz9vGqfnrrvkbHgnk3GCgXa7GGDotaPEazLQGZrAhTeCMwWP/TiOwxEEWEZG2QFc/ylz65RGw66yV2u/rImglFqdyNShaleeTCpl40kfO0EUSQ1AvpagVXNAoeMjuisdceHlU54lr+Czc7Fes6lss1WZ3CHDxlpmuwobOi009dze6sKRUbhP9VtWRCmm1sfulHhIaWlcNGYRm0q3vegMUXbEC2z1dq1Gwljpb80K6ptiOSft8AWrQ2hVq2qxWMIWLbOiNZxMqMI1Nbp8wt29nQJzrCLgJM0K9FGbp7F5EXn4rX7xtntDjIQ== 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=ifpxgasZ/E5F2gKR5VG0oHTp7MASQEv9acxxvEaH6rU=; b=SY/K0kiEoHtJaO2Y+GzJsVwQLehE7n/+7hDc2dZSitikJhzT5VM5Oycj7zop2vGPT6kJb/2rG3W0lp6S7xwlwJZNm5N22dsTcAY9BfRtJ9WpSiz40YKp3EWlrhnRqpeaav3hPHDJ7hNgjJBmlNEB33QwvG7QY3PH9eVy3tRvzQkTUMzdtB789C3d6uTyRMqNnQ4Vg/v7xQuZ4nZnMnEkbtQJSS4Kcncxw6YdOQ/5lw+0pE7PTHNttV7/Sv+UumyiysYnlI5Lvd9FIKVSnG9l8zaDrcY045inf3bTs6eFsX/YUAbsQv7wZ3RNUrf+a36pc6lzmE61tAuAGMWVppSXXA== 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=ifpxgasZ/E5F2gKR5VG0oHTp7MASQEv9acxxvEaH6rU=; b=MIEtiQ1iXX64W0+HIThWB93QOpsA6ALJt4LhAZXjQ7JF8o9MOk+bwVUYdzhoe0Cb5/guOjl9ggF9mc1iiYISIfy2L1YDb+Yc+emRNXZaBRLT8HbORKyelShg5S6NBS5XebNh2MVZpZ+WmtsT6PcApuMTcBO5hmlWr26hOl1com0= Received: from MN2PR11MB4063.namprd11.prod.outlook.com (2603:10b6:208:13f::22) by MN2PR11MB3758.namprd11.prod.outlook.com (2603:10b6:208:f6::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3721.19; Fri, 8 Jan 2021 02:57:16 +0000 Received: from MN2PR11MB4063.namprd11.prod.outlook.com ([fe80::74f2:ba7f:cb22:5272]) by MN2PR11MB4063.namprd11.prod.outlook.com ([fe80::74f2:ba7f:cb22:5272%7]) with mapi id 15.20.3721.024; Fri, 8 Jan 2021 02:57:16 +0000 From: "Xia, Chenbo" To: Maxime Coquelin , "dev@dpdk.org" , "Ding, Xuan" Thread-Topic: [PATCH v2 1/3] vhost: refactor postcopy region registration Thread-Index: AQHW42JzEwPJrqZfV0+LwXdx6TeYo6odDPhA Date: Fri, 8 Jan 2021 02:57:16 +0000 Message-ID: References: <20210105125728.102413-1-maxime.coquelin@redhat.com> <20210105125728.102413-2-maxime.coquelin@redhat.com> In-Reply-To: <20210105125728.102413-2-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.55.46.39] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 92d0dc41-9a15-4749-949c-08d8b3811b95 x-ms-traffictypediagnostic: MN2PR11MB3758: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:2733; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: bYXaYRv6YY216My1Y4xEgnZ2JBPmKraCaa24tP+EsdMcrCprhiZUQo2yPHWB5Lwur/Fyd4DtzlJAmbCMe5tkFgRG72D2mHnNg4cTPNJbgUxUFpYtNvigXCfcRVPwRUps1D96jEEZWG/U0RyZ+XsoswYAAE5bqsrZRNxfN1fRg35/R62tl3kdW7k8ZsWw0dqYfAWfhj1z5eEvwL58m6ZzTqZZdBP8M+hYRi/Z2gCXomj14uzKjbraNscy+CRQjkq4EmrIauLGlX9VowPNpygEy7q3JAjikxmF9k6xQswdduCxHQJc24Sl9OvxNw4jn7uxII0Qv4QY+4Y+Jux0JkAbkMGRWG/LvpEMrQNC278YWy8MDbObxmsQrEJbFBYb0tAiodmhjZGborCdyzJlQthC8g== 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:(4636009)(39860400002)(346002)(366004)(136003)(396003)(376002)(53546011)(55016002)(9686003)(7696005)(110136005)(64756008)(83380400001)(316002)(8676002)(8936002)(33656002)(478600001)(6636002)(71200400001)(52536014)(26005)(6506007)(186003)(66556008)(66446008)(5660300002)(66946007)(76116006)(66476007)(86362001)(2906002); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata: =?utf-8?B?WXlqekRtSG9CZy9ObzFpN1F3amJjckNvdW5rL1BtaHZ3cU05Z1ltRkdRUzEw?= =?utf-8?B?Mk5mVENTNFRRVk9RK0lJSjFzbDFvZHB1R2ZRcXZNMVc4OXNRNi9jZXRYSjlC?= =?utf-8?B?Q3FveTF2ZDI4TTFqZ3NWUUN3am1RSUp5Rkt4aEp1RVlaTzRqUHpTZWJzMFk4?= =?utf-8?B?VjlQQlJVVUhoOTcxM01pVFpoTXQyTlhQSDE2dEFzWG5CMkdyNXcvSk80YXV0?= =?utf-8?B?L1VZU2wxVS9mWHF4TTdEaklyYWV4djY5elRIVllOMDN1d3UvNWc0WURuRWVL?= =?utf-8?B?b0JvT2hlaDdmYXY5cDA4Ky85RkU3dlBZclE2WVpnNklCN05GTUV4R0kzUUdr?= =?utf-8?B?dVhXdm5uQmUwdmZCN2RENWVjWE5aQTF4Y1lwUlZqa0lSK1F5akppdE5UL2I2?= =?utf-8?B?eDBkb3dlYk95ZU0rR2UvQTRWbUM2M0tFcWNlV3VpeTliSjJvcWsrVkZ1S3VI?= =?utf-8?B?bDh6REJ3NEFoaTQxcXdWZkxRWFg5NWc5amhibjVuV1lnKzd6b0VPN296L3B5?= =?utf-8?B?ZU9DUmJoZEI4OGZ0a2VQMGlkUzR2a3pqUzZ4WDlIMncxZWFlb2RZTUtUVDgw?= =?utf-8?B?UGMzbDVya1FKQ1liZVNscUZ1YytZQ3lXZ0xqemQyV0xhNEhpOVRkWmZEd0dV?= =?utf-8?B?TEllejgzTUVzZWVaaklkRDVWTXBrYk5IODA1WjZVaWpVaEFwSFdOd1lEVE1C?= =?utf-8?B?QzRnZVdBS2lUUDlqdVRXcWp6QlpqclVrL0x1MGM0azFSN3AzWTgySFdBcXgx?= =?utf-8?B?bW1CZEdQUU1BR25RcXJQOGFTb2pIbFNVNHZBbDUrVk4xRGZJOVlzNjBsbFV6?= =?utf-8?B?U1NHVk41Z3JGT2lEYlhmZndKVlVQZ3FxMUFMMGpOL3dzK05jMmhNK0s3ZWxH?= =?utf-8?B?VTJabVdyVkFHMG5CdUZzUDEyZEFHbHhpQUlFWThYeGFQcWVmY3ZqMnc0TlF4?= =?utf-8?B?K1luMDFyVC93RHFhYXliY0ZnK1pRTFRpVVFZSWc3Z0t3SXYvVHVERWl4ZFVp?= =?utf-8?B?TFpLNmV3eXUxWHRYaFlsYW8yZmd0VkM2dHcvcW9ES05NUDZrZVJSZEF3QUlI?= =?utf-8?B?b25yWHVtMGtEbkFQeDJaR3RWdGthWHFMdVc3MnFtYzhwVTZKTWdpOHJYcm03?= =?utf-8?B?bk5hTkFuZndYWVV1WmRkdDZiZlBEelFiY1JjZ05rUmJ4ZWMxcnBNU0RKMHN4?= =?utf-8?B?TG5sOU9hODdXY3cxWFM1ejlHekE2LzN6dzUwdGhabHR0L2RqUUdWNk4xYmI2?= =?utf-8?B?ZytURHhOY0Faa2liS0pDeGU0b3hwejhKUmhVVzlQYjhwV003RVArQnQrU09q?= =?utf-8?Q?Th0O0crQxSJ7Q=3D?= 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: 92d0dc41-9a15-4749-949c-08d8b3811b95 X-MS-Exchange-CrossTenant-originalarrivaltime: 08 Jan 2021 02:57:16.6216 (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: fm+gdnmcGqThvsgwpVTQ7sED2UzOy4F+b8ymUY1HST2tNkkYgl96sqSkP6ICPKJhPHyUbctQhb13dH2LlIa/TQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR11MB3758 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH v2 1/3] vhost: refactor postcopy region registration 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" PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBNYXhpbWUgQ29xdWVsaW4gPG1h eGltZS5jb3F1ZWxpbkByZWRoYXQuY29tPg0KPiBTZW50OiBUdWVzZGF5LCBKYW51YXJ5IDUsIDIw MjEgODo1NyBQTQ0KPiBUbzogZGV2QGRwZGsub3JnOyBYaWEsIENoZW5ibyA8Y2hlbmJvLnhpYUBp bnRlbC5jb20+OyBEaW5nLCBYdWFuDQo+IDx4dWFuLmRpbmdAaW50ZWwuY29tPg0KPiBDYzogTWF4 aW1lIENvcXVlbGluIDxtYXhpbWUuY29xdWVsaW5AcmVkaGF0LmNvbT4NCj4gU3ViamVjdDogW1BB VENIIHYyIDEvM10gdmhvc3Q6IHJlZmFjdG9yIHBvc3Rjb3B5IHJlZ2lvbiByZWdpc3RyYXRpb24N Cj4gDQo+IFRoaXMgcGF0Y2ggbW92ZXMgdGhlIHJlZ2lzdHJhdGlvbiBvZiBtZW1vcnkgcmVnaW9u cyB0bw0KPiB1c2VyZmF1bHRmZCB0byBhIGRlZGljYXRlZCBmdW5jdGlvbiwgd2l0aCB0aGUgZ29h bCBvZg0KPiBzaW1wbGlmeWluZyBWSE9TVF9VU0VSX1NFVF9NRU1fVEFCTEUgcmVxdWVzdCBoYW5k bGluZw0KPiBmdW5jdGlvbi4NCj4gDQo+IFNpZ25lZC1vZmYtYnk6IE1heGltZSBDb3F1ZWxpbiA8 bWF4aW1lLmNvcXVlbGluQHJlZGhhdC5jb20+DQo+IC0tLQ0KPiAgbGliL2xpYnJ0ZV92aG9zdC92 aG9zdF91c2VyLmMgfCA3NyArKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLQ0KPiAg MSBmaWxlIGNoYW5nZWQsIDQ2IGluc2VydGlvbnMoKyksIDMxIGRlbGV0aW9ucygtKQ0KPiANCj4g ZGlmZiAtLWdpdCBhL2xpYi9saWJydGVfdmhvc3Qvdmhvc3RfdXNlci5jIGIvbGliL2xpYnJ0ZV92 aG9zdC92aG9zdF91c2VyLmMNCj4gaW5kZXggNDVjOGFjMDlkYS4uYjZjOGUyZTE3ZiAxMDA2NDQN Cj4gLS0tIGEvbGliL2xpYnJ0ZV92aG9zdC92aG9zdF91c2VyLmMNCj4gKysrIGIvbGliL2xpYnJ0 ZV92aG9zdC92aG9zdF91c2VyLmMNCj4gQEAgLTk5OCw2ICs5OTgsNDkgQEAgdmhvc3RfbWVtb3J5 X2NoYW5nZWQoc3RydWN0IFZob3N0VXNlck1lbW9yeSAqbmV3LA0KPiAgCXJldHVybiBmYWxzZTsN Cj4gIH0NCj4gDQo+ICsjaWZkZWYgUlRFX0xJQlJURV9WSE9TVF9QT1NUQ09QWQ0KPiArc3RhdGlj IGludA0KPiArdmhvc3RfdXNlcl9wb3N0Y29weV9yZWdpb25fcmVnaXN0ZXIoc3RydWN0IHZpcnRp b19uZXQgKmRldiwNCj4gKwkJc3RydWN0IHJ0ZV92aG9zdF9tZW1fcmVnaW9uICpyZWcpDQo+ICt7 DQo+ICsJc3RydWN0IHVmZmRpb19yZWdpc3RlciByZWdfc3RydWN0Ow0KPiArDQo+ICsJLyoNCj4g KwkgKiBMZXQncyByZWdpc3RlciBhbGwgdGhlIG1tYXAnZWQgYXJlYSB0byBlbnN1cmUNCj4gKwkg KiBhbGlnbm1lbnQgb24gcGFnZSBib3VuZGFyeS4NCj4gKwkgKi8NCj4gKwlyZWdfc3RydWN0LnJh bmdlLnN0YXJ0ID0gKHVpbnQ2NF90KSh1aW50cHRyX3QpcmVnLT5tbWFwX2FkZHI7DQo+ICsJcmVn X3N0cnVjdC5yYW5nZS5sZW4gPSByZWctPm1tYXBfc2l6ZTsNCj4gKwlyZWdfc3RydWN0Lm1vZGUg PSBVRkZESU9fUkVHSVNURVJfTU9ERV9NSVNTSU5HOw0KPiArDQo+ICsJaWYgKGlvY3RsKGRldi0+ cG9zdGNvcHlfdWZkLCBVRkZESU9fUkVHSVNURVIsDQo+ICsJCQkJJnJlZ19zdHJ1Y3QpKSB7DQo+ ICsJCVZIT1NUX0xPR19DT05GSUcoRVJSLCAiRmFpbGVkIHRvIHJlZ2lzdGVyIHVmZCBmb3IgcmVn aW9uICINCj4gKwkJCQkiJSIgUFJJeDY0ICIgLSAlIiBQUkl4NjQgIiAodWZkID0gJWQpICVzXG4i LA0KPiArCQkJCSh1aW50NjRfdClyZWdfc3RydWN0LnJhbmdlLnN0YXJ0LA0KPiArCQkJCSh1aW50 NjRfdClyZWdfc3RydWN0LnJhbmdlLnN0YXJ0ICsNCj4gKwkJCQkodWludDY0X3QpcmVnX3N0cnVj dC5yYW5nZS5sZW4gLSAxLA0KPiArCQkJCWRldi0+cG9zdGNvcHlfdWZkLA0KPiArCQkJCXN0cmVy cm9yKGVycm5vKSk7DQo+ICsJCXJldHVybiAtMTsNCj4gKwl9DQo+ICsNCj4gKwlWSE9TVF9MT0df Q09ORklHKElORk8sICJcdCB1c2VyZmF1bHRmZCByZWdpc3RlcmVkIGZvciByYW5nZSA6ICUiIFBS SXg2NA0KPiAiIC0gJSIgUFJJeDY0ICJcbiIsDQo+ICsJCQkodWludDY0X3QpcmVnX3N0cnVjdC5y YW5nZS5zdGFydCwNCj4gKwkJCSh1aW50NjRfdClyZWdfc3RydWN0LnJhbmdlLnN0YXJ0ICsNCj4g KwkJCSh1aW50NjRfdClyZWdfc3RydWN0LnJhbmdlLmxlbiAtIDEpOw0KPiArDQo+ICsJcmV0dXJu IDA7DQo+ICt9DQo+ICsjZWxzZQ0KPiArc3RhdGljIGludA0KPiArdmhvc3RfdXNlcl9wb3N0Y29w eV9yZWdpb25fcmVnaXN0ZXIoc3RydWN0IHZpcnRpb19uZXQgKmRldiBfX3J0ZV91bnVzZWQsDQo+ ICsJCXN0cnVjdCBydGVfdmhvc3RfbWVtX3JlZ2lvbiAqcmVnIF9fcnRlX3VudXNlZCkNCj4gK3sN Cj4gKwlyZXR1cm4gLTE7DQo+ICt9DQo+ICsjZW5kaWYNCj4gKw0KPiAgc3RhdGljIGludA0KPiAg dmhvc3RfdXNlcl9zZXRfbWVtX3RhYmxlKHN0cnVjdCB2aXJ0aW9fbmV0ICoqcGRldiwgc3RydWN0 IFZob3N0VXNlck1zZyAqbXNnLA0KPiAgCQkJaW50IG1haW5fZmQpDQo+IEBAIC0xMjA5LDM4ICsx MjUyLDEwIEBAIHZob3N0X3VzZXJfc2V0X21lbV90YWJsZShzdHJ1Y3QgdmlydGlvX25ldCAqKnBk ZXYsDQo+IHN0cnVjdCBWaG9zdFVzZXJNc2cgKm1zZywNCj4gIAkJfQ0KPiANCj4gIAkJLyogTm93 IHVzZXJmYXVsdCByZWdpc3RlciBhbmQgd2UgY2FuIHVzZSB0aGUgbWVtb3J5ICovDQo+IC0JCWZv ciAoaSA9IDA7IGkgPCBtZW1vcnktPm5yZWdpb25zOyBpKyspIHsNCj4gLSNpZmRlZiBSVEVfTElC UlRFX1ZIT1NUX1BPU1RDT1BZDQo+IC0JCQlyZWcgPSAmZGV2LT5tZW0tPnJlZ2lvbnNbaV07DQo+ IC0JCQlzdHJ1Y3QgdWZmZGlvX3JlZ2lzdGVyIHJlZ19zdHJ1Y3Q7DQo+IC0NCj4gLQkJCS8qDQo+ IC0JCQkgKiBMZXQncyByZWdpc3RlciBhbGwgdGhlIG1tYXAnZWQgYXJlYSB0byBlbnN1cmUNCj4g LQkJCSAqIGFsaWdubWVudCBvbiBwYWdlIGJvdW5kYXJ5Lg0KPiAtCQkJICovDQo+IC0JCQlyZWdf c3RydWN0LnJhbmdlLnN0YXJ0ID0NCj4gLQkJCQkodWludDY0X3QpKHVpbnRwdHJfdClyZWctPm1t YXBfYWRkcjsNCj4gLQkJCXJlZ19zdHJ1Y3QucmFuZ2UubGVuID0gcmVnLT5tbWFwX3NpemU7DQo+ IC0JCQlyZWdfc3RydWN0Lm1vZGUgPSBVRkZESU9fUkVHSVNURVJfTU9ERV9NSVNTSU5HOw0KPiAt DQo+IC0JCQlpZiAoaW9jdGwoZGV2LT5wb3N0Y29weV91ZmQsIFVGRkRJT19SRUdJU1RFUiwNCj4g LQkJCQkJCSZyZWdfc3RydWN0KSkgew0KPiAtCQkJCVZIT1NUX0xPR19DT05GSUcoRVJSLA0KPiAt CQkJCQkiRmFpbGVkIHRvIHJlZ2lzdGVyIHVmZCBmb3IgcmVnaW9uICVkOiAodWZkDQo+ID0gJWQp ICVzXG4iLA0KPiAtCQkJCQlpLCBkZXYtPnBvc3Rjb3B5X3VmZCwNCj4gLQkJCQkJc3RyZXJyb3Io ZXJybm8pKTsNCj4gKwkJZm9yIChpID0gMDsgaSA8IG1lbW9yeS0+bnJlZ2lvbnM7IGkrKykNCj4g KwkJCWlmICh2aG9zdF91c2VyX3Bvc3Rjb3B5X3JlZ2lvbl9yZWdpc3RlcihkZXYsDQo+ICsJCQkJ CQkmZGV2LT5tZW0tPnJlZ2lvbnNbaV0pIDwgMCkNCj4gIAkJCQlnb3RvIGZyZWVfbWVtX3RhYmxl Ow0KPiAtCQkJfQ0KPiAtCQkJVkhPU1RfTE9HX0NPTkZJRyhJTkZPLA0KPiAtCQkJCSJcdCB1c2Vy ZmF1bHRmZCByZWdpc3RlcmVkIGZvciByYW5nZSA6ICINCj4gLQkJCQkiJSIgUFJJeDY0ICIgLSAl IiBQUkl4NjQgIlxuIiwNCj4gLQkJCQkodWludDY0X3QpcmVnX3N0cnVjdC5yYW5nZS5zdGFydCwN Cj4gLQkJCQkodWludDY0X3QpcmVnX3N0cnVjdC5yYW5nZS5zdGFydCArDQo+IC0JCQkJKHVpbnQ2 NF90KXJlZ19zdHJ1Y3QucmFuZ2UubGVuIC0gMSk7DQo+IC0jZWxzZQ0KPiAtCQkJZ290byBmcmVl X21lbV90YWJsZTsNCj4gLSNlbmRpZg0KPiAtCQl9DQo+ICAJfQ0KPiANCj4gIAlmb3IgKGkgPSAw OyBpIDwgZGV2LT5ucl92cmluZzsgaSsrKSB7DQo+IC0tDQo+IDIuMjkuMg0KDQpSZXZpZXdlZC1i eTogQ2hlbmJvIFhpYSA8Y2hlbmJvLnhpYUBpbnRlbC5jb20+DQo=