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.4 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,URIBL_BLOCKED, 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 76D16C433DB for ; Mon, 18 Jan 2021 09:44:45 +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 B7D1022240 for ; Mon, 18 Jan 2021 09:44:44 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org B7D1022240 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 3824689F3C; Mon, 18 Jan 2021 09:44:44 +0000 (UTC) Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTPS id 3F49F89F3C for ; Mon, 18 Jan 2021 09:44:43 +0000 (UTC) IronPort-SDR: UTUmb350HMZTbOPRtdKSYGp2Axc/MuV5cUvp0tiYFJiQ7kKiDUUDeeapAzFc7KBPRDqoZck75r wnDgchdiv2wg== X-IronPort-AV: E=McAfee;i="6000,8403,9867"; a="178003846" X-IronPort-AV: E=Sophos;i="5.79,356,1602572400"; d="scan'208";a="178003846" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Jan 2021 01:44:35 -0800 IronPort-SDR: I6nGN6oN0YRMtg8axeRwRSQNQOU6CQoANmrNwNHqNG68C65VM5PM0/CTjo1YjrBRhCNgfNCndh Lcg3Q+iREfzQ== X-IronPort-AV: E=Sophos;i="5.79,356,1602572400"; d="scan'208";a="383509292" Received: from kbs1-mobl1.gar.corp.intel.com (HELO [10.252.169.45]) ([10.252.169.45]) by orsmga008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Jan 2021 01:44:32 -0800 To: Ville Syrjala , intel-gfx@lists.freedesktop.org References: <20210111163711.12913-1-ville.syrjala@linux.intel.com> <20210111163711.12913-9-ville.syrjala@linux.intel.com> From: Karthik B S Message-ID: Date: Mon, 18 Jan 2021 15:14:29 +0530 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.6.1 MIME-Version: 1.0 In-Reply-To: <20210111163711.12913-9-ville.syrjala@linux.intel.com> Content-Language: en-US Subject: Re: [Intel-gfx] [PATCH v2 08/11] drm/i915: Implement async flips for bdw 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" T24gMS8xMS8yMDIxIDEwOjA3IFBNLCBWaWxsZSBTeXJqYWxhIHdyb3RlOgo+IEZyb206IFZpbGxl IFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+Cj4KPiBJbXBsZW1lbnQg YXN5bmMgZmxpcCBzdXBwb3J0IGZvciBCRFcuIFRoZSBpbXBsZW1lbnRhdGlvbiBpcwo+IHNpbWls YXIgdG8gdGhlIHNrbCsgY29kZS4gQW5kIGp1c3QgbGlrZSBza2wvYnh0L2dsayBiZHcgYWxzbwo+ IG5lZWRzIHRoZSBkaXNhYmxlIHcvYSwgdGh1cyB3ZSBuZWVkIHRvIHBsdW1iIHRoZSBkZXNpcmVk IHN0YXRlCj4gb2YgdGhlIGFzeW5jIGZsaXAgYWxsIHRoZSB3YXkgZG93biB0byBpOXh4X3BsYW5l X2N0bF9jcnRjKCkuCj4KPiBBY2NvcmRpbmcgdG8gdGhlIHNwZWMgd2UgZG8gbmVlZCB0byBidW1w IHRoZSBzdXJmYWNlIGFsaWdubWVudAo+IHRvIDI1NktpQiBmb3IgdGhpcy4gQXN5bmMgZmxpcHMg cmVxdWlyZSBhbiBYLXRpbGVkIGJ1ZmZlciBzbwo+IHdlIGRvbid0IGhhdmUgdG8gd29ycnkgYWJv dXQgbGluZWFyLgo+Cj4gQ2M6IEthcnRoaWsgQiBTIDxrYXJ0aGlrLmIuc0BpbnRlbC5jb20+Cj4g Q2M6IFZhbmRpdGEgS3Vsa2FybmkgPHZhbmRpdGEua3Vsa2FybmlAaW50ZWwuY29tPgo+IFNpZ25l ZC1vZmYtYnk6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+ CgpMb29rcyBnb29kIHRvIG1lLgoKUmV2aWV3ZWQtYnk6IEthcnRoaWsgQiBTIDxrYXJ0aGlrLmIu c0BpbnRlbC5jb20+Cgo+IC0tLQo+ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pOXh4 X3BsYW5lLmMgICAgfCA1MSArKysrKysrKysrKysrKysrKysrKwo+ICAgZHJpdmVycy9ncHUvZHJt L2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMgfCAxMCArKy0tCj4gICBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2lycS5jICAgICAgICAgICAgICB8IDI1ICsrKysrLS0tLS0KPiAgIGRyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmggICAgICAgICAgICAgIHwgIDEgKwo+ICAgNCBmaWxl cyBjaGFuZ2VkLCA3MyBpbnNlcnRpb25zKCspLCAxNCBkZWxldGlvbnMoLSkKPgo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2k5eHhfcGxhbmUuYyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2Rpc3BsYXkvaTl4eF9wbGFuZS5jCj4gaW5kZXggN2Q5NjhjYTg5MGRhLi40 NDAwNDU1OGViYmQgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9p OXh4X3BsYW5lLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2k5eHhfcGxh bmUuYwo+IEBAIC00OTUsNiArNDk1LDUwIEBAIHN0YXRpYyB2b2lkIGk5eHhfZGlzYWJsZV9wbGFu ZShzdHJ1Y3QgaW50ZWxfcGxhbmUgKnBsYW5lLAo+ICAgCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUo JmRldl9wcml2LT51bmNvcmUubG9jaywgaXJxZmxhZ3MpOwo+ICAgfQo+ICAgCj4gK3N0YXRpYyB2 b2lkCj4gK2c0eF9wcmltYXJ5X2FzeW5jX2ZsaXAoc3RydWN0IGludGVsX3BsYW5lICpwbGFuZSwK PiArCQkgICAgICAgY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsCj4g KwkJICAgICAgIGNvbnN0IHN0cnVjdCBpbnRlbF9wbGFuZV9zdGF0ZSAqcGxhbmVfc3RhdGUsCj4g KwkJICAgICAgIGJvb2wgYXN5bmNfZmxpcCkKPiArewo+ICsJc3RydWN0IGRybV9pOTE1X3ByaXZh dGUgKmRldl9wcml2ID0gdG9faTkxNShwbGFuZS0+YmFzZS5kZXYpOwo+ICsJdTMyIGRzcGNudHIg PSBwbGFuZV9zdGF0ZS0+Y3RsIHwgaTl4eF9wbGFuZV9jdGxfY3J0YyhjcnRjX3N0YXRlKTsKPiAr CXUzMiBkc3BhZGRyX29mZnNldCA9IHBsYW5lX3N0YXRlLT5jb2xvcl9wbGFuZVswXS5vZmZzZXQ7 Cj4gKwllbnVtIGk5eHhfcGxhbmVfaWQgaTl4eF9wbGFuZSA9IHBsYW5lLT5pOXh4X3BsYW5lOwo+ ICsJdW5zaWduZWQgbG9uZyBpcnFmbGFnczsKPiArCj4gKwlpZiAoYXN5bmNfZmxpcCkKPiArCQlk c3BjbnRyIHw9IERJU1BQTEFORV9BU1lOQ19GTElQOwo+ICsKPiArCXNwaW5fbG9ja19pcnFzYXZl KCZkZXZfcHJpdi0+dW5jb3JlLmxvY2ssIGlycWZsYWdzKTsKPiArCWludGVsX2RlX3dyaXRlX2Z3 KGRldl9wcml2LCBEU1BDTlRSKGk5eHhfcGxhbmUpLCBkc3BjbnRyKTsKPiArCWludGVsX2RlX3dy aXRlX2Z3KGRldl9wcml2LCBEU1BTVVJGKGk5eHhfcGxhbmUpLAo+ICsJCQkgIGludGVsX3BsYW5l X2dndHRfb2Zmc2V0KHBsYW5lX3N0YXRlKSArIGRzcGFkZHJfb2Zmc2V0KTsKPiArCXNwaW5fdW5s b2NrX2lycXJlc3RvcmUoJmRldl9wcml2LT51bmNvcmUubG9jaywgaXJxZmxhZ3MpOwo+ICt9Cj4g Kwo+ICtzdGF0aWMgdm9pZAo+ICtiZHdfcHJpbWFyeV9lbmFibGVfZmxpcF9kb25lKHN0cnVjdCBp bnRlbF9wbGFuZSAqcGxhbmUpCj4gK3sKPiArCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1 ID0gdG9faTkxNShwbGFuZS0+YmFzZS5kZXYpOwo+ICsJZW51bSBwaXBlIHBpcGUgPSBwbGFuZS0+ cGlwZTsKPiArCj4gKwlzcGluX2xvY2tfaXJxKCZpOTE1LT5pcnFfbG9jayk7Cj4gKwliZHdfZW5h YmxlX3BpcGVfaXJxKGk5MTUsIHBpcGUsIEdFTjhfUElQRV9QUklNQVJZX0ZMSVBfRE9ORSk7Cj4g KwlzcGluX3VubG9ja19pcnEoJmk5MTUtPmlycV9sb2NrKTsKPiArfQo+ICsKPiArc3RhdGljIHZv aWQKPiArYmR3X3ByaW1hcnlfZGlzYWJsZV9mbGlwX2RvbmUoc3RydWN0IGludGVsX3BsYW5lICpw bGFuZSkKPiArewo+ICsJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUgPSB0b19pOTE1KHBs YW5lLT5iYXNlLmRldik7Cj4gKwllbnVtIHBpcGUgcGlwZSA9IHBsYW5lLT5waXBlOwo+ICsKPiAr CXNwaW5fbG9ja19pcnEoJmk5MTUtPmlycV9sb2NrKTsKPiArCWJkd19kaXNhYmxlX3BpcGVfaXJx KGk5MTUsIHBpcGUsIEdFTjhfUElQRV9QUklNQVJZX0ZMSVBfRE9ORSk7Cj4gKwlzcGluX3VubG9j a19pcnEoJmk5MTUtPmlycV9sb2NrKTsKPiArfQo+ICsKPiAgIHN0YXRpYyBib29sIGk5eHhfcGxh bmVfZ2V0X2h3X3N0YXRlKHN0cnVjdCBpbnRlbF9wbGFuZSAqcGxhbmUsCj4gICAJCQkJICAgIGVu dW0gcGlwZSAqcGlwZSkKPiAgIHsKPiBAQCAtNzA4LDYgKzc1MiwxMyBAQCBpbnRlbF9wcmltYXJ5 X3BsYW5lX2NyZWF0ZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIGVudW0gcGlw ZSBwaXBlKQo+ICAgCXBsYW5lLT5nZXRfaHdfc3RhdGUgPSBpOXh4X3BsYW5lX2dldF9od19zdGF0 ZTsKPiAgIAlwbGFuZS0+Y2hlY2tfcGxhbmUgPSBpOXh4X3BsYW5lX2NoZWNrOwo+ICAgCj4gKwlp ZiAoSVNfQlJPQURXRUxMKGRldl9wcml2KSkgewo+ICsJCXBsYW5lLT5uZWVkX2FzeW5jX2ZsaXBf ZGlzYWJsZV93YSA9IHRydWU7Cj4gKwkJcGxhbmUtPmFzeW5jX2ZsaXAgPSBnNHhfcHJpbWFyeV9h c3luY19mbGlwOwo+ICsJCXBsYW5lLT5lbmFibGVfZmxpcF9kb25lID0gYmR3X3ByaW1hcnlfZW5h YmxlX2ZsaXBfZG9uZTsKPiArCQlwbGFuZS0+ZGlzYWJsZV9mbGlwX2RvbmUgPSBiZHdfcHJpbWFy eV9kaXNhYmxlX2ZsaXBfZG9uZTsKPiArCX0KPiArCj4gICAJaWYgKElOVEVMX0dFTihkZXZfcHJp dikgPj0gNSB8fCBJU19HNFgoZGV2X3ByaXYpKQo+ICAgCQlyZXQgPSBkcm1fdW5pdmVyc2FsX3Bs YW5lX2luaXQoJmRldl9wcml2LT5kcm0sICZwbGFuZS0+YmFzZSwKPiAgIAkJCQkJICAgICAgIDAs IHBsYW5lX2Z1bmNzLAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5 L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZGlz cGxheS5jCj4gaW5kZXggOWVhN2E4OTQzMmQ2Li42ZGIzZTZiNjlhNTMgMTAwNjQ0Cj4gLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kaXNwbGF5LmMKPiArKysgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYwo+IEBAIC0yMTIwLDYgKzIx MjAsMTEgQEAgc3RhdGljIHVuc2lnbmVkIGludCBpbnRlbF9saW5lYXJfYWxpZ25tZW50KGNvbnN0 IHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHIKPiAgIAkJcmV0dXJuIDA7Cj4gICB9Cj4g ICAKPiArc3RhdGljIGJvb2wgaGFzX2FzeW5jX2ZsaXBzKHN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICppOTE1KQo+ICt7Cj4gKwlyZXR1cm4gSU5URUxfR0VOKGk5MTUpID49IDkgfHwgSVNfQlJPQURX RUxMKGk5MTUpOwo+ICt9Cj4gKwo+ICAgc3RhdGljIHVuc2lnbmVkIGludCBpbnRlbF9zdXJmX2Fs aWdubWVudChjb25zdCBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiwKPiAgIAkJCQkJIGludCBj b2xvcl9wbGFuZSkKPiAgIHsKPiBAQCAtMjEzNCw3ICsyMTM5LDcgQEAgc3RhdGljIHVuc2lnbmVk IGludCBpbnRlbF9zdXJmX2FsaWdubWVudChjb25zdCBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpm YiwKPiAgIAljYXNlIERSTV9GT1JNQVRfTU9EX0xJTkVBUjoKPiAgIAkJcmV0dXJuIGludGVsX2xp bmVhcl9hbGlnbm1lbnQoZGV2X3ByaXYpOwo+ICAgCWNhc2UgSTkxNV9GT1JNQVRfTU9EX1hfVElM RUQ6Cj4gLQkJaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPj0gOSkKPiArCQlpZiAoaGFzX2FzeW5j X2ZsaXBzKGRldl9wcml2KSkKPiAgIAkJCXJldHVybiAyNTYgKiAxMDI0Owo+ICAgCQlyZXR1cm4g MDsKPiAgIAljYXNlIEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEX0dFTjEyX01DX0NDUzoKPiBAQCAt MTcwOTcsOCArMTcxMDIsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9tb2RlX2NvbmZpZ19pbml0KHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1KQo+ICAgCj4gICAJbW9kZV9jb25maWctPmZ1bmNz ID0gJmludGVsX21vZGVfZnVuY3M7Cj4gICAKPiAtCWlmIChJTlRFTF9HRU4oaTkxNSkgPj0gOSkK PiAtCQltb2RlX2NvbmZpZy0+YXN5bmNfcGFnZV9mbGlwID0gdHJ1ZTsKPiArCW1vZGVfY29uZmln LT5hc3luY19wYWdlX2ZsaXAgPSBoYXNfYXN5bmNfZmxpcHMoaTkxNSk7Cj4gICAKPiAgIAkvKgo+ ICAgCSAqIE1heGltdW0gZnJhbWVidWZmZXIgZGltZW5zaW9ucywgY2hvc2VuIHRvIG1hdGNoCj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfaXJxLmMgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2lycS5jCj4gaW5kZXggMzMwMTljZjBlNjMwLi40MDdhOWRkMGEyMWUg MTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9pcnEuYwo+ICsrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfaXJxLmMKPiBAQCAtMjM1Nyw2ICsyMzU3LDE0IEBAIHN0 YXRpYyB2b2lkIGdlbjExX2RzaV90ZV9pbnRlcnJ1cHRfaGFuZGxlcihzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYsCj4gICAJaW50ZWxfdW5jb3JlX3dyaXRlKCZkZXZfcHJpdi0+dW5j b3JlLCBEU0lfSU5UUl9JREVOVF9SRUcocG9ydCksIHRtcCk7Cj4gICB9Cj4gICAKPiArc3RhdGlj IHUzMiBnZW44X2RlX3BpcGVfZmxpcF9kb25lX21hc2soc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg Kmk5MTUpCj4gK3sKPiArCWlmIChJTlRFTF9HRU4oaTkxNSkgPj0gOSkKPiArCQlyZXR1cm4gR0VO OV9QSVBFX1BMQU5FMV9GTElQX0RPTkU7Cj4gKwllbHNlCj4gKwkJcmV0dXJuIEdFTjhfUElQRV9Q UklNQVJZX0ZMSVBfRE9ORTsKPiArfQo+ICsKPiAgIHN0YXRpYyBpcnFyZXR1cm5fdAo+ICAgZ2Vu OF9kZV9pcnFfaGFuZGxlcihzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIHUzMiBt YXN0ZXJfY3RsKQo+ICAgewo+IEBAIC0yNDU5LDcgKzI0NjcsNyBAQCBnZW44X2RlX2lycV9oYW5k bGVyKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgdTMyIG1hc3Rlcl9jdGwpCj4g ICAJCWlmIChpaXIgJiBHRU44X1BJUEVfVkJMQU5LKQo+ICAgCQkJaW50ZWxfaGFuZGxlX3ZibGFu ayhkZXZfcHJpdiwgcGlwZSk7Cj4gICAKPiAtCQlpZiAoaWlyICYgR0VOOV9QSVBFX1BMQU5FMV9G TElQX0RPTkUpCj4gKwkJaWYgKGlpciAmIGdlbjhfZGVfcGlwZV9mbGlwX2RvbmVfbWFzayhkZXZf cHJpdikpCj4gICAJCQlmbGlwX2RvbmVfaGFuZGxlcihkZXZfcHJpdiwgcGlwZSk7Cj4gICAKPiAg IAkJaWYgKGlpciAmIEdFTjhfUElQRV9DRENMS19DUkNfRE9ORSkKPiBAQCAtMzA3OCwxMyArMzA4 NiwxMCBAQCB2b2lkIGdlbjhfaXJxX3Bvd2VyX3dlbGxfcG9zdF9lbmFibGUoc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2LAo+ICAgCQkJCSAgICAgdTggcGlwZV9tYXNrKQo+ICAgewo+ ICAgCXN0cnVjdCBpbnRlbF91bmNvcmUgKnVuY29yZSA9ICZkZXZfcHJpdi0+dW5jb3JlOwo+IC0K PiAtCXUzMiBleHRyYV9pZXIgPSBHRU44X1BJUEVfVkJMQU5LIHwgR0VOOF9QSVBFX0ZJRk9fVU5E RVJSVU47Cj4gKwl1MzIgZXh0cmFfaWVyID0gR0VOOF9QSVBFX1ZCTEFOSyB8IEdFTjhfUElQRV9G SUZPX1VOREVSUlVOIHwKPiArCQlnZW44X2RlX3BpcGVfZmxpcF9kb25lX21hc2soZGV2X3ByaXYp Owo+ICAgCWVudW0gcGlwZSBwaXBlOwo+ICAgCj4gLQlpZiAoSU5URUxfR0VOKGRldl9wcml2KSA+ PSA5KQo+IC0JCWV4dHJhX2llciB8PSBHRU45X1BJUEVfUExBTkUxX0ZMSVBfRE9ORTsKPiAtCj4g ICAJc3Bpbl9sb2NrX2lycSgmZGV2X3ByaXYtPmlycV9sb2NrKTsKPiAgIAo+ICAgCWlmICghaW50 ZWxfaXJxc19lbmFibGVkKGRldl9wcml2KSkgewo+IEBAIC0zNjU2LDExICszNjYxLDkgQEAgc3Rh dGljIHZvaWQgZ2VuOF9kZV9pcnFfcG9zdGluc3RhbGwoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2KQo+ICAgCQkJZGVfcG9ydF9tYXNrZWQgfD0gRFNJMF9URSB8IERTSTFfVEU7Cj4g ICAJfQo+ICAgCj4gLQlkZV9waXBlX2VuYWJsZXMgPSBkZV9waXBlX21hc2tlZCB8IEdFTjhfUElQ RV9WQkxBTksgfAo+IC0JCQkJCSAgIEdFTjhfUElQRV9GSUZPX1VOREVSUlVOOwo+IC0KPiAtCWlm IChJTlRFTF9HRU4oZGV2X3ByaXYpID49IDkpCj4gLQkJZGVfcGlwZV9lbmFibGVzIHw9IEdFTjlf UElQRV9QTEFORTFfRkxJUF9ET05FOwo+ICsJZGVfcGlwZV9lbmFibGVzID0gZGVfcGlwZV9tYXNr ZWQgfAo+ICsJCUdFTjhfUElQRV9WQkxBTksgfCBHRU44X1BJUEVfRklGT19VTkRFUlJVTiB8Cj4g KwkJZ2VuOF9kZV9waXBlX2ZsaXBfZG9uZV9tYXNrKGRldl9wcml2KTsKPiAgIAo+ICAgCWRlX3Bv cnRfZW5hYmxlcyA9IGRlX3BvcnRfbWFza2VkOwo+ICAgCWlmIChJU19HRU45X0xQKGRldl9wcml2 KSkKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmgKPiBpbmRleCAxZDhiYTEwODQ3Y2EuLjI2NDY0Nzg5 NjNhNSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oCj4gKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaAo+IEBAIC02NjE0LDYgKzY2MTQsNyBA QCBlbnVtIHsKPiAgICNkZWZpbmUgICBESVNQUExBTkVfUk9UQVRFXzE4MAkJCSgxIDw8IDE1KQo+ ICAgI2RlZmluZSAgIERJU1BQTEFORV9UUklDS0xFX0ZFRURfRElTQUJMRQkoMSA8PCAxNCkgLyog SXJvbmxha2UgKi8KPiAgICNkZWZpbmUgICBESVNQUExBTkVfVElMRUQJCQkoMSA8PCAxMCkKPiAr I2RlZmluZSAgIERJU1BQTEFORV9BU1lOQ19GTElQCQkJKDEgPDwgOSkgLyogZzR4KyAqLwo+ICAg I2RlZmluZSAgIERJU1BQTEFORV9NSVJST1IJCQkoMSA8PCA4KSAvKiBDSFYgcGlwZSBCICovCj4g ICAjZGVmaW5lIF9EU1BBQUREUgkJCQkweDcwMTg0Cj4gICAjZGVmaW5lIF9EU1BBU1RSSURFCQkJ CTB4NzAxODgKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcK aHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK