From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id B136510A3 for ; Tue, 30 Oct 2018 15:45:25 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by orsmga103.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 30 Oct 2018 07:45:24 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.54,444,1534834800"; d="scan'208,217";a="276886828" Received: from fmsmsx108.amr.corp.intel.com ([10.18.124.206]) by fmsmga006.fm.intel.com with ESMTP; 30 Oct 2018 07:45:24 -0700 Received: from fmsmsx118.amr.corp.intel.com (10.18.116.18) by FMSMSX108.amr.corp.intel.com (10.18.124.206) with Microsoft SMTP Server (TLS) id 14.3.408.0; Tue, 30 Oct 2018 07:45:24 -0700 Received: from shsmsx151.ccr.corp.intel.com (10.239.6.50) by fmsmsx118.amr.corp.intel.com (10.18.116.18) with Microsoft SMTP Server (TLS) id 14.3.408.0; Tue, 30 Oct 2018 07:45:23 -0700 Received: from shsmsx104.ccr.corp.intel.com ([169.254.5.117]) by SHSMSX151.ccr.corp.intel.com ([169.254.3.199]) with mapi id 14.03.0415.000; Tue, 30 Oct 2018 22:45:21 +0800 From: "Lin, Xueqin" To: Alejandro Lucero CC: "Yao, Lei A" , Thomas Monjalon , dev , "Xu, Qian Q" , "Burakov, Anatoly" , "Yigit, Ferruh" , "Zhang, Qi Z" Thread-Topic: [dpdk-dev] [PATCH v3 0/6] use IOVAs check based on DMA mask Thread-Index: AQHUbwHVCqPw4mslyE66+0cqAeEf9aU14R4g//+BeYCAAJNOUP//fw2AgAAGWoCAAAFZAIAAF0MAgAACGoCAABM6AIAAi+4w//+ArgAALSJAoP//5lCA//9wTDCAAJ+3gP//ZyZQgAC6C4CAABhqAP//b+IA Date: Tue, 30 Oct 2018 14:45:20 +0000 Message-ID: <0D300480287911409D9FF92C1FA2A3355B443147@SHSMSX104.ccr.corp.intel.com> References: <1538743527-8285-1-git-send-email-alejandro.lucero@netronome.com> <2737161.TvyDVilZt4@xps> <2DBBFF226F7CF64BAFCA79B681719D954502B94F@shsmsx102.ccr.corp.intel.com> <0D300480287911409D9FF92C1FA2A3355B442C48@SHSMSX104.ccr.corp.intel.com> <0D300480287911409D9FF92C1FA2A3355B443027@SHSMSX104.ccr.corp.intel.com> <0D300480287911409D9FF92C1FA2A3355B443098@SHSMSX104.ccr.corp.intel.com> In-Reply-To: Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ctpclassification: CTP_NT x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiMGNkYTk5YjEtMmZkMi00MDM2LWFiMzItMGRkOGZlNTlhYmM4IiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjIuNS4xOCIsIlRydXN0ZWRMYWJlbEhhc2giOiJIUWp1b291Wk0rcVF0cjE2WFlEemdNa05qV2I2MkVtOHZUbVM2RlNMWFdoeXpMbFlBcUErcmNiZWRSM1FyeENcLyJ9 dlp-product: dlpe-windows dlp-version: 11.0.400.15 dlp-reaction: no-action x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Subject: Re: [dpdk-dev] [PATCH v3 0/6] use IOVAs check based on DMA mask X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Oct 2018 14:45:31 -0000 SGkgTHVjZXJvLA0KDQpUaGUgcGF0Y2ggY291bGQgZml4IGJvdGggdGVzdHBtZCAgYW5kIG11bHRp LXByb2Nlc3MgY2Fu4oCZdCBzZXR1cCBpc3N1ZXMgb24gbXkgZW52aXJvbm1lbnQuDQpIb3BlIHRo YXQgeW91IGNvdWxkIHVwbG9hZCBmaXggcGF0Y2ggdG8gcGF0Y2hlcyBwYWdlIGluIGNvbW11bml0 eS4NClRoYW5rcyBhIGxvdC4NCg0KQmVzdCByZWdhcmRzLA0KWHVlcWluDQoNCkZyb206IEFsZWph bmRybyBMdWNlcm8gW21haWx0bzphbGVqYW5kcm8ubHVjZXJvQG5ldHJvbm9tZS5jb21dDQpTZW50 OiBUdWVzZGF5LCBPY3RvYmVyIDMwLCAyMDE4IDEwOjA1IFBNDQpUbzogTGluLCBYdWVxaW4gPHh1 ZXFpbi5saW5AaW50ZWwuY29tPg0KQ2M6IFlhbywgTGVpIEEgPGxlaS5hLnlhb0BpbnRlbC5jb20+ OyBUaG9tYXMgTW9uamFsb24gPHRob21hc0Btb25qYWxvbi5uZXQ+OyBkZXYgPGRldkBkcGRrLm9y Zz47IFh1LCBRaWFuIFEgPHFpYW4ucS54dUBpbnRlbC5jb20+OyBCdXJha292LCBBbmF0b2x5IDxh bmF0b2x5LmJ1cmFrb3ZAaW50ZWwuY29tPjsgWWlnaXQsIEZlcnJ1aCA8ZmVycnVoLnlpZ2l0QGlu dGVsLmNvbT47IFpoYW5nLCBRaSBaIDxxaS56LnpoYW5nQGludGVsLmNvbT4NClN1YmplY3Q6IFJl OiBbZHBkay1kZXZdIFtQQVRDSCB2MyAwLzZdIHVzZSBJT1ZBcyBjaGVjayBiYXNlZCBvbiBETUEg bWFzaw0KDQoNCk9uIFR1ZSwgT2N0IDMwLCAyMDE4IGF0IDEyOjM3IFBNIEFsZWphbmRybyBMdWNl cm8gPGFsZWphbmRyby5sdWNlcm9AbmV0cm9ub21lLmNvbTxtYWlsdG86YWxlamFuZHJvLmx1Y2Vy b0BuZXRyb25vbWUuY29tPj4gd3JvdGU6DQoNCk9uIFR1ZSwgT2N0IDMwLCAyMDE4IGF0IDEyOjIy IFBNIExpbiwgWHVlcWluIDx4dWVxaW4ubGluQGludGVsLmNvbTxtYWlsdG86eHVlcWluLmxpbkBp bnRlbC5jb20+PiB3cm90ZToNClNvbWUgZm91bmQgb24gc29tZSBvdXIgc2VydmVyczoNCklmICBu b3QgYWRkIOKAnWludGVsX2lvbW11PW9uIGlvbW11PXB04oCdIGluIC9ib290L2dydWIyL2dydWIu Y2ZnIGZpbGUsIHRoZW4gcmVib290IHRvIG1ha2UgaXQgZWZmZWN0aXZlLg0KMTguMTEgcmMxOiBT dWNjZXNzIHRvIHNldHVwIHRlc3RwbWQgIGFuZCBzZWNvbmRhcnkgcHJvY2Vzcy4NCg0KSWYgIGFk ZCAg4oCdaW50ZWxfaW9tbXU9b24gaW9tbXU9cHTigJ0gaW4gL2Jvb3QvZ3J1YjIvZ3J1Yi5jZmcg ZmlsZSwgdGhlbiByZWJvb3QgdG8gbWFrZSBpdCBlZmZlY3RpdmUuDQoxOC4xMSByYzE6ICBGYWls IHRvIHNldHVwIHRlc3RwbWQgIGFuZCBzZWNvbmRhcnkgcHJvY2Vzcy4NCjE4LjExIHJjMSsgZG1h X21hc2tfZml4IHBhdGNoOiBzdWNjZXNzIHRvIHNldHVwIHRlc3RwbWQsIGJ1dCBmYWlsIHRvIHNl dHVwIHNlY29uZGFyeSBwcm9jZXNzLg0KDQpNYXliZSDigJ1pbnRlbF9pb21tdT1vbiBpb21tdT1w dOKAnSBlbmFibGUgb3Igbm90IHJlc3VsdCBpbiBvdXIgdGVzdCBnYXAuDQpNb3N0IG9mIG91ciB0 ZWFtIHNlcnZlcnMgc2hvdWxkIGVuYWJsZSB0aGUgSU9NTVUgZm9yIFZULWQgYW5kIHZmaW8gdGVz dC4NCg0KDQpJdCBtYWtlcyBzZW5zZSBiZWNhdXNlIHRoZSBwcm9ibGVtIGlzIHdoZW4gdGhlIElP VkEgbW9kZSBpcyBzZXQgaW5zaWRlIGRyaXZlcnMvYnVzL3BjaS9saW51eC9wY2kuYyBhbmQgaWYg dGhlcmUgaXMgbm90IElPTU1VLCBub3QgY2FsbCB0byBydGVfZWFsX2NoZWNrX2RtYV9tYXNrIGF0 IGFsbC4NCg0KDQpCZXN0IHJlZ2FyZHMsDQpYdWVxaW4NCg0KRnJvbTogQWxlamFuZHJvIEx1Y2Vy byBbbWFpbHRvOmFsZWphbmRyby5sdWNlcm9AbmV0cm9ub21lLmNvbTxtYWlsdG86YWxlamFuZHJv Lmx1Y2Vyb0BuZXRyb25vbWUuY29tPl0NClNlbnQ6IFR1ZXNkYXksIE9jdG9iZXIgMzAsIDIwMTgg NjozOCBQTQ0KVG86IExpbiwgWHVlcWluIDx4dWVxaW4ubGluQGludGVsLmNvbTxtYWlsdG86eHVl cWluLmxpbkBpbnRlbC5jb20+Pg0KQ2M6IFlhbywgTGVpIEEgPGxlaS5hLnlhb0BpbnRlbC5jb208 bWFpbHRvOmxlaS5hLnlhb0BpbnRlbC5jb20+PjsgVGhvbWFzIE1vbmphbG9uIDx0aG9tYXNAbW9u amFsb24ubmV0PG1haWx0bzp0aG9tYXNAbW9uamFsb24ubmV0Pj47IGRldiA8ZGV2QGRwZGsub3Jn PG1haWx0bzpkZXZAZHBkay5vcmc+PjsgWHUsIFFpYW4gUSA8cWlhbi5xLnh1QGludGVsLmNvbTxt YWlsdG86cWlhbi5xLnh1QGludGVsLmNvbT4+OyBCdXJha292LCBBbmF0b2x5IDxhbmF0b2x5LmJ1 cmFrb3ZAaW50ZWwuY29tPG1haWx0bzphbmF0b2x5LmJ1cmFrb3ZAaW50ZWwuY29tPj47IFlpZ2l0 LCBGZXJydWggPGZlcnJ1aC55aWdpdEBpbnRlbC5jb208bWFpbHRvOmZlcnJ1aC55aWdpdEBpbnRl bC5jb20+PjsgWmhhbmcsIFFpIFogPHFpLnouemhhbmdAaW50ZWwuY29tPG1haWx0bzpxaS56Lnpo YW5nQGludGVsLmNvbT4+DQpTdWJqZWN0OiBSZTogW2RwZGstZGV2XSBbUEFUQ0ggdjMgMC82XSB1 c2UgSU9WQXMgY2hlY2sgYmFzZWQgb24gRE1BIG1hc2sNCg0KDQpPbiBUdWUsIE9jdCAzMCwgMjAx OCBhdCAxMDozNCBBTSBMaW4sIFh1ZXFpbiA8eHVlcWluLmxpbkBpbnRlbC5jb208bWFpbHRvOnh1 ZXFpbi5saW5AaW50ZWwuY29tPj4gd3JvdGU6DQpIaSBMdWNlcm8sDQoNCk5vLCB3ZSBoYXZlIHJl cHJvZHVjZWQgbXVsdGktcHJvY2VzcyBpc3N1ZXMoaW5jbHVkZSBzeW1tZXRyaWNfbXAsIHNpbXBs ZV9tcCwgaG90cGx1Z19tcCwgbXVsdGktcHJvY2VzcyB1bml0IHRlc3TigKYgKW9uIG1vc3Qgb2Yg b3VyIHNlcnZlcnMuDQpJdCBpcyBhbHNvIHN0cmFuZ2UgdGhhdCAxfjIgc2VydmVycyBkb27igJl0 IGhhdmUgdGhlIGlzc3VlLg0KDQoNClllcywgeW91IGFyZSByaWdodC4gSSBjb3VsZCBleGVjdXRl IGl0IGJ1dCBpdCB3YXMgZHVlIHRvIGhvdyB0aGlzIHByb2JsZW0gdHJpZ2dlcnMuDQpJIHRoaW5r IEkgY2FuIGZpeCB0aGlzIGFuZCBhdCB0aGUgc2FtZSB0aW1lIHNvbHZpbmcgcHJvcGVybHkgdGhl IGluaXRpYWwgaXNzdWUgd2l0aG91dCBhbnkgbGltaXRhdGlvbiBsaWtlIHRoYXQgcG90ZW50aWFs IHJhY2UgY29uZGl0aW9uIEkgbWVudGlvbmVkLg0KSSBjYW4gZ2l2ZSB5b3UgYSBwYXRjaCB0byB0 cnkgaW4gYSBjb3VwbGUgb2YgaG91cnMuDQoNCg0KSGkgTGluLA0KDQpDYW4geW91IHRyeSB0aGUg cGF0Y2ggYXR0YWNoZWQ/DQoNClRoYW5rcw0KDQpUaGFua3MNCg0KQmluZCB0d28gTk5UIHBvcnRz IG9yIEZWTCBwb3J0cw0KDQouL2J1aWxkL3N5bW1ldHJpY19tcCAtYyA0IC0tcHJvYy10eXBlPWF1 dG8gLS0gLXAgMyAtLW51bS1wcm9jcz00IC0tcHJvYy1pZD0xDQoNCkVBTDogRGV0ZWN0ZWQgODgg bGNvcmUocykNCkVBTDogRGV0ZWN0ZWQgMiBOVU1BIG5vZGVzDQpFQUw6IEF1dG8tZGV0ZWN0ZWQg cHJvY2VzcyB0eXBlOiBTRUNPTkRBUlkNCltOZXcgVGhyZWFkIDB4N2ZmZmY2ZWRhNzAwIChMV1Ag OTAxMDMpXQ0KRUFMOiBNdWx0aS1wcm9jZXNzIHNvY2tldCAvdmFyL3J1bi9kcGRrL3J0ZS9tcF9z b2NrZXRfOTAwOTlfMmYxYjU1Mzg4MmI2Mg0KW05ldyBUaHJlYWQgMHg3ZmZmZjY2ZDk3MDAgKExX UCA5MDEwNCldDQoNClRocmVhZCAxICJzeW1tZXRyaWNfbXAiIHJlY2VpdmVkIHNpZ25hbCBTSUdT RUdWLCBTZWdtZW50YXRpb24gZmF1bHQuDQoweDAwMDAwMDAwMDA1NTY2YjUgaW4gcnRlX2ZiYXJy YXlfZmluZF9uZXh0X3VzZWQgKCkNCihnZGIpIGJ0DQojMCAgMHgwMDAwMDAwMDAwNTU2NmI1IGlu IHJ0ZV9mYmFycmF5X2ZpbmRfbmV4dF91c2VkICgpDQojMSAgMHgwMDAwMDAwMDAwNTRkYTljIGlu IHJ0ZV9lYWxfY2hlY2tfZG1hX21hc2sgKCkNCiMyICAweDAwMDAwMDAwMDA1NzJhZTcgaW4gcGNp X29uZV9kZXZpY2VfaW9tbXVfc3VwcG9ydF92YSAoKQ0KIzMgIDB4MDAwMDAwMDAwMDU3Mzk4OCBp biBydGVfcGNpX2dldF9pb21tdV9jbGFzcyAoKQ0KIzQgIDB4MDAwMDAwMDAwMDU0Zjc0MyBpbiBy dGVfYnVzX2dldF9pb21tdV9jbGFzcyAoKQ0KIzUgIDB4MDAwMDAwMDAwMDUzYzEyMyBpbiBydGVf ZWFsX2luaXQgKCkNCiM2ICAweDAwMDAwMDAwMDA0NmJlMmIgaW4gbWFpbiAoKQ0KDQpCZXN0IHJl Z2FyZHMsDQpYdWVxaW4NCg0KRnJvbTogQWxlamFuZHJvIEx1Y2VybyBbbWFpbHRvOmFsZWphbmRy by5sdWNlcm9AbmV0cm9ub21lLmNvbTxtYWlsdG86YWxlamFuZHJvLmx1Y2Vyb0BuZXRyb25vbWUu Y29tPl0NClNlbnQ6IFR1ZXNkYXksIE9jdG9iZXIgMzAsIDIwMTggNTo0MSBQTQ0KVG86IExpbiwg WHVlcWluIDx4dWVxaW4ubGluQGludGVsLmNvbTxtYWlsdG86eHVlcWluLmxpbkBpbnRlbC5jb20+ Pg0KQ2M6IFlhbywgTGVpIEEgPGxlaS5hLnlhb0BpbnRlbC5jb208bWFpbHRvOmxlaS5hLnlhb0Bp bnRlbC5jb20+PjsgVGhvbWFzIE1vbmphbG9uIDx0aG9tYXNAbW9uamFsb24ubmV0PG1haWx0bzp0 aG9tYXNAbW9uamFsb24ubmV0Pj47IGRldiA8ZGV2QGRwZGsub3JnPG1haWx0bzpkZXZAZHBkay5v cmc+PjsgWHUsIFFpYW4gUSA8cWlhbi5xLnh1QGludGVsLmNvbTxtYWlsdG86cWlhbi5xLnh1QGlu dGVsLmNvbT4+OyBCdXJha292LCBBbmF0b2x5IDxhbmF0b2x5LmJ1cmFrb3ZAaW50ZWwuY29tPG1h aWx0bzphbmF0b2x5LmJ1cmFrb3ZAaW50ZWwuY29tPj47IFlpZ2l0LCBGZXJydWggPGZlcnJ1aC55 aWdpdEBpbnRlbC5jb208bWFpbHRvOmZlcnJ1aC55aWdpdEBpbnRlbC5jb20+PjsgWmhhbmcsIFFp IFogPHFpLnouemhhbmdAaW50ZWwuY29tPG1haWx0bzpxaS56LnpoYW5nQGludGVsLmNvbT4+DQpT dWJqZWN0OiBSZTogW2RwZGstZGV2XSBbUEFUQ0ggdjMgMC82XSB1c2UgSU9WQXMgY2hlY2sgYmFz ZWQgb24gRE1BIG1hc2sNCg0KDQpPbiBUdWUsIE9jdCAzMCwgMjAxOCBhdCAzOjIwIEFNIExpbiwg WHVlcWluIDx4dWVxaW4ubGluQGludGVsLmNvbTxtYWlsdG86eHVlcWluLmxpbkBpbnRlbC5jb20+ PiB3cm90ZToNCkhpIEx1Y2VybyZUaG9tYXMsDQoNCkZpbmQgdGhlIHBhdGNoIGNhbuKAmXQgZml4 IG11bHRpLXByb2Nlc3MgY2FzZXMuDQoNCkhpLA0KDQpJIHRoaW5rIGl0IGlzIG5vdCBzcGVjaWZp Y2FsbHkgYWJvdXQgbXVsdGlwcm9jZXNzIGJ1dCBhYm91dCBob3RwbHVnIHdpdGggbXVsdGlwcm9j ZXNzIGJlY2F1c2UgSSBjYW4gZXhlY3V0ZSB0aGUgc3ltbWV0cmljX21wIHN1Y2Nlc3NmdWxseSB3 aXRoIGEgc2Vjb25kYXJ5IHByb2Nlc3MuDQoNCldvcmtpbmcgb24gdGhpcyBhcyBhIHByaW9yaXR5 Lg0KDQpUaGFua3MuDQoNClN0ZXBzOg0KDQoxLiAgICAgICBTZXR1cCBwcmltYXJ5IHByb2Nlc3Mg c3VjY2Vzc2Z1bGx5DQoNCi4vaG90cGx1Z19tcCAtLXByb2MtdHlwZT1hdXRvDQoNCg0KDQoyLiAg ICAgICBGYWlsIHRvIHNldHVwIHNlY29uZGFyeSBwcm9jZXNzDQoNCi4vaG90cGx1Z19tcCAtLXBy b2MtdHlwZT1hdXRvDQoNCkVBTDogRGV0ZWN0ZWQgODggbGNvcmUocykNCg0KRUFMOiBEZXRlY3Rl ZCAyIE5VTUEgbm9kZXMNCg0KRUFMOiBBdXRvLWRldGVjdGVkIHByb2Nlc3MgdHlwZTogU0VDT05E QVJZDQoNCkVBTDogTXVsdGktcHJvY2VzcyBzb2NrZXQgL3Zhci9ydW4vZHBkay9ydGUvbXBfc29j a2V0XzE0NzIxMl8yYmZlMDhlZTg4ZDIzDQoNClNlZ21lbnRhdGlvbiBmYXVsdCAoY29yZSBkdW1w ZWQpDQoNCg0KTW9yZSBpbmZvcm1hdGlvbiBhcyBiZWxvdzoNCg0KVGhyZWFkIDEgImhvdHBsdWdf bXAiIHJlY2VpdmVkIHNpZ25hbCBTSUdTRUdWLCBTZWdtZW50YXRpb24gZmF1bHQuDQoNCjB4MDAw MDAwMDAwMDU5N2NmYiBpbiBmaW5kX25leHQgKGFycj0weDdmZmZmN2ZmMjBhNCwgc3RhcnQ9MCwg dXNlZD10cnVlKQ0KDQogICAgYXQgL3Jvb3QvZHBkay9saWIvbGlicnRlX2VhbC9jb21tb24vZWFs X2NvbW1vbl9mYmFycmF5LmM6MjY0DQoNCjI2NCAgICAgICAgICAgICBmb3IgKGlkeCA9IGZpcnN0 OyBpZHggPCBtc2stPm5fbWFza3M7IGlkeCsrKSB7DQoNCiMwICAweDAwMDAwMDAwMDA1OTdjZmIg aW4gZmluZF9uZXh0IChhcnI9MHg3ZmZmZjdmZjIwYTQsIHN0YXJ0PTAsIHVzZWQ9dHJ1ZSkNCg0K ICAgIGF0IC9yb290L2RwZGsvbGliL2xpYnJ0ZV9lYWwvY29tbW9uL2VhbF9jb21tb25fZmJhcnJh eS5jOjI2NA0KDQojMSAgMHgwMDAwMDAwMDAwNTk4NTczIGluIGZiYXJyYXlfZmluZCAoYXJyPTB4 N2ZmZmY3ZmYyMGE0LCBzdGFydD0wLCBuZXh0PXRydWUsDQoNCiAgICB1c2VkPXRydWUpIGF0IC9y b290L2RwZGsvbGliL2xpYnJ0ZV9lYWwvY29tbW9uL2VhbF9jb21tb25fZmJhcnJheS5jOjEwMDEN Cg0KIzIgIDB4MDAwMDAwMDAwMDU5OTI5YiBpbiBydGVfZmJhcnJheV9maW5kX25leHRfdXNlZCAo YXJyPTB4N2ZmZmY3ZmYyMGE0LCBzdGFydD0wKQ0KDQogICAgYXQgL3Jvb3QvZHBkay9saWIvbGli cnRlX2VhbC9jb21tb24vZWFsX2NvbW1vbl9mYmFycmF5LmM6MTAxOA0KDQojMyAgMHgwMDAwMDAw MDAwNThjODc3IGluIHJ0ZV9tZW1zZWdfd2Fsa190aHJlYWRfdW5zYWZlIChmdW5jPTB4NThjNDAx IDxjaGVja19pb3ZhPiwNCg0KICAgIGFyZz0weDdmZmZmZmZmY2MzOCkgYXQgL3Jvb3QvZHBkay9s aWIvbGlicnRlX2VhbC9jb21tb24vZWFsX2NvbW1vbl9tZW1vcnkuYzo1ODkNCg0KIzQgIDB4MDAw MDAwMDAwMDU4Y2UwOCBpbiBydGVfZWFsX2NoZWNrX2RtYV9tYXNrIChtYXNrYml0cz00OCAnMCcp DQoNCiAgICBhdCAvcm9vdC9kcGRrL2xpYi9saWJydGVfZWFsL2NvbW1vbi9lYWxfY29tbW9uX21l bW9yeS5jOjQ2NQ0KDQojNSAgMHgwMDAwMDAwMDAwNWI5NmM0IGluIHBjaV9vbmVfZGV2aWNlX2lv bW11X3N1cHBvcnRfdmEgKGRldj0weDExYjNkOTApDQoNCiAgICBhdCAvcm9vdC9kcGRrL2RyaXZl cnMvYnVzL3BjaS9saW51eC9wY2kuYzo1OTMNCg0KIzYgIDB4MDAwMDAwMDAwMDViOTczOCBpbiBw Y2lfZGV2aWNlc19pb21tdV9zdXBwb3J0X3ZhICgpDQoNCiAgICBhdCAvcm9vdC9kcGRrL2RyaXZl cnMvYnVzL3BjaS9saW51eC9wY2kuYzo2MjYNCg0KIzcgIDB4MDAwMDAwMDAwMDViOTdhNyBpbiBy dGVfcGNpX2dldF9pb21tdV9jbGFzcyAoKQ0KDQogICAgYXQgL3Jvb3QvZHBkay9kcml2ZXJzL2J1 cy9wY2kvbGludXgvcGNpLmM6NjUwDQoNCiM4ICAweDAwMDAwMDAwMDA1OGYxY2UgaW4gcnRlX2J1 c19nZXRfaW9tbXVfY2xhc3MgKCkNCg0KICAgIGF0IC9yb290L2RwZGsvbGliL2xpYnJ0ZV9lYWwv Y29tbW9uL2VhbF9jb21tb25fYnVzLmM6MjM3DQoNCiM5ICAweDAwMDAwMDAwMDA1NzdjN2EgaW4g cnRlX2VhbF9pbml0IChhcmdjPTIsIGFyZ3Y9MHg3ZmZmZmZmZmRmOTgpDQoNCiAgICBhdCAvcm9v dC9kcGRrL2xpYi9saWJydGVfZWFsL2xpbnV4YXBwL2VhbC9lYWwuYzo5MTkNCg0KIzEwIDB4MDAw MDAwMDAwMDQ1ZGQ1NiBpbiBtYWluIChhcmdjPTIsIGFyZ3Y9MHg3ZmZmZmZmZmRmOTgpDQoNCiAg ICBhdCAvcm9vdC9kcGRrL2V4YW1wbGVzL211bHRpX3Byb2Nlc3MvaG90cGx1Z19tcC9tYWluLmM6 MjgNCg0KDQpCZXN0IHJlZ2FyZHMsDQpYdWVxaW4NCg0KRnJvbTogQWxlamFuZHJvIEx1Y2VybyBb bWFpbHRvOmFsZWphbmRyby5sdWNlcm9AbmV0cm9ub21lLmNvbTxtYWlsdG86YWxlamFuZHJvLmx1 Y2Vyb0BuZXRyb25vbWUuY29tPl0NClNlbnQ6IE1vbmRheSwgT2N0b2JlciAyOSwgMjAxOCA5OjQx IFBNDQpUbzogWWFvLCBMZWkgQSA8bGVpLmEueWFvQGludGVsLmNvbTxtYWlsdG86bGVpLmEueWFv QGludGVsLmNvbT4+DQpDYzogVGhvbWFzIE1vbmphbG9uIDx0aG9tYXNAbW9uamFsb24ubmV0PG1h aWx0bzp0aG9tYXNAbW9uamFsb24ubmV0Pj47IGRldiA8ZGV2QGRwZGsub3JnPG1haWx0bzpkZXZA ZHBkay5vcmc+PjsgWHUsIFFpYW4gUSA8cWlhbi5xLnh1QGludGVsLmNvbTxtYWlsdG86cWlhbi5x Lnh1QGludGVsLmNvbT4+OyBMaW4sIFh1ZXFpbiA8eHVlcWluLmxpbkBpbnRlbC5jb208bWFpbHRv Onh1ZXFpbi5saW5AaW50ZWwuY29tPj47IEJ1cmFrb3YsIEFuYXRvbHkgPGFuYXRvbHkuYnVyYWtv dkBpbnRlbC5jb208bWFpbHRvOmFuYXRvbHkuYnVyYWtvdkBpbnRlbC5jb20+PjsgWWlnaXQsIEZl cnJ1aCA8ZmVycnVoLnlpZ2l0QGludGVsLmNvbTxtYWlsdG86ZmVycnVoLnlpZ2l0QGludGVsLmNv bT4+DQpTdWJqZWN0OiBSZTogW2RwZGstZGV2XSBbUEFUQ0ggdjMgMC82XSB1c2UgSU9WQXMgY2hl Y2sgYmFzZWQgb24gRE1BIG1hc2sNCg0KDQpPbiBNb24sIE9jdCAyOSwgMjAxOCBhdCAxOjE4IFBN IFlhbywgTGVpIEEgPGxlaS5hLnlhb0BpbnRlbC5jb208bWFpbHRvOmxlaS5hLnlhb0BpbnRlbC5j b20+PiB3cm90ZToNCg0KDQpGcm9tOiBBbGVqYW5kcm8gTHVjZXJvIFttYWlsdG86YWxlamFuZHJv Lmx1Y2Vyb0BuZXRyb25vbWUuY29tPG1haWx0bzphbGVqYW5kcm8ubHVjZXJvQG5ldHJvbm9tZS5j b20+XQ0KU2VudDogTW9uZGF5LCBPY3RvYmVyIDI5LCAyMDE4IDg6NTYgUE0NClRvOiBUaG9tYXMg TW9uamFsb24gPHRob21hc0Btb25qYWxvbi5uZXQ8bWFpbHRvOnRob21hc0Btb25qYWxvbi5uZXQ+ Pg0KQ2M6IFlhbywgTGVpIEEgPGxlaS5hLnlhb0BpbnRlbC5jb208bWFpbHRvOmxlaS5hLnlhb0Bp bnRlbC5jb20+PjsgZGV2IDxkZXZAZHBkay5vcmc8bWFpbHRvOmRldkBkcGRrLm9yZz4+OyBYdSwg UWlhbiBRIDxxaWFuLnEueHVAaW50ZWwuY29tPG1haWx0bzpxaWFuLnEueHVAaW50ZWwuY29tPj47 IExpbiwgWHVlcWluIDx4dWVxaW4ubGluQGludGVsLmNvbTxtYWlsdG86eHVlcWluLmxpbkBpbnRl bC5jb20+PjsgQnVyYWtvdiwgQW5hdG9seSA8YW5hdG9seS5idXJha292QGludGVsLmNvbTxtYWls dG86YW5hdG9seS5idXJha292QGludGVsLmNvbT4+OyBZaWdpdCwgRmVycnVoIDxmZXJydWgueWln aXRAaW50ZWwuY29tPG1haWx0bzpmZXJydWgueWlnaXRAaW50ZWwuY29tPj4NClN1YmplY3Q6IFJl OiBbZHBkay1kZXZdIFtQQVRDSCB2MyAwLzZdIHVzZSBJT1ZBcyBjaGVjayBiYXNlZCBvbiBETUEg bWFzaw0KDQoNCk9uIE1vbiwgT2N0IDI5LCAyMDE4IGF0IDExOjQ2IEFNIFRob21hcyBNb25qYWxv biA8dGhvbWFzQG1vbmphbG9uLm5ldDxtYWlsdG86dGhvbWFzQG1vbmphbG9uLm5ldD4+IHdyb3Rl Og0KMjkvMTAvMjAxOCAxMjozOSwgQWxlamFuZHJvIEx1Y2VybzoNCj4gSSBnb3QgYSBwYXRjaCB0 aGF0IHNvbHZlcyBhIGJ1ZyB3aGVuIGNhbGxpbmcgcnRlX2VhbF9kbWFfbWFzayB1c2luZyB0aGUN Cj4gbWFzayBpbnN0ZWFkIG9mIHRoZSBtYXNrYml0cy4gSG93ZXZlciwgdGhpcyBkb2VzIG5vdCBz b2x2ZXMgdGhlIGRlYWRsb2NrLg0KDQpUaGUgZGVhZGxvY2sgaXMgYSBiaWdnZXIgY29uY2VybiBJ IHRoaW5rLg0KDQpJIHRoaW5rIG9uY2UgdGhlIGNhbGwgdG8gcnRlX2VhbF9jaGVja19kbWFfbWFz ayB1c2VzIHRoZSBtYXNrYml0cyBpbnN0ZWFkIG9mIHRoZSBtYXNrLCBjYWxsaW5nIHJ0ZV9tZW1z ZWdfd2Fsa190aHJlYWRfdW5zYWZlIGF2b2lkcyB0aGUgZGVhZGxvY2suDQoNCllhbywgY2FuIHlv dSB0cnkgd2l0aCB0aGUgYXR0YWNoZWQgcGF0Y2g/DQoNCkhpLCBMdWNlcm8NCg0KVGhpcyBwYXRj aCBjYW4gZml4IHRoZSBpc3N1ZSBhdCBteSBzaWRlLiBUaGFua3MgYSBsb3QNCmZvciB5b3UgcXVp Y2sgYWN0aW9uLg0KDQoNCkdyZWF0IQ0KDQpJIHdpbGwgc2VuZCBhbiBvZmZpY2lhbCBwYXRjaCB3 aXRoIHRoZSBjaGFuZ2VzLg0KDQpJIGhhdmUgdG8gc2F5IHRoYXQgSSB0ZXN0ZWQgdGhlIHBhdGNo c2V0LCBidXQgSSB0aGluayBpdCB3YXMgd2hlcmUgbGVnYWN5X21lbSB3YXMgc3RpbGwgdGhlcmUg YW5kIHRoZXJlZm9yZSBkeW5hbWljIG1lbW9yeSBhbGxvY2F0aW9uIGNvZGUgbm90IHVzZWQgZHVy aW5nIG1lbW9yeSBpbml0aWFsaXphdGlvbi4NCg0KVGhlcmUgaXMgc29tZXRoaW5nIHRoYXQgY29u Y2VybnMgbWUgdGhvdWdoLiBVc2luZyBydGVfbWVtc2VnX3dhbGtfdGhyZWFkX3Vuc2FmZSBjb3Vs ZCBiZSBhIHByb2JsZW0gdW5kZXIgc29tZSBzaXR1YXRpb25zIGFsdGhvdWdoIHRob3NlIHNpdHVh dGlvbnMgYmVpbmcgdW5saWtlbHkuDQoNClVzdWFsbHksIGNhbGxpbmcgcnRlX2VhbF9jaGVja19k bWFfbWFzayBoYXBwZW5zIGR1cmluZyBpbml0aWFsaXphdGlvbi4gVGhlbiBpdCBpcyBzYWZlIHRv IHVzZSB0aGUgdW5zYWZlIGZ1bmN0aW9uIGZvciB3YWxraW5nIG1lbXNlZ3MsIGJ1dCB3aXRoIGRl dmljZSBob3RwbHVnIGFuZCBkeW5hbWljIG1lbW9yeSBhbGxvY2F0aW9uLCB0aGVyZSBleGlzdHMg YSBwb3RlbnRpYWwgcmFjZSBjb25kaXRpb24gd2hlbiB0aGUgcHJpbWFyeSBwcm9jZXNzIGlzIGFs bG9jYXRpbmcgbW9yZSBtZW1vcnkgYW5kIGNvbmN1cnJlbnRseSBhIGRldmljZSBpcyBob3RwbHVn Z2VkIGFuZCBhIHNlY29uZGFyeSBwcm9jZXNzIGRvZXMgdGhlIGRldmljZSBpbml0aWFsaXphdGlv bi4gQnkgbm93LCB0aGlzIGlzIGp1c3QgYSBwcm9ibGVtIHdpdGggdGhlIE5GUCwgYW5kIHRoZSBw b3RlbnRpYWwgcmFjZSBjb25kaXRpb24gd2luZG93IHJlYWxseSB1bmxpa2VseSwgYnV0IEkgd2ls bCB3b3JrIG9uIHRoaXMgYXNhcC4NCg0KQlJzDQpMZWkNCg0KPiBJbnRlcmVzdGluZ2x5LCB0aGUg cHJvYmxlbSBsb29rcyBsaWtlIGEgY29tcGlsZXIgb25lLiBDYWxsaW5nDQo+IHJ0ZV9tZW1zZWdf d2FsayBkb2VzIG5vdCByZXR1cm4gd2hlbiBjYWxsaW5nIGluc2lkZSBydF9lYWxfZG1hX21hc2ss IGJ1dCBpZg0KPiB5b3UgbW9kaWZ5IHRoZSBjYWxsIGxpa2UgdGhpczoNCj4NCj4gLSAgICAgICBp ZiAocnRlX21lbXNlZ193YWxrKGNoZWNrX2lvdmEsICZtYXNrKSkNCj4gKyAgICAgICBpZiAoIXJ0 ZV9tZW1zZWdfd2FsayhjaGVja19pb3ZhLCAmbWFzaykpDQo+DQo+IGl0IHdvcmtzLCBhbHRob3Vn aCB0aGUgdmFsdWUgcmV0dXJuZWQgdG8gdGhlIGludm9rZXIgY2hhbmdlcywgb2YgY291cnNlLg0K PiBCdXQgdGhlIHBvaW50IGhlcmUgaXMgaXQgc2hvdWxkIGJlIHRoZSBzYW1lIGJlaGF2aW91ciB3 aGVuIGNhbGxpbmcNCj4gcnRlX21lbXNlZ193YWxrIHRoYW4gYmVmb3JlIGFuZCBpdCBpcyBub3Qu DQoNCkFueXdheSwgdGhlIGNvZGluZyBzdHlsZSByZXF1aXJlcyB0byBzYXZlIHRoZSByZXR1cm4g dmFsdWUgaW4gYSB2YXJpYWJsZSwNCmluc3RlYWQgb2YgbmVzdGluZyB0aGUgY2FsbCBpbiBhbiAi aWYiIGNvbmRpdGlvbi4NCkFuZCB0aGUgImlmIiBjaGVjayBzaG91bGQgYmUgZXhwbGljaXRseSAh PSAwIGJlY2F1c2UgaXQgaXMgbm90IGEgcmVhbCBib29sZWFuLg0KDQpQUzogcGxlYXNlIGRvIG5v dCB0b3AgcG9zdCBhbmQgYXZvaWQgSFRNTCBlbWFpbHMsIHRoYW5rcw0K