From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Yu, Zhang" Subject: Re: [PATCH v3 1/3] x86/ioreq server(patch for 4.7): Rename p2m_mmio_write_dm to p2m_ioreq_server. Date: Mon, 25 Apr 2016 23:49:57 +0800 Message-ID: <3f4f0eae-20cb-4507-7fea-04031fb17d14@linux.intel.com> References: <1461580540-9314-1-git-send-email-yu.c.zhang@linux.intel.com> <1461580540-9314-2-git-send-email-yu.c.zhang@linux.intel.com> <81c8eb898bb0419fa4dba588ccc6131a@AMSPEX02CL03.citrite.net> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Paul Durrant , George Dunlap Cc: Kevin Tian , "Keir (Xen.org)" , Jan Beulich , Andrew Cooper , "Tim (Xen.org)" , "xen-devel@lists.xen.org" , "Lv, Zhiyuan" , Jun Nakajima , Wei Liu List-Id: xen-devel@lists.xenproject.org CgpPbiA0LzI1LzIwMTYgMTE6MjkgUE0sIFBhdWwgRHVycmFudCB3cm90ZToKPj4gLS0tLS1Pcmln aW5hbCBNZXNzYWdlLS0tLS0KPj4gRnJvbTogWXUsIFpoYW5nIFttYWlsdG86eXUuYy56aGFuZ0Bs aW51eC5pbnRlbC5jb21dCj4+IFNlbnQ6IDI1IEFwcmlsIDIwMTYgMTY6MjIKPj4gVG86IFBhdWwg RHVycmFudDsgR2VvcmdlIER1bmxhcAo+PiBDYzogeGVuLWRldmVsQGxpc3RzLnhlbi5vcmc7IEtl dmluIFRpYW47IEtlaXIgKFhlbi5vcmcpOyBKdW4gTmFrYWppbWE7Cj4+IEFuZHJldyBDb29wZXI7 IFRpbSAoWGVuLm9yZyk7IEx2LCBaaGl5dWFuOyBKYW4gQmV1bGljaDsgV2VpIExpdQo+PiBTdWJq ZWN0OiBSZTogW1hlbi1kZXZlbF0gW1BBVENIIHYzIDEvM10geDg2L2lvcmVxIHNlcnZlcihwYXRj aCBmb3IgNC43KToKPj4gUmVuYW1lIHAybV9tbWlvX3dyaXRlX2RtIHRvIHAybV9pb3JlcV9zZXJ2 ZXIuCj4+Cj4+Cj4+Cj4+IE9uIDQvMjUvMjAxNiAxMDowMSBQTSwgUGF1bCBEdXJyYW50IHdyb3Rl Ogo+Pj4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tCj4+Pj4gRnJvbTogZHVubGFwZ0BnbWFp bC5jb20gW21haWx0bzpkdW5sYXBnQGdtYWlsLmNvbV0gT24gQmVoYWxmIE9mCj4+Pj4gR2Vvcmdl IER1bmxhcAo+Pj4+IFNlbnQ6IDI1IEFwcmlsIDIwMTYgMTQ6MzkKPj4+PiBUbzogWXUgWmhhbmcK Pj4+PiBDYzogeGVuLWRldmVsQGxpc3RzLnhlbi5vcmc7IEtldmluIFRpYW47IEtlaXIgKFhlbi5v cmcpOyBKdW4gTmFrYWppbWE7Cj4+Pj4gQW5kcmV3IENvb3BlcjsgVGltIChYZW4ub3JnKTsgUGF1 bCBEdXJyYW50OyBMdiwgWmhpeXVhbjsgSmFuIEJldWxpY2g7IFdlaQo+PiBMaXUKPj4+PiBTdWJq ZWN0OiBSZTogW1hlbi1kZXZlbF0gW1BBVENIIHYzIDEvM10geDg2L2lvcmVxIHNlcnZlcihwYXRj aCBmb3IgNC43KToKPj4+PiBSZW5hbWUgcDJtX21taW9fd3JpdGVfZG0gdG8gcDJtX2lvcmVxX3Nl cnZlci4KPj4+Pgo+Pj4+IE9uIE1vbiwgQXByIDI1LCAyMDE2IGF0IDExOjM1IEFNLCBZdSBaaGFu Zwo+PiA8eXUuYy56aGFuZ0BsaW51eC5pbnRlbC5jb20+Cj4+Pj4gd3JvdGU6Cj4+Pj4+IFByZXZp b3VzbHkgcDJtIHR5cGUgcDJtX21taW9fd3JpdGVfZG0gd2FzIGludHJvZHVjZWQgZm9yIHdyaXRl LQo+Pj4+PiBwcm90ZWN0ZWQgbWVtb3J5IHBhZ2VzIHdob3NlIHdyaXRlIG9wZXJhdGlvbnMgYXJl IHN1cHBvc2VkIHRvIGJlCj4+Pj4+IGZvcndhcmRlZCB0byBhbmQgZW11bGF0ZWQgYnkgYW4gaW9y ZXEgc2VydmVyLiBZZXQgbGltaXRhdGlvbnMgb2YKPj4+Pj4gcmFuZ2VzZXQgcmVzdHJpY3QgdGhl IG51bWJlciBvZiBndWVzdCBwYWdlcyB0byBiZSB3cml0ZS1wcm90ZWN0ZWQuCj4+Pj4+Cj4+Pj4+ IFRoaXMgcGF0Y2ggcmVwbGFjZXMgdGhlIHAybSB0eXBlIHAybV9tbWlvX3dyaXRlX2RtIHdpdGgg YSBuZXcKPj4gbmFtZToKPj4+Pj4gcDJtX2lvcmVxX3NlcnZlciwgd2hpY2ggbWVhbnMgdGhpcyBw Mm0gdHlwZSBjYW4gYmUgY2xhaW1lZCBieSBvbmUKPj4+Pj4gaW9yZXEgc2VydmVyLCBpbnN0ZWFk IG9mIGJlaW5nIHRyYWNrZWQgaW5zaWRlIHRoZSByYW5nZXNldCBvZiBpb3JlcQo+Pj4+PiBzZXJ2 ZXIuIFBhdGNoZXMgZm9sbG93aW5nIHVwIHdpbGwgYWRkIHRoZSByZWxhdGVkIGh2bW9wIGhhbmRs aW5nCj4+Pj4+IGNvZGUgd2hpY2ggbWFwL3VubWFwIHR5cGUgcDJtX2lvcmVxX3NlcnZlciB0by9m cm9tIGFuIGlvcmVxCj4+IHNlcnZlci4KPj4+Pj4KPj4+Pj4gY2hhbmdlcyBpbiB2MzoKPj4+Pj4g ICAtIEFjY29yZGluZyB0byBKYW4gJiBHZW9yZ2UncyBjb21tZW50cywga2VlcAo+Pj4+IEhWTU1F TV9tbWlvX3dyaXRlX2RtCj4+Pj4+ICAgICBmb3Igb2xkIHhlbiBpbnRlcmZhY2UgdmVyc2lvbnMs IGFuZCByZXBsYWNlIGl0IHdpdGggSFZNTUVNX3VudXNlZAo+Pj4+PiAgICAgZm9yIHhlbiBpbnRl cmZhY2VzIG5ld2VyIHRoYW4gNC43LjA7IEZvciBwMm1faW9yZXFfc2VydmVyLCBhIG5ldwo+Pj4+ PiAgICAgZW51bSAtIEhWTU1FTV9pb3JlcV9zZXJ2ZXIgaXMgaW50cm9kdWNlZCBmb3IgdGhlIGdl dC9zZXQgbWVtCj4+IHR5cGUKPj4+Pj4gICAgIGludGVyZmFjZXM7Cj4+Pj4+ICAgLSBBZGQgR2Vv cmdlJ3MgUmV2aWV3ZWQtYnkgYW5kIEFja2VkLWJ5IGZyb20gVGltICYgQW5kcmV3Lgo+Pj4+Cj4+ Pj4gVW5mb3J0dW5hdGVseSB0aGVzZSByYXRoZXIgY29udHJhZGljdCBlYWNoIG90aGVyIC0tIEkg Y29uc2lkZXIKPj4+PiBSZXZpZXdlZC1ieSB0byBvbmx5IHN0aWNrIGlmIHRoZSBjb2RlIEkndmUg c3BlY2lmaWVkIGhhc24ndCBjaGFuZ2VkCj4+Pj4gKG9yIGhhcyBvbmx5IGNoYW5nZWQgdHJpdmlh bGx5KS4KPj4+Pgo+Pj4+IEFsc28uLi4KPj4+Pgo+Pj4+Pgo+Pj4+PiBjaGFuZ2VzIGluIHYyOgo+ Pj4+PiAgIC0gQWNjb3JkaW5nIHRvIEdlb3JnZSBEdW5sYXAncyBjb21tZW50cywgb25seSByZW5h bWUgdGhlIHAybSB0eXBlLAo+Pj4+PiAgICAgd2l0aCBubyBiZWhhdmlvciBjaGFuZ2VzLgo+Pj4+ Pgo+Pj4+PiBTaWduZWQtb2ZmLWJ5OiBQYXVsIER1cnJhbnQgPHBhdWwuZHVycmFudEBjaXRyaXgu Y29tPgo+Pj4+PiBTaWduZWQtb2ZmLWJ5OiBZdSBaaGFuZyA8eXUuYy56aGFuZ0BsaW51eC5pbnRl bC5jb20+Cj4+Pj4+IEFja2VkLWJ5OiBUaW0gRGVlZ2FuIDx0aW1AeGVuLm9yZz4KPj4+Pj4gQWNr ZWQtYnk6IEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNpdHJpeC5jb20+Cj4+Pj4+IFJl dmlld2VkLWJ5OiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2UuZHVubGFwQGNpdHJpeC5jb20+Cj4+Pj4+ IENjOiBLZWlyIEZyYXNlciA8a2VpckB4ZW4ub3JnPgo+Pj4+PiBDYzogSmFuIEJldWxpY2ggPGpi ZXVsaWNoQHN1c2UuY29tPgo+Pj4+PiBDYzogQW5kcmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNA Y2l0cml4LmNvbT4KPj4+Pj4gQ2M6IEp1biBOYWthamltYSA8anVuLm5ha2FqaW1hQGludGVsLmNv bT4KPj4+Pj4gQ2M6IEtldmluIFRpYW4gPGtldmluLnRpYW5AaW50ZWwuY29tPgo+Pj4+PiBDYzog R2VvcmdlIER1bmxhcCA8Z2VvcmdlLmR1bmxhcEBldS5jaXRyaXguY29tPgo+Pj4+PiBDYzogVGlt IERlZWdhbiA8dGltQHhlbi5vcmc+Cj4+Pj4+IC0tLQo+Pj4+PiAgeGVuL2FyY2gveDg2L2h2bS9o dm0uYyAgICAgICAgICB8IDE0ICsrKysrKysrLS0tLS0tCj4+Pj4+ICB4ZW4vYXJjaC94ODYvbW0v cDJtLWVwdC5jICAgICAgIHwgIDIgKy0KPj4+Pj4gIHhlbi9hcmNoL3g4Ni9tbS9wMm0tcHQuYyAg ICAgICAgfCAgMiArLQo+Pj4+PiAgeGVuL2FyY2gveDg2L21tL3NoYWRvdy9tdWx0aS5jICB8ICAy ICstCj4+Pj4+ICB4ZW4vaW5jbHVkZS9hc20teDg2L3AybS5oICAgICAgIHwgIDQgKystLQo+Pj4+ PiAgeGVuL2luY2x1ZGUvcHVibGljL2h2bS9odm1fb3AuaCB8ICA4ICsrKysrKystCj4+Pj4+ICA2 IGZpbGVzIGNoYW5nZWQsIDIwIGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQo+Pj4+Pgo+ Pj4+PiBkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2h2bS9odm0uYyBiL3hlbi9hcmNoL3g4Ni9o dm0vaHZtLmMKPj4+Pj4gaW5kZXggZjI0MTI2ZC4uODc0Y2IwZiAxMDA2NDQKPj4+Pj4gLS0tIGEv eGVuL2FyY2gveDg2L2h2bS9odm0uYwo+Pj4+PiArKysgYi94ZW4vYXJjaC94ODYvaHZtL2h2bS5j Cj4+Pj4+IEBAIC0xODU3LDcgKzE4NTcsNyBAQCBpbnQgaHZtX2hhcF9uZXN0ZWRfcGFnZV9mYXVs dChwYWRkcl90IGdwYSwKPj4+PiB1bnNpZ25lZCBsb25nIGdsYSwKPj4+Pj4gICAgICAgKi8KPj4+ Pj4gICAgICBpZiAoIChwMm10ID09IHAybV9tbWlvX2RtKSB8fAo+Pj4+PiAgICAgICAgICAgKG5w ZmVjLndyaXRlX2FjY2VzcyAmJgo+Pj4+PiAtICAgICAgICAgIChwMm1faXNfZGlzY2FyZF93cml0 ZShwMm10KSB8fCAocDJtdCA9PQo+PiBwMm1fbW1pb193cml0ZV9kbSkpKSApCj4+Pj4+ICsgICAg ICAgICAgKHAybV9pc19kaXNjYXJkX3dyaXRlKHAybXQpIHx8IChwMm10ID09IHAybV9pb3JlcV9z ZXJ2ZXIpKSkgKQo+Pj4+PiAgICAgIHsKPj4+Pj4gICAgICAgICAgX19wdXRfZ2ZuKHAybSwgZ2Zu KTsKPj4+Pj4gICAgICAgICAgaWYgKCBhcDJtX2FjdGl2ZSApCj4+Pj4+IEBAIC01NDk5LDggKzU0 OTksOCBAQCBsb25nIGRvX2h2bV9vcCh1bnNpZ25lZCBsb25nIG9wLAo+Pj4+IFhFTl9HVUVTVF9I QU5ETEVfUEFSQU0odm9pZCkgYXJnKQo+Pj4+PiAgICAgICAgICAgICAgZ2V0X2dmbl9xdWVyeV91 bmxvY2tlZChkLCBhLnBmbiwgJnQpOwo+Pj4+PiAgICAgICAgICAgICAgaWYgKCBwMm1faXNfbW1p byh0KSApCj4+Pj4+ICAgICAgICAgICAgICAgICAgYS5tZW1fdHlwZSA9ICBIVk1NRU1fbW1pb19k bTsKPj4+Pj4gLSAgICAgICAgICAgIGVsc2UgaWYgKCB0ID09IHAybV9tbWlvX3dyaXRlX2RtICkK Pj4+Pj4gLSAgICAgICAgICAgICAgICBhLm1lbV90eXBlID0gSFZNTUVNX21taW9fd3JpdGVfZG07 Cj4+Pj4+ICsgICAgICAgICAgICBlbHNlIGlmICggdCA9PSBwMm1faW9yZXFfc2VydmVyICkKPj4+ Pj4gKyAgICAgICAgICAgICAgICBhLm1lbV90eXBlID0gSFZNTUVNX2lvcmVxX3NlcnZlcjsKPj4+ Pj4gICAgICAgICAgICAgIGVsc2UgaWYgKCBwMm1faXNfcmVhZG9ubHkodCkgKQo+Pj4+PiAgICAg ICAgICAgICAgICAgIGEubWVtX3R5cGUgPSAgSFZNTUVNX3JhbV9ybzsKPj4+Pj4gICAgICAgICAg ICAgIGVsc2UgaWYgKCBwMm1faXNfcmFtKHQpICkKPj4+Pj4gQEAgLTU1MzEsNyArNTUzMSw4IEBA IGxvbmcgZG9faHZtX29wKHVuc2lnbmVkIGxvbmcgb3AsCj4+Pj4gWEVOX0dVRVNUX0hBTkRMRV9Q QVJBTSh2b2lkKSBhcmcpCj4+Pj4+ICAgICAgICAgICAgICBbSFZNTUVNX3JhbV9yd10gID0gcDJt X3JhbV9ydywKPj4+Pj4gICAgICAgICAgICAgIFtIVk1NRU1fcmFtX3JvXSAgPSBwMm1fcmFtX3Jv LAo+Pj4+PiAgICAgICAgICAgICAgW0hWTU1FTV9tbWlvX2RtXSA9IHAybV9tbWlvX2RtLAo+Pj4+ PiAtICAgICAgICAgICAgW0hWTU1FTV9tbWlvX3dyaXRlX2RtXSA9IHAybV9tbWlvX3dyaXRlX2Rt Cj4+Pj4+ICsgICAgICAgICAgICBbSFZNTUVNX3VudXNlZF0gPSBwMm1faW52YWxpZCwKPj4+Pj4g KyAgICAgICAgICAgIFtIVk1NRU1faW9yZXFfc2VydmVyXSA9IHAybV9pb3JlcV9zZXJ2ZXIKPj4+ Pj4gICAgICAgICAgfTsKPj4+Pj4KPj4+Pj4gICAgICAgICAgaWYgKCBjb3B5X2Zyb21fZ3Vlc3Qo JmEsIGFyZywgMSkgKQo+Pj4+PiBAQCAtNTU1NSw3ICs1NTU2LDggQEAgbG9uZyBkb19odm1fb3Ao dW5zaWduZWQgbG9uZyBvcCwKPj4+PiBYRU5fR1VFU1RfSEFORExFX1BBUkFNKHZvaWQpIGFyZykK Pj4+Pj4gICAgICAgICAgICAgICAoKGEuZmlyc3RfcGZuICsgYS5uciAtIDEpID4gZG9tYWluX2dl dF9tYXhpbXVtX2dwZm4oZCkpICkKPj4+Pj4gICAgICAgICAgICAgIGdvdG8gc2V0bWVtdHlwZV9m YWlsOwo+Pj4+Pgo+Pj4+PiAtICAgICAgICBpZiAoIGEuaHZtbWVtX3R5cGUgPj0gQVJSQVlfU0la RShtZW10eXBlKSApCj4+Pj4+ICsgICAgICAgIGlmICggYS5odm1tZW1fdHlwZSA+PSBBUlJBWV9T SVpFKG1lbXR5cGUpIHx8Cj4+Pj4+ICsgICAgICAgICAgICAgdW5saWtlbHkoYS5odm1tZW1fdHlw ZSA9PSBIVk1NRU1fdW51c2VkKSApCj4+Pj4+ICAgICAgICAgICAgICBnb3RvIHNldG1lbXR5cGVf ZmFpbDsKPj4+Pj4KPj4+Pj4gICAgICAgICAgd2hpbGUgKCBhLm5yID4gc3RhcnRfaXRlciApCj4+ Pj4+IEBAIC01NTc5LDcgKzU1ODEsNyBAQCBsb25nIGRvX2h2bV9vcCh1bnNpZ25lZCBsb25nIG9w LAo+Pj4+IFhFTl9HVUVTVF9IQU5ETEVfUEFSQU0odm9pZCkgYXJnKQo+Pj4+PiAgICAgICAgICAg ICAgfQo+Pj4+PiAgICAgICAgICAgICAgaWYgKCAhcDJtX2lzX3JhbSh0KSAmJgo+Pj4+PiAgICAg ICAgICAgICAgICAgICAoIXAybV9pc19ob2xlKHQpIHx8IGEuaHZtbWVtX3R5cGUgIT0gSFZNTUVN X21taW9fZG0pCj4+Pj4gJiYKPj4+Pj4gLSAgICAgICAgICAgICAgICAgKHQgIT0gcDJtX21taW9f d3JpdGVfZG0gfHwgYS5odm1tZW1fdHlwZSAhPQo+Pj4+IEhWTU1FTV9yYW1fcncpICkKPj4+Pj4g KyAgICAgICAgICAgICAgICAgKHQgIT0gcDJtX2lvcmVxX3NlcnZlciB8fCBhLmh2bW1lbV90eXBl ICE9Cj4+Pj4gSFZNTUVNX3JhbV9ydykgKQo+Pj4+PiAgICAgICAgICAgICAgewo+Pj4+PiAgICAg ICAgICAgICAgICAgIHB1dF9nZm4oZCwgcGZuKTsKPj4+Pj4gICAgICAgICAgICAgICAgICBnb3Rv IHNldG1lbXR5cGVfZmFpbDsKPj4+Pj4gZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9tbS9wMm0t ZXB0LmMgYi94ZW4vYXJjaC94ODYvbW0vcDJtLQo+PiBlcHQuYwo+Pj4+PiBpbmRleCAzY2I2ODY4 Li4zODBlYzI1IDEwMDY0NAo+Pj4+PiAtLS0gYS94ZW4vYXJjaC94ODYvbW0vcDJtLWVwdC5jCj4+ Pj4+ICsrKyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0tZXB0LmMKPj4+Pj4gQEAgLTE3MSw3ICsxNzEs NyBAQCBzdGF0aWMgdm9pZCBlcHRfcDJtX3R5cGVfdG9fZmxhZ3Moc3RydWN0Cj4+Pj4gcDJtX2Rv bWFpbiAqcDJtLCBlcHRfZW50cnlfdCAqZW50cnksCj4+Pj4+ICAgICAgICAgICAgICBlbnRyeS0+ YSA9IGVudHJ5LT5kID0gISFjcHVfaGFzX3ZteF9lcHRfYWQ7Cj4+Pj4+ICAgICAgICAgICAgICBi cmVhazsKPj4+Pj4gICAgICAgICAgY2FzZSBwMm1fZ3JhbnRfbWFwX3JvOgo+Pj4+PiAtICAgICAg ICBjYXNlIHAybV9tbWlvX3dyaXRlX2RtOgo+Pj4+PiArICAgICAgICBjYXNlIHAybV9pb3JlcV9z ZXJ2ZXI6Cj4+Pj4+ICAgICAgICAgICAgICBlbnRyeS0+ciA9IDE7Cj4+Pj4+ICAgICAgICAgICAg ICBlbnRyeS0+dyA9IGVudHJ5LT54ID0gMDsKPj4+Pj4gICAgICAgICAgICAgIGVudHJ5LT5hID0g ISFjcHVfaGFzX3ZteF9lcHRfYWQ7Cj4+Pj4+IGRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvbW0v cDJtLXB0LmMgYi94ZW4vYXJjaC94ODYvbW0vcDJtLXB0LmMKPj4+Pj4gaW5kZXggM2Q4MDYxMi4u ZWFiZDJlMyAxMDA2NDQKPj4+Pj4gLS0tIGEveGVuL2FyY2gveDg2L21tL3AybS1wdC5jCj4+Pj4+ ICsrKyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0tcHQuYwo+Pj4+PiBAQCAtOTQsNyArOTQsNyBAQCBz dGF0aWMgdW5zaWduZWQgbG9uZwo+PiBwMm1fdHlwZV90b19mbGFncyhwMm1fdHlwZV90Cj4+Pj4g dCwgbWZuX3QgbWZuLAo+Pj4+PiAgICAgIGRlZmF1bHQ6Cj4+Pj4+ICAgICAgICAgIHJldHVybiBm bGFncyB8IF9QQUdFX05YX0JJVDsKPj4+Pj4gICAgICBjYXNlIHAybV9ncmFudF9tYXBfcm86Cj4+ Pj4+IC0gICAgY2FzZSBwMm1fbW1pb193cml0ZV9kbToKPj4+Pj4gKyAgICBjYXNlIHAybV9pb3Jl cV9zZXJ2ZXI6Cj4+Pj4+ICAgICAgICAgIHJldHVybiBmbGFncyB8IFAyTV9CQVNFX0ZMQUdTIHwg X1BBR0VfTlhfQklUOwo+Pj4+PiAgICAgIGNhc2UgcDJtX3JhbV9ybzoKPj4+Pj4gICAgICBjYXNl IHAybV9yYW1fbG9nZGlydHk6Cj4+Pj4+IGRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvbW0vc2hh ZG93L211bHRpLmMKPj4+PiBiL3hlbi9hcmNoL3g4Ni9tbS9zaGFkb3cvbXVsdGkuYwo+Pj4+PiBp bmRleCBlNWM4NDk5Li5jODEzMDJhIDEwMDY0NAo+Pj4+PiAtLS0gYS94ZW4vYXJjaC94ODYvbW0v c2hhZG93L211bHRpLmMKPj4+Pj4gKysrIGIveGVuL2FyY2gveDg2L21tL3NoYWRvdy9tdWx0aS5j Cj4+Pj4+IEBAIC0zMjI1LDcgKzMyMjUsNyBAQCBzdGF0aWMgaW50IHNoX3BhZ2VfZmF1bHQoc3Ry dWN0IHZjcHUgKnYsCj4+Pj4+Cj4+Pj4+ICAgICAgLyogTmVlZCB0byBoYW5kIG9mZiBkZXZpY2Ut bW9kZWwgTU1JTyB0byB0aGUgZGV2aWNlIG1vZGVsICovCj4+Pj4+ICAgICAgaWYgKCBwMm10ID09 IHAybV9tbWlvX2RtCj4+Pj4+IC0gICAgICAgICB8fCAocDJtdCA9PSBwMm1fbW1pb193cml0ZV9k bSAmJiBmdCA9PSBmdF9kZW1hbmRfd3JpdGUpICkKPj4+Pj4gKyAgICAgICAgIHx8IChwMm10ID09 IHAybV9pb3JlcV9zZXJ2ZXIgJiYgZnQgPT0gZnRfZGVtYW5kX3dyaXRlKSApCj4+Pj4+ICAgICAg ewo+Pj4+PiAgICAgICAgICBncGEgPSBndWVzdF93YWxrX3RvX2dwYSgmZ3cpOwo+Pj4+PiAgICAg ICAgICBnb3RvIG1taW87Cj4+Pj4+IGRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9hc20teDg2L3Ay bS5oIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9wMm0uaAo+Pj4+PiBpbmRleCA1MzkyZWIwLi5lZTJl YTljIDEwMDY0NAo+Pj4+PiAtLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L3AybS5oCj4+Pj4+ICsr KyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvcDJtLmgKPj4+Pj4gQEAgLTcxLDcgKzcxLDcgQEAgdHlw ZWRlZiBlbnVtIHsKPj4+Pj4gICAgICBwMm1fcmFtX3NoYXJlZCA9IDEyLCAgICAgICAgICAvKiBT aGFyZWQgb3Igc2hhcmFibGUgbWVtb3J5ICovCj4+Pj4+ICAgICAgcDJtX3JhbV9icm9rZW4gPSAx MywgICAgICAgICAgLyogQnJva2VuIHBhZ2UsIGFjY2VzcyBjYXVzZSBkb21haW4KPj4gY3Jhc2gK Pj4+PiAqLwo+Pj4+PiAgICAgIHAybV9tYXBfZm9yZWlnbiAgPSAxNCwgICAgICAgIC8qIHJhbSBw YWdlcyBmcm9tIGZvcmVpZ24gZG9tYWluICovCj4+Pj4+IC0gICAgcDJtX21taW9fd3JpdGVfZG0g PSAxNSwgICAgICAgLyogUmVhZC1vbmx5OyB3cml0ZXMgZ28gdG8gdGhlIGRldmljZQo+Pj4+IG1v ZGVsICovCj4+Pj4+ICsgICAgcDJtX2lvcmVxX3NlcnZlciA9IDE1LAo+Pj4+PiAgfSBwMm1fdHlw ZV90Owo+Pj4+Pgo+Pj4+PiAgLyogTW9kaWZpZXJzIHRvIHRoZSBxdWVyeSAqLwo+Pj4+PiBAQCAt MTEyLDcgKzExMiw3IEBAIHR5cGVkZWYgdW5zaWduZWQgaW50IHAybV9xdWVyeV90Owo+Pj4+PiAg ICAgICAgICAgICAgICAgICAgICAgIHwgcDJtX3RvX21hc2socDJtX3JhbV9ybykgICAgICAgICBc Cj4+Pj4+ICAgICAgICAgICAgICAgICAgICAgICAgfCBwMm1fdG9fbWFzayhwMm1fZ3JhbnRfbWFw X3JvKSAgIFwKPj4+Pj4gICAgICAgICAgICAgICAgICAgICAgICB8IHAybV90b19tYXNrKHAybV9y YW1fc2hhcmVkKSAgICAgXAo+Pj4+PiAtICAgICAgICAgICAgICAgICAgICAgIHwgcDJtX3RvX21h c2socDJtX21taW9fd3JpdGVfZG0pKQo+Pj4+PiArICAgICAgICAgICAgICAgICAgICAgIHwgcDJt X3RvX21hc2socDJtX2lvcmVxX3NlcnZlcikpCj4+Pj4+Cj4+Pj4+ICAvKiBXcml0ZS1kaXNjYXJk IHR5cGVzLCB3aGljaCBzaG91bGQgZGlzY2FyZCB0aGUgd3JpdGUgb3BlcmF0aW9ucyAqLwo+Pj4+ PiAgI2RlZmluZSBQMk1fRElTQ0FSRF9XUklURV9UWVBFUyAocDJtX3RvX21hc2socDJtX3JhbV9y bykgICAgIFwKPj4+Pj4gZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL3B1YmxpYy9odm0vaHZtX29w LmgKPj4+PiBiL3hlbi9pbmNsdWRlL3B1YmxpYy9odm0vaHZtX29wLmgKPj4+Pj4gaW5kZXggMTYw NjE4NS4uYjNlNDVjZiAxMDA2NDQKPj4+Pj4gLS0tIGEveGVuL2luY2x1ZGUvcHVibGljL2h2bS9o dm1fb3AuaAo+Pj4+PiArKysgYi94ZW4vaW5jbHVkZS9wdWJsaWMvaHZtL2h2bV9vcC5oCj4+Pj4+ IEBAIC04Myw3ICs4MywxMyBAQCB0eXBlZGVmIGVudW0gewo+Pj4+PiAgICAgIEhWTU1FTV9yYW1f cncsICAgICAgICAgICAgIC8qIE5vcm1hbCByZWFkL3dyaXRlIGd1ZXN0IFJBTSAqLwo+Pj4+PiAg ICAgIEhWTU1FTV9yYW1fcm8sICAgICAgICAgICAgIC8qIFJlYWQtb25seTsgd3JpdGVzIGFyZSBk aXNjYXJkZWQgKi8KPj4+Pj4gICAgICBIVk1NRU1fbW1pb19kbSwgICAgICAgICAgICAvKiBSZWFk cyBhbmQgd3JpdGUgZ28gdG8gdGhlIGRldmljZQo+PiBtb2RlbAo+Pj4+ICovCj4+Pj4+IC0gICAg SFZNTUVNX21taW9fd3JpdGVfZG0gICAgICAgLyogUmVhZC1vbmx5OyB3cml0ZXMgZ28gdG8gdGhl IGRldmljZQo+Pj4+IG1vZGVsICovCj4+Pj4+ICsjaWYgX19YRU5fSU5URVJGQUNFX1ZFUlNJT05f XyA8IDB4MDAwNDA3MDAKPj4+Pj4gKyAgICBIVk1NRU1fbW1pb193cml0ZV9kbSwgICAgICAvKiBS ZWFkLW9ubHk7IHdyaXRlcyBnbyB0byB0aGUgZGV2aWNlCj4+Pj4gbW9kZWwgKi8KPj4+Pj4gKyNl bHNlCj4+Pj4+ICsgICAgSFZNTUVNX3VudXNlZCwgICAgICAgICAgICAgLyogUGxhY2Vob2xkZXI7 IHNldHRpbmcgbWVtb3J5IHRvIHRoaXMKPj4gdHlwZQo+Pj4+PiArICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHdpbGwgZmFpbCBmb3IgY29kZSBhZnRlciA0LjcuMCAqLwo+Pj4+PiAr I2VuZGlmCj4+Pj4+ICsgICAgSFZNTUVNX2lvcmVxX3NlcnZlcgo+Pj4+Cj4+Pj4gQWxzbywgSSBk b24ndCB0aGluayB3ZSd2ZSBoYWQgYSBjb252aW5jaW5nIGFyZ3VtZW50IGZvciB3aHkgdGhpcyBw YXRjaAo+Pj4+IG5lZWRzIHRvIGJlIGluIDQuNy4gIFRoZSBwMm0gbmFtZSBjaGFuZ2VzIGFyZSBp bnRlcm5hbCBvbmx5LCBhbmQgc28KPj4+PiBkb24ndCBuZWVkIHRvIGJlIG1hZGUgYXQgYWxsOyBh bmQgdGhlIG9sZCBmdW5jdGlvbmFsaXR5IHdpbGwgd29yayBhcwo+Pj4+IHdlbGwgYXMgaXQgZXZl ciBkaWQuICBGdXJ0aGVybW9yZSwgdGhlIHdob2xlIHJlYXNvbiB3ZSdyZSBpbiB0aGlzCj4+Pj4g c2l0dWF0aW9uIGlzIHRoYXQgd2UgY2hlY2tlZCBpbiBhIHB1YmxpY2x5LXZpc2libGUgY2hhbmdl IHRvIHRoZQo+Pj4+IGludGVyZmFjZSBiZWZvcmUgaXQgd2FzIHByb3Blcmx5IHJlYWR5OyBJIHRo aW5rIHdlIHNob3VsZCBhdm9pZCBtYWtpbmcKPj4+PiB0aGUgc2FtZSBtaXN0YWtlIHRoaXMgdGlt ZS4KPj4+Pgo+Pj4+IFNvIHBlcnNvbmFsbHkgSSdkIGp1c3QgbGVhdmUgdGhpcyBwYXRjaCBlbnRp cmVseSBmb3IgNC44OyBidXQgaWYgUGF1bAo+Pj4+IGFuZC9vciBKYW4gaGF2ZSBzdHJvbmcgb3Bp bmlvbnMsIHRoZW4gSSB3b3VsZCBzYXkgY2hlY2sgaW4gb25seSBhCj4+Pj4gcGF0Y2ggdG8gZG8g dGhlICNpZi8jZWxzZS8jZW5kaWYsIGFuZCBsZWF2ZSBib3RoIHRoZSBwMm0gdHlwZSBjaGFuZ2Vz Cj4+Pj4gYW5kIHRoZSBuZXcgSFZNTUVNX2lvcmVxX3NlcnZlciBlbnVtIGZvciB3aGVuIHRoZSA0 LjgKPj4gZGV2ZWxvcG1lbnQKPj4+PiB3aW5kb3cgb3BlbnMuCj4+Pj4KPj4+Cj4+PiBJZiB0aGUg d2hvbGUgc2VyaWVzIGlzIGdvaW5nIGluIHRoZW4gSSB0aGluayB0aGlzIHBhdGNoIGlzIG9rLiBJ ZiB0aGlzIHRoZSBvbmx5Cj4+IHBhdGNoIHRoYXQgaXMgZ29pbmcgaW4gZm9yIDQuNyB0aGVuIEkg dGhpbmcgd2UgbmVlZCB0aGUgcGF0Y2ggdG8gaHZtX29wLmggdG8KPj4gZGVwcmVjYXRlIHRoZSBv bGQgdHlwZSBhbmQgdGhhdCdzIGl0LiBXZSBkZWZpbml0ZWx5IHNob3VsZCBub3QgaW50cm9kdWNl IGFuCj4+IGltcGxlbWVudGF0aW9uIG9mIHRoZSB0eXBlIEhWTU1FTV9pb3JlcV9zZXJ2ZXIgdGhh dCBoYXMgdGhlIHNhbWUKPj4gaGFyZGNvZGVkIHNlbWFudGljcyBhcyB0aGUgb2xkIHR5cGUgYW5k IHRoZW4gY2hhbmdlIGl0Lgo+Pj4gVGhlIHAybSB0eXBlIGNoYW5nZXMgYXJlIGFsc28gd3Jvbmcu IFRoYXQgdHlwZSBuZWVkcyB0byBiZSBsZWZ0IGFsb25lLAo+PiBwcmVzdW1hYmx5LCBzbyB0aGF0 IGFueXRoaW5nIHVzaW5nIEhWTU1FTV9tbWlvX3dyaXRlX2RtIGFuZAo+PiBjb21waWxlZCB0byB0 aGUgb2xkIGludGVyZmFjZSB2ZXJzaW9uIGNvbnRpbnVlcyB0byBmdW5jdGlvbi4gSSB0aGluawo+ PiBIVk1NRU1faW9yZXFfc2VydmVyIG5lZWRzIHRvIG1hcCB0byBhIG5ldyBwMm0gdHlwZSB3aGlj aCBzaG91bGQgYmUKPj4gaW50cm9kdWNlZCBpbiBwYXRjaCAjMy4KPj4+Cj4+Cj4+IFNvcnJ5LCBJ J20gYWxzbyBjb25mdXNlZCBub3cuIDooCj4+Cj4+IERvIHdlIHJlYWxseSB3YW50IHRvIGludHJv ZHVjZSBhIG5ldyBwMm0gdHlwZT8gV2h5Pwo+PiBNeSB1bmRlcnN0YW5kaW5nIG9mIHRoZSBwcmV2 aW91cyBhZ3JlZW1lbnQgaXMgdGhhdDoKPj4gMT4gV2UgbmVlZCB0aGUgaW50ZXJmYWNlIHRvIHdv cmsgb24gb2xkIGh5cGVydmlzb3IgZm9yCj4+IEhWTU1FTV9tbWlvX3dyaXRlX2RtOwo+PiAyPiBX ZSBuZWVkIHRoZSBpbnRlcmZhY2UgdG8gcmV0dXJuIC1FSU5WQUwgZm9yIG5ldyBoeXBlcnZpc29y Cj4+IGZvciBIVk1NRU1fbW1pb193cml0ZV9kbTsKPj4gMz4gV2UgbmVlZCB0aGUgbmV3IHR5cGUg SFZNTUVNX2lvcmVxX3NlcnZlciB0byB3b3JrIG9uIG5ldwo+PiBoeXBlcnZpc29yOwo+Pgo+PiBE aWQgSSBtaXNzIHNvbWV0aGluZz8gT3IgSSB0b3RhbGx5IG1pc3VuZGVyc3Rvb2Q/Cj4+Cj4KPiBJ IGRvbid0IGtub3cuIEknbSBjb25mdXNlZCB0b28uIFdoYXQgd2UgZGVmaW5pdGVseSBkb24ndCB3 YW50IHRvIGRvIGlzIGFkZCBhIG5ldyBIVk1NRU0gdHlwZSBhbmQgaGF2ZSBpdCBtYXAgdG8gdGhl IG9sZCBiZWhhdmlvdXIsIG90aGVyd2lzZSB3ZSdyZSBubyBiZXR0ZXIgb2ZmLgo+CgpUaGFua3Mg Zm9yIHlvdXIgcmVwbHksIFBhdWwuCgpXZWxsLCBidXQgdGhlIG9sZCBIRU1NRU0gdHlwZSBkb2Vz IG5vdCBleGlzdCBhbnltb3JlLCBhbmQgaXQgaXMgbm90IG9sZApiZWhhdmlvciB3aXRoIHBhdGNo MyBhY2NlcHRlZC4gV2lsbCBpdCBiZSBtb3JlIHJlYXNvbmFibGUgaWYgYWxsIDMgdGhlc2UKcGF0 Y2hlcyBhcmUgYWNjZXB0ZWQgaW4gbmV4dCB2ZXJzaW9uLCA0Ljggb3IgNC43LjEgaWYgdGhlcmUn cyBvbmU/CgpPbmUgcmVhc29uIEkgaGVzaXRhdGUgdG8gcmVtb3ZlIHRoZSBvbGQgcDJtX21taW9f d3JpdGVfZG0gKHdoaWNoIGlzIDB4ZgpJSVJDKSwgYW5kIGRlZmluZSBwMm1faW9yZXFfc2VydmVy IGFub3RoZXIgdmFsdWUoc2F5LCAweDEwKSwgaXMgdGhhdAp3aGF0IGlmIGFub3RoZXIgZnV0dXJl IHAybSB0eXBlIGlzIGludHJvZHVjZWQgd2l0aCB0aGlzIHZhbHVlKDB4Zik/ClRoYXQgd291bGQg YWxzbyBiZSB3ZWlyZOKApgoKPiBUaGUgcXVlc3Rpb24gSSdtIG5vdCBjbGVhciBvbiB0aGUgYW5z d2VyIHRvIGlzIHdoYXQgaGFwcGVucyB0byBvbGQgY29kZToKPgo+IFNob3VsZCBpdCBjb250aW51 ZSB0byBjb21waWxlPyBJZiBzbywgc2hvdWxkIGl0IGNvbnRpbnVlIHRvIHJ1bi4KPgoKQnkgIm9s ZCBjb2RlIiwgeW91IG1lYW4gb2xkIGludGVyZmFjZSBvbiBuZXcgaHlwZXJ2aXNvciwgb3IgYm90 aD8KPiAgIFBhdWwKPgo+PiBCLlIuCj4+IFl1CgpZdQoKX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxA bGlzdHMueGVuLm9yZwpodHRwOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK