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 X-Spam-Level: X-Spam-Status: No, score=-15.3 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id B4B8CC4743C for ; Wed, 23 Jun 2021 11:55:40 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 510EF60FD9 for ; Wed, 23 Jun 2021 11:55:40 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 510EF60FD9 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id F3B226E8BD; Wed, 23 Jun 2021 11:55:39 +0000 (UTC) Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by gabe.freedesktop.org (Postfix) with ESMTPS id 30B366E8BD for ; Wed, 23 Jun 2021 11:55:39 +0000 (UTC) IronPort-SDR: kvmfqeb+hrfUaW000wJd7eG927UQcVb9fM5RiBIf/HToQX/1dRy9CtmwfJDlAfHL8fpOnlbk9L gcRp1jfHP6YQ== X-IronPort-AV: E=McAfee;i="6200,9189,10023"; a="292872153" X-IronPort-AV: E=Sophos;i="5.83,293,1616482800"; d="scan'208";a="292872153" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 23 Jun 2021 04:55:35 -0700 IronPort-SDR: fZ3tp/AQPN3cmkhck6bQofhCQkFW/6TP0otAvdHzEvc0ukS4ECngo/h8I4mkYJbrd2sZKtcym+ Gqvx6lbZiL2A== X-IronPort-AV: E=Sophos;i="5.83,293,1616482800"; d="scan'208";a="454625658" Received: from unknown (HELO [10.237.72.175]) ([10.237.72.175]) by fmsmga008-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 23 Jun 2021 04:55:33 -0700 To: =?UTF-8?Q?Jos=c3=a9_Roberto_de_Souza?= , intel-gfx@lists.freedesktop.org References: <20210616203158.118111-1-jose.souza@intel.com> From: Gwan-gyeong Mun Message-ID: Date: Wed, 23 Jun 2021 14:55:31 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.10.0 MIME-Version: 1.0 In-Reply-To: <20210616203158.118111-1-jose.souza@intel.com> Content-Language: en-US Subject: Re: [Intel-gfx] [PATCH 1/6] drm/i915/display/psr: Handle SU Y granularity X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" bG9va3MgZ29vZCB0byBtZS4KClJldmlld2VkLWJ5OiBHd2FuLWd5ZW9uZyBNdW4gPGd3YW4tZ3ll b25nLm11bkBpbnRlbC5jb20+CgpPbiA2LzE2LzIxIDExOjMxIFBNLCBKb3PDqSBSb2JlcnRvIGRl IFNvdXphIHdyb3RlOgo+IFdlIHdlcmUgb25seSBoYW5kbGluZyBYIGFuZCB3aWR0aCBncmFudWxh cml0eSwgd2hhdCB3YXMgY2F1c2luZyBpc3N1ZXMKPiB3aGVuIHNpbmsgaGFkIGEgZ3JhbnVsYXJp dHkgZGlmZmVyZW50IHRoYW4gNC4KPiAKPiBXaGlsZSBhdCBpdCwgcmVuYW1pbmcgc3VfeF9ncmFu dWxhcml0eSB0byBzdV93X2dyYW51bGFyaXR5IHRvIGJldHRlcgo+IG1hdGNoIHJlYWxpdHkuCj4g Cj4gQ2M6IEd3YW4tZ3llb25nIE11biA8Z3dhbi1neWVvbmcubXVuQGludGVsLmNvbT4KPiBTaWdu ZWQtb2ZmLWJ5OiBKb3PDqSBSb2JlcnRvIGRlIFNvdXphIDxqb3NlLnNvdXphQGludGVsLmNvbT4K PiAtLS0KPiAgIC4uLi9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfdHlwZXMuaCAgICB8 ICAgNCArLQo+ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9wc3IuYyAgICAg IHwgMTEwICsrKysrKysrKysrKy0tLS0tLQo+ICAgMiBmaWxlcyBjaGFuZ2VkLCA4MCBpbnNlcnRp b25zKCspLCAzNCBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5X3R5cGVzLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9kaXNwbGF5L2ludGVsX2Rpc3BsYXlfdHlwZXMuaAo+IGluZGV4IDE1ZTkxYTk5YzhiOWEuLmY4 OTE1MmNhNTJhMjAgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9p bnRlbF9kaXNwbGF5X3R5cGVzLmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5 L2ludGVsX2Rpc3BsYXlfdHlwZXMuaAo+IEBAIC0xMDQxLDYgKzEwNDEsNyBAQCBzdHJ1Y3QgaW50 ZWxfY3J0Y19zdGF0ZSB7Cj4gICAJYm9vbCBoYXNfcHNyMjsKPiAgIAlib29sIGVuYWJsZV9wc3Iy X3NlbF9mZXRjaDsKPiAgIAl1MzIgZGMzY29fZXhpdGxpbmU7Cj4gKwl1MTYgc3VfeV9ncmFudWxh cml0eTsKPiAgIAo+ICAgCS8qCj4gICAJICogRnJlcXVlbmNlIHRoZSBkcGxsIGZvciB0aGUgcG9y dCBzaG91bGQgcnVuIGF0LiBEaWZmZXJzIGZyb20gdGhlCj4gQEAgLTE0OTgsNyArMTQ5OSw4IEBA IHN0cnVjdCBpbnRlbF9wc3Igewo+ICAgCWt0aW1lX3QgbGFzdF9leGl0Owo+ICAgCWJvb2wgc2lu a19ub3RfcmVsaWFibGU7Cj4gICAJYm9vbCBpcnFfYXV4X2Vycm9yOwo+IC0JdTE2IHN1X3hfZ3Jh bnVsYXJpdHk7Cj4gKwl1MTYgc3Vfd19ncmFudWxhcml0eTsKPiArCXUxNiBzdV95X2dyYW51bGFy aXR5Owo+ICAgCXUzMiBkYzNjb19leGl0bGluZTsKPiAgIAl1MzIgZGMzY29fZXhpdF9kZWxheTsK PiAgIAlzdHJ1Y3QgZGVsYXllZF93b3JrIGRjM2NvX3dvcms7Cj4gZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfcHNyLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9kaXNwbGF5L2ludGVsX3Bzci5jCj4gaW5kZXggNzc4NjVjZjY2NDFmOC4uZmRlMzBmOTM3NTA0 ZSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX3Bzci5j Cj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9wc3IuYwo+IEBAIC0y NjUsMzIgKzI2NSw0NCBAQCBzdGF0aWMgdTggaW50ZWxfZHBfZ2V0X3Npbmtfc3luY19sYXRlbmN5 KHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxfZHApCj4gICAJcmV0dXJuIHZhbDsKPiAgIH0KPiAgIAo+ IC1zdGF0aWMgdTE2IGludGVsX2RwX2dldF9zdV94X2dyYW51bGFydGl5KHN0cnVjdCBpbnRlbF9k cCAqaW50ZWxfZHApCj4gK3N0YXRpYyB2b2lkIGludGVsX2RwX2dldF9zdV9ncmFudWxhcml0eShz dHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwKQo+ICAgewo+ICAgCXN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICppOTE1ID0gZHBfdG9faTkxNShpbnRlbF9kcCk7Cj4gLQl1MTYgdmFsOwo+ICAgCXNzaXpl X3QgcjsKPiArCXUxNiB3Owo+ICsJdTggeTsKPiArCj4gKwkvKiBJZiBzaW5rIGRvbid0IGhhdmUg c3BlY2lmaWMgZ3JhbnVsYXJpdHkgcmVxdWlyZW1lbnRzIHNldCBsZWdhY3kgb25lcyAqLwo+ICsJ aWYgKCEoaW50ZWxfZHAtPnBzcl9kcGNkWzFdICYgRFBfUFNSMl9TVV9HUkFOVUxBUklUWV9SRVFV SVJFRCkpIHsKPiArCQkvKiBBcyBQU1IyIEhXIHNlbmRzIGZ1bGwgbGluZXMsIHdlIGRvIG5vdCBj YXJlIGFib3V0IHggZ3JhbnVsYXJpdHkgKi8KPiArCQl3ID0gNDsKPiArCQl5ID0gNDsKPiArCQln b3RvIGV4aXQ7Cj4gKwl9Cj4gICAKPiAtCS8qCj4gLQkgKiBSZXR1cm5pbmcgdGhlIGRlZmF1bHQg WCBncmFudWxhcml0eSBpZiBncmFudWxhcml0eSBub3QgcmVxdWlyZWQgb3IKPiAtCSAqIGlmIERQ Q0QgcmVhZCBmYWlscwo+IC0JICovCj4gLQlpZiAoIShpbnRlbF9kcC0+cHNyX2RwY2RbMV0gJiBE UF9QU1IyX1NVX0dSQU5VTEFSSVRZX1JFUVVJUkVEKSkKPiAtCQlyZXR1cm4gNDsKPiAtCj4gLQly ID0gZHJtX2RwX2RwY2RfcmVhZCgmaW50ZWxfZHAtPmF1eCwgRFBfUFNSMl9TVV9YX0dSQU5VTEFS SVRZLCAmdmFsLCAyKTsKPiArCXIgPSBkcm1fZHBfZHBjZF9yZWFkKCZpbnRlbF9kcC0+YXV4LCBE UF9QU1IyX1NVX1hfR1JBTlVMQVJJVFksICZ3LCAyKTsKPiAgIAlpZiAociAhPSAyKQo+ICAgCQlk cm1fZGJnX2ttcygmaTkxNS0+ZHJtLAo+ICAgCQkJICAgICJVbmFibGUgdG8gcmVhZCBEUF9QU1Iy X1NVX1hfR1JBTlVMQVJJVFlcbiIpOwo+IC0KPiAgIAkvKgo+ICAgCSAqIFNwZWMgc2F5cyB0aGF0 IGlmIHRoZSB2YWx1ZSByZWFkIGlzIDAgdGhlIGRlZmF1bHQgZ3JhbnVsYXJpdHkgc2hvdWxkCj4g ICAJICogYmUgdXNlZCBpbnN0ZWFkLgo+ICAgCSAqLwo+IC0JaWYgKHIgIT0gMiB8fCB2YWwgPT0g MCkKPiAtCQl2YWwgPSA0Owo+ICsJaWYgKHIgIT0gMiB8fCB3ID09IDApCj4gKwkJdyA9IDQ7Cj4g ICAKPiAtCXJldHVybiB2YWw7Cj4gKwlyID0gZHJtX2RwX2RwY2RfcmVhZCgmaW50ZWxfZHAtPmF1 eCwgRFBfUFNSMl9TVV9ZX0dSQU5VTEFSSVRZLCAmeSwgMSk7Cj4gKwlpZiAociAhPSAxKSB7Cj4g KwkJZHJtX2RiZ19rbXMoJmk5MTUtPmRybSwKPiArCQkJICAgICJVbmFibGUgdG8gcmVhZCBEUF9Q U1IyX1NVX1lfR1JBTlVMQVJJVFlcbiIpOwo+ICsJCXkgPSA0Owo+ICsJfQo+ICsJaWYgKHkgPT0g MCkKPiArCQl5ID0gMTsKPiArCj4gK2V4aXQ6Cj4gKwlpbnRlbF9kcC0+cHNyLnN1X3dfZ3JhbnVs YXJpdHkgPSB3Owo+ICsJaW50ZWxfZHAtPnBzci5zdV95X2dyYW51bGFyaXR5ID0geTsKPiAgIH0K PiAgIAo+ICAgdm9pZCBpbnRlbF9wc3JfaW5pdF9kcGNkKHN0cnVjdCBpbnRlbF9kcCAqaW50ZWxf ZHApCj4gQEAgLTM0Niw4ICszNTgsNyBAQCB2b2lkIGludGVsX3Bzcl9pbml0X2RwY2Qoc3RydWN0 IGludGVsX2RwICppbnRlbF9kcCkKPiAgIAkJaWYgKGludGVsX2RwLT5wc3Iuc2lua19wc3IyX3N1 cHBvcnQpIHsKPiAgIAkJCWludGVsX2RwLT5wc3IuY29sb3JpbWV0cnlfc3VwcG9ydCA9Cj4gICAJ CQkJaW50ZWxfZHBfZ2V0X2NvbG9yaW1ldHJ5X3N0YXR1cyhpbnRlbF9kcCk7Cj4gLQkJCWludGVs X2RwLT5wc3Iuc3VfeF9ncmFudWxhcml0eSA9Cj4gLQkJCQlpbnRlbF9kcF9nZXRfc3VfeF9ncmFu dWxhcnRpeShpbnRlbF9kcCk7Cj4gKwkJCWludGVsX2RwX2dldF9zdV9ncmFudWxhcml0eShpbnRl bF9kcCk7Cj4gICAJCX0KPiAgIAl9Cj4gICB9Cj4gQEAgLTc0Miw2ICs3NTMsNDAgQEAgc3RhdGlj IGJvb2wgaW50ZWxfcHNyMl9zZWxfZmV0Y2hfY29uZmlnX3ZhbGlkKHN0cnVjdCBpbnRlbF9kcCAq aW50ZWxfZHAsCj4gICAJcmV0dXJuIGNydGNfc3RhdGUtPmVuYWJsZV9wc3IyX3NlbF9mZXRjaCA9 IHRydWU7Cj4gICB9Cj4gICAKPiArc3RhdGljIGJvb2wgcHNyMl9ncmFudWxhcml0eV9jaGVjayhz dHJ1Y3QgaW50ZWxfZHAgKmludGVsX2RwLAo+ICsJCQkJICAgc3RydWN0IGludGVsX2NydGNfc3Rh dGUgKmNydGNfc3RhdGUpCj4gK3sKPiArCWNvbnN0IGludCBjcnRjX2hkaXNwbGF5ID0gY3J0Y19z dGF0ZS0+aHcuYWRqdXN0ZWRfbW9kZS5jcnRjX2hkaXNwbGF5Owo+ICsJY29uc3QgaW50IGNydGNf dmRpc3BsYXkgPSBjcnRjX3N0YXRlLT5ody5hZGp1c3RlZF9tb2RlLmNydGNfdmRpc3BsYXk7Cj4g Kwl1MTYgeV9ncmFudWxhcml0eSA9IDA7Cj4gKwo+ICsJLyogUFNSMiBIVyBvbmx5IHNlbmQgZnVs bCBsaW5lcyBzbyB3ZSBvbmx5IG5lZWQgdG8gdmFsaWRhdGUgdGhlIHdpZHRoICovCj4gKwlpZiAo Y3J0Y19oZGlzcGxheSAlIGludGVsX2RwLT5wc3Iuc3Vfd19ncmFudWxhcml0eSkKPiArCQlyZXR1 cm4gZmFsc2U7Cj4gKwo+ICsJaWYgKGNydGNfdmRpc3BsYXkgJSBpbnRlbF9kcC0+cHNyLnN1X3lf Z3JhbnVsYXJpdHkpCj4gKwkJcmV0dXJuIGZhbHNlOwo+ICsKPiArCS8qIEhXIHRyYWNraW5nIGlz IG9ubHkgYWxpZ25lZCB0byA0IGxpbmVzICovCj4gKwlpZiAoIWNydGNfc3RhdGUtPmVuYWJsZV9w c3IyX3NlbF9mZXRjaCkKPiArCQlyZXR1cm4gaW50ZWxfZHAtPnBzci5zdV95X2dyYW51bGFyaXR5 ID09IDQ7Cj4gKwo+ICsJLyoKPiArCSAqIEZvciBTVyB0cmFja2luZyB3ZSBjYW4gYWRqdXN0IHRo ZSB5IHRvIG1hdGNoIHNpbmsgcmVxdWlyZW1lbnQgaWYKPiArCSAqIG11bHRpcGxlIG9mIDQKPiAr CSAqLwo+ICsJaWYgKGludGVsX2RwLT5wc3Iuc3VfeV9ncmFudWxhcml0eSA8PSAyKQo+ICsJCXlf Z3JhbnVsYXJpdHkgPSA0Owo+ICsJZWxzZSBpZiAoKGludGVsX2RwLT5wc3Iuc3VfeV9ncmFudWxh cml0eSAlIDQpID09IDApCj4gKwkJeV9ncmFudWxhcml0eSA9IGludGVsX2RwLT5wc3Iuc3VfeV9n cmFudWxhcml0eTsKPiArCj4gKwlpZiAoeV9ncmFudWxhcml0eSA9PSAwIHx8IGNydGNfdmRpc3Bs YXkgJSB5X2dyYW51bGFyaXR5KQo+ICsJCXJldHVybiBmYWxzZTsKPiArCj4gKwljcnRjX3N0YXRl LT5zdV95X2dyYW51bGFyaXR5ID0geV9ncmFudWxhcml0eTsKPiArCXJldHVybiB0cnVlOwo+ICt9 Cj4gKwo+ICAgc3RhdGljIGJvb2wgaW50ZWxfcHNyMl9jb25maWdfdmFsaWQoc3RydWN0IGludGVs X2RwICppbnRlbF9kcCwKPiAgIAkJCQkgICAgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNf c3RhdGUpCj4gICB7Cj4gQEAgLTgyNCwxOSArODY5LDYgQEAgc3RhdGljIGJvb2wgaW50ZWxfcHNy Ml9jb25maWdfdmFsaWQoc3RydWN0IGludGVsX2RwICppbnRlbF9kcCwKPiAgIAkJcmV0dXJuIGZh bHNlOwo+ICAgCX0KPiAgIAo+IC0JLyoKPiAtCSAqIEhXIHNlbmRzIFNVIGJsb2NrcyBvZiBzaXpl IGZvdXIgc2NhbiBsaW5lcywgd2hpY2ggbWVhbnMgdGhlIHN0YXJ0aW5nCj4gLQkgKiBYIGNvb3Jk aW5hdGUgYW5kIFkgZ3JhbnVsYXJpdHkgcmVxdWlyZW1lbnRzIHdpbGwgYWx3YXlzIGJlIG1ldC4g V2UKPiAtCSAqIG9ubHkgbmVlZCB0byB2YWxpZGF0ZSB0aGUgU1UgYmxvY2sgd2lkdGggaXMgYSBt dWx0aXBsZSBvZgo+IC0JICogeCBncmFudWxhcml0eS4KPiAtCSAqLwo+IC0JaWYgKGNydGNfaGRp c3BsYXkgJSBpbnRlbF9kcC0+cHNyLnN1X3hfZ3JhbnVsYXJpdHkpIHsKPiAtCQlkcm1fZGJnX2tt cygmZGV2X3ByaXYtPmRybSwKPiAtCQkJICAgICJQU1IyIG5vdCBlbmFibGVkLCBoZGlzcGxheSgl ZCkgbm90IG11bHRpcGxlIG9mICVkXG4iLAo+IC0JCQkgICAgY3J0Y19oZGlzcGxheSwgaW50ZWxf ZHAtPnBzci5zdV94X2dyYW51bGFyaXR5KTsKPiAtCQlyZXR1cm4gZmFsc2U7Cj4gLQl9Cj4gLQo+ ICAgCWlmIChIQVNfUFNSMl9TRUxfRkVUQ0goZGV2X3ByaXYpKSB7Cj4gICAJCWlmICghaW50ZWxf cHNyMl9zZWxfZmV0Y2hfY29uZmlnX3ZhbGlkKGludGVsX2RwLCBjcnRjX3N0YXRlKSAmJgo+ICAg CQkgICAgIUhBU19QU1JfSFdfVFJBQ0tJTkcoZGV2X3ByaXYpKSB7Cj4gQEAgLTg1Myw2ICs4ODUs MTEgQEAgc3RhdGljIGJvb2wgaW50ZWxfcHNyMl9jb25maWdfdmFsaWQoc3RydWN0IGludGVsX2Rw ICppbnRlbF9kcCwKPiAgIAkJcmV0dXJuIGZhbHNlOwo+ICAgCX0KPiAgIAo+ICsJaWYgKCFwc3Iy X2dyYW51bGFyaXR5X2NoZWNrKGludGVsX2RwLCBjcnRjX3N0YXRlKSkgewo+ICsJCWRybV9kYmdf a21zKCZkZXZfcHJpdi0+ZHJtLCAiUFNSMiBub3QgZW5hYmxlZCwgU1UgZ3JhbnVsYXJpdHkgbm90 IGNvbXBhdGlibGVcbiIpOwo+ICsJCXJldHVybiBmYWxzZTsKPiArCX0KPiArCj4gICAJaWYgKCFj cnRjX3N0YXRlLT5lbmFibGVfcHNyMl9zZWxfZmV0Y2ggJiYKPiAgIAkgICAgKGNydGNfaGRpc3Bs YXkgPiBwc3JfbWF4X2ggfHwgY3J0Y192ZGlzcGxheSA+IHBzcl9tYXhfdikpIHsKPiAgIAkJZHJt X2RiZ19rbXMoJmRldl9wcml2LT5kcm0sCj4gQEAgLTE0MzIsNiArMTQ2OSwxNiBAQCBzdGF0aWMg dm9pZCBjbGlwX2FyZWFfdXBkYXRlKHN0cnVjdCBkcm1fcmVjdCAqb3ZlcmxhcF9kYW1hZ2VfYXJl YSwKPiAgIAkJb3ZlcmxhcF9kYW1hZ2VfYXJlYS0+eTIgPSBkYW1hZ2VfYXJlYS0+eTI7Cj4gICB9 Cj4gICAKPiArc3RhdGljIHZvaWQgaW50ZWxfcHNyMl9zZWxfZmV0Y2hfcGlwZV9hbGlnbm1lbnQo Y29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsCj4gKwkJCQkJCXN0cnVj dCBkcm1fcmVjdCAqcGlwZV9jbGlwKQo+ICt7Cj4gKwljb25zdCB1MTYgeV9hbGlnbm1lbnQgPSBj cnRjX3N0YXRlLT5zdV95X2dyYW51bGFyaXR5Owo+ICsKPiArCXBpcGVfY2xpcC0+eTEgLT0gcGlw ZV9jbGlwLT55MSAlIHlfYWxpZ25tZW50Owo+ICsJaWYgKHBpcGVfY2xpcC0+eTIgJSB5X2FsaWdu bWVudCkKPiArCQlwaXBlX2NsaXAtPnkyID0gKChwaXBlX2NsaXAtPnkyIC8geV9hbGlnbm1lbnQp ICsgMSkgKiB5X2FsaWdubWVudDsKPiArfQo+ICsKPiAgIGludCBpbnRlbF9wc3IyX3NlbF9mZXRj aF91cGRhdGUoc3RydWN0IGludGVsX2F0b21pY19zdGF0ZSAqc3RhdGUsCj4gICAJCQkJc3RydWN0 IGludGVsX2NydGMgKmNydGMpCj4gICB7Cj4gQEAgLTE1NDAsMTAgKzE1ODcsNyBAQCBpbnQgaW50 ZWxfcHNyMl9zZWxfZmV0Y2hfdXBkYXRlKHN0cnVjdCBpbnRlbF9hdG9taWNfc3RhdGUgKnN0YXRl LAo+ICAgCWlmIChmdWxsX3VwZGF0ZSkKPiAgIAkJZ290byBza2lwX3NlbF9mZXRjaF9zZXRfbG9v cDsKPiAgIAo+IC0JLyogSXQgbXVzdCBiZSBhbGlnbmVkIHRvIDQgbGluZXMgKi8KPiAtCXBpcGVf Y2xpcC55MSAtPSBwaXBlX2NsaXAueTEgJSA0Owo+IC0JaWYgKHBpcGVfY2xpcC55MiAlIDQpCj4g LQkJcGlwZV9jbGlwLnkyID0gKChwaXBlX2NsaXAueTIgLyA0KSArIDEpICogNDsKPiArCWludGVs X3BzcjJfc2VsX2ZldGNoX3BpcGVfYWxpZ25tZW50KGNydGNfc3RhdGUsICZwaXBlX2NsaXApOwo+ ICAgCj4gICAJLyoKPiAgIAkgKiBOb3cgdGhhdCB3ZSBoYXZlIHRoZSBwaXBlIGRhbWFnZWQgYXJl YSBjaGVjayBpZiBpdCBpbnRlcnNlY3Qgd2l0aAo+IApfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1h bi9saXN0aW5mby9pbnRlbC1nZngK