From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: [PATCH v2 6/6] drm/i915: Rip out legacy watermark infrastructure Date: Wed, 13 Sep 2017 10:40:24 +0200 Message-ID: <20170913084024.25501-7-maarten.lankhorst@linux.intel.com> References: <20170913084024.25501-1-maarten.lankhorst@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mblankhorst.nl (mblankhorst.nl [141.105.120.124]) by gabe.freedesktop.org (Postfix) with ESMTPS id 08CC86E7AF for ; Wed, 13 Sep 2017 08:40:32 +0000 (UTC) In-Reply-To: <20170913084024.25501-1-maarten.lankhorst@linux.intel.com> 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 VGhlIGxlZ2FjeSB3YXRlcm1hcmsgaW5mcmFzdHJ1Y3R1cmUgaXMgbm93IHVudXNlZCwgc28gcmVt b3ZlIGl0LgoKU2lnbmVkLW9mZi1ieTogTWFhcnRlbiBMYW5raG9yc3QgPG1hYXJ0ZW4ubGFua2hv cnN0QGxpbnV4LmludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5o ICAgICAgfCAgMSAtCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9hdG9taWMuYyAgfCAgMiAt CiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgfCA3MSArKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5o ICAgICB8ICAyIC0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMgICAgICB8IDQyIC0t LS0tLS0tLS0tLS0tLS0tLS0tLQogNSBmaWxlcyBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDEx NSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Ry di5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAppbmRleCBlNjdjNDZiNmViOTgu LjU1NGFmOTdhYmI3MyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYu aAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCkBAIC03MTEsNyArNzExLDYg QEAgc3RydWN0IGRybV9pOTE1X2Rpc3BsYXlfZnVuY3MgewogCXZvaWQgKCpvcHRpbWl6ZV93YXRl cm1hcmtzKShzdHJ1Y3QgaW50ZWxfYXRvbWljX3N0YXRlICpzdGF0ZSwKIAkJCQkgICAgc3RydWN0 IGludGVsX2NydGNfc3RhdGUgKmNzdGF0ZSk7CiAJaW50ICgqY29tcHV0ZV9nbG9iYWxfd2F0ZXJt YXJrcykoc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKTsKLQl2b2lkICgqdXBkYXRlX3dt KShzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0Yyk7CiAJaW50ICgqbW9kZXNldF9jYWxjX2NkY2xrKShz dHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpOwogCS8qIFJldHVybnMgdGhlIGFjdGl2ZSBz dGF0ZSBvZiB0aGUgY3J0YywgYW5kIGlmIHRoZSBjcnRjIGlzIGFjdGl2ZSwKIAkgKiBmaWxscyBv dXQgdGhlIHBpcGUtY29uZmlnIHdpdGggdGhlIGh3IHN0YXRlLiAqLwpkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYXRvbWljLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9hdG9taWMuYwppbmRleCAzNmQ0ZTYzNWU0Y2UuLmUyYjRjYTUxOGEwNCAxMDA2NDQKLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfYXRvbWljLmMKKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfYXRvbWljLmMKQEAgLTE3Myw4ICsxNzMsNiBAQCBpbnRlbF9jcnRjX2R1 cGxpY2F0ZV9zdGF0ZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCiAJY3J0Y19zdGF0ZS0+dXBkYXRl X3BpcGUgPSBmYWxzZTsKIAljcnRjX3N0YXRlLT5kaXNhYmxlX2xwX3dtID0gZmFsc2U7CiAJY3J0 Y19zdGF0ZS0+ZGlzYWJsZV9jeHNyID0gZmFsc2U7Ci0JY3J0Y19zdGF0ZS0+dXBkYXRlX3dtX3By ZSA9IGZhbHNlOwotCWNydGNfc3RhdGUtPnVwZGF0ZV93bV9wb3N0ID0gZmFsc2U7CiAJY3J0Y19z dGF0ZS0+ZmJfY2hhbmdlZCA9IGZhbHNlOwogCWNydGNfc3RhdGUtPmZpZm9fY2hhbmdlZCA9IGZh bHNlOwogCWNydGNfc3RhdGUtPndtLm5lZWRfcG9zdHZibF91cGRhdGUgPSBmYWxzZTsKZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwppbmRleCA2ZDA1MWUzNzIzMjcuLjlmMmNkZGY5ZjI3 OSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwpAQCAtNTEwNyw4ICs1MTA3LDYg QEAgc3RhdGljIHZvaWQgaW50ZWxfcG9zdF9wbGFuZV91cGRhdGUoc3RydWN0IGludGVsX2NydGNf c3RhdGUgKm9sZF9jcnRjX3N0YXRlKQogCiAJaW50ZWxfZnJvbnRidWZmZXJfZmxpcCh0b19pOTE1 KGNydGMtPmJhc2UuZGV2KSwgcGlwZV9jb25maWctPmZiX2JpdHMpOwogCi0JaWYgKHBpcGVfY29u ZmlnLT51cGRhdGVfd21fcG9zdCAmJiBwaXBlX2NvbmZpZy0+YmFzZS5hY3RpdmUpCi0JCWludGVs X3VwZGF0ZV93YXRlcm1hcmtzKGNydGMpOwogCiAJaWYgKG9sZF9wcmlfc3RhdGUpIHsKIAkJc3Ry dWN0IGludGVsX3BsYW5lX3N0YXRlICpwcmltYXJ5X3N0YXRlID0KQEAgLTUyMDEsOCArNTE5OSw2 IEBAIHN0YXRpYyB2b2lkIGludGVsX3ByZV9wbGFuZV91cGRhdGUoc3RydWN0IGludGVsX2NydGNf c3RhdGUgKm9sZF9jcnRjX3N0YXRlLAogCWlmIChkZXZfcHJpdi0+ZGlzcGxheS5pbml0aWFsX3dh dGVybWFya3MgIT0gTlVMTCkKIAkJZGV2X3ByaXYtPmRpc3BsYXkuaW5pdGlhbF93YXRlcm1hcmtz KG9sZF9pbnRlbF9zdGF0ZSwKIAkJCQkJCSAgICAgcGlwZV9jb25maWcpOwotCWVsc2UgaWYgKHBp cGVfY29uZmlnLT51cGRhdGVfd21fcHJlKQotCQlpbnRlbF91cGRhdGVfd2F0ZXJtYXJrcyhjcnRj KTsKIH0KIAogc3RhdGljIHZvaWQgaW50ZWxfY3J0Y19kaXNhYmxlX3BsYW5lcyhzdHJ1Y3QgZHJt X2NydGMgKmNydGMsIHVuc2lnbmVkIHBsYW5lX21hc2spCkBAIC01ODg0LDggKzU4ODAsNiBAQCBz dGF0aWMgdm9pZCBpOXh4X2NydGNfZW5hYmxlKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpwaXBl X2NvbmZpZywKIAlpZiAoZGV2X3ByaXYtPmRpc3BsYXkuaW5pdGlhbF93YXRlcm1hcmtzICE9IE5V TEwpCiAJCWRldl9wcml2LT5kaXNwbGF5LmluaXRpYWxfd2F0ZXJtYXJrcyhvbGRfaW50ZWxfc3Rh dGUsCiAJCQkJCQkgICAgIGludGVsX2NydGMtPmNvbmZpZyk7Ci0JZWxzZQotCQlpbnRlbF91cGRh dGVfd2F0ZXJtYXJrcyhpbnRlbF9jcnRjKTsKIAlpbnRlbF9lbmFibGVfcGlwZShpbnRlbF9jcnRj KTsKIAogCWFzc2VydF92YmxhbmtfZGlzYWJsZWQoY3J0Yyk7CkBAIC01OTUwLDkgKzU5NDQsNiBA QCBzdGF0aWMgdm9pZCBpOXh4X2NydGNfZGlzYWJsZShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAq b2xkX2NydGNfc3RhdGUsCiAJaWYgKCFJU19HRU4yKGRldl9wcml2KSkKIAkJaW50ZWxfc2V0X2Nw dV9maWZvX3VuZGVycnVuX3JlcG9ydGluZyhkZXZfcHJpdiwgcGlwZSwgZmFsc2UpOwogCi0JaWYg KCFkZXZfcHJpdi0+ZGlzcGxheS5pbml0aWFsX3dhdGVybWFya3MpCi0JCWludGVsX3VwZGF0ZV93 YXRlcm1hcmtzKGludGVsX2NydGMpOwotCiAJLyogY2xvY2sgdGhlIHBpcGUgZG93biB0byA2NDB4 NDgwQDYwIHRvIHBvdGVudGlhbGx5IHNhdmUgcG93ZXIgKi8KIAlpZiAoSVNfSTgzMChkZXZfcHJp dikpCiAJCWk4MzBfZW5hYmxlX3BpcGUoZGV2X3ByaXYsIHBpcGUpOwpAQCAtNjAxMyw3ICs2MDA0 LDYgQEAgc3RhdGljIHZvaWQgaW50ZWxfY3J0Y19kaXNhYmxlX25vYXRvbWljKHN0cnVjdCBkcm1f Y3J0YyAqY3J0YywKIAkJZW5jb2Rlci0+YmFzZS5jcnRjID0gTlVMTDsKIAogCWludGVsX2ZiY19k aXNhYmxlKGludGVsX2NydGMpOwotCWludGVsX3VwZGF0ZV93YXRlcm1hcmtzKGludGVsX2NydGMp OwogCWludGVsX2Rpc2FibGVfc2hhcmVkX2RwbGwoaW50ZWxfY3J0Yyk7CiAKIAlkb21haW5zID0g aW50ZWxfY3J0Yy0+ZW5hYmxlZF9wb3dlcl9kb21haW5zOwpAQCAtMTAyOTAsNDAgKzEwMjgwLDYg QEAgc3RhdGljIHZvaWQgaW50ZWxfY3J0Y19kZXN0cm95KHN0cnVjdCBkcm1fY3J0YyAqY3J0YykK IAlrZnJlZShpbnRlbF9jcnRjKTsKIH0KIAotLyoqCi0gKiBpbnRlbF93bV9uZWVkX3VwZGF0ZSAt IENoZWNrIHdoZXRoZXIgd2F0ZXJtYXJrcyBuZWVkIHVwZGF0aW5nCi0gKiBAcGxhbmU6IGRybSBw bGFuZQotICogQHN0YXRlOiBuZXcgcGxhbmUgc3RhdGUKLSAqCi0gKiBDaGVjayBjdXJyZW50IHBs YW5lIHN0YXRlIHZlcnN1cyB0aGUgbmV3IG9uZSB0byBkZXRlcm1pbmUgd2hldGhlcgotICogd2F0 ZXJtYXJrcyBuZWVkIHRvIGJlIHJlY2FsY3VsYXRlZC4KLSAqCi0gKiBSZXR1cm5zIHRydWUgb3Ig ZmFsc2UuCi0gKi8KLXN0YXRpYyBib29sIGludGVsX3dtX25lZWRfdXBkYXRlKHN0cnVjdCBkcm1f cGxhbmUgKnBsYW5lLAotCQkJCSBzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpzdGF0ZSkKLXsKLQlz dHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKm5ldyA9IHRvX2ludGVsX3BsYW5lX3N0YXRlKHN0YXRl KTsKLQlzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKmN1ciA9IHRvX2ludGVsX3BsYW5lX3N0YXRl KHBsYW5lLT5zdGF0ZSk7Ci0KLQkvKiBVcGRhdGUgd2F0ZXJtYXJrcyBvbiB0aWxpbmcgb3Igc2l6 ZSBjaGFuZ2VzLiAqLwotCWlmIChuZXctPmJhc2UudmlzaWJsZSAhPSBjdXItPmJhc2UudmlzaWJs ZSkKLQkJcmV0dXJuIHRydWU7Ci0KLQlpZiAoIWN1ci0+YmFzZS5mYiB8fCAhbmV3LT5iYXNlLmZi KQotCQlyZXR1cm4gZmFsc2U7Ci0KLQlpZiAoY3VyLT5iYXNlLmZiLT5tb2RpZmllciAhPSBuZXct PmJhc2UuZmItPm1vZGlmaWVyIHx8Ci0JICAgIGN1ci0+YmFzZS5yb3RhdGlvbiAhPSBuZXctPmJh c2Uucm90YXRpb24gfHwKLQkgICAgZHJtX3JlY3Rfd2lkdGgoJm5ldy0+YmFzZS5zcmMpICE9IGRy bV9yZWN0X3dpZHRoKCZjdXItPmJhc2Uuc3JjKSB8fAotCSAgICBkcm1fcmVjdF9oZWlnaHQoJm5l dy0+YmFzZS5zcmMpICE9IGRybV9yZWN0X2hlaWdodCgmY3VyLT5iYXNlLnNyYykgfHwKLQkgICAg ZHJtX3JlY3Rfd2lkdGgoJm5ldy0+YmFzZS5kc3QpICE9IGRybV9yZWN0X3dpZHRoKCZjdXItPmJh c2UuZHN0KSB8fAotCSAgICBkcm1fcmVjdF9oZWlnaHQoJm5ldy0+YmFzZS5kc3QpICE9IGRybV9y ZWN0X2hlaWdodCgmY3VyLT5iYXNlLmRzdCkpCi0JCXJldHVybiB0cnVlOwotCi0JcmV0dXJuIGZh bHNlOwotfQotCiBzdGF0aWMgYm9vbCBuZWVkc19zY2FsaW5nKGNvbnN0IHN0cnVjdCBpbnRlbF9w bGFuZV9zdGF0ZSAqc3RhdGUpCiB7CiAJaW50IHNyY193ID0gZHJtX3JlY3Rfd2lkdGgoJnN0YXRl LT5iYXNlLnNyYykgPj4gMTY7CkBAIC0xMDQwMCwyNyArMTAzNTYsOSBAQCBpbnQgaW50ZWxfcGxh bmVfYXRvbWljX2NhbGNfY2hhbmdlcyhjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqb2xk X2NydGNfc3RhdAogCQkJIHdhc192aXNpYmxlLCB2aXNpYmxlLAogCQkJIHR1cm5fb2ZmLCB0dXJu X29uLCBtb2RlX2NoYW5nZWQpOwogCi0JaWYgKHR1cm5fb24pIHsKLQkJaWYgKElOVEVMX0dFTihk ZXZfcHJpdikgPCA1ICYmICFJU19HNFgoZGV2X3ByaXYpKQotCQkJcGlwZV9jb25maWctPnVwZGF0 ZV93bV9wcmUgPSB0cnVlOwotCi0JCS8qIG11c3QgZGlzYWJsZSBjeHNyIGFyb3VuZCBwbGFuZSBl bmFibGUvZGlzYWJsZSAqLwotCQlpZiAocGxhbmUtPmlkICE9IFBMQU5FX0NVUlNPUikKLQkJCXBp cGVfY29uZmlnLT5kaXNhYmxlX2N4c3IgPSB0cnVlOwotCX0gZWxzZSBpZiAodHVybl9vZmYpIHsK LQkJaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPCA1ICYmICFJU19HNFgoZGV2X3ByaXYpKQotCQkJ cGlwZV9jb25maWctPnVwZGF0ZV93bV9wb3N0ID0gdHJ1ZTsKLQotCQkvKiBtdXN0IGRpc2FibGUg Y3hzciBhcm91bmQgcGxhbmUgZW5hYmxlL2Rpc2FibGUgKi8KLQkJaWYgKHBsYW5lLT5pZCAhPSBQ TEFORV9DVVJTT1IpCi0JCQlwaXBlX2NvbmZpZy0+ZGlzYWJsZV9jeHNyID0gdHJ1ZTsKLQl9IGVs c2UgaWYgKGludGVsX3dtX25lZWRfdXBkYXRlKCZwbGFuZS0+YmFzZSwgcGxhbmVfc3RhdGUpKSB7 Ci0JCWlmIChJTlRFTF9HRU4oZGV2X3ByaXYpIDwgNSAmJiAhSVNfRzRYKGRldl9wcml2KSkgewot CQkJLyogRklYTUUgYm9sbG9ja3MgKi8KLQkJCXBpcGVfY29uZmlnLT51cGRhdGVfd21fcHJlID0g dHJ1ZTsKLQkJCXBpcGVfY29uZmlnLT51cGRhdGVfd21fcG9zdCA9IHRydWU7Ci0JCX0KLQl9CisJ LyogbXVzdCBkaXNhYmxlIGN4c3IgYXJvdW5kIHBsYW5lIGVuYWJsZS9kaXNhYmxlICovCisJaWYg KCh0dXJuX29uIHx8IHR1cm5fb2ZmKSAmJiBwbGFuZS0+aWQgIT0gUExBTkVfQ1VSU09SKQorCQlw aXBlX2NvbmZpZy0+ZGlzYWJsZV9jeHNyID0gdHJ1ZTsKIAogCWlmICh2aXNpYmxlIHx8IHdhc192 aXNpYmxlKQogCQlwaXBlX2NvbmZpZy0+ZmJfYml0cyB8PSBwbGFuZS0+ZnJvbnRidWZmZXJfYml0 OwpAQCAtMTA0ODEsOSArMTA0MTksNiBAQCBzdGF0aWMgaW50IGludGVsX2NydGNfYXRvbWljX2No ZWNrKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAlpbnQgcmV0OwogCWJvb2wgbW9kZV9jaGFuZ2Vk ID0gbmVlZHNfbW9kZXNldChjcnRjX3N0YXRlKTsKIAotCWlmIChtb2RlX2NoYW5nZWQgJiYgIWNy dGNfc3RhdGUtPmFjdGl2ZSkKLQkJcGlwZV9jb25maWctPnVwZGF0ZV93bV9wb3N0ID0gdHJ1ZTsK LQogCWlmIChtb2RlX2NoYW5nZWQgJiYgY3J0Y19zdGF0ZS0+ZW5hYmxlICYmCiAJICAgIGRldl9w cml2LT5kaXNwbGF5LmNydGNfY29tcHV0ZV9jbG9jayAmJgogCSAgICAhV0FSTl9PTihwaXBlX2Nv bmZpZy0+c2hhcmVkX2RwbGwpKSB7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCmluZGV4IDQ0ZjUy NDg0OWI0MS4uOGQzMmEyNGM2YzIyIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaApAQCAtNjM1 LDcgKzYzNSw2IEBAIHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlIHsKIAl1bnNpZ25lZCBmYl9iaXRz OyAvKiBmcmFtZWJ1ZmZlcnMgdG8gZmxpcCAqLwogCWJvb2wgdXBkYXRlX3BpcGU7IC8qIGNhbiBh IGZhc3QgbW9kZXNldCBiZSBwZXJmb3JtZWQ/ICovCiAJYm9vbCBkaXNhYmxlX2N4c3I7Ci0JYm9v bCB1cGRhdGVfd21fcHJlLCB1cGRhdGVfd21fcG9zdDsgLyogd2F0ZXJtYXJrcyBhcmUgdXBkYXRl ZCAqLwogCWJvb2wgZmJfY2hhbmdlZDsgLyogZmIgb24gYW55IG9mIHRoZSBwbGFuZXMgaXMgY2hh bmdlZCAqLwogCWJvb2wgZmlmb19jaGFuZ2VkOyAvKiBGSUZPIHNwbGl0IGlzIGNoYW5nZWQgKi8K IApAQCAtMTg3Miw3ICsxODcxLDYgQEAgYm9vbCBjaHZfcGh5X3Bvd2VyZ2F0ZV9jaChzdHJ1Y3Qg ZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIGVudW0gZHBpb19waHkgcGh5LAogdm9pZCBpbnRl bF9pbml0X2Nsb2NrX2dhdGluZyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwog dm9pZCBpbnRlbF9zdXNwZW5kX2h3KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdik7 CiBpbnQgaWxrX3dtX21heF9sZXZlbChjb25zdCBzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYpOwotdm9pZCBpbnRlbF91cGRhdGVfd2F0ZXJtYXJrcyhzdHJ1Y3QgaW50ZWxfY3J0YyAq Y3J0Yyk7CiB2b2lkIGludGVsX2luaXRfcG0oc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2KTsKIHZvaWQgaW50ZWxfaW5pdF9jbG9ja19nYXRpbmdfaG9va3Moc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2KTsKIHZvaWQgaW50ZWxfcG1fc2V0dXAoc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2KTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX3BtLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jCmluZGV4IDY3YzhlOGZj YmU3Ni4uYWY2OTI4MGJjNWQxIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9wbS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMKQEAgLTUzMTIsOCAr NTMxMiw2IEBAIHNrbF9jb21wdXRlX3dtKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkK IAkJaWYgKChyZXN1bHRzLT5kaXJ0eV9waXBlcyAmIGRybV9jcnRjX21hc2soY3J0YykpID09IDAp CiAJCQkvKiBUaGlzIHBpcGUncyBXTSdzIGRpZCBub3QgY2hhbmdlICovCiAJCQljb250aW51ZTsK LQotCQlpbnRlbF9jc3RhdGUtPnVwZGF0ZV93bV9wcmUgPSB0cnVlOwogCX0KIAogCXNrbF9wcmlu dF93bV9jaGFuZ2VzKHN0YXRlKTsKQEAgLTU5OTksNDYgKzU5OTcsNiBAQCB2b2lkIGlsa193bV9n ZXRfaHdfc3RhdGUoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAkJIShJOTE1X1JFQUQoRElTUF9B UkJfQ1RMKSAmIERJU1BfRkJDX1dNX0RJUyk7CiB9CiAKLS8qKgotICogaW50ZWxfdXBkYXRlX3dh dGVybWFya3MgLSB1cGRhdGUgRklGTyB3YXRlcm1hcmsgdmFsdWVzIGJhc2VkIG9uIGN1cnJlbnQg bW9kZXMKLSAqCi0gKiBDYWxjdWxhdGUgd2F0ZXJtYXJrIHZhbHVlcyBmb3IgdGhlIHZhcmlvdXMg V00gcmVncyBiYXNlZCBvbiBjdXJyZW50IG1vZGUKLSAqIGFuZCBwbGFuZSBjb25maWd1cmF0aW9u LgotICoKLSAqIFRoZXJlIGFyZSBzZXZlcmFsIGNhc2VzIHRvIGRlYWwgd2l0aCBoZXJlOgotICog ICAtIG5vcm1hbCAoaS5lLiBub24tc2VsZi1yZWZyZXNoKQotICogICAtIHNlbGYtcmVmcmVzaCAo U1IpIG1vZGUKLSAqICAgLSBsaW5lcyBhcmUgbGFyZ2UgcmVsYXRpdmUgdG8gRklGTyBzaXplIChi dWZmZXIgY2FuIGhvbGQgdXAgdG8gMikKLSAqICAgLSBsaW5lcyBhcmUgc21hbGwgcmVsYXRpdmUg dG8gRklGTyBzaXplIChidWZmZXIgY2FuIGhvbGQgbW9yZSB0aGFuIDIKLSAqICAgICBsaW5lcyks IHNvIG5lZWQgdG8gYWNjb3VudCBmb3IgVExCIGxhdGVuY3kKLSAqCi0gKiAgIFRoZSBub3JtYWwg Y2FsY3VsYXRpb24gaXM6Ci0gKiAgICAgd2F0ZXJtYXJrID0gZG90Y2xvY2sgKiBieXRlcyBwZXIg cGl4ZWwgKiBsYXRlbmN5Ci0gKiAgIHdoZXJlIGxhdGVuY3kgaXMgcGxhdGZvcm0gJiBjb25maWd1 cmF0aW9uIGRlcGVuZGVudCAod2UgYXNzdW1lIHBlc3NpbWFsCi0gKiAgIHZhbHVlcyBoZXJlKS4K LSAqCi0gKiAgIFRoZSBTUiBjYWxjdWxhdGlvbiBpczoKLSAqICAgICB3YXRlcm1hcmsgPSAodHJ1 bmMobGF0ZW5jeS9saW5lIHRpbWUpKzEpICogc3VyZmFjZSB3aWR0aCAqCi0gKiAgICAgICBieXRl cyBwZXIgcGl4ZWwKLSAqICAgd2hlcmUKLSAqICAgICBsaW5lIHRpbWUgPSBodG90YWwgLyBkb3Rj bG9jawotICogICAgIHN1cmZhY2Ugd2lkdGggPSBoZGlzcGxheSBmb3Igbm9ybWFsIHBsYW5lIGFu ZCA2NCBmb3IgY3Vyc29yCi0gKiAgIGFuZCBsYXRlbmN5IGlzIGFzc3VtZWQgdG8gYmUgaGlnaCwg YXMgYWJvdmUuCi0gKgotICogVGhlIGZpbmFsIHZhbHVlIHByb2dyYW1tZWQgdG8gdGhlIHJlZ2lz dGVyIHNob3VsZCBhbHdheXMgYmUgcm91bmRlZCB1cCwKLSAqIGFuZCBpbmNsdWRlIGFuIGV4dHJh IDIgZW50cmllcyB0byBhY2NvdW50IGZvciBjbG9jayBjcm9zc2luZ3MuCi0gKgotICogV2UgZG9u J3QgdXNlIHRoZSBzcHJpdGUsIHNvIHdlIGNhbiBpZ25vcmUgdGhhdC4gIEFuZCBvbiBDcmVzdGxp bmUgd2UgaGF2ZQotICogdG8gc2V0IHRoZSBub24tU1Igd2F0ZXJtYXJrcyB0byA4LgotICovCi12 b2lkIGludGVsX3VwZGF0ZV93YXRlcm1hcmtzKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjKQotewot CXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoY3J0Yy0+YmFzZS5k ZXYpOwotCi0JaWYgKGRldl9wcml2LT5kaXNwbGF5LnVwZGF0ZV93bSkKLQkJZGV2X3ByaXYtPmRp c3BsYXkudXBkYXRlX3dtKGNydGMpOwotfQotCiB2b2lkIGludGVsX2VuYWJsZV9pcGMoc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogewogCXUzMiB2YWw7Ci0tIAoyLjE0LjEKCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBt YWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=