From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ting-Wei Lan Subject: Re: Is: graphics corruption with 'xen: Support Xen pv-domains using PAT." Was:Re: [BUG] Characters on the screen are broken on Linux >= 3.19 with VT-d enabled Date: Tue, 16 Jun 2015 03:03:21 +0800 Message-ID: <1434395001.4468.15.camel@gmail.com> References: <557B0C22.7070406@gmail.com> <20150615185517.GA24881@l.oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20150615185517.GA24881@l.oracle.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Konrad Rzeszutek Wilk , jgross@suse.com Cc: xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org 5pa8IOS4gO+8jDIwMTUtMDYtMTUg5pa8IDE0OjU1IC0wNDAw77yMS29ucmFkIFJ6ZXN6dXRlayBX aWxrIOaPkOWIsO+8mgo+IE9uIFNhdCwgSnVuIDEzLCAyMDE1IGF0IDEyOjQzOjE0QU0gKzA4MDAs IFRpbmctV2VpIExhbiB3cm90ZToKPiA+IFdoZW4gdXNpbmcgTGludXggPj0gMy4xOSBhcyB0aGUg ZG9tMCBrZXJuZWwsIGNoYXJhY3RlcnMgb24gdGhlIAo+ID4gc2NyZWVuIGJlY29tZQo+ID4gYnJv a2VuIGFmdGVyIHRoZSBncmFwaGljIGRyaXZlciBpcyBsb2FkZWQuIFRoZSBjb21taXQgdGhhdCBi cmVha3MgCj4gPiBpdCBpcwo+ID4gKGZvdW5kIGJ5IGdpdCBiaXNlY3QpOgo+ID4gCj4gPiAKPiA+ IGh0dHBzOi8vZ2l0Lmtlcm5lbC5vcmcvY2dpdC9saW51eC9rZXJuZWwvZ2l0L3RvcnZhbGRzL2xp bnV4LmdpdC9jb20KPiA+IG1pdC8/aWQ9NDc1OTFkZgo+IAo+IExldHMgQ0MgSnVlcmdlbgo+ID4g Cj4gPiAKPiA+IFNjcmVlbnNob3Qgd2hlbiB0aGUgc3lzdGVtIHJ1biBpbiBzaW5nbGUgdXNlciBt b2RlOgo+ID4gCj4gPiAgIGh0dHBzOi8vYnVncy5mcmVlZGVza3RvcC5vcmcvYXR0YWNobWVudC5j Z2k/aWQ9MTE1MDc5Cj4gPiAKPiA+IAo+ID4gSWYgaXQgY29udGludWVzIGJvb3RpbmcsIHRoZSBk b20wIGNhbiBjcmFzaCBhZnRlciBHRE0gdHJpZXMgdG8gCj4gPiBzdGFydCBYb3JnLgo+ID4gU29t ZSBtZXNzYWdlcyBhcmUgc2hvd2VkIHdoZW4gWG9yZyBpcyBydW5uaW5nOgo+ID4gCj4gPiAgIFsg ICA4MC42MzY0NDZdIFtkcm1dIHN0dWNrIG9uIHJlbmRlciByaW5nCj4gPiAgIFsgICA4MC42NDAw NDFdIFtkcm1dIEdQVSBIQU5HOiBlY29kZSA1OjA6MHg3ZmJmZmYwOCwgaW4gWHdheWxhbmQgCj4g PiBbMjExMl0sCj4gPiByZWFzb246IFJpbmcgaHVuZywgYWN0aW9uOiByZXNldAo+ID4gCj4gPiAK PiA+IEkgY2Fubm90IHJ1biAnZG1lc2cnIGFuZCAneGwgZG1lc2cnIGJlY2F1c2UgdGhlIGRvbTAg aXMgdW51c2FibGUgCj4gPiBhZnRlciBYb3JnCj4gPiBydW5zLCBzbyBJIGF0dGFjaCB0aGUgc2Vy aWFsIGNvbnNvbGUgbG9nIGluc3RlYWQuIEl0IHdhcyB0ZXN0ZWQgb24gCj4gPiBYZW4KPiA+IDQu NS4xLXJjMiBhbmQgTGludXggNC4xLXJjNzoKPiA+IAo+ID4gICBodHRwczovL2dpc3QuZ2l0aHVi LmNvbS9sYW50dzQ0LzcxNTE2MGYxYTUzOTY3YTE2MjdiCj4gPiAKPiA+IAo+ID4gVGhpcyBwcm9i bGVtIHdhcyByZXBvcnRlZCB0byBEUk0vSW50ZWwsIGJ1dCB0aGV5IHRoaW5rIGl0IGlzIG5vdCAK PiA+IHRoZWlyIGJ1Zy4KPiA+IEkgYWxzbyByZXBvcnRlZCBpdCB0byBrZXJuZWwgYnVnemlsbGEs IGJ1dCB0aGVyZSBpcyBubyByZXNwb25zZToKPiA+IAo+ID4gICBodHRwczovL2J1Z3MuZnJlZWRl c2t0b3Aub3JnL3Nob3dfYnVnLmNnaT9pZD05MDAzNwo+ID4gICBodHRwczovL2J1Z3ppbGxhLmtl cm5lbC5vcmcvc2hvd19idWcuY2dpP2lkPTk3NDIxCj4gPiAKPiA+IAo+ID4gVGhpcyBwcm9ibGVt IG9ubHkgaGFwcGVucyB3aGVuIFZULWQgaXMgZW5hYmxlZC4gSWYgSSBhZGQgCj4gPiAnaW9tbXU9 b2ZmJyB0byBYZW4KPiA+IGJvb3QgYXJndW1lbnRzLCB0aGVyZSB3aWxsIGJlIG5vIHByb2JsZW0u IEl0IHNlZW1zIGl0IG9ubHkgaGFwcGVucyAKPiA+IG9uCj4gPiBzcGVjaWZpYyBoYXJkd2FyZS4g VHdvIG1hY2hpbmVzIGFyZSBsaXN0ZWQgYmVsb3csIG9uZSB3aXRoIHRoZSAKPiA+IHByb2JsZW0g YW5kCj4gPiBvbmUgd2l0aG91dCB0aGUgcHJvYmxlbS4KPiAKPiBDb3VsZCB5b3UgYWxzbyBpbmNs dWRlIHlvdXIgLmNvbmZpZyBmaWxlIHBsZWFzZT8KPiAKCk15IC5jb25maWcgZm9yIExpbnV4IDQu MC40CgpodHRwczovL2dpc3QuZ2l0aHViLmNvbS9sYW50dzQ0LzVjYmZjNmU2MDUyNDIzYmVjOTEw CgoKSXQgc2hvdWxkIGJlIHRoZSBzYW1lIGFzIHRoZSBrZXJuZWwgcHJvdmlkZWQgYnkgRmVkb3Jh IDIyIGV4Y2VwdCBmb3IKQ09ORklHX1hFTl9QVkg9eS4KCj4gPiAKPiA+IAo+ID4gVGhlIG1hY2hp bmUgdGhhdCBoYXMgdGhpcyBwcm9ibGVtOgo+ID4gCj4gPiAoU29mdHdhcmUpCj4gPiBYZW4gNC40 LjIsIDQuNS4wLCA0LjUuMS1yYzIKPiA+IExpbnV4IDMuMTkuMiwgMy4xOS4zLCAzLjE5LjQsIDQu MCwgNC4wLjMsIDQuMC40LCA0LjEtcmM3Cj4gPiAKPiA+IChDUFUgYW5kIEdQVSkKPiA+IEludGVs IENvcmUgaTUgQ1BVIDY1MCBAIDMuMjBHSHoKPiA+IEludGVsIElyb25sYWtlIERlc2t0b3AKPiA+ IAo+ID4gKE1vdGhlcmJvYXJkKQo+ID4gQVNVU1RlSyBDb21wdXRlciBJTkMuIFA3SDU1RC1NIEVW Two+ID4gCj4gPiAobHNwY2kgb3V0cHV0KQo+ID4gMDA6MDAuMCBIb3N0IGJyaWRnZTogSW50ZWwg Q29ycG9yYXRpb24gQ29yZSBQcm9jZXNzb3IgRFJBTSAKPiA+IENvbnRyb2xsZXIgKHJldgo+ID4g MTIpCj4gPiAwMDowMS4wIFBDSSBicmlkZ2U6IEludGVsIENvcnBvcmF0aW9uIENvcmUgUHJvY2Vz c29yIFBDSSBFeHByZXNzIAo+ID4geDE2IFJvb3QKPiA+IFBvcnQgKHJldiAxMikKPiA+IDAwOjAy LjAgVkdBIGNvbXBhdGlibGUgY29udHJvbGxlcjogSW50ZWwgQ29ycG9yYXRpb24gQ29yZSBQcm9j ZXNzb3IKPiA+IEludGVncmF0ZWQgR3JhcGhpY3MgQ29udHJvbGxlciAocmV2IDEyKQo+ID4gMDA6 MTYuMCBDb21tdW5pY2F0aW9uIGNvbnRyb2xsZXI6IEludGVsIENvcnBvcmF0aW9uIDUgU2VyaWVz LzM0MDAgCj4gPiBTZXJpZXMKPiA+IENoaXBzZXQgSEVDSSBDb250cm9sbGVyIChyZXYgMDYpCj4g PiAwMDoxYS4wIFVTQiBjb250cm9sbGVyOiBJbnRlbCBDb3Jwb3JhdGlvbiA1IFNlcmllcy8zNDAw IFNlcmllcyAKPiA+IENoaXBzZXQgVVNCMgo+ID4gRW5oYW5jZWQgSG9zdCBDb250cm9sbGVyIChy ZXYgMDYpCj4gPiAwMDoxYi4wIEF1ZGlvIGRldmljZTogSW50ZWwgQ29ycG9yYXRpb24gNSBTZXJp ZXMvMzQwMCBTZXJpZXMgCj4gPiBDaGlwc2V0IEhpZ2gKPiA+IERlZmluaXRpb24gQXVkaW8gKHJl diAwNikKPiA+IDAwOjFjLjAgUENJIGJyaWRnZTogSW50ZWwgQ29ycG9yYXRpb24gNSBTZXJpZXMv MzQwMCBTZXJpZXMgQ2hpcHNldCAKPiA+IFBDSQo+ID4gRXhwcmVzcyBSb290IFBvcnQgMSAocmV2 IDA2KQo+ID4gMDA6MWMuMSBQQ0kgYnJpZGdlOiBJbnRlbCBDb3Jwb3JhdGlvbiA1IFNlcmllcy8z NDAwIFNlcmllcyBDaGlwc2V0IAo+ID4gUENJCj4gPiBFeHByZXNzIFJvb3QgUG9ydCAyIChyZXYg MDYpCj4gPiAwMDoxYy4yIFBDSSBicmlkZ2U6IEludGVsIENvcnBvcmF0aW9uIDUgU2VyaWVzLzM0 MDAgU2VyaWVzIENoaXBzZXQgCj4gPiBQQ0kKPiA+IEV4cHJlc3MgUm9vdCBQb3J0IDMgKHJldiAw NikKPiA+IDAwOjFjLjMgUENJIGJyaWRnZTogSW50ZWwgQ29ycG9yYXRpb24gNSBTZXJpZXMvMzQw MCBTZXJpZXMgQ2hpcHNldCAKPiA+IFBDSQo+ID4gRXhwcmVzcyBSb290IFBvcnQgNCAocmV2IDA2 KQo+ID4gMDA6MWMuNCBQQ0kgYnJpZGdlOiBJbnRlbCBDb3Jwb3JhdGlvbiA1IFNlcmllcy8zNDAw IFNlcmllcyBDaGlwc2V0IAo+ID4gUENJCj4gPiBFeHByZXNzIFJvb3QgUG9ydCA1IChyZXYgMDYp Cj4gPiAwMDoxYy41IFBDSSBicmlkZ2U6IEludGVsIENvcnBvcmF0aW9uIDUgU2VyaWVzLzM0MDAg U2VyaWVzIENoaXBzZXQgCj4gPiBQQ0kKPiA+IEV4cHJlc3MgUm9vdCBQb3J0IDYgKHJldiAwNikK PiA+IDAwOjFkLjAgVVNCIGNvbnRyb2xsZXI6IEludGVsIENvcnBvcmF0aW9uIDUgU2VyaWVzLzM0 MDAgU2VyaWVzIAo+ID4gQ2hpcHNldCBVU0IyCj4gPiBFbmhhbmNlZCBIb3N0IENvbnRyb2xsZXIg KHJldiAwNikKPiA+IDAwOjFlLjAgUENJIGJyaWRnZTogSW50ZWwgQ29ycG9yYXRpb24gODI4MDEg UENJIEJyaWRnZSAocmV2IGE2KQo+ID4gMDA6MWYuMCBJU0EgYnJpZGdlOiBJbnRlbCBDb3Jwb3Jh dGlvbiA1IFNlcmllcyBDaGlwc2V0IExQQyAKPiA+IEludGVyZmFjZQo+ID4gQ29udHJvbGxlciAo cmV2IDA2KQo+ID4gMDA6MWYuMiBTQVRBIGNvbnRyb2xsZXI6IEludGVsIENvcnBvcmF0aW9uIDUg U2VyaWVzLzM0MDAgU2VyaWVzIAo+ID4gQ2hpcHNldCA2Cj4gPiBwb3J0IFNBVEEgQUhDSSBDb250 cm9sbGVyIChyZXYgMDYpCj4gPiAwMDoxZi4zIFNNQnVzOiBJbnRlbCBDb3Jwb3JhdGlvbiA1IFNl cmllcy8zNDAwIFNlcmllcyBDaGlwc2V0IFNNQnVzCj4gPiBDb250cm9sbGVyIChyZXYgMDYpCj4g PiAwMTowMC4wIFVTQiBjb250cm9sbGVyOiBORUMgQ29ycG9yYXRpb24gdVBENzIwMjAwIFVTQiAz LjAgSG9zdCAKPiA+IENvbnRyb2xsZXIKPiA+IChyZXYgMDMpCj4gPiAwMjowMC4wIEV0aGVybmV0 IGNvbnRyb2xsZXI6IFJlYWx0ZWsgU2VtaWNvbmR1Y3RvciBDby4sIEx0ZC4KPiA+IFJUTDgxMTEv ODE2OC84NDExIFBDSSBFeHByZXNzIEdpZ2FiaXQgRXRoZXJuZXQgQ29udHJvbGxlciAocmV2IDAz KQo+ID4gMDM6MDAuMCBJREUgaW50ZXJmYWNlOiBNYXJ2ZWxsIFRlY2hub2xvZ3kgR3JvdXAgTHRk LiA4OFNFNjEyMSBTQVRBIAo+ID4gSUkgLyBQQVRBCj4gPiBDb250cm9sbGVyIChyZXYgYjIpCj4g PiAwNTowMC4wIEZpcmVXaXJlIChJRUVFIDEzOTQpOiBWSUEgVGVjaG5vbG9naWVzLCBJbmMuIFZU NjMxNSBTZXJpZXMgCj4gPiBGaXJld2lyZQo+ID4gQ29udHJvbGxlcgo+ID4gMDY6MDAuMCBVU0Ig Y29udHJvbGxlcjogUmVuZXNhcyBUZWNobm9sb2d5IENvcnAuIHVQRDcyMDIwMiBVU0IgMy4wIAo+ ID4gSG9zdAo+ID4gQ29udHJvbGxlciAocmV2IDAyKQo+ID4gM2Y6MDAuMCBIb3N0IGJyaWRnZTog SW50ZWwgQ29ycG9yYXRpb24gQ29yZSBQcm9jZXNzb3IgUXVpY2tQYXRoIAo+ID4gQXJjaGl0ZWN0 dXJlCj4gPiBHZW5lcmljIE5vbi1jb3JlIFJlZ2lzdGVycyAocmV2IDAyKQo+ID4gM2Y6MDAuMSBI b3N0IGJyaWRnZTogSW50ZWwgQ29ycG9yYXRpb24gQ29yZSBQcm9jZXNzb3IgUXVpY2tQYXRoIAo+ ID4gQXJjaGl0ZWN0dXJlCj4gPiBTeXN0ZW0gQWRkcmVzcyBEZWNvZGVyIChyZXYgMDIpCj4gPiAz ZjowMi4wIEhvc3QgYnJpZGdlOiBJbnRlbCBDb3Jwb3JhdGlvbiBDb3JlIFByb2Nlc3NvciBRUEkg TGluayAwIAo+ID4gKHJldiAwMikKPiA+IDNmOjAyLjEgSG9zdCBicmlkZ2U6IEludGVsIENvcnBv cmF0aW9uIDFzdCBHZW5lcmF0aW9uIENvcmUgaTMvNS83IAo+ID4gUHJvY2Vzc29yCj4gPiBRUEkg UGh5c2ljYWwgMCAocmV2IDAyKQo+ID4gM2Y6MDIuMiBIb3N0IGJyaWRnZTogSW50ZWwgQ29ycG9y YXRpb24gMXN0IEdlbmVyYXRpb24gQ29yZSBpMy81LzcgCj4gPiBQcm9jZXNzb3IKPiA+IFJlc2Vy dmVkIChyZXYgMDIpCj4gPiAzZjowMi4zIEhvc3QgYnJpZGdlOiBJbnRlbCBDb3Jwb3JhdGlvbiAx c3QgR2VuZXJhdGlvbiBDb3JlIGkzLzUvNyAKPiA+IFByb2Nlc3Nvcgo+ID4gUmVzZXJ2ZWQgKHJl diAwMikKPiA+IAo+ID4gCj4gPiBUaGUgbWFjaGluZSB0aGF0IHdvcmtzIGZpbmU6Cj4gPiAKPiA+ IChTb2Z0d2FyZSkKPiA+IFhlbiA0LjQuMSwgNC40LjIKPiA+IExpbnV4IDMuMTkuMSwgMy4xOS4y LCAzLjE5LjMsIDMuMTkuNywgNC4wLjQKPiA+IAo+ID4gKENQVSBhbmQgR1BVKQo+ID4gSW50ZWwg Q29yZSBpNy0yNjAwIENQVSBAIDMuNDBHSHoKPiA+IEludGVsIFNhbmR5YnJpZGdlIERlc2t0b3AK PiA+IAo+ID4gKE1vdGhlcmJvYXJkKQo+ID4gQVNVU1RlSyBDb21wdXRlciBJTkMuIFA4WjY4LU0g UFJPCj4gPiAKPiA+IChsc3BjaSBvdXRwdXQpCj4gPiAwMDowMC4wIEhvc3QgYnJpZGdlOiBJbnRl bCBDb3Jwb3JhdGlvbiAybmQgR2VuZXJhdGlvbiBDb3JlIAo+ID4gUHJvY2Vzc29yIEZhbWlseQo+ ID4gRFJBTSBDb250cm9sbGVyIChyZXYgMDkpCj4gPiAwMDowMS4wIFBDSSBicmlkZ2U6IEludGVs IENvcnBvcmF0aW9uIFhlb24gRTMtMTIwMC8ybmQgR2VuZXJhdGlvbiAKPiA+IENvcmUKPiA+IFBy b2Nlc3NvciBGYW1pbHkgUENJIEV4cHJlc3MgUm9vdCBQb3J0IChyZXYgMDkpCj4gPiAwMDowMi4w IFZHQSBjb21wYXRpYmxlIGNvbnRyb2xsZXI6IEludGVsIENvcnBvcmF0aW9uIDJuZCBHZW5lcmF0 aW9uIAo+ID4gQ29yZQo+ID4gUHJvY2Vzc29yIEZhbWlseSBJbnRlZ3JhdGVkIEdyYXBoaWNzIENv bnRyb2xsZXIgKHJldiAwOSkKPiA+IDAwOjE2LjAgQ29tbXVuaWNhdGlvbiBjb250cm9sbGVyOiBJ bnRlbCBDb3Jwb3JhdGlvbiA2IFNlcmllcy9DMjAwIAo+ID4gU2VyaWVzCj4gPiBDaGlwc2V0IEZh bWlseSBNRUkgQ29udHJvbGxlciAjMSAocmV2IDA0KQo+ID4gMDA6MWEuMCBVU0IgY29udHJvbGxl cjogSW50ZWwgQ29ycG9yYXRpb24gNiBTZXJpZXMvQzIwMCBTZXJpZXMgCj4gPiBDaGlwc2V0Cj4g PiBGYW1pbHkgVVNCIEVuaGFuY2VkIEhvc3QgQ29udHJvbGxlciAjMiAocmV2IDA1KQo+ID4gMDA6 MWIuMCBBdWRpbyBkZXZpY2U6IEludGVsIENvcnBvcmF0aW9uIDYgU2VyaWVzL0MyMDAgU2VyaWVz IAo+ID4gQ2hpcHNldCBGYW1pbHkKPiA+IEhpZ2ggRGVmaW5pdGlvbiBBdWRpbyBDb250cm9sbGVy IChyZXYgMDUpCj4gPiAwMDoxYy4wIFBDSSBicmlkZ2U6IEludGVsIENvcnBvcmF0aW9uIDYgU2Vy aWVzL0MyMDAgU2VyaWVzIENoaXBzZXQgCj4gPiBGYW1pbHkKPiA+IFBDSSBFeHByZXNzIFJvb3Qg UG9ydCAxIChyZXYgYjUpCj4gPiAwMDoxYy40IFBDSSBicmlkZ2U6IEludGVsIENvcnBvcmF0aW9u IDYgU2VyaWVzL0MyMDAgU2VyaWVzIENoaXBzZXQgCj4gPiBGYW1pbHkKPiA+IFBDSSBFeHByZXNz IFJvb3QgUG9ydCA1IChyZXYgYjUpCj4gPiAwMDoxYy41IFBDSSBicmlkZ2U6IEludGVsIENvcnBv cmF0aW9uIDgyODAxIFBDSSBCcmlkZ2UgKHJldiBiNSkKPiA+IDAwOjFjLjYgUENJIGJyaWRnZTog SW50ZWwgQ29ycG9yYXRpb24gNiBTZXJpZXMvQzIwMCBTZXJpZXMgQ2hpcHNldCAKPiA+IEZhbWls eQo+ID4gUENJIEV4cHJlc3MgUm9vdCBQb3J0IDcgKHJldiBiNSkKPiA+IDAwOjFjLjcgUENJIGJy aWRnZTogSW50ZWwgQ29ycG9yYXRpb24gNiBTZXJpZXMvQzIwMCBTZXJpZXMgQ2hpcHNldCAKPiA+ IEZhbWlseQo+ID4gUENJIEV4cHJlc3MgUm9vdCBQb3J0IDggKHJldiBiNSkKPiA+IDAwOjFkLjAg VVNCIGNvbnRyb2xsZXI6IEludGVsIENvcnBvcmF0aW9uIDYgU2VyaWVzL0MyMDAgU2VyaWVzIAo+ ID4gQ2hpcHNldAo+ID4gRmFtaWx5IFVTQiBFbmhhbmNlZCBIb3N0IENvbnRyb2xsZXIgIzEgKHJl diAwNSkKPiA+IDAwOjFmLjAgSVNBIGJyaWRnZTogSW50ZWwgQ29ycG9yYXRpb24gWjY4IEV4cHJl c3MgQ2hpcHNldCBGYW1pbHkgCj4gPiBMUEMKPiA+IENvbnRyb2xsZXIgKHJldiAwNSkKPiA+IDAw OjFmLjIgU0FUQSBjb250cm9sbGVyOiBJbnRlbCBDb3Jwb3JhdGlvbiA2IFNlcmllcy9DMjAwIFNl cmllcyAKPiA+IENoaXBzZXQKPiA+IEZhbWlseSBTQVRBIEFIQ0kgQ29udHJvbGxlciAocmV2IDA1 KQo+ID4gMDA6MWYuMyBTTUJ1czogSW50ZWwgQ29ycG9yYXRpb24gNiBTZXJpZXMvQzIwMCBTZXJp ZXMgQ2hpcHNldCAKPiA+IEZhbWlseSBTTUJ1cwo+ID4gQ29udHJvbGxlciAocmV2IDA1KQo+ID4g MDE6MDAuMCBWR0EgY29tcGF0aWJsZSBjb250cm9sbGVyOiBOVklESUEgQ29ycG9yYXRpb24gRzk2 IFtHZUZvcmNlIAo+ID4gOTQwMCBHVF0KPiA+IChyZXYgYTEpCj4gPiAwMzowMC4wIEV0aGVybmV0 IGNvbnRyb2xsZXI6IFJlYWx0ZWsgU2VtaWNvbmR1Y3RvciBDby4sIEx0ZC4KPiA+IFJUTDgxMTEv ODE2OC84NDExIFBDSSBFeHByZXNzIEdpZ2FiaXQgRXRoZXJuZXQgQ29udHJvbGxlciAocmV2IDA2 KQo+ID4gMDQ6MDAuMCBQQ0kgYnJpZGdlOiBBU01lZGlhIFRlY2hub2xvZ3kgSW5jLiBBU00xMDgz LzEwODUgUENJZSB0byAKPiA+IFBDSSBCcmlkZ2UKPiA+IChyZXYgMDEpCj4gPiAwNjowMC4wIFNB VEEgY29udHJvbGxlcjogQVNNZWRpYSBUZWNobm9sb2d5IEluYy4gQVNNMTA2MiBTZXJpYWwgQVRB Cj4gPiBDb250cm9sbGVyIChyZXYgMDEpCj4gPiAwNzowMC4wIFVTQiBjb250cm9sbGVyOiBBU01l ZGlhIFRlY2hub2xvZ3kgSW5jLiBBU00xMDQyIFN1cGVyU3BlZWQgCj4gPiBVU0IgSG9zdAo+ID4g Q29udHJvbGxlcgo+ID4gCj4gPiAKPiA+IEkgc3RpbGwgcmVtZW1iZXIgdGhhdCB0aGVyZSB3YXMg YSBzaW1pbGFyIHByb2JsZW0gZm91bmQgdHdvIHllYXJzIAo+ID4gYWdvIG9uIHRoZQo+ID4gc2Ft ZSBoYXJkd2FyZSB3aXRoIHNpbWlsYXIgYnJva2VuIHNjcmVlbiBvdXRwdXQgYW5kIGl0IGFsc28g Y3Jhc2hlZCAKPiA+IGFmdGVyCj4gPiBYb3JnIHdhcyBzdGFydGVkLCBidXQgSSBjYW5ub3QgY29u ZmlybSB0aGF0IHRoZXkgYXJlIHRoZSBzYW1lIAo+ID4gcHJvYmxlbXMuIEkKPiA+IGRvbid0IGtu b3cgd2hldGhlciBlcnJvciBtZXNzYWdlcyBhcmUgc2ltbGlhci4KPiA+IAo+ID4gVGhlIG9sZCBw cm9ibGVtIGhhcHBlbnMgb24gTGludXggMy43IH4gMy4xMCB3aXRoIFZULWQgZW5hYmxlZC4gSXQg Cj4gPiBvbmx5Cj4gPiBoYXBwZW5lZCB3aGVuIG5vdCB1c2luZyBYZW4sIHNvIEkgYWRkZWQgJ2lu dGVsX2lvbW11PW9mZicgdG8gTGludXggCj4gPiBib290Cj4gPiBhcmd1bWVudHMgdG8gd29ya2Fy b3VuZCBpdC4KPiA+IAo+ID4gVGhlIHByb2JsZW0gSSByZXBvcnQgaGVyZSBoYXBwZW5zIG9uIExp bnV4ID49IDMuMTkgd2l0aCBWVC1kIAo+ID4gZW5hYmxlZC4gSXQKPiA+IG9ubHkgaGFwcGVucyB3 aGVuIHVzaW5nIFhlbiwgc28gSSBhZGQgJ2lvbW11PW9mZicgdG8gWGVuIGJvb3QgCj4gPiBhcmd1 bWVudHMgdG8KPiA+IHdvcmthcm91bmQgaXQuCj4gPiAKPiA+IF9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gPiBYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Cj4g PiBYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwo+ID4gaHR0cDovL2xpc3RzLnhlbi5vcmcveGVuLWRl dmVsCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4t ZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHA6Ly9saXN0cy54 ZW4ub3JnL3hlbi1kZXZlbAo=