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 D0C14A0C53; Wed, 3 Nov 2021 09:41:14 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 5CD7740F35; Wed, 3 Nov 2021 09:41:14 +0100 (CET) Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by mails.dpdk.org (Postfix) with ESMTP id 642C140E5A for ; Wed, 3 Nov 2021 09:41:12 +0100 (CET) X-IronPort-AV: E=McAfee;i="6200,9189,10156"; a="230175376" X-IronPort-AV: E=Sophos;i="5.87,205,1631602800"; d="scan'208";a="230175376" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 03 Nov 2021 01:41:11 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.87,205,1631602800"; d="scan'208";a="638510535" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by fmsmga001.fm.intel.com with ESMTP; 03 Nov 2021 01:41:10 -0700 Received: from fmsmsx607.amr.corp.intel.com (10.18.126.87) 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.2242.12; Wed, 3 Nov 2021 01:41:09 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx607.amr.corp.intel.com (10.18.126.87) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Wed, 3 Nov 2021 01:41:09 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12 via Frontend Transport; Wed, 3 Nov 2021 01:41:09 -0700 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (104.47.56.174) 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.2242.12; Wed, 3 Nov 2021 01:41:09 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MepfTkg+q7yMfQ8p8KPC1dlG+tNbjrIo/YMloIej3N7g6cZKC0g3/RuT7saDWh7OULGngtntvPCyT8qa/Gt6iG/160wnvXQEREWmYRIZcbsCExqOwgi31CtacgCVv1nwcWmkhTdGpXB1mvfUVMClxV9WASL/VcgPvvAyvKRvEaoKfzfkAk8Y4SFbaIn1MnS0ehLJjH4yCIu/Tf4SNib94pdcskdggUjfRte1y+A+7TQsq83JJVVjo9e5fOvCdq6BqLH8CWEdR/YT6O2ZB69ljYTXyol2n5lV94wowpICKghzEx1WrZU98WLqwiKN9vAoTlfpSK0KGsqoDPDQbJK/Jw== 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=1mHZ6Arweg6evVZSSonsdOBKs+dBKHEWQ1RkQHyZIzM=; b=AY0Gh4eU35dyKLcXXzDfJI3QgFQyPwzo+ZPqI3ZweVLD0EpoQ0HTHDShveGimuT4wbxga4mPm07B9iS7ypaR/MpQyiJrFPPd+oZGEP5CtOoFBfRqWWZsA6GnpAlqoLwnryCci7opddo8Su/3oicufhC1Yi8IaTs5lHAICHz+f+pb5I+VTPx0Md6ye0jz2K64t2sr6h8xn0WKGNvxgzm8+nhD0d97hwcQmI+vLKDgapcLaZkIDTty3w/tDeqILIk5rlpuS+DBhomKrWOLhzWGTvpZytvV/vU8qFVeoWMog7s40laTIXLputmQyIWwppi0RuFS3H+oL94XspMBprxXNA== 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=1mHZ6Arweg6evVZSSonsdOBKs+dBKHEWQ1RkQHyZIzM=; b=hgQ57oeHtwnuaAClodv9yIT53iBlfjbl5sBLjXoH3w+RuENMHJdhM7b48WtMSOFVtL2UyDRqGFTHjHYVbB+YoulJjv4bfHWrML5lp6MTrPH+MZOObVmgXEhiSZIX3mizaDiquU5SNkLcDxG2PsZ5L/4GLBS+crknGZaIL/bxO38= Received: from SN6PR11MB3504.namprd11.prod.outlook.com (2603:10b6:805:d0::17) by SA2PR11MB5146.namprd11.prod.outlook.com (2603:10b6:806:116::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4649.15; Wed, 3 Nov 2021 08:41:08 +0000 Received: from SN6PR11MB3504.namprd11.prod.outlook.com ([fe80::94ce:97cd:1b5f:b511]) by SN6PR11MB3504.namprd11.prod.outlook.com ([fe80::94ce:97cd:1b5f:b511%7]) with mapi id 15.20.4649.020; Wed, 3 Nov 2021 08:41:08 +0000 From: "Xia, Chenbo" To: "Xueming(Steven) Li" , "maxime.coquelin@redhat.com" , "dev@dpdk.org" Thread-Topic: [PATCH] vhost: add vDPA resource cleanup callback Thread-Index: AQHXxN4fTpx+H5viu0m6G7P+FLWNBKvdXOKAgAAJtYCAFCtScA== Date: Wed, 3 Nov 2021 08:41:08 +0000 Message-ID: References: <20211019113956.2254537-1-xuemingl@nvidia.com> <2bfda127-f6de-d3fa-0903-566b8ec69be4@redhat.com> <04f60f8da1819b8a0196cfca20127107bd0b835c.camel@nvidia.com> In-Reply-To: <04f60f8da1819b8a0196cfca20127107bd0b835c.camel@nvidia.com> Accept-Language: en-US, zh-CN Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: nvidia.com; dkim=none (message not signed) header.d=none;nvidia.com; dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 739a9667-1788-48ff-cad9-08d99ea5ae70 x-ms-traffictypediagnostic: SA2PR11MB5146: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:5797; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 2kYqYaFsip2K4dj3CXm/2rTAKpQiJSgJmUh7RizXT79RSm33ISyniEJN+rYYTqZQ/o0BgYNlccMs9WJrjIViyEarrsjJglIfyukyLLEdwplBEsAWDETFTxDiNEIKjAmWxFwWokNq1IeffzQPwNZ5R7Gco4XMx9POPMsGrvgqrDOFfDDnZ3mz0vKMCjz+6EdX/jd70MaJtsh707ZpMBlFGGvlUXJLgSKUQHHogdsjCVgJuUga6KNEvsePLD6n0gvTByOmyj6bxzEGn27ERx8OmcWF7Vzl5Iff0XctIBzRPmcJVaTqoTI8Q9xaxk9f7HQkwd8rmgUFJKrNUt9aAK8RVrOsD3m0HAt9+08SqrlnSFY6hcfFmq/NXQMD5PZ+gH2dT03kxZHxqx2LWXYgrdjNcCo3/7/q3H9Ok9M6Ba0nIrQp8rGdDKKJkS6d+akToyFhKA5EWCLoK2avWQi208WknnKnfINGqUZiMvxqApJg12kV8HhB5tn0HkXXAqD8YMSGuv34rABLLKS5OkCOoCJpVunwdCCSbAfEhKgqntiIYHIdSnSyve+BswAPlXkMDXIGb4PtrcAz8wc6fZ/+mLJzj/EO2c4qwFOz823x+BSg0n+oF9eVF7lzRfuGcDywVX7bYLRzPIiX8dvPQMxenKKRFAVyyCMR3zOpa6ahur0O8O+C/GC+JEUcN8+12kP7n7vvNfnjV1WOgt9vbl2tVM+0Gw== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SN6PR11MB3504.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(366004)(186003)(8676002)(316002)(26005)(8936002)(83380400001)(53546011)(38100700002)(122000001)(2906002)(38070700005)(82960400001)(71200400001)(110136005)(52536014)(508600001)(66946007)(7696005)(86362001)(64756008)(55016002)(66446008)(66556008)(66476007)(9686003)(4001150100001)(5660300002)(76116006)(33656002)(6506007); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?cm8vUWw0WlNqSnlRTG5PQVkwVjZabkpUZmkzRnd1a0QxNmlPbkRjSmRkbFBn?= =?utf-8?B?OGhmV2NITnRRRXduNUI0ZWlnUWpwNjhXbzYrQVdrdDBPWVZRVUgrSDY3enlU?= =?utf-8?B?azZRTGErUzdaZFJJUzMyTzhaUy9EM2FBeXVMV1p6cm90OEhodk1NeE9qbU5j?= =?utf-8?B?dU5XWFJsOXZQTGhleXFtaStCaEdqR25zVDJ6SHFaYU5FdFRMMFpDOFg3bHE4?= =?utf-8?B?b0lMUlpCWCtXTWsxQ0ZYb2pKcHF5SlhLTjVZWFh5ZHNvY1NVZWFUaTFNL2Q2?= =?utf-8?B?NHFOYStpb3pMa2hHNG5BM3c4bzFZSzRCK0Z5cXZ6N09KcDFrdng5bXNIeHZK?= =?utf-8?B?MmdkZjZ5Qk0rTDljemkyWnVPdndsOFNFOGdPaFJRd281UTRrU0dOWG5od04y?= =?utf-8?B?UmJGK29KeVozRjJISU9ROTZZNENKdWdDdnBudE4wUk9TSG9VWHEzRWZRU1I0?= =?utf-8?B?T3hvSUFlTmdzTSt4ekw5cmUrVGQ3VHlSUE9HbzIxQXJ0eCtiZmlUdXBXaFdL?= =?utf-8?B?K0pwNWtwTlAvaFQ2NU9zdjlRWnE0RVpZZDFPTXFScldNSXhjMWF5M1FqcHFI?= =?utf-8?B?OWpCbDBNcUpuSUFtWVl5SWEzNDNXNkpLREt3UCt6MzZwMGlmcHd4SXoweVEr?= =?utf-8?B?a2FuZDJ5WjRKQ201eWdNSnQ5TzNxYkRFQXFWZUk3bU5GK0VvK0p2MEtQeVJN?= =?utf-8?B?Y3BtOGhOOTNxUUFaTmZyRlVBRkR2L1F3bm1YQzRXRHdyV0kwU0FFWHVZSlhm?= =?utf-8?B?QVBkKzZva0xKWVlUb2xRMkZDb2hjN04zZWFBM2o1NFJyOFdueWhoNENDMjcr?= =?utf-8?B?T0I2VlRKbjBqbSs3Tk1OOEJ5VWFkZkdnN2x6a1hNRGx3aTJVcGZ2RGdCWDkw?= =?utf-8?B?UXdXQkdKa0pMYkRETE9RWVZkR1Y1Tk9qNUVVNW8yQ0dsUnQ0QVF2Qy84RGQ0?= =?utf-8?B?RmdtSmVLcVF2VHlIOTVpUm8xbXJiVlIya016aHUwUWRSa1YxMzJnNFpXZmZL?= =?utf-8?B?a2Z1VzdIVTJXRDJqdnBaNkFiN0NEQVRSdVowSW1zaWJJNFhkUVBhVmUraGho?= =?utf-8?B?V0IwRlBUUFlHWDlrd0M5VHFYYkpFRUZ5QkRkdGFVdkhYbWVzVkR6Nm8rejY1?= =?utf-8?B?bElRT2hGMm11UjVPNWI4Q3ZjSHVmdCt0OEVQcjFXWXpFcmw2amJoMTdqOGxQ?= =?utf-8?B?QlA1ZGhOZzNNd1cxWndmS3VjYlV5aitJSllEZ1dXNFUrTFZRdXhMVmhrLzJx?= =?utf-8?B?U1A5bDhTOXNMNUlwZ0ZyYmVSdkdnamszQVB5OUNYcWdnWEJIcEp1djJUenp6?= =?utf-8?B?S3ErQ2FlVWVOMTNwNjYvWUZTdmZkZUhKd3VDRzViOXd2MGRRTlVPWFBtS1JJ?= =?utf-8?B?OHd4SjFuU3hpMDhRWVduMHBuajc5dVB6a2QvMmRRQUVwblN3RjZZaDlCRm80?= =?utf-8?B?S2ZqWGZSdVc2S2pMajI5ZGxoaEJjZEhwV0ZqbVZpczlWdDJUM2MxcllMS0to?= =?utf-8?B?WjF2Mml0bmJNUXM0ZUYvYjJsVUFYTVNaalgxOGlnR3lGN1M0SHFBMkxFYStv?= =?utf-8?B?QzQyeUZYa3VzZ1VRY2FrQXE3eEczNGZaMmg5VllLRFgzTXlOVUNBN0hLZi9j?= =?utf-8?B?R2lGOGlQK3FTZlh2MG9leVBERXEwZE5JMEJkQ0JZRDEzZTUrQUZ5TForZGFX?= =?utf-8?B?WFZGS2VQK0dQT2ZBMXhoMmQ2cyt4WnZZWWFqK2xMRG5PUCthdTJvRGF0dTJU?= =?utf-8?B?T2Mxb25IYXJOazV4VmFCUWlhSGlWTDlWaXA4aStNV3RrTVlRV3Y3Vkp1TGJZ?= =?utf-8?B?QlM2UGkyenlkWXd1VjBuajB0bnRjbXVkNXB3bTBYSG4wcXk3Y0ROTkV3ZGpL?= =?utf-8?B?WUJpVkhhOWc5eExHcTlNdUVRZEFETEwzV1IzTzRIK2NxMFhwT3QweHZmMFJV?= =?utf-8?B?YnFzWlpMV0ozVStQcTBxYnhLOGwxc3kzWlVua2JRUUFXL1IxaVN1TWRLRnVK?= =?utf-8?B?VS9nL2l5ODE1YTd1TmxKOTZxMDZOVUY3enRuTVZuV1RDREdMTHhqM09yNWxZ?= =?utf-8?B?NVdTMzI1ZGhZNWIva2tvRTZBOGx3emYvMTRxOGxiRW5kMkRVdUdVZjZOQk53?= =?utf-8?B?VXI0N3BUa3JMZXAvc1U4YkxHSGdTUTdtOTdLUlhKSmNORFFCU0M5THAyaFk5?= =?utf-8?Q?rhNtqlHevwb/YOrLiIk67c4=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: SN6PR11MB3504.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 739a9667-1788-48ff-cad9-08d99ea5ae70 X-MS-Exchange-CrossTenant-originalarrivaltime: 03 Nov 2021 08:41:08.2166 (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: Jr/jCVAE00DEt5YpQg7sza5cDh/cSNIlpAkPTaQlr5ojAFsPboQToaRDoSwh63wKY1Wj50FE9A2+WhtZmDvo7A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA2PR11MB5146 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH] vhost: add vDPA resource cleanup callback 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" SGkgWHVlbWluZywNCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBYdWVt aW5nKFN0ZXZlbikgTGkgPHh1ZW1pbmdsQG52aWRpYS5jb20+DQo+IFNlbnQ6IFRodXJzZGF5LCBP Y3RvYmVyIDIxLCAyMDIxIDg6MzYgUE0NCj4gVG86IG1heGltZS5jb3F1ZWxpbkByZWRoYXQuY29t OyBkZXZAZHBkay5vcmcNCj4gQ2M6IFhpYSwgQ2hlbmJvIDxjaGVuYm8ueGlhQGludGVsLmNvbT4N Cj4gU3ViamVjdDogUmU6IFtQQVRDSF0gdmhvc3Q6IGFkZCB2RFBBIHJlc291cmNlIGNsZWFudXAg Y2FsbGJhY2sNCj4gDQo+IE9uIFRodSwgMjAyMS0xMC0yMSBhdCAxNDowMCArMDIwMCwgTWF4aW1l IENvcXVlbGluIHdyb3RlOg0KPiA+IEhpIFh1ZW1pbmcsDQo+ID4NCj4gPiBPbiAxMC8xOS8yMSAx MzozOSwgWHVlbWluZyBMaSB3cm90ZToNCj4gPiA+IFRoaXMgcGF0Y2ggYWRkcyB2RFBBIGRldmlj ZSBjbGVhbnVwIGNhbGxiYWNrIHRvIHJlbGVhc2UgcmVzb3VyY2VzIG9uDQo+ID4gPiB2aG9zdCB1 c2VyIGNvbm5lY3Rpb24gY2xvc2UuDQo+ID4gPg0KPiA+ID4gU2lnbmVkLW9mZi1ieTogWHVlbWlu ZyBMaSA8eHVlbWluZ2xAbnZpZGlhLmNvbT4NCj4gPiA+IC0tLQ0KPiA+ID4gICBsaWIvdmhvc3Qv cnRlX3ZkcGFfZGV2LmggfCAzICsrKw0KPiA+ID4gICBsaWIvdmhvc3Qvdmhvc3RfdXNlci5jICAg fCA2ICsrKysrKw0KPiA+ID4gICAyIGZpbGVzIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKQ0KPiA+ ID4NCj4gPiA+IGRpZmYgLS1naXQgYS9saWIvdmhvc3QvcnRlX3ZkcGFfZGV2LmggYi9saWIvdmhv c3QvcnRlX3ZkcGFfZGV2LmgNCj4gPiA+IGluZGV4IGIwZjQ5NDgxNWZhLi4yNzExMDA0ZmUwNSAx MDA2NDQNCj4gPiA+IC0tLSBhL2xpYi92aG9zdC9ydGVfdmRwYV9kZXYuaA0KPiA+ID4gKysrIGIv bGliL3Zob3N0L3J0ZV92ZHBhX2Rldi5oDQo+ID4gPiBAQCAtMzIsNiArMzIsOSBAQCBzdHJ1Y3Qg cnRlX3ZkcGFfZGV2X29wcyB7DQo+ID4gPiAgIAkvKiogRHJpdmVyIGNsb3NlIHRoZSBkZXZpY2Ug KE1hbmRhdG9yeSkgKi8NCj4gPiA+ICAgCWludCAoKmRldl9jbG9zZSkoaW50IHZpZCk7DQo+ID4g Pg0KPiA+ID4gKwkvKiogQ29ubmVjdGlvbiBjbG9zZWQsIGNsZWFuIHVwIHJlc291cmNlcyAqLw0K PiA+ID4gKwlpbnQgKCpkZXZfY2xlYW51cCkoaW50IHZpZCk7DQo+ID4gPiArDQo+ID4gPiAgIAkv KiogRW5hYmxlL2Rpc2FibGUgdGhpcyB2cmluZyAoTWFuZGF0b3J5KSAqLw0KPiA+ID4gICAJaW50 ICgqc2V0X3ZyaW5nX3N0YXRlKShpbnQgdmlkLCBpbnQgdnJpbmcsIGludCBzdGF0ZSk7DQo+ID4g Pg0KPiA+ID4gZGlmZiAtLWdpdCBhL2xpYi92aG9zdC92aG9zdF91c2VyLmMgYi9saWIvdmhvc3Qv dmhvc3RfdXNlci5jDQo+ID4gPiBpbmRleCA1YTg5NGNhMGNjNy4uMDMyYjYyMWM4NmMgMTAwNjQ0 DQo+ID4gPiAtLS0gYS9saWIvdmhvc3Qvdmhvc3RfdXNlci5jDQo+ID4gPiArKysgYi9saWIvdmhv c3Qvdmhvc3RfdXNlci5jDQo+ID4gPiBAQCAtMTYyLDYgKzE2MiwxMiBAQCBmcmVlX21lbV9yZWdp b24oc3RydWN0IHZpcnRpb19uZXQgKmRldikNCj4gPiA+ICAgdm9pZA0KPiA+ID4gICB2aG9zdF9i YWNrZW5kX2NsZWFudXAoc3RydWN0IHZpcnRpb19uZXQgKmRldikNCj4gPiA+ICAgew0KPiA+ID4g KwlzdHJ1Y3QgcnRlX3ZkcGFfZGV2aWNlICp2ZHBhX2RldjsNCj4gPiA+ICsNCj4gPiA+ICsJdmRw YV9kZXYgPSBkZXYtPnZkcGFfZGV2Ow0KPiA+ID4gKwlpZiAodmRwYV9kZXYgJiYgdmRwYV9kZXYt Pm9wcy0+ZGV2X2NsZWFudXAgIT0gTlVMTCkNCj4gPiA+ICsJCXZkcGFfZGV2LT5vcHMtPmRldl9j bGVhbnVwKGRldi0+dmlkKTsNCj4gPiA+ICsNCj4gPiA+ICAgCWlmIChkZXYtPm1lbSkgew0KPiA+ ID4gICAJCWZyZWVfbWVtX3JlZ2lvbihkZXYpOw0KPiA+ID4gICAJCXJ0ZV9mcmVlKGRldi0+bWVt KTsNCj4gPiA+DQo+ID4NCj4gPiBXaGF0IHdpbGwgYmUgZG9uZSB0aGVyZSB0aGF0IGNhbm5vdCBi ZSBkb25lIGluIC5kZXZfY2xvc2UoKT8NCj4gDQo+IC5kZXZfY2xvc2UoKSBtYWlubHkgaGFuZGxl cyBWTSBzdXNwZW5kIGFuZCBkcml2ZXIgcmVzZXQuIElmIHJlbGVhc2UNCj4gZXZlcnl0aGluZyBp bnNpZGUgZGV2X2Nsb3NlKCksIHRoZSBzdXNwZW5kIGFuZCByZXN1bWUgdGFrZXMgbG9uZ2VyIHRp bWUNCj4gaWYgbnVtYmVyIG9mIFZRcyBhcmUgaHVnZS4gQ3VzdG9tZXIgd2FudCB0byB1cGdyYWRl IFZNIGNvbmZpZ3VyYXRpb24NCj4gdXNpbmcgc3VzcGVuZCBhbmQgcmVzdW1lLCBwYXVzZSBjdXN0 b21lciBWTSB0b28gbG9uZyBjYW4ndCBiZSBhY2NlcHRlZC4NCg0KQnkgc2F5aW5nICd1cGdyYWRl IFZNIGNvbmZpZ3VyYXRpb24nLCBkbyB5b3UgbWVhbiBWTSBtZW1vcnkgaG90cGx1Zz8gT3Igc29t ZXRoaW5nDQptb3JlPw0KDQpJcyB0aGlzIHBhdGNoIGEgbmV4dC1zdGVwIGltcHJvdmVtZW50IG9m IHRoaXMgY29tbWl0Pw0KDQpjb21taXQgMTI3ZjljNmY3Yjc4YTQ3YjczYjNlMWMzOWUwMjFjYzgx YTMwYjRjOQ0KQXV0aG9yOiBNYXRhbiBBenJhZCA8bWF0YW5AbWVsbGFub3guY29tPg0KRGF0ZTog ICBNb24gSnVuIDI5IDE0OjA4OjE5IDIwMjAgKzAwMDANCg0KICAgIHZob3N0OiBoYW5kbGUgbWVt b3J5IGhvdHBsdWcgd2l0aCB2RFBBIGRldmljZXMNCg0KICAgIFNvbWUgdkRQQSBkcml2ZXJzJyBi YXNpYyBjb25maWd1cmF0aW9ucyBzaG91bGQgYmUgdXBkYXRlZCB3aGVuIHRoZQ0KICAgIGd1ZXN0 IG1lbW9yeSBpcyBob3RwbHVnZ2VkLg0KDQogICAgQ2xvc2UgdkRQQSBkZXZpY2UgYmVmb3JlIGhv dHBsdWcgb3BlcmF0aW9uIGFuZCByZWNyZWF0ZSBpdCBhZnRlciB0aGUNCiAgICBob3RwbHVnIG9w ZXJhdGlvbiBpcyBkb25lLg0KDQogICAgU2lnbmVkLW9mZi1ieTogTWF0YW4gQXpyYWQgPG1hdGFu QG1lbGxhbm94LmNvbT4NCiAgICBSZXZpZXdlZC1ieTogTWF4aW1lIENvcXVlbGluIDxtYXhpbWUu Y29xdWVsaW5AcmVkaGF0LmNvbT4NCiAgICBSZXZpZXdlZC1ieTogQ2hlbmJvIFhpYSA8Y2hlbmJv LnhpYUBpbnRlbC5jb20+DQoNCj4gU28gdGhlIGlkZWEgaXMgdG8gY2FjaGUgYW5kIHJldXNlIHJl c291cmNlIGJldHdlZW4gZGV2X2Nsb3NlKCkgYW5kDQo+IGRldl9jb25mKCkuIEFjdHVhbGx5LCB0 aGUgdHdvIGZ1bmN0aW9ucyBsb29rcyBtb3JlIGxpa2UgZGV2X3N0b3AoKSBhbmQNCj4gZGV2X3N0 YXJ0KCkuDQo+IA0KPiBkZXZfY2xlYW51cCBob29rcyB0byB2aG9zdCBiYWNrZW5kIGNsZWFudXAg d2hpY2ggY2FsbGVkIHdoZW4gc29ja2V0DQo+IGNsb3NlZCBmb3IgYm90aCBjbGllbnQgYW5kIHNl cnZlciBtb2RlLCBhIHNhZmUgcG9pbnQgdG8gY2xlYW51cCBhbGwNCj4gY2FjaGVkIHJlc291cmNl cy4NCj4gDQo+ID4gSGF2aW5nIHRoZSBtbHg1IGltcGxlbWVudGF0aW9uIG9mIHRoaXMgY2FsbGJh Y2sgYWxvbmdzaWRlIHRoaXMgcGF0Y2ggbWF5DQo+ID4gaGVscCB0byB1bmRlcnN0YW5kLg0KPiAN Cj4gVGhlIG1seDUgaW1wbGVtZW50YXRpb24gc3RpbGwgYSBwcm90b3R5cGUsIHBlbmRpbmcgb24g aW50ZXJuYWwgcmV2aWV3Lg0KPiBTbyBJIGp1c3QgcG9zdCB0aGUgdmhvc3QgcGFydCB0byBnZXQg c3VnZ2VzdGlvbi9jb21tZW50LiBMZXQgbWUga25vdyBpZg0KPiB0aGUgdWdseSBjb2RlIGRvZXMg aGVscCA6KQ0KDQpJIHdvdWxkIHByZWZlciB0byBzZWUgdGhlIG1seCBpbXBsZW1lbnRhdGlvbiB3 aXRoIHRoaXMgcGF0Y2ggaW4gdGhlIHNhbWUNCnBhdGNoc2V0IHRvIHVuZGVyc3RhbmQgdGhlIHBy b2JsZW0uIEEgbmV3IGNhbGxiYWNrIGlzIGZpbmUgaWYgdGhlIHByb2JsZW0NCml0c2VsZiBtYWtl cyBzZW5zZSA6KQ0KDQpUaGFua3MsDQpDaGVuYm8gDQoNCj4gDQo+ID4NCj4gPiBUaGFua3MsDQo+ ID4gTWF4aW1lDQo+ID4NCg0K