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 194D1A034F; Mon, 7 Jun 2021 09:20:21 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 8183340147; Mon, 7 Jun 2021 09:20:20 +0200 (CEST) Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by mails.dpdk.org (Postfix) with ESMTP id 84CA040041 for ; Mon, 7 Jun 2021 09:20:18 +0200 (CEST) IronPort-SDR: z9FWvFg5eXWN9v0B64JeLfqDsT59oQbdErrP5YKT1HX5SoXXm3FNYN2VllkCJlk6BPh4jkhqes Z9Bs8khPCrkA== X-IronPort-AV: E=McAfee;i="6200,9189,10007"; a="265730368" X-IronPort-AV: E=Sophos;i="5.83,254,1616482800"; d="scan'208";a="265730368" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Jun 2021 00:20:16 -0700 IronPort-SDR: RRjpYPbe0rPngCsOkeHB4w9aayc4Czew+tuzEmUxsZFDdlhJJb6RrsVn9hiMYAxR36V3xlHRVt 7zQh0P/v8Y+w== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.83,254,1616482800"; d="scan'208";a="448997908" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by fmsmga008.fm.intel.com with ESMTP; 07 Jun 2021 00:20:15 -0700 Received: from orsmsx609.amr.corp.intel.com (10.22.229.22) by ORSMSX603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4; Mon, 7 Jun 2021 00:20:13 -0700 Received: from orsmsx604.amr.corp.intel.com (10.22.229.17) by ORSMSX609.amr.corp.intel.com (10.22.229.22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4; Mon, 7 Jun 2021 00:20:13 -0700 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx604.amr.corp.intel.com (10.22.229.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4 via Frontend Transport; Mon, 7 Jun 2021 00:20:13 -0700 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (104.47.56.168) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.4; Mon, 7 Jun 2021 00:20:11 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AgwU6Mh2/xrA76eJRkclpV7efz4LLCndBHXQaknS/W8RAGHY9zLpdNVr8WY1uRM8z/RPtMuKJhqBxSfovfWRG6SdsFJkJj1z/66ZklRx0rdo3q3jKH3DAqOjZEjnbRtax5PKMxehuD9ki8QN8GvXa2xEgtKsbMmVGw9xJG2ZtjjS3eFzUEWJfStte7QIYjZ82EIPdgzA99D76J0E78b99OjwrJNDb34N/7MrOYXxnzI/kal2VgYPaD+yeeiWiIzcH2LH4srLw14r4hrfv0/QG6AARZdteNOusvimZuuTdcUQHdEW/wiXQvEjo9cZK8585iPPfcRkZAhjSj31rEihkA== 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=l55w3LXWuVlLwJQ4lj2yPPSf3sUH7UwKeLUAfT3SWAg=; b=h9P136zeXl0RY3MlvXaiLiV2hSlMfMTW8u4KIT72As3InrF7p8ptx4ikOzZae9NgkuN1t6rHLp7Kor8u0ivAYxrt5mWr5Ndy74/ILJ8uB0ioYYyEnYkjxrgVN0FwGUZzRgmMRIKSgufzC2fgLXeH9/L6mFbEIVZZrn8H6kqkfjwfoDfZA+muBRIUaqXZhJdDxY0+EcXLIQWndJS670NBJQc0//uIGtTIp1x83rq8KidE8pf9YSx9n6uqO2lJuhh275lfnuMGkqY5+mi4UI89D1JM7NC/l6bpfZHRF147+vp7kzZXUf6jkdV+UVe3echCiLBUZv+RIbe6DcoPNnflRg== 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=l55w3LXWuVlLwJQ4lj2yPPSf3sUH7UwKeLUAfT3SWAg=; b=fi9mczw6k0OqDdxGRgfRb+jo5SfpoV5SVWztop6D0fp/hXIZQc/EpG+UrnDnw0EkBNUPKPBMFa3LIt6A8bnzB5QLdKVvpjmgDiLV4YjKCXuiITqT/imeV4asadacp3uJ45hiE7cFyRiYM0iosRmUGDNY1o1M//potU6OMCiPQ0c= Received: from BN8PR11MB3795.namprd11.prod.outlook.com (2603:10b6:408:82::31) by BN7PR11MB2739.namprd11.prod.outlook.com (2603:10b6:406:a9::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4195.23; Mon, 7 Jun 2021 07:20:06 +0000 Received: from BN8PR11MB3795.namprd11.prod.outlook.com ([fe80::8807:6661:e425:102]) by BN8PR11MB3795.namprd11.prod.outlook.com ([fe80::8807:6661:e425:102%7]) with mapi id 15.20.4195.030; Mon, 7 Jun 2021 07:20:06 +0000 From: "Wang, Haiyue" To: Honnappa Nagarahalli , Jerin Jacob CC: "thomas@monjalon.net" , Andrew Rybchenko , "Yigit, Ferruh" , dpdk-dev , Elena Agostini , "David Marchand" , nd , nd Thread-Topic: [dpdk-dev] [PATCH] gpudev: introduce memory API Thread-Index: AQHXV+8BBxLOVwnssEGBVBOBXmJb5asB6ZqAgAAdp4CAAaGkAIAAC2mAgAAbJQCAAAVVgIAAA7EAgAALNACAAALqgIAAE+KAgAAIoICAAClD4IAAtZWAgAFQkQCAAfgCIA== Date: Mon, 7 Jun 2021 07:20:06 +0000 Message-ID: References: <20210602203531.2288645-1-thomas@monjalon.net> <1762355.HKltZAk3iZ@thomas> <2385250.mgn969muHi@thomas> In-Reply-To: Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.6.0.76 authentication-results: arm.com; dkim=none (message not signed) header.d=none;arm.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.55.46.52] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: aa6e7090-7482-4ce0-a085-08d92984ad0d x-ms-traffictypediagnostic: BN7PR11MB2739: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: ZadaKb3xF9QloAk2VO6wqA5lIMUm5l7klyZFcc0ZA031VhXMCli7gSvn2ZRe5NrnZaFi1k8DRJdzfjoxHYYfj2+gwWStViy1gCOGPJYKx/vIjVJaDLzSC2bPys3zjj6rGDCFpkzeSX0bz3wmx09tUIYXjK+PXGPEUNfp5A3VQR70S8NjEyR0JcJqUOZZ++cyDDDX+2jqGFjw6N35BPlGbhmfAsw7l4p4ydhT7ONI4hVM8FEK6S7XauHy0p3DZ+VdwL6bAfmEmmcluatWXbe7v+hWcPCkJzIeUSK0Fi7lJ+Ad5f+IkGHRK/T1Zn4NT+4Khu9U1JzR73CrCxx+nsSvxNbOLMtEgZYw/kNSMb3KGbRjvqtDFUbadeS4aOdN3VKchyOQyH1TA5Y9LmbEEeiVnZmYZ+p1ab6ItO/O/5N4vjFyzkJOuho58Ojuj6uuZjglMQkUCulhFVxst28vwzSMk+vI6ZMjAixg0Seo/f16SXWiTdxKrFjAWH7+M4YfhvvwkNGDGz+p2WK+O+PJW1KPobd3+nG9swwMFulXbjuPXBUGqE5ecDRQM/OYuX75F80fqFBDCOtVBfr9CV+lTvd/z7LqCH49oN1T+kjFfukYNJz1YyZZfarm9RXTgSI9PAo66p8+CKpkUyjYAi8N64lrXzqoq0cUIFLfY1U8XKfqU8bBHeomrz92Hs6RE8jN7s/tsbH3A1zntH2ZzxJ6a76ECHlv8Xi+RBUjzR3AgiMA2nO9x28NUPDI6B7TmQinheyc x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BN8PR11MB3795.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(346002)(396003)(136003)(376002)(366004)(39860400002)(966005)(8676002)(33656002)(66556008)(66476007)(86362001)(9686003)(8936002)(478600001)(53546011)(83380400001)(316002)(2906002)(6506007)(26005)(66946007)(5660300002)(54906003)(52536014)(110136005)(64756008)(66446008)(38100700002)(122000001)(186003)(4326008)(55016002)(76116006)(71200400001)(7696005); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata: =?utf-8?B?Q2x2L0NhVENYQk44c1A3VWM4dFJtcDZYanoxMUtaU0c1elRPNWtaT1pqRkJ3?= =?utf-8?B?Q3pja3RvVkJpcGFtZjRxcGZTU3R1M0YzTlpkMCtvQkdWM0M3b054Q3orVVdn?= =?utf-8?B?TkhVbnlaV1c3T0FDTFE0NS9wcEJiVFhoTTk2bzAvYmRPQm51cFN2RE5yUzRx?= =?utf-8?B?WGJTZlJKZjdHRXhPakZIQTZxRzV0YnN0RDVza3lCbDFFSnorQVF5bVNWYXpJ?= =?utf-8?B?RDJQTjVlVHBwRkFKdERSeTV6YkhKNEN2dW9DRkl6bWEvakovZVV4UWk2TXpk?= =?utf-8?B?STI5ZURTNFhGQVpDU3ArRzl6NExkZ1FLMEdJRGtKLzE3K0VFa0ZQckJvMnpY?= =?utf-8?B?UExxMWhrTkpISjlNY2ZhbXR5SE8vN0dGZmowZ2QyV2dScUwwTUhBTVoxYW5j?= =?utf-8?B?QTJwOG5pRnRRdGRXQzNTZi80dzVQSkZUenVRUVBTaGNXM1d4bGFTSXFaV291?= =?utf-8?B?VlJqcndMQXZ1V29WaXkySEQ1eXJrRjNIbEw4dHhic3F0VlZ1MTVqTHhjY0FN?= =?utf-8?B?UFlzYWRnTmJsZCtGNjcveVlPZGhCNFpXQ3V1Ylp1WTVxT2E1dnZGcE9tUW5S?= =?utf-8?B?SXoyMm90QlFSQXFnUzlIRDczcUJjZy9BWWRIVHErbmZlVERLeDE3cTR1a0NX?= =?utf-8?B?SzJJRDFOZWcvbU8wU292YWFKNXd3UFNJS2svandxbDU1YmNqaHJIVDdMZXMx?= =?utf-8?B?SkwySUxGZ2xoVlNnZ1FzSVB4ejAxMTBZcmQ5YXRnN2JxUmpsVVhGY1JSWE5G?= =?utf-8?B?TEc3ZE9uZFJPUS9ETmM1ZWdKZW4vUmhkaEk0M3FLTWlTUjNEMHVBcFNWYWVP?= =?utf-8?B?dE1xcitQcjM0TnN0aW1oNWZvL2lNWk9Fa2R1anhzWTVyYlVtNllYSVpacUdz?= =?utf-8?B?eWxWQ0JsSHRmS2RtV3VlcmtFY2dwY25nSURaazE2WjNPY0F3NkVVclpzV2RZ?= =?utf-8?B?eDZmQ2VMTWdGdUF0TEtUQzdMRVlqKzZzSG1GK3ZybWhMR0R0ZnhsWHZwcFJI?= =?utf-8?B?U0xUbDIyK05jL1BrbUFzODRMcy8wVzRkVFRDT1AxY3AzZ0dIZlVTdFpybFh3?= =?utf-8?B?aldnelcvMmpMY3RueWZIMXp3VGVuZng1eWFtQmVNZjNwenVDdktsOERpd0lo?= =?utf-8?B?U2Z3aEJMV1pIWlBYeEdBVEtSVStLNXhLTmQyd3hwcExscnNkWTBieFJkTm9w?= =?utf-8?B?eHBlZjV5MlRKQVZIQTVka0VXbmFrQlZXMjB4Y1YvZ2djNnovSUEwWW5JdHVG?= =?utf-8?B?cEpzUTN4c3VtUjhLRjdHd29MeENCeUhtWmxYZjdEbm4zb1FvMldPd1JKdjZa?= =?utf-8?B?VGRZREpxUFBXeFZrWndSYjljanI0akxJdWtWQjY5eEhTMFBLUExUcEorZzln?= =?utf-8?B?TkxFZWVHYW1yRGtXY0ZaK0NTbW45emxNSHIrczNiSGk1dkZiazEzQStUNGNB?= =?utf-8?B?SDR4UDh6UmVhc0ZjbzAyZUppWkwxRk51MDYwdkxzczNTMGovbTRsQitKSmM3?= =?utf-8?B?QklDUjkrTE9IeGNZVXpVb0MzVUlZQlVkbnNzZFJEQlVWTUJ6U1dsMkJGaWt0?= =?utf-8?B?eDhOaU8zMTBEOUJvdnBZQmxsSEMrcExNTXBUTzRMQk5nbFRWNHVrVTRmcmNl?= =?utf-8?B?Rk1FUzNMbmQvdVhUakNYRjQ5b1Y5dkM4cVBGWWxESGREMUozN0k1dUJxMk9B?= =?utf-8?B?MVJWN0daK00yOXhab3R1OFBIaFl4N3g5azlYUXVXeVVHYm52WmJLbUl5K2pI?= =?utf-8?Q?c6nvgmBqBXJRgyAPSM=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: BN8PR11MB3795.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: aa6e7090-7482-4ce0-a085-08d92984ad0d X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Jun 2021 07:20:06.4329 (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: r7XEwvrounE+j2m5DnOXmI6qGHjffx3gIZlINzabYZArlYug66hZxEjZtf6xyCVX9qu6HJiSLVjXNQ+JpZK50Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN7PR11MB2739 X-OriginatorOrg: intel.com Subject: Re: [dpdk-dev] [PATCH] gpudev: introduce memory 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" PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBIb25uYXBwYSBOYWdhcmFoYWxs aSA8SG9ubmFwcGEuTmFnYXJhaGFsbGlAYXJtLmNvbT4NCj4gU2VudDogU3VuZGF5LCBKdW5lIDYs IDIwMjEgMDk6MTQNCj4gVG86IEplcmluIEphY29iIDxqZXJpbmphY29ia0BnbWFpbC5jb20+OyBX YW5nLCBIYWl5dWUgPGhhaXl1ZS53YW5nQGludGVsLmNvbT4NCj4gQ2M6IHRob21hc0Btb25qYWxv bi5uZXQ7IEFuZHJldyBSeWJjaGVua28gPGFuZHJldy5yeWJjaGVua29Ab2t0ZXRsYWJzLnJ1Pjsg WWlnaXQsIEZlcnJ1aA0KPiA8ZmVycnVoLnlpZ2l0QGludGVsLmNvbT47IGRwZGstZGV2IDxkZXZA ZHBkay5vcmc+OyBFbGVuYSBBZ29zdGluaSA8ZWFnb3N0aW5pQG52aWRpYS5jb20+OyBEYXZpZA0K PiBNYXJjaGFuZCA8ZGF2aWQubWFyY2hhbmRAcmVkaGF0LmNvbT47IG5kIDxuZEBhcm0uY29tPjsg SG9ubmFwcGEgTmFnYXJhaGFsbGkNCj4gPEhvbm5hcHBhLk5hZ2FyYWhhbGxpQGFybS5jb20+OyBu ZCA8bmRAYXJtLmNvbT4NCj4gU3ViamVjdDogUkU6IFtkcGRrLWRldl0gW1BBVENIXSBncHVkZXY6 IGludHJvZHVjZSBtZW1vcnkgQVBJDQo+IA0KPiA8c25pcD4NCj4gDQo+ID4gPiA+DQo+ID4gPiA+ IDA0LzA2LzIwMjEgMTc6MjAsIEplcmluIEphY29iOg0KPiA+ID4gPiA+IE9uIEZyaSwgSnVuIDQs IDIwMjEgYXQgNzozOSBQTSBUaG9tYXMgTW9uamFsb24NCj4gPiA8dGhvbWFzQG1vbmphbG9uLm5l dD4gd3JvdGU6DQo+ID4gPiA+ID4gPiAwNC8wNi8yMDIxIDE1OjU5LCBBbmRyZXcgUnliY2hlbmtv Og0KPiA+ID4gPiA+ID4gPiBPbiA2LzQvMjEgNDoxOCBQTSwgVGhvbWFzIE1vbmphbG9uIHdyb3Rl Og0KPiA+ID4gPiA+ID4gPiA+IDA0LzA2LzIwMjEgMTU6MDUsIEFuZHJldyBSeWJjaGVua286DQo+ ID4gPiA+ID4gPiA+ID4+IE9uIDYvNC8yMSAzOjQ2IFBNLCBUaG9tYXMgTW9uamFsb24gd3JvdGU6 DQo+ID4gPiA+ID4gPiA+ID4+PiAwNC8wNi8yMDIxIDEzOjA5LCBKZXJpbiBKYWNvYjoNCj4gPiA+ ID4gPiA+ID4gPj4+PiBPbiBGcmksIEp1biA0LCAyMDIxIGF0IDM6NTggUE0gVGhvbWFzIE1vbmph bG9uDQo+ID4gPHRob21hc0Btb25qYWxvbi5uZXQ+IHdyb3RlOg0KPiA+ID4gPiA+ID4gPiA+Pj4+ PiAwMy8wNi8yMDIxIDExOjMzLCBGZXJydWggWWlnaXQ6DQo+ID4gPiA+ID4gPiA+ID4+Pj4+PiBP biA2LzMvMjAyMSA4OjQ3IEFNLCBKZXJpbiBKYWNvYiB3cm90ZToNCj4gPiA+ID4gPiA+ID4gPj4+ Pj4+PiBPbiBUaHUsIEp1biAzLCAyMDIxIGF0IDI6MDUgQU0gVGhvbWFzIE1vbmphbG9uDQo+ID4g PHRob21hc0Btb25qYWxvbi5uZXQ+IHdyb3RlOg0KPiA+ID4gPiA+ID4gPiA+Pj4+Pj4+PiArICBb Z3B1ZGV2XSAgICAgICAgICAgICAoQHJlZiBydGVfZ3B1ZGV2LmgpLA0KPiA+ID4gPiA+ID4gPiA+ Pj4+Pj4+DQo+ID4gPiA+ID4gPiA+ID4+Pj4+Pj4gU2luY2UgdGhpcyBkZXZpY2UgZG9lcyBub3Qg aGF2ZSBhIHF1ZXVlIGV0Yz8gU2hvdWxkbid0DQo+ID4gPiA+ID4gPiA+ID4+Pj4+Pj4gbWFrZSBp dCBhIGxpYnJhcnkgbGlrZSBtZW1wb29sIHdpdGggdmVuZG9yLWRlZmluZWQgb3BzPw0KPiA+ID4g PiA+ID4gPiA+Pj4+Pj4NCj4gPiA+ID4gPiA+ID4gPj4+Pj4+ICsxDQo+ID4gPiA+ID4gPiA+ID4+ Pj4+Pg0KPiA+ID4gPiA+ID4gPiA+Pj4+Pj4gQ3VycmVudCBSRkMgYW5ub3VuY2VzIGFkZGl0aW9u YWwgbWVtb3J5IGFsbG9jYXRpb24NCj4gPiA+ID4gPiA+ID4gPj4+Pj4+IGNhcGFiaWxpdGllcywg d2hpY2ggY2FuIHN1aXRzIGJldHRlciBhcyBleHRlbnNpb24gdG8NCj4gPiA+ID4gPiA+ID4gPj4+ Pj4+IGV4aXN0aW5nIG1lbW9yeSByZWxhdGVkIGxpYnJhcnkgaW5zdGVhZCBvZiBhIG5ldyBkZXZp Y2UNCj4gPiBhYnN0cmFjdGlvbiBsaWJyYXJ5Lg0KPiA+ID4gPiA+ID4gPiA+Pj4+Pg0KPiA+ID4g PiA+ID4gPiA+Pj4+PiBJdCBpcyBub3QgcmVwbGFjaW5nIG1lbXBvb2wuDQo+ID4gPiA+ID4gPiA+ ID4+Pj4+IEl0IGlzIG1vcmUgYXQgdGhlIHNhbWUgbGV2ZWwgYXMgRUFMIG1lbW9yeSBtYW5hZ2Vt ZW50Og0KPiA+ID4gPiA+ID4gPiA+Pj4+PiBhbGxvY2F0ZSBzaW1wbGUgYnVmZmVyLCBidXQgd2l0 aCB0aGUgZXhjZXB0aW9uIGl0IGlzDQo+ID4gPiA+ID4gPiA+ID4+Pj4+IGRvbmUgb24gYSBzcGVj aWZpYyBkZXZpY2UsIHNvIGl0IHJlcXVpcmVzIGEgZGV2aWNlIElELg0KPiA+ID4gPiA+ID4gPiA+ Pj4+Pg0KPiA+ID4gPiA+ID4gPiA+Pj4+PiBUaGUgb3RoZXIgcmVhc29uIGl0IG5lZWRzIHRvIGJl IGEgZnVsbCBsaWJyYXJ5IGlzIHRoYXQNCj4gPiA+ID4gPiA+ID4gPj4+Pj4gaXQgd2lsbCBzdGFy dCBhIHdvcmtsb2FkIG9uIHRoZSBHUFUgYW5kIGdldCBjb21wbGV0aW9uDQo+ID4gPiA+ID4gPiA+ ID4+Pj4+IG5vdGlmaWNhdGlvbiBzbyB3ZSBjYW4gaW50ZWdyYXRlIHRoZSBHUFUgd29ya2xvYWQg aW4gYSBwYWNrZXQNCj4gPiBwcm9jZXNzaW5nIHBpcGVsaW5lLg0KPiA+ID4gPiA+ID4gPiA+Pj4+ DQo+ID4gPiA+ID4gPiA+ID4+Pj4gSSBtaWdodCBoYXZlIGNvbmZ1c2VkIHlvdS4gTXkgaW50ZW50 aW9uIGlzIG5vdCB0byBtYWtlIHRvIGZpdA0KPiA+IHVuZGVyIG1lbXBvb2wgQVBJLg0KPiA+ID4g PiA+ID4gPiA+Pj4+DQo+ID4gPiA+ID4gPiA+ID4+Pj4gSSBhZ3JlZSB0aGF0IHdlIG5lZWQgYSBz ZXBhcmF0ZSBsaWJyYXJ5IGZvciB0aGlzLiBNeQ0KPiA+ID4gPiA+ID4gPiA+Pj4+IG9iamVjdGlv biBpcyBvbmx5IHRvIG5vdCBjYWxsIGxpYmdwdWRldiBhbmQgY2FsbCBpdA0KPiA+ID4gPiA+ID4g PiA+Pj4+IGxpYmdwdS4gQW5kIGhhdmUgQVBJcyB3aXRoIHJ0ZV9ncHVfIGluc3RlYWQgb2YNCj4g PiA+ID4gPiA+ID4gPj4+PiBydGVfZ3B1X2RldiBhcyBpdCBub3QgbGlrZSBleGlzdGluZyAiZGV2 aWNlIGxpYnJhcmllcyIgaW4NCj4gPiA+ID4gPiA+ID4gPj4+PiBEUERLIGFuZCBpdCBsaWtlIG90 aGVyICJsaWJyYXJpZXMiIGluIERQREsuDQo+ID4gPiA+ID4gPiA+ID4+Pg0KPiA+ID4gPiA+ID4g PiA+Pj4gSSB0aGluayB3ZSBzaG91bGQgZGVmaW5lIGEgcXVldWUgb2YgcHJvY2Vzc2luZyBhY3Rp b25zLCBzbw0KPiA+ID4gPiA+ID4gPiA+Pj4gaXQgbG9va3MgbGlrZSBvdGhlciBkZXZpY2UgbGli cmFyaWVzLg0KPiA+ID4gPiA+ID4gPiA+Pj4gQW5kIGFueXdheSBJIHRoaW5rIGEgbGlicmFyeSBt YW5hZ2luZyBhIGRldmljZSBjbGFzcywgYW5kDQo+ID4gPiA+ID4gPiA+ID4+PiBoYXZpbmcgc29t ZSBkZXZpY2UgZHJpdmVycyBkZXNlcnZlcyB0aGUgbmFtZSBvZiBkZXZpY2UgbGlicmFyeS4NCj4g PiA+ID4gPiA+ID4gPj4+DQo+ID4gPiA+ID4gPiA+ID4+PiBJIHdvdWxkIGxpa2UgdG8gcmVhZCBt b3JlIG9waW5pb25zLg0KPiA+ID4gPiA+ID4gPiA+Pg0KPiA+ID4gPiA+ID4gPiA+PiBTaW5jZSB0 aGUgbGlicmFyeSBpcyBhbiB1bmlmaWVkIGludGVyZmFjZSB0byBHUFUgZGV2aWNlDQo+ID4gPiA+ ID4gPiA+ID4+IGRyaXZlcnMgSSB0aGluayBpdCBzaG91bGQgYmUgbmFtZWQgYXMgaW4gdGhlIHBh dGNoIC0gZ3B1ZGV2Lg0KPiA+ID4gPiA+ID4gPiA+Pg0KPiA+ID4gPiA+ID4gPiA+PiBNZW1wb29s IGxvb2tzIGxpa2UgYW4gZXhjZXB0aW9uIGhlcmUgLSBpbml0aWFsbHkgaXQgd2FzDQo+ID4gPiA+ ID4gPiA+ID4+IHB1cmUgU1cgbGlicmFyeSwgYnV0IG5vdCB0aGVyZSBhcmUgSFcgYmFja2VuZHMg YW5kDQo+ID4gPiA+ID4gPiA+ID4+IGNvcnJlc3BvbmRpbmcgZGV2aWNlIGRyaXZlcnMuDQo+ID4g PiA+ID4gPiA+ID4+DQo+ID4gPiA+ID4gPiA+ID4+IFdoYXQgSSBkb24ndCB1bmRlcnN0YW5kIHdo ZXJlIGlzIEdQVSBzcGVjaWZpY3MgaGVyZT8NCj4gPiA+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4g PiA+IFRoYXQncyBhbiBpbnRlcmVzdGluZyBxdWVzdGlvbi4NCj4gPiA+ID4gPiA+ID4gPiBMZXQn cyBhc2sgZmlyc3Qgd2hhdCBpcyBhIEdQVSBmb3IgRFBESz8NCj4gPiA+ID4gPiA+ID4gPiBJIHRo aW5rIGl0IGlzIGxpa2UgYSBzdWItQ1BVIHdpdGggaGlnaCBwYXJhbGxlbCBleGVjdXRpb24NCj4g PiA+ID4gPiA+ID4gPiBjYXBhYmlsaXRpZXMsIGFuZCBpdCBpcyBjb250cm9sbGVkIGJ5IHRoZSBD UFUuDQo+ID4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiA+IEkgaGF2ZSBubyBnb29kIGlkZWFzIGhv dyB0byBuYW1lIGl0IGluIGFjY29yZGFuY2Ugd2l0aCBhYm92ZQ0KPiA+ID4gPiA+ID4gPiBkZXNj cmlwdGlvbiB0byBhdm9pZCAiRyIgd2hpY2ggZm9yICJHcmFwaGljcyIgaWYgdW5kZXJzdGFuZA0K PiA+ID4gPiA+ID4gPiBjb3JyZWN0bHkuIEhvd2V2ZXIsIG1heSBiZSBpdCBpcyBub3QgcmVxdWly ZWQuDQo+ID4gPiA+ID4gPiA+IE5vIHN0cm9uZyBvcGluaW9uIG9uIHRoZSB0b3BpYywgYnV0IHVu YmluZGluZyBmcm9tICJHcmFwaGljcyINCj4gPiA+ID4gPiA+ID4gd291bGQgYmUgbmljZS4NCj4g PiA+ID4gPiA+DQo+ID4gPiA+ID4gPiBUaGF0J3MgYSBxdWVzdGlvbiBJIGFzayBteXNlbGYgZm9y IG1vbnRocyBub3cuDQo+ID4gPiA+ID4gPiBJIGFtIG5vdCBhYmxlIHRvIGZpbmQgYSBiZXR0ZXIg bmFtZSwgYW5kIEkgc3RhcnQgdGhpbmtpbmcgdGhhdA0KPiA+ID4gPiA+ID4gIkdQVSIgaXMgZmFt b3VzIGVub3VnaCBpbiBoaWdoLWxvYWQgY29tcHV0aW5nIHRvIGNvbnZleSB0aGUgaWRlYQ0KPiA+ ID4gPiA+ID4gb2Ygd2hhdCB3ZSBjYW4gZXhwZWN0Lg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4NCj4g PiA+ID4gPiBUaGUgY2xvc2VzdCBJIGNhbiB0aGluayBvZiBpcyBiaWctbGl0dGxlIGFyY2hpdGVj dHVyZSBpbiBBUk0gU29DLg0KPiA+ID4gPiA+IGh0dHBzOi8vd3d3LmFybS5jb20vd2h5LWFybS90 ZWNobm9sb2dpZXMvYmlnLWxpdHRsZQ0KPiBGcm9tIHRoZSBhcHBsaWNhdGlvbiBwb3YsIGJpZy1s aXR0bGUgYXJjaCBpcyBub3RoaW5nIGJ1dCBTTVQuIE5vdCBzdXJlIGhvdyBpdCBpcyBzaW1pbGFy IHRvIGFub3RoZXINCj4gZGV2aWNlIG9uIFBDSWUuDQo+IA0KPiA+ID4gPiA+DQo+ID4gPiA+ID4g V2UgZG8gaGF2ZSBzaW1pbGFyIGFyY2hpdGVjdHVyZSwgV2hlcmUgdGhlICJjb3Byb2Nlc3NvciIg aXMgcGFydA0KPiA+ID4gPiA+IG9mIHRoZSBtYWluIENQVS4NCj4gPiA+ID4gPiBJdCBpcyBvcGVy YXRpb25zIGFyZToNCj4gPiA+ID4gPiAtIERvd25sb2FkIGZpcm13YXJlDQo+ID4gPiA+ID4gLSBN ZW1vcnkgbWFwcGluZyBmb3IgTWFpbiBDUFUgbWVtb3J5IGJ5IHRoZSBjby1wcm9jZXNzb3INCj4g PiA+ID4gPiAtIEVucS9EZXEgSm9icyBmcm9tL3RvIE1haW4gQ1BVL0NvcHJvY2Vzc29yIENQVS4N Cj4gPiA+ID4NCj4gPiA+ID4gWWVzIGl0IGxvb2tzIGxpa2UgdGhlIGV4YWN0IHNhbWUgc2NvcGUu DQo+ID4gPiA+IEkgbGlrZSB0aGUgd29yZCAiY28tcHJvY2Vzc29yIiBpbiB0aGlzIGNvbnRleHQu DQo+ID4gPiA+DQo+ID4gPiA+ID4gSWYgeW91ciBzY29wZSBpcyBzb21ldGhpbmcgc2ltaWxhciBh bmQgTm8gR3JhcGhpY3MgaW52b2x2ZWQgaGVyZQ0KPiA+ID4gPiA+IHRoZW4gd2UgY2FuIHJlbW92 ZSBHLg0KPiA+ID4gPg0KPiA+ID4gPiBJbmRlZWQgbm8gZ3JhcGhpY3MgaW4gRFBESyA6KQ0KPiA+ ID4gPiBCeSByZW1vdmluZyB0aGUgRywgeW91IG1lYW4ga2VlcGluZyBvbmx5IFBVPyBsaWtlICJw dWRldiI/DQo+ID4gPiA+IFdlIGNvdWxkIGFsc28gZGVmaW5lIHRoZSBHIGFzICJHZW5lcmFsIi4N Cj4gPiA+ID4NCj4gPiA+ID4gPiBDb2luY2lkZW50YWxseSwgWWVzdGVyZGF5LCBJIGhhZCBhbiBp bnRlcmFjdGlvbiB3aXRoIEVsZW5hIGZvciB0aGUNCj4gPiA+ID4gPiBzYW1lIGZvciBCYXNlQmFu ZCByZWxhdGVkIHdvcmsgaW4gT1JBTiB3aGVyZSBHUFUgdXNlZCBhcyBCYXNlYmFuZA0KPiA+ID4g PiA+IHByb2Nlc3NpbmcgaW5zdGVhZCBvZiBHcmFwaGljcy4oU28gSSBjYW4gdW5kZXJzdGFuZCB0 aGUgYmlnDQo+ID4gPiA+ID4gcGljdHVyZSBvZiB0aGlzIGxpYnJhcnkpDQo+IFRoaXMgcGF0Y2gg ZG9lcyBub3QgcHJvdmlkZSB0aGUgYmlnIHBpY3R1cmUgdmlldyBvZiB3aGF0IHRoZSBwcm9jZXNz aW5nIGxvb2tzIGxpa2UgdXNpbmcgR1BVLiBJdCB3b3VsZA0KPiBiZSBnb29kIHRvIGV4cGxhaW4g dGhhdC4NCj4gRm9yIGV4Og0KPiAxKSBXaWxsIHRoZSBub3Rpb24gb2YgR1BVIGhpZGRlbiBmcm9t IHRoZSBhcHBsaWNhdGlvbj8gaS5lLiBpcyB0aGUgYXBwbGljYXRpb24gYWxsb3dlZCB0byBsYXVu Y2gNCj4ga2VybmVscz8NCj4gCTFhKSBXaWxsIERQREsgcHJvdmlkZSBhYnN0cmFjdCBBUElzIHRv IGxhdW5jaCBrZXJuZWxzPw0KPiAgICAgIFRoaXMgd291bGQgcmVxdWlyZSB1cyB0byBoYXZlIHRo ZSBub3Rpb24gb2YgR1BVIGluIERQREsgYW5kIHRoZSBhcHBsaWNhdGlvbiB3b3VsZCBkZXBlbmQg b24gdGhlDQo+IGF2YWlsYWJpbGl0eSBvZiBHUFUgaW4gdGhlIHN5c3RlbS4NCj4gMikgSXMgbGF1 bmNoaW5nIGtlcm5lbHMgaGlkZGVuPyBpLmUuIHRoZSBhcHBsaWNhdGlvbiBzdGlsbCBjYWxscyBE UERLIGFic3RyYWN0IEFQSXMgKHN1Y2ggYXMNCj4gZW5jcnlwdGlvbi9kZWNyeXB0aW9uIEFQSXMp IHdpdGhvdXQga25vd2luZyB0aGF0IHRoZSBlbmNyeXB0aW9uL2RlY3J5cHRpb24gaXMgaGFwcGVu aW5nIG9uIEdQVS4NCj4gICAgICBUaGlzIGRvZXMgbm90IHJlcXVpcmUgdXMgdG8gaGF2ZSBhIG5v dGlvbiBvZiBHUFUgaW4gRFBESyBhdCB0aGUgQVBJIGxldmVsDQo+IA0KPiBJZiB3ZSBrZWVwIENY TCBpbiBtaW5kLCBJIHdvdWxkIGltYWdpbmUgdGhhdCBpbiB0aGUgZnV0dXJlIHRoZSBkZXZpY2Vz IG9uIFBDSWUgY291bGQgaGF2ZSB0aGVpciBvd24NCj4gbG9jYWwgbWVtb3J5LiBNYXkgYmUgc29t ZSBvZiB0aGUgQVBJcyBjb3VsZCB1c2UgZ2VuZXJpYyBuYW1lcy4gRm9yIGV4OiBpbnN0ZWFkIG9m IGNhbGxpbmcgaXQgYXMNCj4gInJ0ZV9ncHVfbWFsbG9jIiBtYXkgYmUgd2UgY291bGQgY2FsbCBp dCBhcyAicnRlX2Rldl9tYWxsb2MiLiBUaGlzIHdheSBhbnkgZnV0dXJlIGRldmljZSB3aGljaCBo b3N0cw0KPiBpdHMgb3duIG1lbW9yeSB0aGF0IG5lZWQgdG8gYmUgbWFuYWdlZCBieSB0aGUgYXBw bGljYXRpb24sIGNhbiB1c2UgdGhlc2UgQVBJcy4NCj4gDQoNCiJydGVfZGV2X21hbGxvYyIgc291 bmRzIGEgZ29vZCBuYW1lLCB0aGVuIGxvb2tzIGxpa2Ugd2UgbmVlZCB0byBlbmhhbmNlIHRoZQ0K J3N0cnVjdCBydGVfZGV2aWNlJyB3aXRoIHNvbWUgbmV3IG9wcyBhczoNCg0KZWFsOiBtb3ZlIERN QSBtYXBwaW5nIGZyb20gYnVzLXNwZWNpZmljIHRvIGdlbmVyaWMgZHJpdmVyDQoNCmh0dHBzOi8v cGF0Y2h3b3JrLmRwZGsub3JnL3Byb2plY3QvZHBkay9wYXRjaC8yMDIxMDMzMTIyNDU0Ny4yMjE3 NzU5LTEtdGhvbWFzQG1vbmphbG9uLm5ldC8NCg0KPiANCj4gPiA+ID4NCj4gPiA+ID4gWWVzIGJh c2ViYW5kIHByb2Nlc3NpbmcgaXMgb25lIHBvc3NpYmxlIHVzYWdlIG9mIEdQVSB3aXRoIERQREsu DQo+ID4gPiA+IFdlIGNvdWxkIGFsc28gaW1hZ2luZSBzb21lIHNlY3VyaXR5IGFuYWx5c2lzLCBv ciBhbnkgbWFjaGluZSBsZWFybmluZy4uLg0KPiA+ID4gPg0KPiA+ID4gPiA+IEkgY2FuIHRoaW5r IG9mICJjb3Byb2Nlc3Nvci1kZXYiIGFzIG9uZSBvZiB0aGUgbmFtZS4NCj4gPiA+ID4NCj4gPiA+ ID4gImNvcHJvY2Vzc29yIiBsb29rcyB0b28gbG9uZyBhcyBwcmVmaXggb2YgdGhlIGZ1bmN0aW9u cy4NCj4gPg0KPiA+IFllcy4gTGlicmF5IG5hbWUgY2FuIGJlIGxlbmd0aHksIGJ1dCBBUEkgcHJl Zml4IHNob3VsZCBiZSAzIGxldHRlcnMga2luZCBzaG9ydA0KPiA+IGZvcm0gd2lsbCBiZSByZXF1 aXJlZC4NCj4gPg0KPiA+DQo+ID4gPiA+DQo+ID4gPiA+ID4gV2UgZG8gaGF2ZSBzaW1pbGFyIG1h Y2hpbmUgbGVhcm5pbmcgY28tcHJvY2Vzc29ycyhmb3IgY29tcHV0ZSkgaWYNCj4gPiA+ID4gPiB3 ZSBjYW4ga2VlcCBhIGdlbmVyaWMgbmFtZSBhbmQgaXQgaXMgZm9yIHRoZSBhYm92ZSBmdW5jdGlv bnMgd2UNCj4gPiA+ID4gPiBtYXkgdXNlIHRoaXMgc3Vic3lzdGVtIGFzIHdlbGwgaW4gdGhlIGZ1 dHVyZS4NCj4gPiA+ID4NCj4gPiA+DQo+ID4gPiBBY2NlbGVyYXRvciwgJ2FjY2VfZGV2JyA/IDst KQ0KPiA+DQo+ID4gSXQgbWF5IGdldCBjb25mdXNlZCB3aXRoIEhXIGFjY2VsZXJhdG9ycy4NCj4g Pg0KPiA+DQo+ID4gU29tZSBvZiB0aGUgb3B0aW9ucyBJIGNhbiB0aGluayBvZi4gU29ydGluZyBp biBteSBwcmVmZXJlbmNlLg0KPiA+DQo+ID4gbGlicmFyeSBuYW1lLCBBUEkgcHJlZml4DQo+ID4g MSkgbGliaHBjLWRldiwgcnRlX2hwY18gKGhwYy0+IEhldGVyb2dlbmVvdXMgcHJvY2Vzc29yIGNv bXB1dGUpDQo+ID4gMikgbGliaGMtZGV2LCBydGVfaGNfDQo+ID4gKGh0dHBzOi8vZW4ud2lraXBl ZGlhLm9yZy93aWtpL0hldGVyb2dlbmVvdXNfY29tcHV0aW5nIHNlZTogRXhhbXBsZQ0KPiA+IGhh cmR3YXJlKQ0KPiA+IDMpIGxpYnB1LWRldiwgcnRlX3B1XyAocHUgLT4gcHJvY2Vzc2luZyB1bml0 KQ0KPiA+IDQpIGxpYmhwLWRldiwgcnRlX2hwXyAoaHAtPmhldGVyb2dlbmVvdXMgcHJvY2Vzc29y KQ0KPiA+IDUpIGxpYmNvcHJvY2Vzc29yLWRldiwgcnRlX2Nwc18gPw0KPiA+IDYpIGxpYmNvbXB1 dGUtZGV2LCBydGVfY3B0XyA/DQo+ID4gNykgbGliZ3B1LWRldiwgcnRlX2dwdV8NCj4gVGhlc2Ug c2VlbSB0byBhc3N1bWUgdGhhdCB0aGUgYXBwbGljYXRpb24gY2FuIGxhdW5jaCBpdHMgb3duIHdv cmtsb2FkIG9uIHRoZSBkZXZpY2U/IERvZXMgRFBESyBuZWVkIHRvDQo+IHByb3ZpZGUgYWJzdHJh Y3QgQVBJcyBmb3IgbGF1bmNoaW5nIHdvcmsgb24gYSBkZXZpY2U/DQo+IA0KPiANCj4gPg0KPiA+ DQo+ID4NCj4gPg0KPiA+ID4NCj4gPiA+ID4gWWVzIHRoYXQncyB0aGUgaWRlYSB0byBzaGFyZSBh IGNvbW1vbiBzeW5jaHJvbml6YXRpb24gbWVjaGFuaXNtIHdpdGgNCj4gPiA+ID4gZGlmZmVyZW50 IEhXLg0KPiA+ID4gPg0KPiA+ID4gPiBUaGF0J3MgY29vbCB0byBoYXZlIHN1Y2ggYSBiaWcgaW50 ZXJlc3QgaW4gdGhlIGNvbW11bml0eSBmb3IgdGhpcyBwYXRjaC4NCj4gPiA+ID4NCj4gPiA+DQo=