From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [PATCH] drm/i915/psr: vbt change for psr Date: Tue, 22 May 2018 11:05:05 +0300 Message-ID: <87wovww1xq.fsf@intel.com> References: <1526633726-22145-1-git-send-email-vathsala.nagaraju@intel.com> <87in7lxqbo.fsf@intel.com> <513ff7da-9e36-17aa-5131-e2df97b58889@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id 53A5A6E23C for ; Tue, 22 May 2018 08:02:34 +0000 (UTC) In-Reply-To: <513ff7da-9e36-17aa-5131-e2df97b58889@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: "Nagaraju, Vathsala" , rodrigo.vivi@intel.com, intel-gfx@lists.freedesktop.org Cc: Puthikorn Voravootivat , Maulik V Vaghela , Dhinakaran Pandiyan List-Id: intel-gfx@lists.freedesktop.org T24gVHVlLCAyMiBNYXkgMjAxOCwgIk5hZ2FyYWp1LCBWYXRoc2FsYSIgPHZhdGhzYWxhLm5hZ2Fy YWp1QGludGVsLmNvbT4gd3JvdGU6Cj4gT24gNS8xOC8yMDE4IDM6MDEgUE0sIEphbmkgTmlrdWxh IHdyb3RlOgo+PiBPbiBGcmksIDE4IE1heSAyMDE4LCB2YXRoc2FsYSBuYWdhcmFqdSA8dmF0aHNh bGEubmFnYXJhanVAaW50ZWwuY29tPiB3cm90ZToKPj4+IEZyb206IFZhdGhzYWxhIE5hZ2FyYWp1 IDx2YXRoc2FsYS5uYWdhcmFqdUBpbnRlbC5jb20+Cj4+Pgo+Pj4gRm9yIHBzciBibG9jayAjOSwg dGhlIHZidCBkZXNjcmlwdGlvbiBoYXMgbW92ZWQgdG8gb3B0aW9ucyBbMC0zXSBmb3IKPj4+IFRQ MSxUUDIsVFAzIFdha2V1cCB0aW1lIGZyb20gZGVjaW1hbCB2YWx1ZSB3aXRob3V0IGFueSBjaGFu Z2UgdG8gdmJ0Cj4+PiBzdHJ1Y3R1cmUuIFNpbmNlIHNwZWMgZG9lcyBub3QgIG1lbnRpb24gZnJv bSB3aGljaCBWQlQgdmVyc2lvbiB0aGlzCj4+PiBjaGFuZ2Ugd2FzIGFkZGVkIHRvIHZidC5ic2Yg ZmlsZSwgd2UgY2Fubm90IGRlcGVuZCBvbiBiZGItPnZlcnNpb24gY2hlY2sKPj4+IHRvIGNoYW5n ZSBmb3IgYWxsIHRoZSBwbGF0Zm9ybXMuCj4+Pgo+Pj4gVGhlcmUgaXMgUkNSIGlucGxhY2UgZm9y IEdPUCB0ZWFtIHRvICBwcm92aWRlIHRoZSB2ZXJzaW9uIG51bWJlcgo+Pj4gdG8gbWFrZSBnZW5l cmljIGNoYW5nZS4gU2luY2UgS2FieWxha2Ugd2l0aCBiZGIgdmVyc2lvbiAyMDkgaXMgaGF2aW5n IHRoaXMKPj4+IGNoYW5nZSwgbGltaXRpbmcgdGhpcyBjaGFuZ2UgdG8gZ2VuOV9iYyBhbmQgdmVy c2lvbiAyMDkrIHRvIHVuYmxvY2sgZ29vZ2xlLgo+Pj4KPj4+IFRlc3RlZCBvbiBza2woYmRiIHZl cnNpb24gMjAzLHdpdGhvdXQgb3B0aW9ucykgYW5kCj4+PiBrYWJ5bGFrZShiZGIgdmVyc2lvbiAy MDksMjEyKSBoYXZpbmcgbmV3IG9wdGlvbnMuCj4+Pgo+Pj4gYnNwZWMgMjAxMzEKPj4+Cj4+PiB2 MjogKEphbmkgYW5kIFJvZHJpZ28pCj4+PiAgICAgIG1vdmUgdGhlIDE2NSB2ZXJzaW9uIGNoZWNr IHRvIGludGVsX2Jpb3MuYwo+Pj4gdjM6IEphbmkKPj4+ICAgICAgTW92ZSB0aGUgYWJzdHJhY3Rp b24gdG8gaW50ZWxfYmlvcy4KPj4+IHY0OiBKYW5pCj4+PiAgICAgIFJlbmFtZSB0cCpfd2FrZXVw X3RpbWUgdG8gaGF2ZSAidXMiIHN1ZmZpeC4KPj4+ICAgICAgRm9yIHZhbHVlcyBvdXRzaWRlIHJh bmdlWzAtM10sZGVmYXVsdCB0byBtYXggMjUwMHVzLgo+Pj4gICAgICBPbGQgZGVjaW1hbCB2YWx1 ZSB3YXMgd2FrZSB1cCB0aW1lIGluIG11bHRpcGxlcyBvZiAxMDB1cy4KPj4+IHY1OiBKYW5pIGFu ZCBSb2RyaWdvCj4+PiAgICAgIEhhbmRsZSBvcHRpb24gMiBpbiBkZWZhdWx0IGNvbmRpdGlvbi4K Pj4+ICAgICAgUHJpbnQgb3VzdGlkZSByYW5nZSB2YWx1ZS4KPj4+ICAgICAgRm9yIG5lZ2V0aXZl IHZhbHVlcyBkZWZhdWx0IHRvIDI1MDB1cy4KPj4+IHY2OiBKYW5pCj4+PiAgICAgIEhhbmRsZSBk ZWZhdWx0IGZpcnN0IGFuZCB0aGVuIGZhbGwgdGhyb3VnaCBmb3IgY2FzZSAyLgo+Pj4gdjc6IFJv ZHJpZ28KPj4+ICAgICAgQXBwbHkgdGhpcyBjaGFuZ2UgZm9yIElTX0dFTjlfQkMgYW5kIHZidCB2 ZXJzaW9uID4gMjA5Lgo+Pj4gdjg6IFB1dGhpawo+Pj4gICAgICBhZGQgbmV3IGZ1bmN0aW9uIHZi dF9wc3JfdG9fdXMuCj4+Pgo+Pj4gQ2M6IFJvZHJpZ28gVml2aSA8cm9kcmlnby52aXZpQGludGVs LmNvbT4KPj4+IENjOiBQdXRoaWtvcm4gVm9yYXZvb3RpdmF0IDxwdXRoaWtAY2hyb21pdW0ub3Jn Pgo+Pj4gQ2M6IERoaW5ha2FyYW4gUGFuZGl5YW4gPGRoaW5ha2FyYW4ucGFuZGl5YW5AaW50ZWwu Y29tPgo+Pj4gQ2M6IEpvc8OpIFJvYmVydG8gZGUgU291emEgPGpvc2Uuc291emFAaW50ZWwuY29t Pgo+Pj4gQ2M6IEphbmkgTmlrdWxhIDxqYW5pLm5pa3VsYUBpbnRlbC5jb20+Cj4+Pgo+Pj4gU2ln bmVkLW9mZi1ieTogTWF1bGlrIFYgVmFnaGVsYSA8bWF1bGlrLnYudmFnaGVsYUBpbnRlbC5jb20+ Cj4+PiBTaWduZWQtb2ZmLWJ5OiBWYXRoc2FsYSBOYWdhcmFqdSA8dmF0aHNhbGEubmFnYXJhanVA aW50ZWwuY29tPgo+Pj4gLS0tCj4+PiAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2Lmgg ICB8ICA0ICsrLS0KPj4+ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCAgIHwgIDgg KysrKy0tLS0KPj4+ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYmlvcy5jIHwgMzggKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0KPj4+ICAgZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfcHNyLmMgIHwgMzkgKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0t LS0tLS0tCj4+PiAgIDQgZmlsZXMgY2hhbmdlZCwgNjIgaW5zZXJ0aW9ucygrKSwgMjcgZGVsZXRp b25zKC0pCj4+Pgo+Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2 LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4+PiBpbmRleCBlMzNjMzgwLi5k Y2ZhNzkxIDEwMDY0NAo+Pj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+ Pj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+Pj4gQEAgLTEwNzgsOCAr MTA3OCw4IEBAIHN0cnVjdCBpbnRlbF92YnRfZGF0YSB7Cj4+PiAgIAkJYm9vbCByZXF1aXJlX2F1 eF93YWtldXA7Cj4+PiAgIAkJaW50IGlkbGVfZnJhbWVzOwo+Pj4gICAJCWVudW0gcHNyX2xpbmVz X3RvX3dhaXQgbGluZXNfdG9fd2FpdDsKPj4+IC0JCWludCB0cDFfd2FrZXVwX3RpbWU7Cj4+PiAt CQlpbnQgdHAyX3RwM193YWtldXBfdGltZTsKPj4+ICsJCWludCB0cDFfd2FrZXVwX3RpbWVfdXM7 Cj4+PiArCQlpbnQgdHAyX3RwM193YWtldXBfdGltZV91czsKPj4+ICAgCX0gcHNyOwo+Pj4gICAK Pj4+ICAgCXN0cnVjdCB7Cj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9yZWcuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmgKPj4+IGluZGV4IDE5NmEw ZWIuLjUxM2I0YTQgMTAwNjQ0Cj4+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3Jl Zy5oCj4+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oCj4+PiBAQCAtNDA4 OCwxMCArNDA4OCwxMCBAQCBlbnVtIHsKPj4+ICAgI2RlZmluZSAgIEVEUF9ZX0NPT1JESU5BVEVf RU5BQkxFCSgxPDwyNSkgLyogR0xLIGFuZCBDTkwrICovCj4+PiAgICNkZWZpbmUgICBFRFBfTUFY X1NVX0RJU0FCTEVfVElNRSh0KQkoKHQpPDwyMCkKPj4+ICAgI2RlZmluZSAgIEVEUF9NQVhfU1Vf RElTQUJMRV9USU1FX01BU0sJKDB4MWY8PDIwKQo+Pj4gLSNkZWZpbmUgICBFRFBfUFNSMl9UUDJf VElNRV81MDAJCSgwPDw4KQo+Pj4gLSNkZWZpbmUgICBFRFBfUFNSMl9UUDJfVElNRV8xMDAJCSgx PDw4KQo+Pj4gLSNkZWZpbmUgICBFRFBfUFNSMl9UUDJfVElNRV8yNTAwCSgyPDw4KQo+Pj4gLSNk ZWZpbmUgICBFRFBfUFNSMl9UUDJfVElNRV81MAkJKDM8PDgpCj4+PiArI2RlZmluZSAgIEVEUF9Q U1IyX1RQMl9USU1FXzUwMHVzCSgwPDw4KQo+Pj4gKyNkZWZpbmUgICBFRFBfUFNSMl9UUDJfVElN RV8xMDB1cwkoMTw8OCkKPj4+ICsjZGVmaW5lICAgRURQX1BTUjJfVFAyX1RJTUVfMjUwMHVzCSgy PDw4KQo+Pj4gKyNkZWZpbmUgICBFRFBfUFNSMl9UUDJfVElNRV81MHVzCSgzPDw4KQo+Pj4gICAj ZGVmaW5lICAgRURQX1BTUjJfVFAyX1RJTUVfTUFTSwkoMzw8OCkKPj4+ICAgI2RlZmluZSAgIEVE UF9QU1IyX0ZSQU1FX0JFRk9SRV9TVV9TSElGVCA0Cj4+PiAgICNkZWZpbmUgICBFRFBfUFNSMl9G UkFNRV9CRUZPUkVfU1VfTUFTSwkoMHhmPDw0KQo+Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Jpb3MuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Jpb3Mu Ywo+Pj4gaW5kZXggNTQyNzBiZC4uNWQ4YzI5ZiAxMDA2NDQKPj4+IC0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Jpb3MuYwo+Pj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfYmlvcy5jCj4+PiBAQCAtNjQ3LDEyICs2NDcsMjYgQEAgc3RhdGljIGludCBpbnRlbF9iaW9z X3NzY19mcmVxdWVuY3koc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+Pj4gICAJ fQo+Pj4gICB9Cj4+PiAgIAo+Pj4gK3N0YXRpYyBpbnQgdmJ0X3Bzcl90b191cyhib29sIGlzX3dh a2V0aW1lX29wdGlvbnMsIGludCB2YnRfdmFsdWUpCj4+PiArewo+Pj4gKwlpZiAoaXNfd2FrZXRp bWVfb3B0aW9ucykgewo+Pj4gKwkJaW50IHdha2V0aW1lX21hcFtdID0gezUwMCwgMTAwLCAyNTAw LCAwfTsKPj4+ICsJCS8qIFJlc2V0IHRvIHZhbHVlIDIgPSAyNTAwdXMgZm9yIG91dHNpZGUgcmFu Z2UgWzAtM10gKi8KPj4+ICsJCWlmICh2YnRfdmFsdWUgPCAwIHx8IHZidF92YWx1ZSA+IDMpCj4+ PiArCQkJdmJ0X3ZhbHVlID0gMjsKPj4+ICsJCXJldHVybiB3YWtldGltZV9tYXBbdmJ0X3ZhbHVl XTsKPj4+ICsJfSBlbHNlIHsKPj4+ICsJCXJldHVybiB2YnRfdmFsdWUgKiAxMDA7Cj4+PiArCX0K Pj4+ICt9Cj4+PiArCj4+PiAgIHN0YXRpYyB2b2lkCj4+PiAgIHBhcnNlX3BzcihzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIGNvbnN0IHN0cnVjdCBiZGJfaGVhZGVyICpiZGIpCj4+ PiAgIHsKPj4+ICAgCWNvbnN0IHN0cnVjdCBiZGJfcHNyICpwc3I7Cj4+PiAgIAljb25zdCBzdHJ1 Y3QgcHNyX3RhYmxlICpwc3JfdGFibGU7Cj4+PiAgIAlpbnQgcGFuZWxfdHlwZSA9IGRldl9wcml2 LT52YnQucGFuZWxfdHlwZTsKPj4+ICsJYm9vbCBpc193YWtldGltZV9vcHRpb25zID0gZmFsc2U7 Cj4+PiAgIAo+Pj4gICAJcHNyID0gZmluZF9zZWN0aW9uKGJkYiwgQkRCX1BTUik7Cj4+PiAgIAlp ZiAoIXBzcikgewo+Pj4gQEAgLTY4OCw4ICs3MDIsMjggQEAgc3RhdGljIGludCBpbnRlbF9iaW9z X3NzY19mcmVxdWVuY3koc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+Pj4gICAJ CWJyZWFrOwo+Pj4gICAJfQo+Pj4gICAKPj4+IC0JZGV2X3ByaXYtPnZidC5wc3IudHAxX3dha2V1 cF90aW1lID0gcHNyX3RhYmxlLT50cDFfd2FrZXVwX3RpbWU7Cj4+PiAtCWRldl9wcml2LT52YnQu cHNyLnRwMl90cDNfd2FrZXVwX3RpbWUgPSBwc3JfdGFibGUtPnRwMl90cDNfd2FrZXVwX3RpbWU7 Cj4+PiArCS8qCj4+PiArCSAqIE5ldyBwc3Igd2FrZSBvcHRpb25zIDA9NTAwdXMsIDE9MTAwdXMs IDI9MjUwMHVzLCAzPTB1cwo+Pj4gKwkgKiBPbGQgZGVjaW1hbCB2YWx1ZSBpcyB3YWtlIHVwIHRp bWUgaW4gbXVsdGlwbGVzIG9mIDEwMCB1cy4KPj4+ICsJICogVE9ETzogYWRkIG90aGVyIHBsYXRm b3JtcyBoYXZpbmcgbmV3IHBzciBvcHRpb25zLgo+Pj4gKwkgKi8KPj4+ICsJaXNfd2FrZXRpbWVf b3B0aW9ucyA9ICgoYmRiLT52ZXJzaW9uID49IDIwOSkgJiYgSVNfR0VOOV9CQyhkZXZfcHJpdikp Owo+Pj4gKwlpZiAoaXNfd2FrZXRpbWVfb3B0aW9ucykgewo+Pj4gKwkJLyogUmVzZXQgdG8gdmFs dWUgMiA9IDI1MDB1cyBmb3Igb3V0c2lkZSByYW5nZSBbMC0zXSAqLwo+Pj4gKwkJaWYgKHBzcl90 YWJsZS0+dHAxX3dha2V1cF90aW1lIDwgMCB8fAo+Pj4gKwkJCXBzcl90YWJsZS0+dHAxX3dha2V1 cF90aW1lID4gMykgewo+Pj4gKwkJCURSTV9ERUJVR19LTVMoIlZCVCB0cDEgd2FrZXVwIHRpbWUg dmFsdWUgJWQgaXMgb3V0c2lkZSByYW5nZVswLTNdLCBkZWZhdWx0aW5nIHRvIG1heCB2YWx1ZSAy NTAwdXNcbiIsCj4+PiArCQkJCQlwc3JfdGFibGUtPnRwMV93YWtldXBfdGltZSk7Cj4+PiArCQl9 Cj4+PiArCQlpZiAocHNyX3RhYmxlLT50cDJfdHAzX3dha2V1cF90aW1lIDwgMCB8fAo+Pj4gKwkJ CXBzcl90YWJsZS0+dHAyX3RwM193YWtldXBfdGltZSA+IDMpIHsKPj4+ICsJCQlEUk1fREVCVUdf S01TKCJWQlQgdHAyX3RwMyB3YWtldXAgdGltZSB2YWx1ZSAlZCBpcyBvdXRzaWRlIHJhbmdlWzAt M10sIGRlZmF1bHRpbmcgdG8gbWF4IHZhbHVlIDI1MDB1c1xuIiwKPj4+ICsJCQkJCXBzcl90YWJs ZS0+dHAyX3RwM193YWtldXBfdGltZSk7Cj4+PiArCQl9Cj4+PiArCX0KPj4gV2h5IGRpZCB5b3Ug dGFrZSBzb21ldGhpbmcgdGhhdCB3YXMgb2J2aW91cyBhdCBhIGdsYW5jZSBhbmQgdHVybiBpdCBp bnRvCj4+IHRoaXMgY29tcGxpY2F0ZWQgbWVzcz8KPiBXaGljaCBwYXJ0cyB5b3UgZmluZCBpdCBj b21wbGljYXRlZD8KClRoaXMgc3BsaXRzIGFuZCBkdXBsaWNhdGVzIHRoZSBjaGVja3MgZm9yIHZh bGlkIHZhbHVlcyB0byB0d28gcGxhY2VzCnRoYXQgeW91IG5lZWQgdG8ga2VlcCBpbiBzeW5jIGFz IHRoZSBzcGVjIGluZXZpdGFibHkgZ2V0cyB1cGRhdGVkLiBUaGUKcmVzcG9uc2liaWxpdGllcyBi ZXR3ZWVuIHRoZSBjYWxsZXIgYW5kIHRoZSBjYWxsZWUgYXJlIHVuY2xlYXIsIHdoaWNoIGlzCmp1 c3Qgc2lsbHkgZm9yIHN1Y2ggYSBzbWFsbCBhbW91bnQgb2YgY29kZS4gWW91IGhhdmUgY2hlY2tz IGZvciBuZWdhdGl2ZQp2YWx1ZXMgYnV0IHRoZSBmaWVsZCBpcyB1bnNpZ25lZC4gSSBjb3VsZCBn byBvbi4KClRoZSBib3R0b20gbGluZSBpcyB0aGF0IHRoZSBzcGVjIG1ha2VzIGEgZnVuZGFtZW50 YWxseSBzaW1wbGUgdGhpbmcKdW5uZWNlc3NhcmlseSBjb21wbGljYXRlZCwgYW5kIGl0J3Mgb3Vy IGpvYiB0byBpbXBsZW1lbnQgdGhhdCBpbiBhIHdheQp0aGF0IG1ha2VzIGl0IGFnYWluIHNpbXBs ZSBmb3IgaHVtYW4gYmVpbmdzLiBUaGF0J3MgdGhlIHByaW1hcnkgZ29hbCwKbWFrZSB0aGUgY29k ZSBlYXN5IGZvciB0aGUgcmVhZGVyLiBXZSBoYXZlIGVub3VnaCBoYXJkIHRoaW5ncywgd2Ugc2hv dWxkCm5vdCBoYXZlIHRvIHN0b3AgYW5kIHRoaW5rIGFib3V0IHNpbXBsZSB0aGluZ3MuCgpCUiwK SmFuaS4KCgo+IG5ldyB2ZXJzaW9uIGlzCj4gMSkgY2hlY2sgaWYgdmJ0IGRhdGEgaXPCoCB3YWtl X29wdGlvbnMKPiAyKSBpZiB3YWtlIG9wdGlvbnMgLCB0aGVuwqAgaWYgb3V0IG9mIHJhbmdlIHBy aW50IHRoZSBtZXNzYWdlCj4gMyl0aGVuwqAgZm9yIGJvdGggbmV3IGFuZCBvbGQgdmVyc2lvbiAs IHdlIGNhbGwgdmJ0X3Bzcl90b191cyAsIHdoaWNoIAo+IHRha2VzIGNhcmUgb2YgdGhlIG1hcHBp bmcgYW5kIGNvbnZlcnNpb24gdG8gdXMuCj4+Cj4+IEknZCByYXRoZXIgdGFrZSB0aGUgcHJldmlv dXMgdmVyc2lvbiwgZXZlbiB3aXRoIHRoZSBkdXBsaWNhdGlvbi4KPiBwdXRoaWsgc3VnZ2VzdGVk IHRvIHVzZSB2YnRfcHNyX3RvX3VzIHRvIHJlbW92ZSBjb2RlIGR1cGxpY2F0aW9uLgo+IFB1dGhp ayAsIGlzIGl0IG9rYXkgaWbCoCB3ZSBzd2l0Y2ggdG8gdjcgdmVyc2lvbj8KPgo+PiBCUiwKPj4g SmFuaS4KPj4KPj4KPj4+ICsKPj4+ICsJZGV2X3ByaXYtPnZidC5wc3IudHAxX3dha2V1cF90aW1l X3VzID0gdmJ0X3Bzcl90b191cyhpc193YWtldGltZV9vcHRpb25zLCBwc3JfdGFibGUtPnRwMV93 YWtldXBfdGltZSk7Cj4+PiArCWRldl9wcml2LT52YnQucHNyLnRwMl90cDNfd2FrZXVwX3RpbWVf dXMgPSB2YnRfcHNyX3RvX3VzKGlzX3dha2V0aW1lX29wdGlvbnMsIHBzcl90YWJsZS0+dHAyX3Rw M193YWtldXBfdGltZSk7Cj4+PiAgIH0KPj4+ICAgCj4+PiAgIHN0YXRpYyB2b2lkIHBhcnNlX2Rz aV9iYWNrbGlnaHRfcG9ydHMoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+Pj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3Bzci5jIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfcHNyLmMKPj4+IGluZGV4IGRiMjdmMmYuLmQ2NGYwMzkgMTAwNjQ0 Cj4+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wc3IuYwo+Pj4gKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcHNyLmMKPj4+IEBAIC00NjEsMjMgKzQ2MSwyMyBAQCBz dGF0aWMgdm9pZCBoc3dfYWN0aXZhdGVfcHNyMShzdHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQo+ Pj4gICAJaWYgKGRldl9wcml2LT5wc3IubGlua19zdGFuZGJ5KQo+Pj4gICAJCXZhbCB8PSBFRFBf UFNSX0xJTktfU1RBTkRCWTsKPj4+ICAgCj4+PiAtCWlmIChkZXZfcHJpdi0+dmJ0LnBzci50cDFf d2FrZXVwX3RpbWUgPiA1KQo+Pj4gLQkJdmFsIHw9IEVEUF9QU1JfVFAxX1RJTUVfMjUwMHVzOwo+ Pj4gLQllbHNlIGlmIChkZXZfcHJpdi0+dmJ0LnBzci50cDFfd2FrZXVwX3RpbWUgPiAxKQo+Pj4g LQkJdmFsIHw9IEVEUF9QU1JfVFAxX1RJTUVfNTAwdXM7Cj4+PiAtCWVsc2UgaWYgKGRldl9wcml2 LT52YnQucHNyLnRwMV93YWtldXBfdGltZSA+IDApCj4+PiArCWlmIChkZXZfcHJpdi0+dmJ0LnBz ci50cDFfd2FrZXVwX3RpbWVfdXMgPT0gMCkKPj4+ICsJCXZhbCB8PSAgRURQX1BTUl9UUDFfVElN RV8wdXM7Cj4+PiArCWVsc2UgaWYgKGRldl9wcml2LT52YnQucHNyLnRwMV93YWtldXBfdGltZV91 cyA8PSAxMDApCj4+PiAgIAkJdmFsIHw9IEVEUF9QU1JfVFAxX1RJTUVfMTAwdXM7Cj4+PiArCWVs c2UgaWYgKGRldl9wcml2LT52YnQucHNyLnRwMV93YWtldXBfdGltZV91cyA8PSA1MDApCj4+PiAr CQl2YWwgfD0gRURQX1BTUl9UUDFfVElNRV81MDB1czsKPj4+ICAgCWVsc2UKPj4+IC0JCXZhbCB8 PSBFRFBfUFNSX1RQMV9USU1FXzB1czsKPj4+ICsJCXZhbCB8PSBFRFBfUFNSX1RQMV9USU1FXzI1 MDB1czsKPj4+ICAgCj4+PiAtCWlmIChkZXZfcHJpdi0+dmJ0LnBzci50cDJfdHAzX3dha2V1cF90 aW1lID4gNSkKPj4+IC0JCXZhbCB8PSBFRFBfUFNSX1RQMl9UUDNfVElNRV8yNTAwdXM7Cj4+PiAt CWVsc2UgaWYgKGRldl9wcml2LT52YnQucHNyLnRwMl90cDNfd2FrZXVwX3RpbWUgPiAxKQo+Pj4g LQkJdmFsIHw9IEVEUF9QU1JfVFAyX1RQM19USU1FXzUwMHVzOwo+Pj4gLQllbHNlIGlmIChkZXZf cHJpdi0+dmJ0LnBzci50cDJfdHAzX3dha2V1cF90aW1lID4gMCkKPj4+ICsJaWYgKGRldl9wcml2 LT52YnQucHNyLnRwMl90cDNfd2FrZXVwX3RpbWVfdXMgPT0gMCkKPj4+ICsJCXZhbCB8PSAgRURQ X1BTUl9UUDJfVFAzX1RJTUVfMHVzOwo+Pj4gKwllbHNlIGlmIChkZXZfcHJpdi0+dmJ0LnBzci50 cDJfdHAzX3dha2V1cF90aW1lX3VzIDw9IDEwMCkKPj4+ICAgCQl2YWwgfD0gRURQX1BTUl9UUDJf VFAzX1RJTUVfMTAwdXM7Cj4+PiArCWVsc2UgaWYgKGRldl9wcml2LT52YnQucHNyLnRwMl90cDNf d2FrZXVwX3RpbWVfdXMgPD0gNTAwKQo+Pj4gKwkJdmFsIHw9IEVEUF9QU1JfVFAyX1RQM19USU1F XzUwMHVzOwo+Pj4gICAJZWxzZQo+Pj4gLQkJdmFsIHw9IEVEUF9QU1JfVFAyX1RQM19USU1FXzB1 czsKPj4+ICsJCXZhbCB8PSBFRFBfUFNSX1RQMl9UUDNfVElNRV8yNTAwdXM7Cj4+PiAgIAo+Pj4g ICAJaWYgKGludGVsX2RwX3NvdXJjZV9zdXBwb3J0c19oYnIyKGludGVsX2RwKSAmJgo+Pj4gICAJ ICAgIGRybV9kcF90cHMzX3N1cHBvcnRlZChpbnRlbF9kcC0+ZHBjZCkpCj4+PiBAQCAtNTEzLDE0 ICs1MTMsMTUgQEAgc3RhdGljIHZvaWQgaHN3X2FjdGl2YXRlX3BzcjIoc3RydWN0IGludGVsX2Rw ICppbnRlbF9kcCkKPj4+ICAgCj4+PiAgIAl2YWwgfD0gRURQX1BTUjJfRlJBTUVfQkVGT1JFX1NV KGRldl9wcml2LT5wc3Iuc2lua19zeW5jX2xhdGVuY3kgKyAxKTsKPj4+ICAgCj4+PiAtCWlmIChk ZXZfcHJpdi0+dmJ0LnBzci50cDJfdHAzX3dha2V1cF90aW1lID4gNSkKPj4+IC0JCXZhbCB8PSBF RFBfUFNSMl9UUDJfVElNRV8yNTAwOwo+Pj4gLQllbHNlIGlmIChkZXZfcHJpdi0+dmJ0LnBzci50 cDJfdHAzX3dha2V1cF90aW1lID4gMSkKPj4+IC0JCXZhbCB8PSBFRFBfUFNSMl9UUDJfVElNRV81 MDA7Cj4+PiAtCWVsc2UgaWYgKGRldl9wcml2LT52YnQucHNyLnRwMl90cDNfd2FrZXVwX3RpbWUg PiAwKQo+Pj4gLQkJdmFsIHw9IEVEUF9QU1IyX1RQMl9USU1FXzEwMDsKPj4+ICsJaWYgKGRldl9w cml2LT52YnQucHNyLnRwMl90cDNfd2FrZXVwX3RpbWVfdXMgPj0gMCAmJgo+Pj4gKwkgICAgZGV2 X3ByaXYtPnZidC5wc3IudHAyX3RwM193YWtldXBfdGltZV91cyA8PSA1MCkKPj4+ICsJCXZhbCB8 PSBFRFBfUFNSMl9UUDJfVElNRV81MHVzOwo+Pj4gKwllbHNlIGlmIChkZXZfcHJpdi0+dmJ0LnBz ci50cDJfdHAzX3dha2V1cF90aW1lX3VzIDw9IDEwMCkKPj4+ICsJCXZhbCB8PSBFRFBfUFNSMl9U UDJfVElNRV8xMDB1czsKPj4+ICsJZWxzZSBpZiAoZGV2X3ByaXYtPnZidC5wc3IudHAyX3RwM193 YWtldXBfdGltZV91cyA8PSA1MDApCj4+PiArCQl2YWwgfD0gRURQX1BTUjJfVFAyX1RJTUVfNTAw dXM7Cj4+PiAgIAllbHNlCj4+PiAtCQl2YWwgfD0gRURQX1BTUjJfVFAyX1RJTUVfNTA7Cj4+PiAr CQl2YWwgfD0gRURQX1BTUjJfVFAyX1RJTUVfMjUwMHVzOwo+Pj4gICAKPj4+ICAgCUk5MTVfV1JJ VEUoRURQX1BTUjJfQ1RMLCB2YWwpOwo+Pj4gICB9Cj4KCi0tIApKYW5pIE5pa3VsYSwgSW50ZWwg T3BlbiBTb3VyY2UgR3JhcGhpY3MgQ2VudGVyCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3Rz LmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xp c3RpbmZvL2ludGVsLWdmeAo=