From mboxrd@z Thu Jan 1 00:00:00 1970 From: kai.chen@intel.com Subject: [PATCH] drm/i915: Disable decoupled mmio for GEN9LP Date: Mon, 22 May 2017 17:15:59 -0700 Message-ID: <20170523001559.11635-1-kai.chen@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 9511A6E2D6 for ; Tue, 23 May 2017 00:15:47 +0000 (UTC) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogS2FpIENoZW4gPGthaS5jaGVuQGludGVsLmNvbT4KClRoZSBkZWNvdXBsZWQgbW1pbyBm ZWF0dXJlIGRvZXNuJ3Qgd29yayBhcyBpbnRlbmRlZCBieSBIVyB0ZWFtLiBFbmFibGluZwppdCB3 aXRoIGZvcmNld2FrZSB3aWxsIG9ubHkgbWFrZSBkZWJ1Z2dpbmcgZWZmb3J0cyBtb3JlIGRpZmZp Y3VsdCwgc28KbGV0J3MganVzdCBzaW1wbHkgcmVtb3ZlIGl0LgoKdjI6Ci0gUmVtb3ZlIGRlYWQg Y29kZSByZWxhdGVkIHRvIEdFTjlMUCBkZWNvdXBsZWQgbW1pby4KLSBDaGFuZ2UgYmFja2dyb3Vu ZHM6IEluIHRoZW9yeSwgZGVjb3VwbGVkIG1taW8gc2hvdWxkIHJlcXVpcmUgbGVzcyBjeWNsZXMK ICBmb3Igc2luZ2xlIHJlYWQvd3JpdGUgb3BlcmF0aW9uIGJ5IGF2b2lkaW5nIGZyZXF1ZW50IHNv ZnR3YXJlIGZvcmNld2FrZS4KICBIb3dldmVyLCBpdCB0dXJucyBvdXQgdGhpcyBkZXNpZ24gbm90 IHRvIGJlIHRydWUgb24gSFcgcHJhY3RpY2UgYW5kIG5vdCB0bwogIHByb3ZpZGUgYW55IGRlY291 cGxpbmcgYmVuZWZpdC4gSXQgYWxzbyBpbnRyb2R1Y2VzIHByb2JsZW1zIHdoaWNoIGNhdXNlCiAg ZmFpbHVyZXMgaW4gaW50ZWwtZ3B1LXRvb2xzIChnZW0pLCBhbmQgYWxzbyBjYXVzZSBkcml2ZXIg Y29kZSBhbmQgZGVidWdnaW5nCiAgbW9yZSBjb21wbGV4LgotIFRoaXMgY2hhbmdlIHRoZXJlZm9y ZSByZXZlcnRzOgoKICBjb21taXQgODVlZTE3ZWJlZWRkMWFmMGRjY2Q5OGY4MmFiNGU2NDRlMjlk ODRjMAogIEF1dGhvcjogUHJhdmVlbiBQYW5lcmkgPHByYXZlZW4ucGFuZXJpQGludGVsLmNvbT4K ICBEYXRlOiAgIFR1ZSBOb3YgMTUgMjI6NDk6MjAgMjAxNiArMDUzMAoKICAgICAgZHJtL2k5MTUv Ynh0OiBCcm94dG9uIGRlY291cGxlZCBNTUlPCgpWMzoKLSBSZW1vdmUgSEFTX0RFQ09VUExFRF9N TUlPIG1hY3JvIGFuZCBoYXNfZGVjb3VwbGVkX21taW8gZmxhZywgYXMgdGhleSBhcmUgbm90CiAg bmVlZGVkLCBlaXRoZXIuCi0gVGhpcyBwYXRjaCB3aWxsIGJlIG9uIHRvcCB3aXRoIGRybS1pbnRl bC4KClY0OgotIEFkZCBzaWduZWQtb2ZmLWJ5LgoKU2lnbmVkLW9mZi1ieTogS2FpIENoZW4gPGth aS5jaGVuQGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICAg ICB8ICAgMyAtCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BjaS5jICAgICB8ICAgMSAtCiBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oICAgICB8ICAgNyAtLQogZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfdW5jb3JlLmMgfCAxMjYgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCiA0IGZpbGVzIGNoYW5nZWQsIDEzNyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9kcnYuaAppbmRleCBhNmYyMDQ3Li40MWZmMDMxIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2 LmgKQEAgLTcwMyw3ICs3MDMsNiBAQCBzdHJ1Y3QgaW50ZWxfY3NyIHsKIAlmdW5jKGhhc19hbGlh c2luZ19wcGd0dCk7IFwKIAlmdW5jKGhhc19jc3IpOyBcCiAJZnVuYyhoYXNfZGRpKTsgXAotCWZ1 bmMoaGFzX2RlY291cGxlZF9tbWlvKTsgXAogCWZ1bmMoaGFzX2RwX21zdCk7IFwKIAlmdW5jKGhh c19mYmMpOyBcCiAJZnVuYyhoYXNfZnBnYV9kYmcpOyBcCkBAIC0yOTQ0LDggKzI5NDMsNiBAQCBp bnRlbF9pbmZvKGNvbnN0IHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKICNkZWZp bmUgR1RfRlJFUVVFTkNZX01VTFRJUExJRVIgNTAKICNkZWZpbmUgR0VOOV9GUkVRX1NDQUxFUiAz CiAKLSNkZWZpbmUgSEFTX0RFQ09VUExFRF9NTUlPKGRldl9wcml2KSAoSU5URUxfSU5GTyhkZXZf cHJpdiktPmhhc19kZWNvdXBsZWRfbW1pbykKLQogI2luY2x1ZGUgImk5MTVfdHJhY2UuaCIKIAog c3RhdGljIGlubGluZSBib29sIGludGVsX3NjYW5vdXRfbmVlZHNfdnRkX3dhKHN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICpkZXZfcHJpdikKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfcGNpLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BjaS5jCmluZGV4IGY4MGRi MmMuLmNmNDNkYzEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcGNpLmMK KysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9wY2kuYwpAQCAtMzg1LDcgKzM4NSw2IEBA IHN0YXRpYyBjb25zdCBzdHJ1Y3QgaW50ZWxfZGV2aWNlX2luZm8gaW50ZWxfc2t5bGFrZV9ndDNf aW5mbyA9IHsKIAkuaGFzX2dtYnVzX2lycSA9IDEsIFwKIAkuaGFzX2xvZ2ljYWxfcmluZ19jb250 ZXh0cyA9IDEsIFwKIAkuaGFzX2d1YyA9IDEsIFwKLQkuaGFzX2RlY291cGxlZF9tbWlvID0gMSwg XAogCS5oYXNfYWxpYXNpbmdfcHBndHQgPSAxLCBcCiAJLmhhc19mdWxsX3BwZ3R0ID0gMSwgXAog CS5oYXNfZnVsbF80OGJpdF9wcGd0dCA9IDEsIFwKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfcmVnLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oCmluZGV4 IGVlMTQ0ZWMuLjc4ODcyZjkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf cmVnLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaApAQCAtNzc5MiwxMyAr Nzc5Miw2IEBAIGVudW0gewogI2RlZmluZSAgU0tMX0ZVU0VfUEcxX0RJU1RfU1RBVFVTICAgICAg ICAgICAgICAoMTw8MjYpCiAjZGVmaW5lICBTS0xfRlVTRV9QRzJfRElTVF9TVEFUVVMgICAgICAg ICAgICAgICgxPDwyNSkKIAotLyogRGVjb3VwbGVkIE1NSU8gcmVnaXN0ZXIgcGFpciBmb3Iga2Vy bmVsIGRyaXZlciAqLwotI2RlZmluZSBHRU45X0RFQ09VUExFRF9SRUcwX0RXMAkJCV9NTUlPKDB4 RjAwKQotI2RlZmluZSBHRU45X0RFQ09VUExFRF9SRUcwX0RXMQkJCV9NTUlPKDB4RjA0KQotI2Rl ZmluZSBHRU45X0RFQ09VUExFRF9EVzFfR08JCQkoMTw8MzEpCi0jZGVmaW5lIEdFTjlfREVDT1VQ TEVEX1BEX1NISUZUCQkJMjgKLSNkZWZpbmUgR0VOOV9ERUNPVVBMRURfT1BfU0hJRlQJCQkyNAot CiAvKiBQZXItcGlwZSBEREkgRnVuY3Rpb24gQ29udHJvbCAqLwogI2RlZmluZSBfVFJBTlNfRERJ X0ZVTkNfQ1RMX0EJCTB4NjA0MDAKICNkZWZpbmUgX1RSQU5TX0RESV9GVU5DX0NUTF9CCQkweDYx NDAwCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF91bmNvcmUuYyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3VuY29yZS5jCmluZGV4IGE5YTY5MzMuLjM5MDE4MDAg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3VuY29yZS5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3VuY29yZS5jCkBAIC00MDAsOCArNDAwLDYgQEAgY2hl Y2tfZm9yX3VuY2xhaW1lZF9tbWlvKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikK IHN0YXRpYyB2b2lkIF9faW50ZWxfdW5jb3JlX2Vhcmx5X3Nhbml0aXplKHN0cnVjdCBkcm1faTkx NV9wcml2YXRlICpkZXZfcHJpdiwKIAkJCQkJICBib29sIHJlc3RvcmVfZm9yY2V3YWtlKQogewot CXN0cnVjdCBpbnRlbF9kZXZpY2VfaW5mbyAqaW5mbyA9IG1rd3JpdGVfZGV2aWNlX2luZm8oZGV2 X3ByaXYpOwotCiAJLyogY2xlYXIgb3V0IHVuY2xhaW1lZCByZWcgZGV0ZWN0aW9uIGJpdCAqLwog CWlmIChjaGVja19mb3JfdW5jbGFpbWVkX21taW8oZGV2X3ByaXYpKQogCQlEUk1fREVCVUcoInVu Y2xhaW1lZCBtbWlvIGRldGVjdGVkIG9uIHVuY29yZSBpbml0LCBjbGVhcmluZ1xuIik7CkBAIC00 MTQsOSArNDEyLDYgQEAgc3RhdGljIHZvaWQgX19pbnRlbF91bmNvcmVfZWFybHlfc2FuaXRpemUo c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCQkJCSAgIEdUX0ZJRk9fQ1RMX1JD Nl9QT0xJQ1lfU1RBTEwpOwogCX0KIAotCWlmIChJU19CWFRfUkVWSUQoZGV2X3ByaXYsIDAsIEJY VF9SRVZJRF9CX0xBU1QpKQotCQlpbmZvLT5oYXNfZGVjb3VwbGVkX21taW8gPSBmYWxzZTsKLQog CWludGVsX3VuY29yZV9mb3JjZXdha2VfcmVzZXQoZGV2X3ByaXYsIHJlc3RvcmVfZm9yY2V3YWtl KTsKIH0KIApAQCAtODAxLDc4ICs3OTYsNiBAQCB1bmNsYWltZWRfcmVnX2RlYnVnKHN0cnVjdCBk cm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAlfX3VuY2xhaW1lZF9yZWdfZGVidWcoZGV2X3By aXYsIHJlZywgcmVhZCwgYmVmb3JlKTsKIH0KIAotZW51bSBkZWNvdXBsZWRfcG93ZXJfZG9tYWlu IHsKLQlHRU45X0RFQ09VUExFRF9QRF9CTElUVEVSID0gMCwKLQlHRU45X0RFQ09VUExFRF9QRF9S RU5ERVIsCi0JR0VOOV9ERUNPVVBMRURfUERfTUVESUEsCi0JR0VOOV9ERUNPVVBMRURfUERfQUxM Ci19OwotCi1lbnVtIGRlY291cGxlZF9vcHMgewotCUdFTjlfREVDT1VQTEVEX09QX1dSSVRFID0g MCwKLQlHRU45X0RFQ09VUExFRF9PUF9SRUFECi19OwotCi1zdGF0aWMgY29uc3QgZW51bSBkZWNv dXBsZWRfcG93ZXJfZG9tYWluIGZ3MmRwZF9kb21haW5bXSA9IHsKLQlHRU45X0RFQ09VUExFRF9Q RF9SRU5ERVIsCi0JR0VOOV9ERUNPVVBMRURfUERfQkxJVFRFUiwKLQlHRU45X0RFQ09VUExFRF9Q RF9BTEwsCi0JR0VOOV9ERUNPVVBMRURfUERfTUVESUEsCi0JR0VOOV9ERUNPVVBMRURfUERfQUxM LAotCUdFTjlfREVDT1VQTEVEX1BEX0FMTCwKLQlHRU45X0RFQ09VUExFRF9QRF9BTEwKLX07Ci0K LS8qCi0gKiBEZWNvdXBsZWQgTU1JTyBhY2Nlc3MgZm9yIG9ubHkgMSBEV09SRAotICovCi1zdGF0 aWMgdm9pZCBfX2dlbjlfZGVjb3VwbGVkX21taW9fYWNjZXNzKHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdiwKLQkJCQkJIHUzMiByZWcsCi0JCQkJCSBlbnVtIGZvcmNld2FrZV9kb21h aW5zIGZ3X2RvbWFpbiwKLQkJCQkJIGVudW0gZGVjb3VwbGVkX29wcyBvcGVyYXRpb24pCi17Ci0J ZW51bSBkZWNvdXBsZWRfcG93ZXJfZG9tYWluIGRwX2RvbWFpbjsKLQl1MzIgY3RybF9yZWdfZGF0 YSA9IDA7Ci0KLQlkcF9kb21haW4gPSBmdzJkcGRfZG9tYWluW2Z3X2RvbWFpbiAtIDFdOwotCi0J Y3RybF9yZWdfZGF0YSB8PSByZWc7Ci0JY3RybF9yZWdfZGF0YSB8PSAob3BlcmF0aW9uIDw8IEdF TjlfREVDT1VQTEVEX09QX1NISUZUKTsKLQljdHJsX3JlZ19kYXRhIHw9IChkcF9kb21haW4gPDwg R0VOOV9ERUNPVVBMRURfUERfU0hJRlQpOwotCWN0cmxfcmVnX2RhdGEgfD0gR0VOOV9ERUNPVVBM RURfRFcxX0dPOwotCV9fcmF3X2k5MTVfd3JpdGUzMihkZXZfcHJpdiwgR0VOOV9ERUNPVVBMRURf UkVHMF9EVzEsIGN0cmxfcmVnX2RhdGEpOwotCi0JaWYgKHdhaXRfZm9yX2F0b21pYygoX19yYXdf aTkxNV9yZWFkMzIoZGV2X3ByaXYsCi0JCQkgICAgR0VOOV9ERUNPVVBMRURfUkVHMF9EVzEpICYK LQkJCSAgICBHRU45X0RFQ09VUExFRF9EVzFfR08pID09IDAsCi0JCQkgICAgRk9SQ0VXQUtFX0FD S19USU1FT1VUX01TKSkKLQkJRFJNX0VSUk9SKCJEZWNvdXBsZWQgTU1JTyB3YWl0IHRpbWVkIG91 dFxuIik7Ci19Ci0KLXN0YXRpYyBpbmxpbmUgdTMyCi1fX2dlbjlfZGVjb3VwbGVkX21taW9fcmVh ZDMyKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKLQkJCSAgICAgdTMyIHJlZywK LQkJCSAgICAgZW51bSBmb3JjZXdha2VfZG9tYWlucyBmd19kb21haW4pCi17Ci0JX19nZW45X2Rl Y291cGxlZF9tbWlvX2FjY2VzcyhkZXZfcHJpdiwgcmVnLCBmd19kb21haW4sCi0JCQkJICAgICBH RU45X0RFQ09VUExFRF9PUF9SRUFEKTsKLQotCXJldHVybiBfX3Jhd19pOTE1X3JlYWQzMihkZXZf cHJpdiwgR0VOOV9ERUNPVVBMRURfUkVHMF9EVzApOwotfQotCi1zdGF0aWMgaW5saW5lIHZvaWQK LV9fZ2VuOV9kZWNvdXBsZWRfbW1pb193cml0ZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYsCi0JCQkgICAgdTMyIHJlZywgdTMyIGRhdGEsCi0JCQkgICAgZW51bSBmb3JjZXdha2Vf ZG9tYWlucyBmd19kb21haW4pCi17Ci0KLQlfX3Jhd19pOTE1X3dyaXRlMzIoZGV2X3ByaXYsIEdF TjlfREVDT1VQTEVEX1JFRzBfRFcwLCBkYXRhKTsKLQotCV9fZ2VuOV9kZWNvdXBsZWRfbW1pb19h Y2Nlc3MoZGV2X3ByaXYsIHJlZywgZndfZG9tYWluLAotCQkJCSAgICAgR0VOOV9ERUNPVVBMRURf T1BfV1JJVEUpOwotfQotCi0KICNkZWZpbmUgR0VOMl9SRUFEX0hFQURFUih4KSBcCiAJdSMjeCB2 YWwgPSAwOyBcCiAJYXNzZXJ0X3JwbV93YWtlbG9ja19oZWxkKGRldl9wcml2KTsKQEAgLTk2OSwy OCArODkyLDYgQEAgZnVuYyMjX3JlYWQjI3goc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2LCBpOTE1X3JlZ190IHJlZywgYm9vbCB0cmFjZSkgewogI2RlZmluZSBfX2dlbjZfcmVhZCh4 KSBfX2dlbl9yZWFkKGdlbjYsIHgpCiAjZGVmaW5lIF9fZnd0YWJsZV9yZWFkKHgpIF9fZ2VuX3Jl YWQoZnd0YWJsZSwgeCkKIAotI2RlZmluZSBfX2dlbjlfZGVjb3VwbGVkX3JlYWQoeCkgXAotc3Rh dGljIHUjI3ggXAotZ2VuOV9kZWNvdXBsZWRfcmVhZCMjeChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYsIFwKLQkJICAgICAgIGk5MTVfcmVnX3QgcmVnLCBib29sIHRyYWNlKSB7IFwK LQllbnVtIGZvcmNld2FrZV9kb21haW5zIGZ3X2VuZ2luZTsgXAotCUdFTjZfUkVBRF9IRUFERVIo eCk7IFwKLQlmd19lbmdpbmUgPSBfX2Z3dGFibGVfcmVnX3JlYWRfZndfZG9tYWlucyhvZmZzZXQp OyBcCi0JaWYgKGZ3X2VuZ2luZSAmIH5kZXZfcHJpdi0+dW5jb3JlLmZ3X2RvbWFpbnNfYWN0aXZl KSB7IFwKLQkJdW5zaWduZWQgaTsgXAotCQl1MzIgKnB0cl9kYXRhID0gKHUzMiAqKSAmdmFsOyBc Ci0JCWZvciAoaSA9IDA7IGkgPCB4LzMyOyBpKyssIG9mZnNldCArPSBzaXplb2YodTMyKSwgcHRy X2RhdGErKykgXAotCQkJKnB0cl9kYXRhID0gX19nZW45X2RlY291cGxlZF9tbWlvX3JlYWQzMihk ZXZfcHJpdiwgXAotCQkJCQkJCQkgb2Zmc2V0LCBcCi0JCQkJCQkJCSBmd19lbmdpbmUpOyBcCi0J fSBlbHNlIHsgXAotCQl2YWwgPSBfX3Jhd19pOTE1X3JlYWQjI3goZGV2X3ByaXYsIHJlZyk7IFwK LQl9IFwKLQlHRU42X1JFQURfRk9PVEVSOyBcCi19Ci0KLV9fZ2VuOV9kZWNvdXBsZWRfcmVhZCgz MikKLV9fZ2VuOV9kZWNvdXBsZWRfcmVhZCg2NCkKIF9fZnd0YWJsZV9yZWFkKDgpCiBfX2Z3dGFi bGVfcmVhZCgxNikKIF9fZnd0YWJsZV9yZWFkKDMyKQpAQCAtMTA3NywyNSArOTc4LDYgQEAgZnVu YyMjX3dyaXRlIyN4KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgaTkxNV9yZWdf dCByZWcsIHUjI3ggdmFsLCBib28KICNkZWZpbmUgX19nZW44X3dyaXRlKHgpIF9fZ2VuX3dyaXRl KGdlbjgsIHgpCiAjZGVmaW5lIF9fZnd0YWJsZV93cml0ZSh4KSBfX2dlbl93cml0ZShmd3RhYmxl LCB4KQogCi0jZGVmaW5lIF9fZ2VuOV9kZWNvdXBsZWRfd3JpdGUoeCkgXAotc3RhdGljIHZvaWQg XAotZ2VuOV9kZWNvdXBsZWRfd3JpdGUjI3goc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2LCBcCi0JCQlpOTE1X3JlZ190IHJlZywgdSMjeCB2YWwsIFwKLQkJYm9vbCB0cmFjZSkgeyBc Ci0JZW51bSBmb3JjZXdha2VfZG9tYWlucyBmd19lbmdpbmU7IFwKLQlHRU42X1dSSVRFX0hFQURF UjsgXAotCWZ3X2VuZ2luZSA9IF9fZnd0YWJsZV9yZWdfd3JpdGVfZndfZG9tYWlucyhvZmZzZXQp OyBcCi0JaWYgKGZ3X2VuZ2luZSAmIH5kZXZfcHJpdi0+dW5jb3JlLmZ3X2RvbWFpbnNfYWN0aXZl KSBcCi0JCV9fZ2VuOV9kZWNvdXBsZWRfbW1pb193cml0ZShkZXZfcHJpdiwgXAotCQkJCQkgICAg b2Zmc2V0LCBcCi0JCQkJCSAgICB2YWwsIFwKLQkJCQkJICAgIGZ3X2VuZ2luZSk7IFwKLQllbHNl IFwKLQkJX19yYXdfaTkxNV93cml0ZSMjeChkZXZfcHJpdiwgcmVnLCB2YWwpOyBcCi0JR0VONl9X UklURV9GT09URVI7IFwKLX0KLQotX19nZW45X2RlY291cGxlZF93cml0ZSgzMikKIF9fZnd0YWJs ZV93cml0ZSg4KQogX19md3RhYmxlX3dyaXRlKDE2KQogX19md3RhYmxlX3dyaXRlKDMyKQpAQCAt MTMzMiwxNCArMTIxNCw2IEBAIHZvaWQgaW50ZWxfdW5jb3JlX2luaXQoc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2KQogCQlBU1NJR05fRldfRE9NQUlOU19UQUJMRShfX2dlbjlfZndf cmFuZ2VzKTsKIAkJQVNTSUdOX1dSSVRFX01NSU9fVkZVTkNTKGRldl9wcml2LCBmd3RhYmxlKTsK IAkJQVNTSUdOX1JFQURfTU1JT19WRlVOQ1MoZGV2X3ByaXYsIGZ3dGFibGUpOwotCQlpZiAoSEFT X0RFQ09VUExFRF9NTUlPKGRldl9wcml2KSkgewotCQkJZGV2X3ByaXYtPnVuY29yZS5mdW5jcy5t bWlvX3JlYWRsID0KLQkJCQkJCWdlbjlfZGVjb3VwbGVkX3JlYWQzMjsKLQkJCWRldl9wcml2LT51 bmNvcmUuZnVuY3MubW1pb19yZWFkcSA9Ci0JCQkJCQlnZW45X2RlY291cGxlZF9yZWFkNjQ7Ci0J CQlkZXZfcHJpdi0+dW5jb3JlLmZ1bmNzLm1taW9fd3JpdGVsID0KLQkJCQkJCWdlbjlfZGVjb3Vw bGVkX3dyaXRlMzI7Ci0JCX0KIAl9CiAKIAlpb3NmX21iaV9yZWdpc3Rlcl9wbWljX2J1c19hY2Nl c3Nfbm90aWZpZXIoCi0tIAoyLjkuMwoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJl ZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGlu Zm8vaW50ZWwtZ2Z4Cg==