From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anshuman Gupta Subject: Re: [PATCH i-g-t v4 2/5] tests/pm_dc: Added new test to verify Display C States Date: Fri, 8 Feb 2019 21:53:04 +0530 Message-ID: <20190208162304.GA18367@genxfsim-desktop> References: <1549037582-22449-1-git-send-email-anshuman.gupta@intel.com> <1549037582-22449-3-git-send-email-anshuman.gupta@intel.com> <20190208144931.GD31034@ideak-desk.fi.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by gabe.freedesktop.org (Postfix) with ESMTPS id 9DF3F6E320 for ; Fri, 8 Feb 2019 16:26:12 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20190208144931.GD31034@ideak-desk.fi.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Imre Deak Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gRnJpLCBGZWIgMDgsIDIwMTkgYXQgMDQ6NDk6MzFQTSArMDIwMCwgSW1yZSBEZWFrIHdyb3Rl Ogo+IE9uIEZyaSwgRmViIDAxLCAyMDE5IGF0IDA5OjQyOjU5UE0gKzA1MzAsIEFuc2h1bWFuIEd1 cHRhIHdyb3RlOgo+ID4gRnJvbTogSnlvdGkgWWFkYXYgPGp5b3RpLnIueWFkYXZAaW50ZWwuY29t Pgo+ID4gCj4gPiBDdXJyZW50bHkgdGhpcyB0ZXN0IHZhbGlkYXRlcyBEQzUgdXBvbiBQU1IgZW50 cnkgZm9yIHN1cHBvcnRlZCBwbGF0Zm9ybXMuCj4gPiBBZGRlZCBuZXcgZmlsZSBmb3IgY29tcGls YXRpb24gaW5zaWRlIE1ha2VmaWxlIGFuZCBNZXNvbi4KPiA+IAo+ID4gdjI6IFVzZWQgdGhlIGRl YnVnZnMgZW50cnkgZm9yIERDIGNvdW50ZXJzIGluc3RlYWQgb2YgUmVnaXN0ZXJzLgo+ID4gICAg IFVzZWQgc2hvcnRlciBuYW1lcyBmb3IgdmFyaWFibGVzLgo+ID4gICAgIEludHJvZHVjZWQgdGlt ZW91dCB0byByZWFkIERDIGNvdW50ZXJzLgo+ID4gdjM6IG9uZSBzZWNvbmQgdGltZW91dCBpcyBp bnRyb2R1Y2VkIHRvIHJlYWQgREMgY291bnRlcnMuCj4gPiAgICAgU2tpcCB0aGUgc3VidGVzdCBp ZiBjb3VudGVycyBhcmUgbm90IGF2YWlsYWJsZSBmb3IgdGhhdCBwbGF0Zm9ybS4KPiA+IHY0OiBS ZWJhc2VkLCBhZGRyZXNzZWQgdGhlIHJldmlldyBjb21tZW50IGFuZCBzcGVsbCBjb3JyZWN0aW9u Lgo+ID4gCj4gPiBTaWduZWQtb2ZmLWJ5OiBKeW90aSBZYWRhdiA8anlvdGkuci55YWRhdkBpbnRl bC5jb20+Cj4gPiBTaWduZWQtb2ZmLWJ5OiBBbnNodW1hbiBHdXB0YSA8YW5zaHVtYW4uZ3VwdGFA aW50ZWwuY29tPgo+ID4gLS0tCj4gPiAgdGVzdHMvTWFrZWZpbGUuc291cmNlcyB8ICAgMSArCj4g PiAgdGVzdHMvbWVzb24uYnVpbGQgICAgICB8ICAgMSArCj4gPiAgdGVzdHMvcG1fZGMuYyAgICAg ICAgICB8IDIwNSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrCj4gPiAgMyBmaWxlcyBjaGFuZ2VkLCAyMDcgaW5zZXJ0aW9ucygrKQo+ID4gIGNyZWF0ZSBt b2RlIDEwMDY0NCB0ZXN0cy9wbV9kYy5jCj4gPiAKPiA+IGRpZmYgLS1naXQgYS90ZXN0cy9NYWtl ZmlsZS5zb3VyY2VzIGIvdGVzdHMvTWFrZWZpbGUuc291cmNlcwo+ID4gaW5kZXggMzRiN2U0NC4u MDdiOTc4NyAxMDA2NDQKPiA+IC0tLSBhL3Rlc3RzL01ha2VmaWxlLnNvdXJjZXMKPiA+ICsrKyBi L3Rlc3RzL01ha2VmaWxlLnNvdXJjZXMKPiA+IEBAIC04MCw2ICs4MCw3IEBAIFRFU1RTX3Byb2dz ID0gXAo+ID4gIAlwbV9scHNwIFwKPiA+ICAJcG1fcmM2X3Jlc2lkZW5jeSBcCj4gPiAgCXBtX3Jw bSBcCj4gPiArCXBtX2RjIFwKPiA+ICAJcG1fcnBzIFwKPiA+ICAJcG1fc3NldSBcCj4gPiAgCXBy aW1lX2J1c3kgXAo+ID4gZGlmZiAtLWdpdCBhL3Rlc3RzL21lc29uLmJ1aWxkIGIvdGVzdHMvbWVz b24uYnVpbGQKPiA+IGluZGV4IDI1YjQ2MTQuLjMwNzBhM2UgMTAwNjQ0Cj4gPiAtLS0gYS90ZXN0 cy9tZXNvbi5idWlsZAo+ID4gKysrIGIvdGVzdHMvbWVzb24uYnVpbGQKPiA+IEBAIC02Niw2ICs2 Niw3IEBAIHRlc3RfcHJvZ3MgPSBbCj4gPiAgCSdwbV9scHNwJywKPiA+ICAJJ3BtX3JjNl9yZXNp ZGVuY3knLAo+ID4gIAkncG1fcnBtJywKPiA+ICsJJ3BtX2RjJywKPiA+ICAJJ3BtX3JwcycsCj4g PiAgCSdwbV9zc2V1JywKPiA+ICAJJ3ByaW1lX2J1c3knLAo+ID4gZGlmZiAtLWdpdCBhL3Rlc3Rz L3BtX2RjLmMgYi90ZXN0cy9wbV9kYy5jCj4gPiBuZXcgZmlsZSBtb2RlIDEwMDY0NAo+ID4gaW5k ZXggMDAwMDAwMC4uZDU5YmU5NAo+ID4gLS0tIC9kZXYvbnVsbAo+ID4gKysrIGIvdGVzdHMvcG1f ZGMuYwo+ID4gQEAgLTAsMCArMSwyMDUgQEAKPiA+ICsvKgo+ID4gKyAqIENvcHlyaWdodCDCqSAy MDE4IEludGVsIENvcnBvcmF0aW9uCj4gPiArICoKPiA+ICsgKiBQZXJtaXNzaW9uIGlzIGhlcmVi eSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYQo+ID4g KyAqIGNvcHkgb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZp bGVzICh0aGUgIlNvZnR3YXJlIiksCj4gPiArICogdG8gZGVhbCBpbiB0aGUgU29mdHdhcmUgd2l0 aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbgo+ID4gKyAqIHRo ZSByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRl LCBzdWJsaWNlbnNlLAo+ID4gKyAqIGFuZC9vciBzZWxsIGNvcGllcyBvZiB0aGUgU29mdHdhcmUs IGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZQo+ID4gKyAqIFNvZnR3YXJlIGlzIGZ1 cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6Cj4g PiArICoKPiA+ICsgKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNz aW9uIG5vdGljZSAoaW5jbHVkaW5nIHRoZSBuZXh0Cj4gPiArICogcGFyYWdyYXBoKSBzaGFsbCBi ZSBpbmNsdWRlZCBpbiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZQo+ ID4gKyAqIFNvZnR3YXJlLgo+ID4gKyAqCj4gPiArICogVEhFIFNPRlRXQVJFIElTIFBST1ZJREVE ICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKPiA+ICsg KiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9G IE1FUkNIQU5UQUJJTElUWSwKPiA+ICsgKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T RSBBTkQgTk9OSU5GUklOR0VNRU5ULiAgSU4gTk8gRVZFTlQgU0hBTEwKPiA+ICsgKiBUSEUgQVVU SE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdF UyBPUiBPVEhFUgo+ID4gKyAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09O VFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HCj4gPiArICogRlJPTSwgT1VUIE9GIE9S IElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFM SU5HUwo+ID4gKyAqIElOIFRIRSBTT0ZUV0FSRS4KPiA+ICsgKgo+ID4gKyAqLwo+ID4gKwo+ID4g KyNpbmNsdWRlICJpZ3QuaCIKPiA+ICsjaW5jbHVkZSAiaWd0X3N5c2ZzLmgiCj4gPiArI2luY2x1 ZGUgImlndF9wc3IuaCIKPiA+ICsjaW5jbHVkZSA8ZXJybm8uaD4KPiA+ICsjaW5jbHVkZSA8c3Rk Ym9vbC5oPgo+ID4gKyNpbmNsdWRlIDxzdGRpby5oPgo+ID4gKyNpbmNsdWRlIDxzdHJpbmcuaD4K PiA+ICsjaW5jbHVkZSAiaW50ZWxfYnVmbWdyLmgiCj4gPiArI2luY2x1ZGUgImludGVsX2lvLmgi Cj4gPiArI2luY2x1ZGUgImxpbWl0cy5oIgo+ID4gKwo+ID4gKwo+ID4gK3R5cGVkZWYgc3RydWN0 IHsKPiA+ICsJaW50IGRybV9mZDsKPiA+ICsJaW50IGRlYnVnZnNfZmQ7Cj4gPiArCXVpbnQzMl90 IGRldmlkOwo+ID4gKwlpZ3RfZGlzcGxheV90IGRpc3BsYXk7Cj4gPiArCXN0cnVjdCBpZ3RfZmIg ZmJfd2hpdGU7Cj4gPiArCWVudW0gcHNyX21vZGUgb3BfcHNyX21vZGU7Cj4gPiArCWRybU1vZGVN b2RlSW5mbyAqbW9kZTsKPiA+ICsJaWd0X291dHB1dF90ICpvdXRwdXQ7Cj4gPiArfSBkYXRhX3Q7 Cj4gPiArCj4gPiArLyogREMgU3RhdGUgRmxhZ3MgKi8KPiA+ICsjZGVmaW5lIENIRUNLX0RDNQkx Cj4gPiArI2RlZmluZSBDSEVDS19EQzYJMgo+ID4gKwo+ID4gK3N0YXRpYyB2b2lkIHNldHVwX291 dHB1dChkYXRhX3QgKmRhdGEpCj4gPiArewo+ID4gKwlpZ3RfZGlzcGxheV90ICpkaXNwbGF5ID0g JmRhdGEtPmRpc3BsYXk7Cj4gPiArCWlndF9vdXRwdXRfdCAqb3V0cHV0Owo+ID4gKwllbnVtIHBp cGUgcGlwZTsKPiA+ICsKPiA+ICsJZm9yX2VhY2hfcGlwZV93aXRoX3ZhbGlkX291dHB1dChkaXNw bGF5LCBwaXBlLCBvdXRwdXQpIHsKPiA+ICsJCWRybU1vZGVDb25uZWN0b3JQdHIgYyA9IG91dHB1 dC0+Y29uZmlnLmNvbm5lY3RvcjsKPiA+ICsKPiA+ICsJCWlmIChjLT5jb25uZWN0b3JfdHlwZSAh PSBEUk1fTU9ERV9DT05ORUNUT1JfZURQKQo+ID4gKwkJCWNvbnRpbnVlOwo+ID4gKwo+ID4gKwkJ aWd0X291dHB1dF9zZXRfcGlwZShvdXRwdXQsIHBpcGUpOwo+ID4gKwkJZGF0YS0+b3V0cHV0ID0g b3V0cHV0Owo+ID4gKwkJZGF0YS0+bW9kZSA9IGlndF9vdXRwdXRfZ2V0X21vZGUob3V0cHV0KTsK PiA+ICsKPiA+ICsJCXJldHVybjsKPiA+ICsJfQo+ID4gK30KPiA+ICsKPiA+ICtzdGF0aWMgdm9p ZCBkaXNwbGF5X2ZpbmkoZGF0YV90ICpkYXRhKQo+ID4gK3sKPiA+ICsJaWd0X2Rpc3BsYXlfZmlu aSgmZGF0YS0+ZGlzcGxheSk7Cj4gPiArfQo+ID4gKwo+ID4gK3N0YXRpYyBib29sIGVkcF9wc3Jf c2lua19zdXBwb3J0KGRhdGFfdCAqZGF0YSkKPiA+ICt7Cj4gPiArCWNoYXIgYnVmWzUxMl07Cj4g PiArCj4gPiArCWlndF9kZWJ1Z2ZzX3NpbXBsZV9yZWFkKGRhdGEtPmRlYnVnZnNfZmQsICJpOTE1 X2VkcF9wc3Jfc3RhdHVzIiwKPiA+ICsJCQkgYnVmLCBzaXplb2YoYnVmKSk7Cj4gPiArCj4gPiAr CXJldHVybiBzdHJzdHIoYnVmLCAiU2lua19TdXBwb3J0OiB5ZXNcbiIpOwo+ID4gK30KPiA+ICsK PiA+ICtzdGF0aWMgdm9pZCBjbGVhbnVwKGRhdGFfdCAqZGF0YSkKPiA+ICt7Cj4gPiArCWlndF9w bGFuZV90ICpwcmltYXJ5Owo+ID4gKwo+ID4gKwlwcmltYXJ5ID0gaWd0X291dHB1dF9nZXRfcGxh bmVfdHlwZShkYXRhLT5vdXRwdXQsCj4gPiArCQkJCQkgICAgRFJNX1BMQU5FX1RZUEVfUFJJTUFS WSk7Cj4gPiArCWlndF9wbGFuZV9zZXRfZmIocHJpbWFyeSwgTlVMTCk7Cj4gPiArCWlndF9kaXNw bGF5X2NvbW1pdCgmZGF0YS0+ZGlzcGxheSk7Cj4gPiArCWlndF9yZW1vdmVfZmIoZGF0YS0+ZHJt X2ZkLCAmZGF0YS0+ZmJfd2hpdGUpOwo+ID4gK30KPiA+ICsKPiA+ICtzdGF0aWMgdm9pZCBzZXR1 cF9wcmltYXJ5KGRhdGFfdCAqZGF0YSkKPiA+ICt7Cj4gPiArCWlndF9wbGFuZV90ICpwcmltYXJ5 Owo+ID4gKwo+ID4gKwlwcmltYXJ5ID0gaWd0X291dHB1dF9nZXRfcGxhbmVfdHlwZShkYXRhLT5v dXRwdXQsCj4gPiArCQkJCQkgICAgRFJNX1BMQU5FX1RZUEVfUFJJTUFSWSk7Cj4gPiArCWlndF9w bGFuZV9zZXRfZmIocHJpbWFyeSwgTlVMTCk7Cj4gPiArCWlndF9jcmVhdGVfY29sb3JfZmIoZGF0 YS0+ZHJtX2ZkLAo+ID4gKwkJCSAgICBkYXRhLT5tb2RlLT5oZGlzcGxheSwgZGF0YS0+bW9kZS0+ dmRpc3BsYXksCj4gPiArCQkJICAgIERSTV9GT1JNQVRfWFJHQjg4ODgsCj4gPiArCQkJICAgIExP Q0FMX0k5MTVfRk9STUFUX01PRF9YX1RJTEVELAo+ID4gKwkJCSAgICAxLjAsIDEuMCwgMS4wLAo+ ID4gKwkJCSAgICAmZGF0YS0+ZmJfd2hpdGUpOwo+ID4gKwlpZ3RfcGxhbmVfc2V0X2ZiKHByaW1h cnksICZkYXRhLT5mYl93aGl0ZSk7Cj4gPiArCWlndF9kaXNwbGF5X2NvbW1pdCgmZGF0YS0+ZGlz cGxheSk7Cj4gPiArfQo+ID4gKwo+ID4gK3N0YXRpYyB1aW50MzJfdCBnZXRfZGNfY291bnRlcihj aGFyICpkY19kYXRhKQo+ID4gK3sKPiA+ICsJY2hhciAqZTsKPiA+ICsJbG9uZyByZXQ7Cj4gPiAr CWNoYXIgKnMgPSBzdHJjaHIoZGNfZGF0YSwgJzonKTsKPiA+ICsKPiA+ICsJYXNzZXJ0KHMpOwo+ ID4gKwlzKys7Cj4gPiArCXJldCA9IHN0cnRvbChzLCAmZSwgMTApOwo+ID4gKwlhc3NlcnQoKChy ZXQgIT0gTE9OR19NSU4gJiYgcmV0ICE9IExPTkdfTUFYKSB8fCBlcnJubyAhPSBFUkFOR0UpICYm Cj4gPiArCSAgICAgICBlID4gcyAmJiAqZSA9PSAnXG4nICYmIHJldCA+PSAwKTsKPiA+ICsJcmV0 dXJuIHJldDsKPiA+ICt9Cj4gPiArCj4gPiArc3RhdGljIHVpbnQzMl90IHJlYWRfZGNfY291bnRl cih1aW50MzJfdCBkcm1fZmQsIGludCBkY19mbGFnKQo+ID4gK3sKPiA+ICsJY2hhciBidWZbNDA5 Nl07Cj4gPiArCWNoYXIgKnN0cjsKPiA+ICsKPiA+ICsJaWd0X2RlYnVnZnNfcmVhZChkcm1fZmQs ICJpOTE1X2RtY19pbmZvIiwgYnVmKTsKPiA+ICsJaWYgKGRjX2ZsYWcgJiBDSEVDS19EQzUpCj4g PiArCQlzdHIgPSBzdHJzdHIoYnVmLCAiREMzIC0+IERDNSBjb3VudCIpOwo+ID4gKwllbHNlIGlm IChkY19mbGFnICYgQ0hFQ0tfREM2KQo+ID4gKwkJc3RyID0gc3Ryc3RyKGJ1ZiwgIkRDNSAtPiBE QzYgY291bnQiKTsKPiA+ICsJaWd0X3NraXBfb25fZihzdHIgPT0gTlVMTCwgIkRDJWQgY291bnRl ciBpcyBub3QgYXZhaWxhYmxlXG4iLAo+ID4gKwkJICAgICAgZGNfZmxhZyAmIENIRUNLX0RDNSA/ IDUgOiA2KTsKPiA+ICsJcmV0dXJuIGdldF9kY19jb3VudGVyKHN0cik7Cj4gPiArfQo+ID4gKwo+ ID4gK2Jvb2wgZGNfc3RhdGVfd2FpdF9lbnRyeShpbnQgZHJtX2ZkLCBpbnQgZGNfZmxhZywgaW50 IHByZXZfZGNfY291bnQpCj4gPiArewo+ID4gKwlyZXR1cm4gaWd0X3dhaXQocmVhZF9kY19jb3Vu dGVyKGRybV9mZCwgZGNfZmxhZykgPiBwcmV2X2RjX2NvdW50LCAxMDAwLCAxMDApOwo+ID4gK30K PiA+ICsKPiA+ICt2b2lkIGNoZWNrX2RjX2NvdW50ZXIoaW50IGRybV9mZCwgaW50IGRjX2ZsYWcs IHVpbnQzMl90IHByZXZfZGNfY291bnQpCj4gPiArewo+ID4gKwlpZ3RfYXNzZXJ0X2YoZGNfc3Rh dGVfd2FpdF9lbnRyeShkcm1fZmQsIGRjX2ZsYWcsIHByZXZfZGNfY291bnQpLAo+ID4gKwkJICAg ICAiREMlZCBzdGF0ZSBpcyBub3QgYWNoaWV2ZWRcbiIsCj4gPiArCQkgICAgIGRjX2ZsYWcgJiBD SEVDS19EQzUgPyA1IDogNik7Cj4gPiArfQo+ID4gKwo+ID4gK3N0YXRpYyB2b2lkIHRlc3RfZGNf c3RhdGVfcHNyKGRhdGFfdCAqZGF0YSwgaW50IGRjX2ZsYWcpCj4gPiArewo+ID4gKwl1aW50MzJf dCBkY19jb3VudGVyX2JlZm9yZV9wc3I7Cj4gPiArCj4gPiArCWRjX2NvdW50ZXJfYmVmb3JlX3Bz ciA9IHJlYWRfZGNfY291bnRlcihkYXRhLT5kcm1fZmQsIGRjX2ZsYWcpOwo+ID4gKwlzZXR1cF9v dXRwdXQoZGF0YSk7Cj4gPiArCXNldHVwX3ByaW1hcnkoZGF0YSk7Cj4gPiArCWlndF9hc3NlcnQo cHNyX3dhaXRfZW50cnkoZGF0YS0+ZGVidWdmc19mZCwgZGF0YS0+b3BfcHNyX21vZGUpKTsKPiA+ ICsJY2hlY2tfZGNfY291bnRlcihkYXRhLT5kcm1fZmQsIGRjX2ZsYWcsIGRjX2NvdW50ZXJfYmVm b3JlX3Bzcik7Cj4gPiArfQo+ID4gKwo+ID4gK2ludCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2 W10pCj4gPiArewo+ID4gKwlib29sIGhhc19ydW50aW1lX3BtOwo+ID4gKwlkYXRhX3QgZGF0YSA9 IHt9Owo+ID4gKwo+ID4gKwlpZ3Rfc2tpcF9vbl9zaW11bGF0aW9uKCk7Cj4gPiArCWlndF9zdWJ0 ZXN0X2luaXQoYXJnYywgYXJndik7Cj4gPiArCWlndF9maXh0dXJlIHsKPiA+ICsJCWRhdGEuZHJt X2ZkID0gZHJtX29wZW5fZHJpdmVyX21hc3RlcihEUklWRVJfSU5URUwpOwo+ID4gKwkJZGF0YS5k ZWJ1Z2ZzX2ZkID0gaWd0X2RlYnVnZnNfZGlyKGRhdGEuZHJtX2ZkKTsKPiA+ICsJCWlndF9yZXF1 aXJlKGRhdGEuZGVidWdmc19mZCAhPSAtMSk7Cj4gPiArCQlrbXN0ZXN0X3NldF92dF9ncmFwaGlj c19tb2RlKCk7Cj4gPiArCQlkYXRhLmRldmlkID0gaW50ZWxfZ2V0X2RybV9kZXZpZChkYXRhLmRy bV9mZCk7Cj4gPiArCQloYXNfcnVudGltZV9wbSA9IGlndF9zZXR1cF9ydW50aW1lX3BtKCk7Cj4g PiArCQlpZ3RfaW5mbygiUnVudGltZSBQTSBzdXBwb3J0OiAlZFxuIiwgaGFzX3J1bnRpbWVfcG0p Owo+ID4gKwkJaWd0X3JlcXVpcmUoaGFzX3J1bnRpbWVfcG0pOwo+ID4gKwkJaWd0X3JlcXVpcmUo aWd0X3BtX2RtY19sb2FkZWQoZGF0YS5kZWJ1Z2ZzX2ZkKSk7Cj4gPiArCQlpZ3RfZGlzcGxheV9y ZXF1aXJlKCZkYXRhLmRpc3BsYXksIGRhdGEuZHJtX2ZkKTsKPiA+ICsJfQo+ID4gKwo+ID4gKwlp Z3Rfc3VidGVzdCgiZGM1LXBzciIpIHsKPiA+ICsJCWRhdGEub3BfcHNyX21vZGUgPSBQU1JfTU9E RV8xOwo+ID4gKwkJcHNyX2VuYWJsZShkYXRhLmRlYnVnZnNfZmQsIGRhdGEub3BfcHNyX21vZGUp Owo+ID4gKwkJaWd0X3JlcXVpcmVfZihlZHBfcHNyX3Npbmtfc3VwcG9ydCgmZGF0YSksCj4gPiAr CQkJICAgICAgIlNpbmsgZG9lcyBub3Qgc3VwcG9ydCBQU1JcbiIpOwo+ID4gKwkJLyogQ2hlY2sg REM1IGNvdW50ZXIgaXMgYXZhaWxhYmxlIGZvciB0aGUgcGxhdGZvcm0uCj4gPiArCQkgKiBTa2lw IHRoZSB0ZXN0IGlmIGNvdW50ZXIgaXMgbm90IGF2YWlsYWJsZS4KPiA+ICsJCSAqLwo+ID4gKwkJ cmVhZF9kY19jb3VudGVyKGRhdGEuZHJtX2ZkLCBDSEVDS19EQzUpOwo+ID4gKwkJdGVzdF9kY19z dGF0ZV9wc3IoJmRhdGEsIENIRUNLX0RDNSk7Cj4gPiArCQljbGVhbnVwKCZkYXRhKTsKPiAKPiBX aHkgaXNuJ3QgY2xlYW51cCBwYWlyZWQgd2l0aCB0aGUgY29ycmVzcG9uZGluZyBzZXR1cCBmdW5j IHdoZXJlIHNldHVwCj4gaXMgY2FsbGVkIGZyb20/IEFsc28gbG9va3MgbGlrZSB0aGUgcmVhZF9k Y19jb3VudGVyKCkgY2FsbCBjb3VsZCBiZSBwYXJ0Cj4gb2YgdGhlIHRlc3QgZnVuY3Rpb24uCj4K V2hpbGUgcmV2aWV3IGlzIGJlaW5nIHByb2dyZXNzZWQsIGkgd291bGQgbGlrZSB0byBicmluZyBu b3RpY2UgdG8gdGhlIG9ic2VydmVkIApiZWhhdmlvciBvbiBLQkwgZ2VuOS4gSXQgdGFrZXMgYXJv dW5kIDJ+NCBzZWNvbmRzIHRvIGRpc2FibGUgIkRDIE9mZiIgcG93ZXIgd2VsbAphZnRlciB2Ymxh bmsgZGlzYWJsZS4gVGhpcyB3aWxsIGZhaWwgdGhlIERDIHN0YXRlcyB2ZXJpZmljYXRpb24gd2l0 aCBQU1IgdGVzdC4KSXMgdGhpcyByZWFsbHkgYW4gaXNzdWUgdG8gZml4IG9yIHdlIG5lZWQgdG8g aW5jcmVhc2UgdGhlIHdhaXQgdGltZSBpbiBpZ3QgdGVzdC4KCiMgdHJhY2VyOiBmdW5jdGlvbgoj CiMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfLS0tLS09PiBpcnFzLW9mZgojICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAvIF8tLS0tPT4gbmVlZC1yZXNjaGVkCiMgICAgICAgICAg ICAgICAgICAgICAgICAgICAgfCAvIF8tLS09PiBoYXJkaXJxL3NvZnRpcnEKIyAgICAgICAgICAg ICAgICAgICAgICAgICAgICB8fCAvIF8tLT0+IHByZWVtcHQtZGVwdGgKIyAgICAgICAgICAgICAg ICAgICAgICAgICAgICB8fHwgLyAgICAgZGVsYXkKIyAgICAgICAgICAgVEFTSy1QSUQgICBDUFUj ICB8fHx8ICAgIFRJTUVTVEFNUCAgRlVOQ1RJT04KIyAgICAgICAgICAgICAgfCB8ICAgICAgIHwg ICB8fHx8ICAgICAgIHwgICAgICAgICB8CiAgICAgICAgICA8aWRsZT4tMCAgICAgWzAwMV0gZC5o LiAgNDQ2MC45MDIzMDg6IGdlbjhfZGlzYWJsZV92YmxhbmsgPC1kcm1fdmJsYW5rX2Rpc2FibGVf YW5kX3NhdmUKICAga3dvcmtlci91ODo1MC0zMTY4NyBbMDAxXSAuLi4uICA0NDYzLjAzMjg3OTog aW50ZWxfcG93ZXJfd2VsbF9kaXNhYmxlIDwtaW50ZWxfZGlzcGxheV9wb3dlcl9wdXQgCiAgCj4g PiArCX0KPiA+ICsJaWd0X2ZpeHR1cmUgewo+ID4gKwkJY2xvc2UoZGF0YS5kZWJ1Z2ZzX2ZkKTsK PiA+ICsJCWRpc3BsYXlfZmluaSgmZGF0YSk7Cj4gPiArCX0KPiA+ICsKPiA+ICsJaWd0X2V4aXQo KTsKPiA+ICt9Cj4gPiAtLSAKPiA+IDIuNy40Cj4gPiAKCi0tIApfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVs LWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv bWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK