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 03BF3A0C43; Tue, 16 Nov 2021 09:24:12 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id CAD0740DF5; Tue, 16 Nov 2021 09:24:12 +0100 (CET) Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by mails.dpdk.org (Postfix) with ESMTP id 65A34407FF for ; Tue, 16 Nov 2021 09:24:11 +0100 (CET) X-IronPort-AV: E=McAfee;i="6200,9189,10169"; a="233588286" X-IronPort-AV: E=Sophos;i="5.87,238,1631602800"; d="scan'208";a="233588286" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Nov 2021 00:24:10 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.87,238,1631602800"; d="scan'208";a="645389269" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by fmsmga001.fm.intel.com with ESMTP; 16 Nov 2021 00:24:09 -0800 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) by ORSMSX602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Tue, 16 Nov 2021 00:24:09 -0800 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) by ORSMSX612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Tue, 16 Nov 2021 00:24:08 -0800 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12 via Frontend Transport; Tue, 16 Nov 2021 00:24:08 -0800 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (104.47.56.170) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.12; Tue, 16 Nov 2021 00:24:06 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Vfz2jPUeNHgALGPyb4n4IBBbnDxD7QB7xoEoVv7Y4Ev0gTe3qD6WAE8l9q2sGXzsfWtToPziC/5SGF0JhbBFRiHUVG1QGgZnUkdVttKgv96K+JkUZu092pbAhvnUUhNqOih4UUCyr9z9QByBMIwDRxmfBj4fmpJAYit+FS0FL+Rds1XJtq4tpXYW3wNVqxWEap+ToqJlEGc1ppxvgeSHhvZHAAtY9P2gqXlLc+Fp6EJMCxBp3yhRdNCe0xlEsmWpD2Mk7J+hMLCI/NhlrP2lH6te+oJEFgBXgS3qfpo5RYE4HY1WhVJFSr3UCBzq9aDmiwBfRtwCNrwtbtY5ObRskw== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=wQDi1iatFLbhpH8O6Oq7ThC4psTq6ZTrAjGYCb2tZlw=; b=m+X4X+T5QjurzecB/JLC1fiZnYa1qb9rhZDcXV2kpmnCfBe0csNHebQ+gfPfbSPy9T20j+3MC/em1NzomknzpQygSXNLF9lQGTWvUqGjk8ZVBfXCESTgN3HgNQRktHLEZoYtV+akzdu63kOgVb/WcSqpzBX3dBEngwfH0RzjKxU8gRpTHAWQROMhFeCiQlH8OUeU/d2xaW3nKT/ZkqJxSJPH8zvd2jgiC+B2lsc4dfKlLJuBnskNxNH0gf//h0nuiZ6Wp64PSFuiWjf2X2se8n6R0yX10ijuo8ScmrYZN2TNWBvSzwpEDBDzLJZp0NyolsbvQyEA/Af0058ZhIXhxg== 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=wQDi1iatFLbhpH8O6Oq7ThC4psTq6ZTrAjGYCb2tZlw=; b=OfjC53mbciuE294nZOxBbip+ngs8NAlj902pUTByJC9QX78YZqwQMPeQ5VX8AkTZ+2ZqAWgh+91MsrmHbMAmV5dJULLqrZcEbSJKfu9sYIGrSc/3zBK3+K0vA6UftzDG0GOFOA4kmOLyjbR7NLCdHftbfiegRku17YYVM6bqmMw= Received: from BN9PR11MB5513.namprd11.prod.outlook.com (2603:10b6:408:102::11) by BN6PR1101MB2179.namprd11.prod.outlook.com (2603:10b6:405:52::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4690.26; Tue, 16 Nov 2021 08:24:05 +0000 Received: from BN9PR11MB5513.namprd11.prod.outlook.com ([fe80::2d2f:59c2:c16d:fe6b]) by BN9PR11MB5513.namprd11.prod.outlook.com ([fe80::2d2f:59c2:c16d:fe6b%9]) with mapi id 15.20.4690.027; Tue, 16 Nov 2021 08:24:04 +0000 From: "Ding, Xuan" To: "Xia, Chenbo" , "maxime.coquelin@redhat.com" CC: "dev@dpdk.org" , "Hu, Jiayu" , "Wang, YuanX" , "He, Xingguang" Subject: RE: [PATCH v4] vhost: fix physical address mapping Thread-Topic: [PATCH v4] vhost: fix physical address mapping Thread-Index: AQHX2h7RUSPDFbrHm0GM58w38z4oHawFyD8AgAAHyxA= Date: Tue, 16 Nov 2021 08:24:04 +0000 Message-ID: References: <20211110054630.61524-1-xuan.ding@intel.com> <20211115123222.848-1-xuan.ding@intel.com> In-Reply-To: Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 3dad608f-dbd7-40f2-31e2-08d9a8da73c4 x-ms-traffictypediagnostic: BN6PR1101MB2179: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:7219; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: vNfW4sjS642G78zzQecYH9NuBKNiCG3TMdGo6NpQnqJbuMtoDxA/8Db42yrV43BJGxY9H1upIhs6VMqfgrrUoJDq6Qpbmr3SLjSWQ5FIfJsl6vvESVoKymq36S3gZRlI/iPEtLUOX1okJJkVdL7Q2+A8S1CTcGo84h8ji61l39/9W0QJGgFMKjztHFQGcU8IZ6YPVj9dr4onJZvX+Qzr7IsAe0MN4WjSEfQR9xmrw7YMy5SI5gGkJnJCirZkspSgIeK2idyLUAGniZRP9kc7cMpuMb4XFub6aMZVJYEYHrqxr23allXV4JHvfgj/EwjG2bo+T1A0sQENjOihKxZJpsBj/vWU4bimcw5nzvTL3erX2TAUhP7Nf036alNQNcRgJsT5eI4RpKHA/RjbAZBRIO+6Q3OGabhJZQqRFSfk3wjbtn5tKdfSkBczw4yRy9VRBhwIKPUxy7HoaOg2uBOxRrT0VTi9IetfFTUsmK/pT1M/hpMiP2ddCHGxG6GyLO3DMBnSr78KDRdxnP4SnSMgBvfQgqyScPIau/YonJhSbJjeMm9CZWTOOUTngvilNm2rLlnEJFqfPljGWn7U+A4eXGmlCWgl9ksIJcAAM5YzE3izqYFJPrI+usGwgJWBxDJbiBL14apGb8SM1t5tmu3RbtqmApgwjn2xp4KTEMhgRUX/rH7Jt2nF1autleG0EMKr5+EAaantZbWbkr7CI5ytxw== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BN9PR11MB5513.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(366004)(7696005)(4326008)(55016002)(83380400001)(5660300002)(122000001)(82960400001)(316002)(9686003)(6506007)(38100700002)(107886003)(53546011)(52536014)(76116006)(33656002)(186003)(64756008)(66476007)(54906003)(66446008)(71200400001)(38070700005)(66556008)(86362001)(66946007)(2906002)(26005)(8676002)(110136005)(8936002)(508600001); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?dXR4ck1RWXF4aTMwdXM3emNOc2tBV1BndzJWMU1WWjhEcGFORzRyUDd3Sysv?= =?utf-8?B?Z0tPS01xWWl4NDR4enZpSnJFQjZpWUkwYlkwbXdQYjJYaVdTUnZLbTBGcEtB?= =?utf-8?B?ck9wVVE3T21rV2Jxd0Iyck0vdFFKZUZCQlNZR2haUmszL21iSThFbkpTZjdP?= =?utf-8?B?VDQ4SXBZMnp3TjY1em5YSGhYODBSZWpXM1o4dm10aHpCQUxuY3pocm9SUTJr?= =?utf-8?B?UEVHUFhFeFFkUFI0cytPSVB3TWp1ODArb3F2SzlOeHFBMGw5cTgxV25UNnVT?= =?utf-8?B?UFZqMDcxN25HM1FZTjhqb0VKREZINjN6QW5acXF4VFM4WEV3cjBlUUxnV2hp?= =?utf-8?B?bkRYYUhmREYxRHJhY2dzbnlGRUg0eGFFVWRjMGpyUURMeXhJMFcxcFBaUG14?= =?utf-8?B?OFpZekFqTWVGZDZCamZ5NTBBTUlhMXp6dmJLVVFLaEVTSnEvbS9rUFZyQ0Rp?= =?utf-8?B?RUFIREtJZEdqUkc5dTV3K0IyYUNES1VSRVVjMGpZNFh6Vi9Mc0poSkdHOG4r?= =?utf-8?B?Z0ZTN2NvVEFlUW1raDlJWW5aZVB4ck9obzhybU8yUzhwZWoxRjdQSUtwTUV1?= =?utf-8?B?VWhhaTdYbTQ0N1Y2RG9RTzJNWjJ5R25sN1JNMjdEQml2cGZyMXNPdjhRTnM0?= =?utf-8?B?UXQ3OFJkdUNTd2JPSXJKeEpnc1F1c00rWW5vY1FxcmFFeUxkMXlRTUM0bm1D?= =?utf-8?B?WWhndDRjVjJzdVRTRHFOZkt0RFB6ZzlmNVUxaHVBSzVkTHRLb3RVK1JXVlBS?= =?utf-8?B?YkZBMXlGRDZPMTFoa0ltcytncHdlRlpzTU5nV1M0Wk1meXlrWE93SFc5cGlS?= =?utf-8?B?ckc4TVRXNSszeWNsS2Z5TTFoWXlmMTR4YzFKKzJpT1BGTllHTlppeXkvcFpr?= =?utf-8?B?dVdqUzhqZ0ZKZVNxUngyVWFadkc5dHFTd01sMFA2K0NmcnZPN2Y5S1ZHUVhM?= =?utf-8?B?T1BkTzhrREx6eEVUZ1liOWp6VElvYzI2N0xLQ2ppSHJZS0xTRHVQR0hxZ1Fn?= =?utf-8?B?TDhnZC9samV1bWRvZXd2RW9JeW9IZUpEUklaR1hsQU9CWWNvWXFDMzlSNXg3?= =?utf-8?B?bnI0MzIvcGhhRDVZWW44VTdBVUtwc1ZITklkZHhlRmNwQThwMDZwdngvckZh?= =?utf-8?B?Z1h1NXBEdFVyOFplWGJ4VWNDSzV1M0tPeEhtVWxuMUtiOUs0aEg5OFFwTFZu?= =?utf-8?B?d1Y3alBZMTJ2WUVPTkpiZjJpS1NRT0VWMDRVVld0ZWZnRE5ocE9WSEJFS09x?= =?utf-8?B?aGtvWG5RbVhUNFhzTFZDL3V2S2tsS3dCNjFTd0FHUi9lelBORGhuTGdkbVIv?= =?utf-8?B?cDZDQUV3MTFHTGVNcHBYWDZmNUErK1A3eDBKVjFwbmdwYUtpVXIyZDdOVHlY?= =?utf-8?B?MG1LZGZFYkI5OU5NUmxQNWF4a1dZMmJUaU1BM2oyK1drNFRhNFVhellqc0M0?= =?utf-8?B?aWkxRWJuSmtNUU5acWlWb0VFTmFjdVYrZzFwd3o1MmV4eng0SUVZQXgzSm02?= =?utf-8?B?dmZUKzlVR3Z6SUkrZkZIRWl1MC9YMU13YnlyMmVVS1VDSHV1OGJXUVdmTkVr?= =?utf-8?B?aFdzR244TjgrVHVtSXJwU1RNWXF2U1p5K3lVQlpVK09MTVpDNzZqVVNtc1Z4?= =?utf-8?B?VnZjZmYwSEljcGpBWDNjeTZrSjdxbXFxek0wTVRhaVRIYmpGQU0rUGx6a29S?= =?utf-8?B?bFIvbTBnYXRRTXBqU1k5YWswVWRYdWtlRERFYVBTelhMQXdVcEEvUDN1VVRE?= =?utf-8?B?T0RyUkFBUTRnc1hyaGNORTRBUExCUmt4bjlhRUYrSi83aTdsRXU0RGpVd1Zo?= =?utf-8?B?Tzc4VmtLbXl4NndBNTJXeFc1TnVNNmIySWZEZ1JqeUVnbG5jNVBuck9nUnhX?= =?utf-8?B?djBSdUh3Mkg1TEtYM1hQT044QUIrak1WOHhna3JjeVhwcFhIV3FDMWpidGpW?= =?utf-8?B?VmQrN3YzRnBpd2pFSTdxVWRyTzRiYUZiSGVaNWdJQTFSaGw2Nlg0OXFSMWd5?= =?utf-8?B?SXFYNmh3bnRITHFpcVgzalJLOVFMWXlvOHVHWEFaOWt6MGJhTFl6amtTRHM1?= =?utf-8?B?cXVueUpRejFyRFdjUXBQNUFHTjVKUmp4ZG0zeFdPYW1RK0s0MHFVMTZ4dm1B?= =?utf-8?B?OW5CSC9MaXNHTEJaQjdIRng2S2lNRlRPT213eTFPOXd1Z3JJN2hZMitHOXZH?= =?utf-8?Q?3q7f48oR3VvUzcXHM32FasI=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: BN9PR11MB5513.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3dad608f-dbd7-40f2-31e2-08d9a8da73c4 X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Nov 2021 08:24:04.6348 (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: KTCWzSh9fLe0pcuOGSGul+UzSlgqSq0y4EAmzwR0RSLvHVAT6gSF6vl0d9qfcwLRpGyvMP744Oo4jQdNestnaw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR1101MB2179 X-OriginatorOrg: intel.com 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 SGkgQ2hlbmJvLA0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IFhpYSwg Q2hlbmJvIDxjaGVuYm8ueGlhQGludGVsLmNvbT4NCj4gU2VudDogMjAyMeW5tDEx5pyIMTbml6Ug MTU6NDgNCj4gVG86IERpbmcsIFh1YW4gPHh1YW4uZGluZ0BpbnRlbC5jb20+OyBtYXhpbWUuY29x dWVsaW5AcmVkaGF0LmNvbQ0KPiBDYzogZGV2QGRwZGsub3JnOyBIdSwgSmlheXUgPGppYXl1Lmh1 QGludGVsLmNvbT47IFdhbmcsIFl1YW5YDQo+IDx5dWFueC53YW5nQGludGVsLmNvbT47IEhlLCBY aW5nZ3VhbmcgPHhpbmdndWFuZy5oZUBpbnRlbC5jb20+DQo+IFN1YmplY3Q6IFJFOiBbUEFUQ0gg djRdIHZob3N0OiBmaXggcGh5c2ljYWwgYWRkcmVzcyBtYXBwaW5nDQo+IA0KPiA+IC0tLS0tT3Jp Z2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gRnJvbTogRGluZywgWHVhbiA8eHVhbi5kaW5nQGludGVs LmNvbT4NCj4gPiBTZW50OiBNb25kYXksIE5vdmVtYmVyIDE1LCAyMDIxIDg6MzIgUE0NCj4gPiBU bzogbWF4aW1lLmNvcXVlbGluQHJlZGhhdC5jb207IFhpYSwgQ2hlbmJvIDxjaGVuYm8ueGlhQGlu dGVsLmNvbT4NCj4gPiBDYzogZGV2QGRwZGsub3JnOyBIdSwgSmlheXUgPGppYXl1Lmh1QGludGVs LmNvbT47IFdhbmcsIFl1YW5YDQo+ID4gPHl1YW54LndhbmdAaW50ZWwuY29tPjsgSGUsIFhpbmdn dWFuZyA8eGluZ2d1YW5nLmhlQGludGVsLmNvbT47IERpbmcsDQo+ID4gWHVhbiA8eHVhbi5kaW5n QGludGVsLmNvbT4NCj4gPiBTdWJqZWN0OiBbUEFUQ0ggdjRdIHZob3N0OiBmaXggcGh5c2ljYWwg YWRkcmVzcyBtYXBwaW5nDQo+ID4NCj4gPiBXaGVuIGNob29zaW5nIElPVkEgYXMgUEEgbW9kZSwg SU9WQSBpcyBsaWtlbHkgdG8gYmUgZGlzY29udGludW91cywNCj4gPiB3aGljaCByZXF1aXJlcyBw YWdlIGJ5IHBhZ2UgbWFwcGluZyBmb3IgRE1BIGRldmljZXMuIFRvIGJlIGNvbnNpc3RlbnQsDQo+ ID4gdGhpcyBwYXRjaCBpbXBsZW1lbnRzIHBhZ2UgYnkgcGFnZSBtYXBwaW5nIGluc3RlYWQgb2Yg bWFwcGluZyBhdCB0aGUNCj4gPiByZWdpb24gZ3JhbnVsYXJpdHkgZm9yIGJvdGggSU9WQSBhcyBW QSBhbmQgUEEgbW9kZS4NCj4gPg0KPiA+IEZpeGVzOiA3YzYxZmEwOGI3MTYgKCJ2aG9zdDogZW5h YmxlIElPTU1VIGZvciBhc3luYyB2aG9zdCIpDQo+ID4NCj4gPiBTaWduZWQtb2ZmLWJ5OiBYdWFu IERpbmcgPHh1YW4uZGluZ0BpbnRlbC5jb20+DQo+ID4gLS0tDQo+ID4gdjQ6DQo+ID4gKiBSZW1v dmUgdW5uZXNzYXJ5IEVOT1NVUCBjaGVjay4NCj4gPiAqIEFkanVzdCByZXR1cm4gdHlwZS4NCj4g Pg0KPiA+IHYzOg0KPiA+ICogRml4IGNvbW1pdCB0aXRsZS4NCj4gPg0KPiA+IHYyOg0KPiA+ICog Rml4IGEgZm9ybWF0IGlzc3VlLg0KPiA+IC0tLQ0KPiA+ICBsaWIvdmhvc3Qvdmhvc3QuaCAgICAg IHwgICAxICsNCj4gPiAgbGliL3Zob3N0L3Zob3N0X3VzZXIuYyB8IDExMQ0KPiA+ICsrKysrKysr KysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+ID4gIDIgZmlsZXMgY2hhbmdlZCwg NTQgaW5zZXJ0aW9ucygrKSwgNTggZGVsZXRpb25zKC0pDQo+ID4NCj4gPiBkaWZmIC0tZ2l0IGEv bGliL3Zob3N0L3Zob3N0LmggYi9saWIvdmhvc3Qvdmhvc3QuaCBpbmRleA0KPiA+IDcwODVlMDg4 NWMuLmQyNDY1MzhjYTUgMTAwNjQ0DQo+ID4gLS0tIGEvbGliL3Zob3N0L3Zob3N0LmgNCj4gPiAr KysgYi9saWIvdmhvc3Qvdmhvc3QuaA0KPiA+IEBAIC0zNTUsNiArMzU1LDcgQEAgc3RydWN0IHZy aW5nX3BhY2tlZF9kZXNjX2V2ZW50IHsgIHN0cnVjdA0KPiA+IGd1ZXN0X3BhZ2Ugew0KPiA+ICAJ dWludDY0X3QgZ3Vlc3RfcGh5c19hZGRyOw0KPiA+ICAJdWludDY0X3QgaG9zdF9waHlzX2FkZHI7 DQo+IA0KPiBUaGlzIG5hbWUgY29uZnVzZWQgbWUgd2hlbiBkb2luZyByZXZpZXc6IHRoaXMgc2hv dWxkIGJlIGhvc3RfaW92YS4NCj4gDQo+IENvdWxkIHlvdSBoZWxwIHJlbmFtZSBpdCBpbiB0aGUg cGF0Y2g/DQogDQpZZXMsIHRoZSBob3N0X3BoeXNfYWRkciBpcyBhIGlvdmEsIGl0IGRlcGVuZHMg b24gdGhlIERQREsgSU9WQSBtb2RlLg0KDQo+IA0KPiA+ICsJdWludDY0X3QgaG9zdF91c2VyX2Fk ZHI7DQo+ID4gIAl1aW50NjRfdCBzaXplOw0KPiA+ICB9Ow0KPiA+DQo+ID4gZGlmZiAtLWdpdCBh L2xpYi92aG9zdC92aG9zdF91c2VyLmMgYi9saWIvdmhvc3Qvdmhvc3RfdXNlci5jIGluZGV4DQo+ ID4gYTc4MTM0NmM0ZC4uMGE5ZGMzMzUwZiAxMDA2NDQNCj4gPiAtLS0gYS9saWIvdmhvc3Qvdmhv c3RfdXNlci5jDQo+ID4gKysrIGIvbGliL3Zob3N0L3Zob3N0X3VzZXIuYw0KPiA+IEBAIC0xNDMs NTcgKzE0Myw1NiBAQCBnZXRfYmxrX3NpemUoaW50IGZkKQ0KPiA+ICAJcmV0dXJuIHJldCA9PSAt MSA/ICh1aW50NjRfdCktMSA6ICh1aW50NjRfdClzdGF0LnN0X2Jsa3NpemU7ICB9DQo+ID4NCj4g PiAtc3RhdGljIGludA0KPiA+IC1hc3luY19kbWFfbWFwKHN0cnVjdCBydGVfdmhvc3RfbWVtX3Jl Z2lvbiAqcmVnaW9uLCBib29sIGRvX21hcCkNCj4gPiArc3RhdGljIHZvaWQNCj4gPiArYXN5bmNf ZG1hX21hcChzdHJ1Y3QgdmlydGlvX25ldCAqZGV2LCBib29sIGRvX21hcCkNCj4gPiAgew0KPiA+ IC0JdWludDY0X3QgaG9zdF9pb3ZhOw0KPiA+ICAJaW50IHJldCA9IDA7DQo+ID4gLQ0KPiA+IC0J aG9zdF9pb3ZhID0gcnRlX21lbV92aXJ0MmlvdmEoKHZvaWQgKikodWludHB0cl90KXJlZ2lvbi0N Cj4gPmhvc3RfdXNlcl9hZGRyKTsNCj4gPiArCXVpbnQzMl90IGk7DQo+ID4gKwlzdHJ1Y3QgZ3Vl c3RfcGFnZSAqcGFnZTsNCj4gPiAgCWlmIChkb19tYXApIHsNCj4gPiAtCQkvKiBBZGQgbWFwcGVk IHJlZ2lvbiBpbnRvIHRoZSBkZWZhdWx0IGNvbnRhaW5lciBvZiBEUERLLiAqLw0KPiA+IC0JCXJl dCA9DQo+IHJ0ZV92ZmlvX2NvbnRhaW5lcl9kbWFfbWFwKFJURV9WRklPX0RFRkFVTFRfQ09OVEFJ TkVSX0ZELA0KPiA+IC0JCQkJCQkgcmVnaW9uLT5ob3N0X3VzZXJfYWRkciwNCj4gPiAtCQkJCQkJ IGhvc3RfaW92YSwNCj4gPiAtCQkJCQkJIHJlZ2lvbi0+c2l6ZSk7DQo+ID4gLQkJaWYgKHJldCkg ew0KPiA+IC0JCQkvKg0KPiA+IC0JCQkgKiBETUEgZGV2aWNlIG1heSBiaW5kIHdpdGgga2VybmVs IGRyaXZlciwgaW4gdGhpcyBjYXNlLA0KPiA+IC0JCQkgKiB3ZSBkb24ndCBuZWVkIHRvIHByb2dy YW0gSU9NTVUgbWFudWFsbHkuDQo+IEhvd2V2ZXIsIGlmIG5vDQo+ID4gLQkJCSAqIGRldmljZSBp cyBib3VuZCB3aXRoIHZmaW8vdWlvIGluIERQREssIGFuZCB2ZmlvIGtlcm5lbA0KPiA+IC0JCQkg KiBtb2R1bGUgaXMgbG9hZGVkLCB0aGUgQVBJIHdpbGwgc3RpbGwgYmUgY2FsbGVkIGFuZA0KPiBy ZXR1cm4NCj4gPiAtCQkJICogd2l0aCBFTk9ERVYvRU5PU1VQLg0KPiA+IC0JCQkgKg0KPiA+IC0J CQkgKiBEUERLIHZmaW8gb25seSByZXR1cm5zIEVOT0RFVi9FTk9TVVAgaW4gdmVyeQ0KPiBzaW1p bGFyDQo+ID4gLQkJCSAqIHNpdHVhdGlvbnModmZpbyBlaXRoZXIgdW5zdXBwb3J0ZWQsIG9yIHN1 cHBvcnRlZA0KPiA+IC0JCQkgKiBidXQgbm8gZGV2aWNlcyBmb3VuZCkuIEVpdGhlciB3YXksIG5v IG1hcHBpbmdzIGNvdWxkDQo+IGJlDQo+ID4gLQkJCSAqIHBlcmZvcm1lZC4gV2UgdHJlYXQgaXQg YXMgbm9ybWFsIGNhc2UgaW4gYXN5bmMgcGF0aC4NCj4gPiAtCQkJICovDQo+ID4gLQkJCWlmIChy dGVfZXJybm8gPT0gRU5PREVWIHx8IHJ0ZV9lcnJubyA9PSBFTk9UU1VQKQ0KPiA+IC0JCQkJcmV0 dXJuIDA7DQo+ID4gLQ0KPiA+IC0JCQlWSE9TVF9MT0dfQ09ORklHKEVSUiwgIkRNQSBlbmdpbmUg bWFwIGZhaWxlZFxuIik7DQo+ID4gLQkJCS8qIERNQSBtYXBwaW5nIGVycm9ycyB3b24ndCBzdG9w DQo+IFZIU1RfVVNFUl9TRVRfTUVNX1RBQkxFLiAqLw0KPiA+IC0JCQlyZXR1cm4gMDsNCj4gPiAr CQlmb3IgKGkgPSAwOyBpIDwgZGV2LT5ucl9ndWVzdF9wYWdlczsgaSsrKSB7DQo+ID4gKwkJCXBh Z2UgPSAmZGV2LT5ndWVzdF9wYWdlc1tpXTsNCj4gPiArCQkJcmV0ID0NCj4gPiBydGVfdmZpb19j b250YWluZXJfZG1hX21hcChSVEVfVkZJT19ERUZBVUxUX0NPTlRBSU5FUl9GRCwNCj4gPiArCQkJ CQkJCSBwYWdlLQ0KPiA+aG9zdF91c2VyX2FkZHIsDQo+ID4gKwkJCQkJCQkgcGFnZS0NCj4gPmhv c3RfcGh5c19hZGRyLA0KPiA+ICsJCQkJCQkJIHBhZ2UtPnNpemUpOw0KPiA+ICsJCQlpZiAocmV0 KSB7DQo+ID4gKwkJCQkvKg0KPiA+ICsJCQkJICogRE1BIGRldmljZSBtYXkgYmluZCB3aXRoIGtl cm5lbCBkcml2ZXIsIGluDQo+IHRoaXMNCj4gPiBjYXNlLA0KPiA+ICsJCQkJICogd2UgZG9uJ3Qg bmVlZCB0byBwcm9ncmFtIElPTU1VIG1hbnVhbGx5Lg0KPiBIb3dldmVyLA0KPiA+IGlmIG5vDQo+ ID4gKwkJCQkgKiBkZXZpY2UgaXMgYm91bmQgd2l0aCB2ZmlvL3VpbyBpbiBEUERLLCBhbmQNCj4g dmZpbw0KPiA+IGtlcm5lbA0KPiA+ICsJCQkJICogbW9kdWxlIGlzIGxvYWRlZCwgdGhlIEFQSSB3 aWxsIHN0aWxsIGJlIGNhbGxlZA0KPiBhbmQNCj4gPiByZXR1cm4NCj4gPiArCQkJCSAqIHdpdGgg RU5PREVWLg0KPiA+ICsJCQkJICoNCj4gPiArCQkJCSAqIERQREsgdmZpbyBvbmx5IHJldHVybnMg RU5PREVWIGluIHZlcnkNCj4gc2ltaWxhcg0KPiA+IHNpdHVhdGlvbnMNCj4gPiArCQkJCSAqICh2 ZmlvIGVpdGhlciB1bnN1cHBvcnRlZCwgb3Igc3VwcG9ydGVkIGJ1dCBubw0KPiA+IGRldmljZXMg Zm91bmQpLg0KPiA+ICsJCQkJICogRWl0aGVyIHdheSwgbm8gbWFwcGluZ3MgY291bGQgYmUgcGVy Zm9ybWVkLg0KPiBXZQ0KPiA+IHRyZWF0IGl0IGFzDQo+ID4gKwkJCQkgKiBub3JtYWwgY2FzZSBp biBhc3luYyBwYXRoLiBUaGlzIGlzIGENCj4gd29ya2Fyb3VuZC4NCj4gPiArCQkJCSAqLw0KPiA+ ICsJCQkJaWYgKHJ0ZV9lcnJubyA9PSBFTk9ERVYpDQo+ID4gKwkJCQkJcmV0dXJuOw0KPiA+ICsN Cj4gPiArCQkJCS8qIERNQSBtYXBwaW5nIGVycm9ycyB3b24ndCBzdG9wDQo+ID4gVkhTVF9VU0VS X1NFVF9NRU1fVEFCTEUuICovDQo+IA0KPiBBIGNvbW1lbnQgaW4gdjMgaXMgbWlzc2VkOg0KIA0K VGhhbmtzIGZvciB0aGUgY2F0Y2guIFdpbGwgZml4IGl0IGluIHY1Lg0KDQpUaGFua3MsDQpYdWFu DQoNCj4gDQo+IFZIU1QgLT4gVkhPU1QNCj4gDQo+IFRoYW5rcywNCj4gQ2hlbmJvDQo+IA0KPiA+ ICsJCQkJVkhPU1RfTE9HX0NPTkZJRyhFUlIsICJETUEgZW5naW5lIG1hcA0KPiBmYWlsZWRcbiIp Ow0KPiA+ICsJCQl9DQo+ID4gIAkJfQ0KPiA+DQo+ID4gIAl9IGVsc2Ugew0KPiA+IC0JCS8qIFJl bW92ZSBtYXBwZWQgcmVnaW9uIGZyb20gdGhlIGRlZmF1bHQgY29udGFpbmVyIG9mIERQREsuDQo+ ICovDQo+ID4gLQkJcmV0ID0NCj4gcnRlX3ZmaW9fY29udGFpbmVyX2RtYV91bm1hcChSVEVfVkZJ T19ERUZBVUxUX0NPTlRBSU5FUl9GRCwNCj4gPiAtCQkJCQkJICAgcmVnaW9uLT5ob3N0X3VzZXJf YWRkciwNCj4gPiAtCQkJCQkJICAgaG9zdF9pb3ZhLA0KPiA+IC0JCQkJCQkgICByZWdpb24tPnNp emUpOw0KPiA+IC0JCWlmIChyZXQpIHsNCj4gPiAtCQkJLyogbGlrZSBETUEgbWFwLCBpZ25vcmUg dGhlIGtlcm5lbCBkcml2ZXIgY2FzZSB3aGVuDQo+IHVubWFwLg0KPiA+ICovDQo+ID4gLQkJCWlm IChydGVfZXJybm8gPT0gRUlOVkFMKQ0KPiA+IC0JCQkJcmV0dXJuIDA7DQo+ID4gLQ0KPiA+IC0J CQlWSE9TVF9MT0dfQ09ORklHKEVSUiwgIkRNQSBlbmdpbmUgdW5tYXANCj4gZmFpbGVkXG4iKTsN Cj4gPiAtCQkJcmV0dXJuIHJldDsNCj4gPiArCQlmb3IgKGkgPSAwOyBpIDwgZGV2LT5ucl9ndWVz dF9wYWdlczsgaSsrKSB7DQo+ID4gKwkJCXBhZ2UgPSAmZGV2LT5ndWVzdF9wYWdlc1tpXTsNCj4g PiArCQkJcmV0ID0NCj4gPiBydGVfdmZpb19jb250YWluZXJfZG1hX3VubWFwKFJURV9WRklPX0RF RkFVTFRfQ09OVEFJTkVSX0ZELA0KPiA+ICsJCQkJCQkJICAgcGFnZS0NCj4gPmhvc3RfdXNlcl9h ZGRyLA0KPiA+ICsJCQkJCQkJICAgcGFnZS0NCj4gPmhvc3RfcGh5c19hZGRyLA0KPiA+ICsJCQkJ CQkJICAgcGFnZS0+c2l6ZSk7DQo+ID4gKwkJCWlmIChyZXQpIHsNCj4gPiArCQkJCS8qIGxpa2Ug RE1BIG1hcCwgaWdub3JlIHRoZSBrZXJuZWwgZHJpdmVyIGNhc2UNCj4gd2hlbg0KPiA+IHVubWFw LiAqLw0KPiA+ICsJCQkJaWYgKHJ0ZV9lcnJubyA9PSBFSU5WQUwpDQo+ID4gKwkJCQkJcmV0dXJu Ow0KPiA+ICsNCj4gPiArCQkJCVZIT1NUX0xPR19DT05GSUcoRVJSLCAiRE1BIGVuZ2luZQ0KPiB1 bm1hcCBmYWlsZWRcbiIpOw0KPiA+ICsJCQl9DQo+ID4gIAkJfQ0KPiA+ICAJfQ0KPiA+IC0NCj4g PiAtCXJldHVybiByZXQ7DQo+ID4gIH0NCj4gPg0KPiA+ICBzdGF0aWMgdm9pZA0KPiA+IEBAIC0y MDUsMTIgKzIwNCwxMiBAQCBmcmVlX21lbV9yZWdpb24oc3RydWN0IHZpcnRpb19uZXQgKmRldikN Cj4gPiAgCWlmICghZGV2IHx8ICFkZXYtPm1lbSkNCj4gPiAgCQlyZXR1cm47DQo+ID4NCj4gPiAr CWlmIChkZXYtPmFzeW5jX2NvcHkgJiYgcnRlX3ZmaW9faXNfZW5hYmxlZCgidmZpbyIpKQ0KPiA+ ICsJCWFzeW5jX2RtYV9tYXAoZGV2LCBmYWxzZSk7DQo+ID4gKw0KPiA+ICAJZm9yIChpID0gMDsg aSA8IGRldi0+bWVtLT5ucmVnaW9uczsgaSsrKSB7DQo+ID4gIAkJcmVnID0gJmRldi0+bWVtLT5y ZWdpb25zW2ldOw0KPiA+ICAJCWlmIChyZWctPmhvc3RfdXNlcl9hZGRyKSB7DQo+ID4gLQkJCWlm IChkZXYtPmFzeW5jX2NvcHkgJiYgcnRlX3ZmaW9faXNfZW5hYmxlZCgidmZpbyIpKQ0KPiA+IC0J CQkJYXN5bmNfZG1hX21hcChyZWcsIGZhbHNlKTsNCj4gPiAtDQo+ID4gIAkJCW11bm1hcChyZWct Pm1tYXBfYWRkciwgcmVnLT5tbWFwX3NpemUpOw0KPiA+ICAJCQljbG9zZShyZWctPmZkKTsNCj4g PiAgCQl9DQo+ID4gQEAgLTk3OCw3ICs5NzcsNyBAQCB2aG9zdF91c2VyX3NldF92cmluZ19iYXNl KHN0cnVjdCB2aXJ0aW9fbmV0DQo+ID4gKipwZGV2LA0KPiA+DQo+ID4gIHN0YXRpYyBpbnQNCj4g PiAgYWRkX29uZV9ndWVzdF9wYWdlKHN0cnVjdCB2aXJ0aW9fbmV0ICpkZXYsIHVpbnQ2NF90IGd1 ZXN0X3BoeXNfYWRkciwNCj4gPiAtCQkgICB1aW50NjRfdCBob3N0X3BoeXNfYWRkciwgdWludDY0 X3Qgc2l6ZSkNCj4gPiArCQkgICB1aW50NjRfdCBob3N0X3BoeXNfYWRkciwgdWludDY0X3QgaG9z dF91c2VyX2FkZHIsIHVpbnQ2NF90DQo+IHNpemUpDQo+ID4gIHsNCj4gPiAgCXN0cnVjdCBndWVz dF9wYWdlICpwYWdlLCAqbGFzdF9wYWdlOw0KPiA+ICAJc3RydWN0IGd1ZXN0X3BhZ2UgKm9sZF9w YWdlczsNCj4gPiBAQCAtMTAwOSw2ICsxMDA4LDcgQEAgYWRkX29uZV9ndWVzdF9wYWdlKHN0cnVj dCB2aXJ0aW9fbmV0ICpkZXYsDQo+ID4gdWludDY0X3QgZ3Vlc3RfcGh5c19hZGRyLA0KPiA+ICAJ cGFnZSA9ICZkZXYtPmd1ZXN0X3BhZ2VzW2Rldi0+bnJfZ3Vlc3RfcGFnZXMrK107DQo+ID4gIAlw YWdlLT5ndWVzdF9waHlzX2FkZHIgPSBndWVzdF9waHlzX2FkZHI7DQo+ID4gIAlwYWdlLT5ob3N0 X3BoeXNfYWRkciAgPSBob3N0X3BoeXNfYWRkcjsNCj4gPiArCXBhZ2UtPmhvc3RfdXNlcl9hZGRy ID0gaG9zdF91c2VyX2FkZHI7DQo+ID4gIAlwYWdlLT5zaXplID0gc2l6ZTsNCj4gPg0KPiA+ICAJ cmV0dXJuIDA7DQo+ID4gQEAgLTEwMjgsNyArMTAyOCw4IEBAIGFkZF9ndWVzdF9wYWdlcyhzdHJ1 Y3QgdmlydGlvX25ldCAqZGV2LCBzdHJ1Y3QNCj4gPiBydGVfdmhvc3RfbWVtX3JlZ2lvbiAqcmVn LA0KPiA+ICAJc2l6ZSA9IHBhZ2Vfc2l6ZSAtIChndWVzdF9waHlzX2FkZHIgJiAocGFnZV9zaXpl IC0gMSkpOw0KPiA+ICAJc2l6ZSA9IFJURV9NSU4oc2l6ZSwgcmVnX3NpemUpOw0KPiA+DQo+ID4g LQlpZiAoYWRkX29uZV9ndWVzdF9wYWdlKGRldiwgZ3Vlc3RfcGh5c19hZGRyLCBob3N0X3BoeXNf YWRkciwgc2l6ZSkgPA0KPiAwKQ0KPiA+ICsJaWYgKGFkZF9vbmVfZ3Vlc3RfcGFnZShkZXYsIGd1 ZXN0X3BoeXNfYWRkciwgaG9zdF9waHlzX2FkZHIsDQo+ID4gKwkJCSAgICAgICBob3N0X3VzZXJf YWRkciwgc2l6ZSkgPCAwKQ0KPiA+ICAJCXJldHVybiAtMTsNCj4gPg0KPiA+ICAJaG9zdF91c2Vy X2FkZHIgICs9IHNpemU7DQo+ID4gQEAgLTEwNDAsNyArMTA0MSw3IEBAIGFkZF9ndWVzdF9wYWdl cyhzdHJ1Y3QgdmlydGlvX25ldCAqZGV2LCBzdHJ1Y3QNCj4gPiBydGVfdmhvc3RfbWVtX3JlZ2lv biAqcmVnLA0KPiA+ICAJCWhvc3RfcGh5c19hZGRyID0gcnRlX21lbV92aXJ0MmlvdmEoKHZvaWQg KikodWludHB0cl90KQ0KPiA+ICAJCQkJCQkgIGhvc3RfdXNlcl9hZGRyKTsNCj4gPiAgCQlpZiAo YWRkX29uZV9ndWVzdF9wYWdlKGRldiwgZ3Vlc3RfcGh5c19hZGRyLCBob3N0X3BoeXNfYWRkciwN Cj4gPiAtCQkJCXNpemUpIDwgMCkNCj4gPiArCQkJCSAgICAgICBob3N0X3VzZXJfYWRkciwgc2l6 ZSkgPCAwKQ0KPiA+ICAJCQlyZXR1cm4gLTE7DQo+ID4NCj4gPiAgCQlob3N0X3VzZXJfYWRkciAg Kz0gc2l6ZTsNCj4gPiBAQCAtMTIxNSw3ICsxMjE2LDYgQEAgdmhvc3RfdXNlcl9tbWFwX3JlZ2lv bihzdHJ1Y3QgdmlydGlvX25ldCAqZGV2LA0KPiA+ICAJdWludDY0X3QgbW1hcF9zaXplOw0KPiA+ ICAJdWludDY0X3QgYWxpZ25tZW50Ow0KPiA+ICAJaW50IHBvcHVsYXRlOw0KPiA+IC0JaW50IHJl dDsNCj4gPg0KPiA+ICAJLyogQ2hlY2sgZm9yIG1lbW9yeV9zaXplICsgbW1hcF9vZmZzZXQgb3Zl cmZsb3cgKi8NCj4gPiAgCWlmIChtbWFwX29mZnNldCA+PSAtcmVnaW9uLT5zaXplKSB7DQo+ID4g QEAgLTEyNzQsMTQgKzEyNzQsNiBAQCB2aG9zdF91c2VyX21tYXBfcmVnaW9uKHN0cnVjdCB2aXJ0 aW9fbmV0ICpkZXYsDQo+ID4gIAkJCVZIT1NUX0xPR19DT05GSUcoRVJSLCAiYWRkaW5nIGd1ZXN0 IHBhZ2VzIHRvDQo+IHJlZ2lvbiBmYWlsZWQuXG4iKTsNCj4gPiAgCQkJcmV0dXJuIC0xOw0KPiA+ ICAJCX0NCj4gPiAtDQo+ID4gLQkJaWYgKHJ0ZV92ZmlvX2lzX2VuYWJsZWQoInZmaW8iKSkgew0K PiA+IC0JCQlyZXQgPSBhc3luY19kbWFfbWFwKHJlZ2lvbiwgdHJ1ZSk7DQo+ID4gLQkJCWlmIChy ZXQpIHsNCj4gPiAtCQkJCVZIT1NUX0xPR19DT05GSUcoRVJSLCAiQ29uZmlndXJlIElPTU1VDQo+ IGZvciBETUEgZW5naW5lDQo+ID4gZmFpbGVkXG4iKTsNCj4gPiAtCQkJCXJldHVybiAtMTsNCj4g PiAtCQkJfQ0KPiA+IC0JCX0NCj4gPiAgCX0NCj4gPg0KPiA+ICAJVkhPU1RfTE9HX0NPTkZJRyhJ TkZPLA0KPiA+IEBAIC0xNDIwLDYgKzE0MTIsOSBAQCB2aG9zdF91c2VyX3NldF9tZW1fdGFibGUo c3RydWN0IHZpcnRpb19uZXQNCj4gPiAqKnBkZXYsIHN0cnVjdCBWaG9zdFVzZXJNc2cgKm1zZywN Cj4gPiAgCQlkZXYtPm1lbS0+bnJlZ2lvbnMrKzsNCj4gPiAgCX0NCj4gPg0KPiA+ICsJaWYgKGRl di0+YXN5bmNfY29weSAmJiBydGVfdmZpb19pc19lbmFibGVkKCJ2ZmlvIikpDQo+ID4gKwkJYXN5 bmNfZG1hX21hcChkZXYsIHRydWUpOw0KPiA+ICsNCj4gPiAgCWlmICh2aG9zdF91c2VyX3Bvc3Rj b3B5X3JlZ2lzdGVyKGRldiwgbWFpbl9mZCwgbXNnKSA8IDApDQo+ID4gIAkJZ290byBmcmVlX21l bV90YWJsZTsNCj4gPg0KPiA+IC0tDQo+ID4gMi4xNy4xDQoNCg==