From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 34A84C433F5 for ; Fri, 11 Mar 2022 13:21:27 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1348871AbiCKNW2 (ORCPT ); Fri, 11 Mar 2022 08:22:28 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:32860 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1348862AbiCKNW2 (ORCPT ); Fri, 11 Mar 2022 08:22:28 -0500 Received: from frasgout.his.huawei.com (frasgout.his.huawei.com [185.176.79.56]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 350281C3D18; Fri, 11 Mar 2022 05:21:24 -0800 (PST) Received: from fraeml704-chm.china.huawei.com (unknown [172.18.147.200]) by frasgout.his.huawei.com (SkyGuard) with ESMTP id 4KFRNx0l1Kz67PyM; Fri, 11 Mar 2022 21:19:45 +0800 (CST) Received: from lhreml721-chm.china.huawei.com (10.201.108.72) by fraeml704-chm.china.huawei.com (10.206.15.53) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2308.21; Fri, 11 Mar 2022 14:21:21 +0100 Received: from lhreml710-chm.china.huawei.com (10.201.108.61) by lhreml721-chm.china.huawei.com (10.201.108.72) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.21; Fri, 11 Mar 2022 13:21:20 +0000 Received: from lhreml710-chm.china.huawei.com ([169.254.81.184]) by lhreml710-chm.china.huawei.com ([169.254.81.184]) with mapi id 15.01.2308.021; Fri, 11 Mar 2022 13:21:20 +0000 From: Shameerali Kolothum Thodi To: Alex Williamson , "Tian, Kevin" CC: Jason Gunthorpe , "kvm@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "linux-crypto@vger.kernel.org" , "linux-pci@vger.kernel.org" , "cohuck@redhat.com" , "mgurtovoy@nvidia.com" , "yishaih@nvidia.com" , Linuxarm , liulongfang , "Zengtao (B)" , "Jonathan Cameron" , "Wangzhou (B)" , Xu Zaibo Subject: RE: [PATCH v8 8/9] hisi_acc_vfio_pci: Add support for VFIO live migration Thread-Topic: [PATCH v8 8/9] hisi_acc_vfio_pci: Add support for VFIO live migration Thread-Index: AQHYL1LUtVDDY2S/e06nk5NDxfriXKyvtjsAgASXq4CAAAQkEIAACRyAgADOWYCAAL6NAIAA9UgAgAJE0ACAARRg8A== Date: Fri, 11 Mar 2022 13:21:20 +0000 Message-ID: References: <20220303230131.2103-1-shameerali.kolothum.thodi@huawei.com> <20220303230131.2103-9-shameerali.kolothum.thodi@huawei.com> <20220304205720.GE219866@nvidia.com> <20220307120513.74743f17.alex.williamson@redhat.com> <20220307125239.7261c97d.alex.williamson@redhat.com> <20220308123312.1f4ba768.alex.williamson@redhat.com> <20220310134954.0df4bb12.alex.williamson@redhat.com> In-Reply-To: <20220310134954.0df4bb12.alex.williamson@redhat.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.47.88.223] Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-CFilter-Loop: Reflected Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogQWxleCBXaWxsaWFtc29u IFttYWlsdG86YWxleC53aWxsaWFtc29uQHJlZGhhdC5jb21dDQo+IFNlbnQ6IDEwIE1hcmNoIDIw MjIgMjA6NTANCj4gVG86IFRpYW4sIEtldmluIDxrZXZpbi50aWFuQGludGVsLmNvbT4NCj4gQ2M6 IFNoYW1lZXJhbGkgS29sb3RodW0gVGhvZGkgPHNoYW1lZXJhbGkua29sb3RodW0udGhvZGlAaHVh d2VpLmNvbT47DQo+IEphc29uIEd1bnRob3JwZSA8amdnQG52aWRpYS5jb20+OyBrdm1Admdlci5r ZXJuZWwub3JnOw0KPiBsaW51eC1rZXJuZWxAdmdlci5rZXJuZWwub3JnOyBsaW51eC1jcnlwdG9A dmdlci5rZXJuZWwub3JnOw0KPiBsaW51eC1wY2lAdmdlci5rZXJuZWwub3JnOyBjb2h1Y2tAcmVk aGF0LmNvbTsgbWd1cnRvdm95QG52aWRpYS5jb207DQo+IHlpc2hhaWhAbnZpZGlhLmNvbTsgTGlu dXhhcm0gPGxpbnV4YXJtQGh1YXdlaS5jb20+OyBsaXVsb25nZmFuZw0KPiA8bGl1bG9uZ2ZhbmdA aHVhd2VpLmNvbT47IFplbmd0YW8gKEIpIDxwcmltZS56ZW5nQGhpc2lsaWNvbi5jb20+Ow0KPiBK b25hdGhhbiBDYW1lcm9uIDxqb25hdGhhbi5jYW1lcm9uQGh1YXdlaS5jb20+OyBXYW5nemhvdSAo QikNCj4gPHdhbmd6aG91MUBoaXNpbGljb24uY29tPjsgWHUgWmFpYm8gPHh1emFpYm9AaHVhd2Vp LmNvbT4NCj4gU3ViamVjdDogUmU6IFtQQVRDSCB2OCA4LzldIGhpc2lfYWNjX3ZmaW9fcGNpOiBB ZGQgc3VwcG9ydCBmb3IgVkZJTyBsaXZlDQo+IG1pZ3JhdGlvbg0KPiANCj4gT24gV2VkLCA5IE1h ciAyMDIyIDEwOjExOjA2ICswMDAwDQo+ICJUaWFuLCBLZXZpbiIgPGtldmluLnRpYW5AaW50ZWwu Y29tPiB3cm90ZToNCj4gDQo+ID4gPiBGcm9tOiBBbGV4IFdpbGxpYW1zb24gPGFsZXgud2lsbGlh bXNvbkByZWRoYXQuY29tPg0KPiA+ID4gU2VudDogV2VkbmVzZGF5LCBNYXJjaCA5LCAyMDIyIDM6 MzMgQU0NCj4gPiA+DQo+ID4gPiBPbiBUdWUsIDggTWFyIDIwMjIgMDg6MTE6MTEgKzAwMDANCj4g PiA+ICJUaWFuLCBLZXZpbiIgPGtldmluLnRpYW5AaW50ZWwuY29tPiB3cm90ZToNCj4gPiA+DQo+ ID4gPiA+ID4gRnJvbTogQWxleCBXaWxsaWFtc29uIDxhbGV4LndpbGxpYW1zb25AcmVkaGF0LmNv bT4NCj4gPiA+ID4gPiBTZW50OiBUdWVzZGF5LCBNYXJjaCA4LCAyMDIyIDM6NTMgQU0NCj4gPiA+ ID4gPiA+DQo+ID4gPiA+ID4gPiA+IEkgdGhpbmsgd2Ugc3RpbGwgcmVxdWlyZSBhY2tzIGZyb20g Qmpvcm4gYW5kIFphaWJvIGZvciBzZWxlY3QgcGF0Y2hlcw0KPiA+ID4gPiA+ID4gPiBpbiB0aGlz IHNlcmllcy4NCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiBJIGNoZWNrZWQgd2l0aCBaaWFiby4g SGUgbW92ZWQgcHJvamVjdHMgYW5kIGlzIG5vIGxvbmdlciBsb29raW5nIGludG8NCj4gPiA+ID4g PiBjcnlwdG8gc3R1ZmYuDQo+ID4gPiA+ID4gPiBXYW5nemhvdSBhbmQgTGl1TG9uZ2Zhbmcgbm93 IHRha2UgY2FyZSBvZiB0aGlzLiBSZWNlaXZlZCBhY2tzIGZyb20NCj4gPiA+ID4gPiBXYW5nemhv dQ0KPiA+ID4gPiA+ID4gYWxyZWFkeSBhbmQgSSB3aWxsIHJlcXVlc3QgTG9uZ2ZhbmcgdG8gcHJv dmlkZSBoaXMuIEhvcGUgdGhhdCdzIG9rLg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gTWF5YmUgYSBn b29kIHRpbWUgdG8gaGF2ZSB0aGVtIHVwZGF0ZSBNQUlOVEFJTkVSUyBhcyB3ZWxsLg0KPiBUaGFu a3MsDQo+ID4gPiA+ID4NCj4gPiA+ID4NCj4gPiA+ID4gSSBoYXZlIG9uZSBxdWVzdGlvbiBoZXJl IChzaW1pbGFyIHRvIHdoYXQgd2UgZGlzY3Vzc2VkIGZvciBtZGV2IGJlZm9yZSkuDQo+ID4gPiA+ DQo+ID4gPiA+IE5vdyB3ZSBhcmUgYWRkaW5nIHZlbmRvciBzcGVjaWZpYyBkcml2ZXJzIHVuZGVy IC9kcml2ZXJzL3ZmaW8uIFR3bw0KPiBkcml2ZXJzDQo+ID4gPiA+IG9uIHJhZGFyIGFuZCBtb3Jl IHdpbGwgY29tZS4gVGhlbiB3aGF0IHdvdWxkIGJlIHRoZSBjcml0ZXJpYSBmb3INCj4gPiA+ID4g YWNjZXB0aW5nIHN1Y2ggYSBkcml2ZXI/IERvIHdlIHByZWZlciB0byBhIG1vZGVsIGluIHdoaWNo IHRoZSBhdXRob3INCj4gPiA+IHNob3VsZA0KPiA+ID4gPiBwcm92aWRlIGVub3VnaCBiYWNrZ3Jv dW5kIGZvciB2ZmlvIGNvbW11bml0eSB0byB1bmRlcnN0YW5kIGhvdyBpdA0KPiA+ID4gd29ya3MN Cj4gPiA+ID4gb3IgYXMgZG9uZSBoZXJlIGp1c3QgcmVseSBvbiB0aGUgUEYgZHJpdmVyIG93bmVy IHRvIGNvdmVyIGRldmljZSBzcGVjaWZpYw0KPiA+ID4gPiBjb2RlPw0KPiA+ID4gPg0KPiA+ID4g PiBJZiB0aGUgZm9ybWVyIHdlIG1heSBuZWVkIGRvY3VtZW50IHNvbWUgcHJvY2VzcyBmb3Igd2hh dCBpbmZvcm1hdGlvbg0KPiA+ID4gPiBpcyBuZWNlc3NhcnkgYW5kIGFsc28gbmVlZCBzZWN1cmUg aW5jcmVhc2VkIHJldmlldyBiYW5kd2lkdGggZnJvbSBrZXkNCj4gPiA+ID4gcmV2aWV3ZXJzIGlu IHZmaW8gY29tbXVuaXR5Lg0KPiA+ID4gPg0KPiA+ID4gPiBJZiB0aGUgbGF0dGVyIHRoZW4gaG93 IGNhbiB3ZSBndWFyYW50ZWUgbm8gY29ybmVyIGNhc2Ugb3Zlcmxvb2tlZCBieQ0KPiBib3RoDQo+ ID4gPiA+IHNpZGVzIChpLmUuIGhvdyB0byBrbm93IHRoZSBjb3ZlcmFnZSBvZiB0b3RhbCByZXZp ZXdzKT8gQW5vdGhlciBvcGVuIGlzDQo+ID4gPiB3aG8NCj4gPiA+ID4gZnJvbSB0aGUgUEYgZHJp dmVyIHN1Yi1zeXN0ZW0gc2hvdWxkIGJlIGNvbnNpZGVyZWQgYXMgdGhlIG9uZSB0byBnaXZlDQo+ IHRoZQ0KPiA+ID4gPiBncmVlbiBzaWduYWwuIElmIHRoZSBzdWItc3lzdGVtIG1haW50YWluZXIg dHJ1c3RzIHRoZSBQRiBkcml2ZXIgb3duZXIgYW5kDQo+ID4gPiA+IGp1c3QgcHVsbHMgY29tbWl0 cyBmcm9tIGhpbSB0aGVuIGhhdmluZyB0aGUgci1iIGZyb20gdGhlIFBGIGRyaXZlciBvd25lcg0K PiBpcw0KPiA+ID4gPiBzdWZmaWNpZW50LiBCdXQgaWYgdGhlIHN1Yi1zeXN0ZW0gbWFpbnRhaW5l ciB3YW50cyB0byByZXZpZXcgZGV0YWlsIGNoYW5nZQ0KPiA+ID4gPiBpbiBldmVyeSB1bmRlcmx5 aW5nIGRyaXZlciB0aGVuIHdlIHByb2JhYmx5IGFsc28gd2FudCB0byBnZXQgdGhlIGFjaw0KPiBm cm9tDQo+ID4gPiA+IHRoZSBtYWludGFpbmVyLg0KPiA+ID4gPg0KPiA+ID4gPiBPdmVyYWxsIEkg ZGlkbid0IG1lYW4gdG8gc2xvdyBkb3duIHRoZSBwcm9ncmVzcyBvZiB0aGlzIHNlcmllcy4gQnV0 IGFib3ZlDQo+ID4gPiA+IGRvZXMgYmUgc29tZSBwdXp6bGUgb2NjdXJyZWQgaW4gbXkgcmV2aWV3 LiDwn5iKDQo+ID4gPg0KPiA+ID4gSGkgS2V2aW4sDQo+ID4gPg0KPiA+ID4gR29vZCBxdWVzdGlv bnMsIEknZCBsaWtlIGEgYmV0dGVyIHVuZGVyc3RhbmRpbmcgb2YgZXhwZWN0YXRpb25zIGFzDQo+ ID4gPiB3ZWxsLiAgSSB0aGluayB0aGUgaW50ZW50aW9ucyBhcmUgdGhlIHNhbWUgYXMgYW55IG90 aGVyIHN1Yi1zeXN0ZW0sIHRoZQ0KPiA+ID4gZHJpdmVycyBtYWtlIHVzZSBvZiBzaGFyZWQgaW50 ZXJmYWNlcyBhbmQgZXh0ZW5zaW9ucyBhbmQgdGhlIHJvbGUgb2YNCj4gPiA+IHRoZSBzdWItc3lz dGVtIHNob3VsZCBiZSB0byBtYWtlIHN1cmUgdGhvc2UgaW50ZXJmYWNlcyBhcmUgdXNlZA0KPiA+ ID4gY29ycmVjdGx5IGFuZCBleHRlbnNpb25zIGZpdCB3ZWxsIHdpdGhpbiB0aGUgb3ZlcmFsbCBk ZXNpZ24uICBIb3dldmVyLA0KPiA+ID4ganVzdCBhcyB0aGUgbmV0d29yayBtYWludGFpbmVyIGlz bid0IGV4cGVjdGVkIHRvIGZ1bGx5IHVuZGVyc3RhbmQgZXZlcnkNCj4gPiA+IE5JQyBkcml2ZXIs IEkgdGhpbmsvaG9wZSB3ZSBoYXZlIHRoZSBzYW1lIGV4cGVjdGF0aW9ucyBoZXJlLiAgSXQncw0K PiA+ID4gY2VydGFpbmx5IGEgYmVuZWZpdCB0byB0aGUgY29tbXVuaXR5IGFuZCBwZXJjZWl2ZWQg dHJ1c3R3b3J0aGluZXNzIGlmDQo+ID4gPiBlYWNoIGRyaXZlciBvdXRsaW5lcyBpdHMgb3BlcmF0 aW5nIG1vZGVsIGFuZCBzZWN1cml0eSBudWFuY2VzLCBidXQNCj4gPiA+IHRob3NlIGFyZSBvbmx5 IGV2ZXIgZ29pbmcgdG8gYmUgdGhlIG51YW5jZXMgaWRlbnRpZmllZCBieSB0aGUgcGVvcGxlDQo+ ID4gPiB3aG8gaGF2ZSB0aGUgYWNjZXNzIGFuZCBlbmVyZ3kgdG8gZXZhbHVhdGUgdGhlIGRldmlj ZS4NCj4gPiA+DQo+ID4gPiBJdCdzIGdvaW5nIHRvIGJlIHVwIHRvIHRoZSBjb21tdW5pdHkgdG8g dHJ5IHRvIGRldGVybWluZSB0aGF0IGFueSBuZXcNCj4gPiA+IGRyaXZlcnMgYXJlIHNlcmlvdXNs eSBjb25zaWRlcmluZyBzZWN1cml0eSBhbmQgbm90IG9wZW5pbmcgYW55IG5ldyBnYXBzDQo+ID4g PiByZWxhdGl2ZSB0byBiZWhhdmlvciB1c2luZyB0aGUgYmFzZSB2ZmlvLXBjaSBkcml2ZXIuICBG b3IgdGhlIGRyaXZlcg0KPiA+ID4gZXhhbXBsZXMgd2UgaGF2ZSwgdGhpcyBzZWVtcyBhIGJpdCBl YXNpZXIgdGhhbiBldmFsdWF0aW5nIGFuIGVudGlyZQ0KPiA+ID4gbWRldiBkZXZpY2UgYmVjYXVz ZSB0aGV5J3JlIGxhcmdlbHkgcHJvdmlkaW5nIGRpcmVjdCBhY2Nlc3MgdG8gdGhlDQo+ID4gPiBk ZXZpY2UgcmF0aGVyIHRoYW4gdHJ5aW5nIHRvIG11bHRpcGxleCBhIHNoYXJlZCBwaHlzaWNhbCBk ZXZpY2UuICBXZQ0KPiA+ID4gY2FuIHRoZXJlZm9yZSBmb2N1cyBvbiBpbmNyZW1lbnRhbCBmdW5j dGlvbmFsaXR5LCBhcyBib3RoIGRyaXZlcnMgaGF2ZQ0KPiA+ID4gZG9uZSwgaW1wbGVtZW50aW5n IGEgYm9pbGVycGxhdGUgdmVuZG9yIGRyaXZlciwgdGhlbiBhZGRpbmcgbWlncmF0aW9uDQo+ID4g PiBzdXBwb3J0LiAgSSBpbWFnaW5lIHRoaXMgd29uJ3QgYWx3YXlzIGJlIHRoZSBjYXNlIHRob3Vn aCBhbmQgc29tZQ0KPiA+ID4gZHJpdmVycyB3aWxsIHJlLWltcGxlbWVudCBtdWNoIG9mIHRoZSBj b3JlIHRvIHN1cHBvcnQgZnVydGhlciBlbXVsYXRpb24NCj4gPiA+IGFuZCBzaGFyZWQgcmVzb3Vy Y2VzLg0KPiA+ID4NCj4gPiA+IFNvIGhvdyBkbyB3ZSBhcyBhIGNvbW11bml0eSB3YW50IHRvIGhh bmRsZSB0aGlzPyAgSSB3b3VsZG4ndCBtaW5kLCBJJ2QNCj4gPiA+IGFjdHVhbGx5IHdlbGNvbWUs IHNvbWUgc29ydCBvZiByZXZpZXcgcmVxdWlyZW1lbnQgZm9yIG5ldyB2ZmlvIHZlbmRvcg0KPiA+ ID4gZHJpdmVyIHZhcmlhbnRzLiAgSXMgdGhhdCByZWFzb25hYmxlPyAgV2hhdCB3b3VsZCBiZSB0 aGUgY3JpdGVyaWE/DQo+ID4gPiBBcHByb3ZhbCBmcm9tIHRoZSBQRiBkcml2ZXIgb3duZXIsIGlm IGRpZmZlcmVudC9uZWNlc3NhcnksIGFuZCBhdCBsZWFzdA0KPiA+ID4gb25lIHVuYWZmaWxpYXRl ZCByZXZpZXdlciAocHJlZmVyYWJseSBhbiBhY3RpdmUgdmZpbyByZXZpZXdlciBvcg0KPiA+ID4g ZXhpc3RpbmcgdmZpbyB2YXJpYW50IGRyaXZlciBvd25lci9jb250cmlidXRvcik/ICBJZGVhcyB3 ZWxjb21lLg0KPiA+ID4gVGhhbmtzLA0KPiA+ID4NCj4gPg0KPiA+IFllcywgYW5kIHRoZSBjcml0 ZXJpYSBpcyB0aGUgaGFyZCBwYXJ0LiBJbiB0aGUgZW5kIGl0IGxhcmdlbHkgZGVwZW5kIG9uDQo+ ID4gdGhlIGV4cGVjdGF0aW9ucyBvZiB0aGUgcmV2aWV3ZXJzLg0KPiA+DQo+ID4gSWYgdGhlIHVu YWZmaWxpYXRlZCByZXZpZXdlciBvbmx5IGNhcmVzIGFib3V0IHRoZSB1c2FnZSBvZiBzaGFyZWQN Cj4gPiBpbnRlcmZhY2VzIG9yIGV4dGVuc2lvbnMgYXMgeW91IHNhaWQgdGhlbiB3aGF0IHRoaXMg c2VyaWVzIGRvZXMgaXMNCj4gPiBqdXN0IGZpbmUuIFN1Y2ggdHlwZSBvZiByZXZpZXcgY2FuIGJl IGVhc2lseSBkb25lIHZpYSByZWFkaW5nIGNvZGUNCj4gPiBhbmQgZG9lc24ndCByZXF1aXJlIGRl dGFpbCBkZXZpY2Uga25vd2xlZGdlLg0KPiA+DQo+ID4gT24gdGhlIG90aGVyIGhhbmQgaWYgdGhl IHJldmlld2VyIHdhbnRzIHRvIGRvIGEgZnVsbCBmdW5jdGlvbmFsDQo+ID4gcmV2aWV3IG9mIGhv dyBtaWdyYXRpb24gaXMgYWN0dWFsbHkgc3VwcG9ydGVkIGZvciBzdWNoIGRldmljZSwNCj4gPiB3 aGF0ZXZlciBpbmZvcm1hdGlvbiAocGF0Y2ggZGVzY3JpcHRpb24sIGNvZGUgY29tbWVudCwga2Rv YywNCj4gPiBldGMuKSBuZWNlc3NhcnkgdG8gYnVpbGQgYSBzdGFuZGFsb25lIG1pZ3JhdGlvbiBz dG9yeSB3b3VsZCBiZQ0KPiA+IGFwcHJlY2lhdGVkLCBlLmcuOg0KPiA+DQo+ID4gICAtIFdoYXQg Y29tcG9zZXMgdGhlIGRldmljZSBzdGF0ZT8NCj4gPiAgIC0gV2hpY2ggcG9ydGlvbiBvZiB0aGUg ZGV2aWNlIHN0YXRlIGlzIGV4cG9zZWQgdG8gYW5kIG1hbmFnZWQNCj4gPiAgICAgYnkgdGhlIHVz ZXIgYW5kIHdoaWNoIGlzIGhpZGRlbiBmcm9tIHRoZSB1c2VyIChpLmUuIGNvbnRyb2xsZWQNCj4g PiAgICAgYnkgdGhlIFBGIGRyaXZlcik/DQo+ID4gICAtIEludGVyZmFjZSBiZXR3ZWVuIHRoZSB2 ZmlvIGRyaXZlciBhbmQgdGhlIGRldmljZSAoYW5kL29yIFBGDQo+ID4gICAgIGRyaXZlcikgdG8g bWFuYWdlIHRoZSBkZXZpY2Ugc3RhdGU7DQo+ID4gICAtIFJpY2ggZnVuY3Rpb25hbC1sZXZlbCBj b21tZW50cyBmb3IgdGhlIHJldmlld2VyIHRvIGRpdmUgaW50bw0KPiA+ICAgICB0aGUgbWlncmF0 aW9uIGZsb3c7DQo+ID4gICAtIC4uLg0KPiA+DQo+ID4gSSBndWVzcyB3ZSBkb24ndCB3YW50IHRv IGZvcmNlIG9uZSBtb2RlbCBvdmVyIHRoZSBvdGhlci4gSnVzdA0KPiA+IGZyb20gbXkgaW1wcmVz c2lvbiB0aGUgbW9yZSBpbmZvcm1hdGlvbiB0aGUgZHJpdmVyIGNhbg0KPiA+IHByb3ZpZGUgdGhl IG1vcmUgdGltZSBJJ2QgbGlrZSB0byBzcGVuZCBvbiB0aGUgcmV2aWV3LiBPdGhlcndpc2UNCj4g PiBpdCBoYXMgdG8gdHJlbmQgdG8gdGhlIG1pbmltYWwgZm9ybSBpLmUuIHRoZSBmaXJzdCBtb2Rl bC4NCj4gPg0KPiA+IGFuZCBjdXJyZW50bHkgSSBkb24ndCBoYXZlIGEgY29uY3JldGUgaWRlYSBo b3cgdGhlIDJuZCBtb2RlbCB3aWxsDQo+ID4gd29yay4gbWF5YmUgaXQgd2lsbCBnZXQgY2xlYXIg b25seSB3aGVuIGEgZnV0dXJlIGRyaXZlciBhdHRyYWN0cw0KPiA+IHBlb3BsZSB0byBkbyB0aG9y b3VnaCByZXZpZXcuLi4NCj4gDQo+IERvIHlvdSB0aGluayB3ZSBzaG91bGQgZ28gc28gZmFyIGFz IHRvIGZvcm1hbGl6ZSB0aGlzIHZpYSBhIE1BSU5UQUlORVJTDQo+IGVudHJ5LCBmb3IgZXhhbXBs ZToNCj4gDQo+IGRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL3ZmaW8vdmZpby1wY2ktdmVuZG9y LWRyaXZlci1hY2NlcHRhbmNlLnJzdA0KPiBiL0RvY3VtZW50YXRpb24vdmZpby92ZmlvLXBjaS12 ZW5kb3ItZHJpdmVyLWFjY2VwdGFuY2UucnN0DQo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+IGlu ZGV4IDAwMDAwMDAwMDAwMC4uNTRlYmFmY2RkNzM1DQo+IC0tLSAvZGV2L251bGwNCj4gKysrIGIv RG9jdW1lbnRhdGlvbi92ZmlvL3ZmaW8tcGNpLXZlbmRvci1kcml2ZXItYWNjZXB0YW5jZS5yc3QN Cj4gQEAgLTAsMCArMSwzNSBAQA0KPiArLi4gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQTC0y LjANCj4gKw0KPiArQWNjZXB0YW5jZSBjcml0ZXJpYSBmb3IgdmZpby1wY2kgZGV2aWNlIHNwZWNp ZmljIGRyaXZlciB2YXJpYW50cw0KPiArPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KPiArDQo+ICtPdmVydmlldw0KPiArLS0t LS0tLS0NCj4gK1RoZSB2ZmlvLXBjaSBkcml2ZXIgZXhpc3RzIGFzIGEgZGV2aWNlIGFnbm9zdGlj IGRyaXZlciB1c2luZyB0aGUNCj4gK3N5c3RlbSBJT01NVSBhbmQgcmVseWluZyBvbiB0aGUgcm9i dXN0bmVzcyBvZiBwbGF0Zm9ybSBmYXVsdA0KPiAraGFuZGxpbmcgdG8gcHJvdmlkZSBpc29sYXRl ZCBkZXZpY2UgYWNjZXNzIHRvIHVzZXJzcGFjZS4gIFdoaWxlIHRoZQ0KPiArdmZpby1wY2kgZHJp dmVyIGRvZXMgaW5jbHVkZSBzb21lIGRldmljZSBzcGVjaWZpYyBzdXBwb3J0LCBmdXJ0aGVyDQo+ ICtleHRlbnNpb25zIGZvciB5ZXQgbW9yZSBhZHZhbmNlZCBkZXZpY2Ugc3BlY2lmaWMgZmVhdHVy ZXMgYXJlIG5vdA0KPiArc3VzdGFpbmFibGUuICBUaGUgdmZpby1wY2kgZHJpdmVyIGhhcyB0aGVy ZWZvcmUgc3BsaXQgb3V0DQo+ICt2ZmlvLXBjaS1jb3JlIGFzIGEgbGlicmFyeSB0aGF0IG1heSBi ZSByZXVzZWQgdG8gaW1wbGVtZW50IGZlYXR1cmVzDQo+ICtyZXF1aXJpbmcgZGV2aWNlIHNwZWNp ZmljIGtub3dsZWRnZSwgZXguIHNhdmluZyBhbmQgbG9hZGluZyBkZXZpY2UNCj4gK3N0YXRlIGZv ciB0aGUgcHVycG9zZXMgb2Ygc3VwcG9ydGluZyBtaWdyYXRpb24uDQo+ICsNCj4gK0luIHN1cHBv cnQgb2Ygc3VjaCBmZWF0dXJlcywgaXQncyBleHBlY3RlZCB0aGF0IHNvbWUgZGV2aWNlIHNwZWNp ZmljDQo+ICt2YXJpYW50cyBtYXkgaW50ZXJhY3Qgd2l0aCBwYXJlbnQgZGV2aWNlcyAoZXguIFNS LUlPViBQRiBpbiBzdXBwb3J0IG9mDQo+ICthIHVzZXIgYXNzaWduZWQgVkYpIG9yIG90aGVyIGV4 dGVuc2lvbnMgdGhhdCBtYXkgbm90IGJlIG90aGVyd2lzZQ0KPiArYWNjZXNzaWJsZSB2aWEgdGhl IHZmaW8tcGNpIGJhc2UgZHJpdmVyLiAgQXV0aG9ycyBvZiBzdWNoIGRyaXZlcnMNCj4gK3Nob3Vs ZCBiZSBkaWxpZ2VudCBub3QgdG8gY3JlYXRlIGV4cGxvaXRhYmxlIGludGVyZmFjZXMgdmlhIHN1 Y2gNCj4gK2ludGVyYWN0aW9ucyBvciBhbGxvdyB1bmNoZWNrZWQgdXNlcnNwYWNlIGRhdGEgdG8g aGF2ZSBhbiBlZmZlY3QNCj4gK2JleW9uZCB0aGUgc2NvcGUgb2YgdGhlIGFzc2lnbmVkIGRldmlj ZS4NCj4gKw0KPiArTmV3IGRyaXZlciBzdWJtaXNzaW9ucyBhcmUgdGhlcmVmb3JlIHJlcXVlc3Rl ZCB0byBoYXZlIGFwcHJvdmFsIHZpYQ0KPiArU2lnbi1vZmYgZm9yIGFueSBpbnRlcmFjdGlvbnMg d2l0aCBwYXJlbnQgZHJpdmVycy4gIEFkZGl0aW9uYWxseSwNCj4gK2RyaXZlcnMgc2hvdWxkIG1h a2UgYW4gYXR0ZW1wdCB0byBwcm92aWRlIHN1ZmZpY2llbnQgZG9jdW1lbnRhdGlvbg0KPiArZm9y IHJldmlld2VycyB0byB1bmRlcnN0YW5kIHRoZSBkZXZpY2Ugc3BlY2lmaWMgZXh0ZW5zaW9ucywg Zm9yDQo+ICtleGFtcGxlIGluIHRoZSBjYXNlIG9mIG1pZ3JhdGlvbiBkYXRhLCBob3cgaXMgdGhl IGRldmljZSBzdGF0ZQ0KPiArY29tcG9zZWQgYW5kIGNvbnN1bWVkLCB3aGljaCBwb3J0aW9ucyBh cmUgbm90IG90aGVyd2lzZSBhdmFpbGFibGUgdG8NCj4gK3RoZSB1c2VyIHZpYSB2ZmlvLXBjaSwg d2hhdCBzYWZlZ3VhcmRzIGV4aXN0IHRvIHZhbGlkYXRlIHRoZSBkYXRhLA0KPiArZXRjLiAgVG8g dGhhdCBleHRlbnQsIGF1dGhvcnMgc2hvdWxkIGFkZGl0aW9uYWxseSBleHBlY3QgdG8gcmVxdWly ZQ0KPiArcmV2aWV3cyBmcm9tIGF0IGxlYXN0IG9uZSBvZiB0aGUgbGlzdGVkIHJldmlld2Vycywg aW4gYWRkaXRpb24gdG8gdGhlDQo+ICtvdmVyYWxsIHZmaW8gbWFpbnRhaW5lci4NCj4gZGlmZiAt LWdpdCBhL01BSU5UQUlORVJTIGIvTUFJTlRBSU5FUlMNCj4gaW5kZXggNDMyMmI1MzIxODkxLi40 ZjdkMjZmOWFhYzYgMTAwNjQ0DQo+IC0tLSBhL01BSU5UQUlORVJTDQo+ICsrKyBiL01BSU5UQUlO RVJTDQo+IEBAIC0yMDMxNCw2ICsyMDMxNCwxMyBAQCBGOglkcml2ZXJzL3ZmaW8vbWRldi8NCj4g IEY6CWluY2x1ZGUvbGludXgvbWRldi5oDQo+ICBGOglzYW1wbGVzL3ZmaW8tbWRldi8NCj4gDQo+ ICtWRklPIFBDSSBWRU5ET1IgRFJJVkVSUw0KPiArUjoJWW91ciBOYW1lIDx5b3VyLm5hbWVAaGVy ZS5jb20+DQo+ICtMOglrdm1Admdlci5rZXJuZWwub3JnDQo+ICtTOglNYWludGFpbmVkDQo+ICtQ OglEb2N1bWVudGF0aW9uL3ZmaW8vdmZpby1wY2ktdmVuZG9yLWRyaXZlci1hY2NlcHRhbmNlLnJz dA0KPiArRjoJZHJpdmVycy92ZmlvL3BjaS8qLw0KPiArDQo+ICBWRklPIFBMQVRGT1JNIERSSVZF Ug0KPiAgTToJRXJpYyBBdWdlciA8ZXJpYy5hdWdlckByZWRoYXQuY29tPg0KPiAgTDoJa3ZtQHZn ZXIua2VybmVsLm9yZw0KPiANCj4gSWRlYWxseSB3ZSdkIGhhdmUgYXQgbGVhc3QgWWlzaGFpLCBT aGFtZWVyLCBKYXNvbiwgYW5kIHlvdXJzZWxmIGxpc3RlZA0KPiBhcyByZXZpZXdlcnMgKENvbm5p ZSBhbmQgSSBhcmUgaW5jbHVkZWQgdmlhIHRoZSBoaWdoZXIgbGV2ZWwgZW50cnkpLg0KPiBUaG91 Z2h0cyBmcm9tIGFueW9uZT8gIFZvbHVudGVlcnMgZm9yIHJldmlld2VycyBpZiB3ZSB3YW50IHRv IHByZXNzDQo+IGZvcndhcmQgd2l0aCB0aGlzIGFzIGZvcm1hbCBhY2NlcHRhbmNlIGNyaXRlcmlh PyAgVGhhbmtzLA0KPiANCg0KU3VyZS4gSGFwcHkgdG8gaGVscCB3aXRoIHJldmlld3MsIHZlcmlm aWNhdGlvbnMgZXRjLg0KDQpUaGFua3MsDQpTaGFtZWVyDQo=