From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: [PATCH 7/7] drm/i915: Rip out legacy watermark infrastructure Date: Mon, 7 Aug 2017 12:48:28 +0200 Message-ID: <20170807104828.21046-8-maarten.lankhorst@linux.intel.com> References: <20170807104828.21046-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 [IPv6:2a02:2308::216:3eff:fe92:dfa3]) by gabe.freedesktop.org (Postfix) with ESMTPS id BE1E08979F for ; Mon, 7 Aug 2017 10:48:42 +0000 (UTC) In-Reply-To: <20170807104828.21046-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 CiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgfCA3NCArKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5o ICAgICB8ICAyIC0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMgICAgICB8IDQyIC0t LS0tLS0tLS0tLS0tLS0tLS0tCiA1IGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMTE4 IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2 LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCmluZGV4IDNhYzE3ZjBmNDA1My4u MDI5NTg3Y2NkODAzIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5o CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKQEAgLTY5Miw3ICs2OTIsNiBA QCBzdHJ1Y3QgZHJtX2k5MTVfZGlzcGxheV9mdW5jcyB7CiAJdm9pZCAoKm9wdGltaXplX3dhdGVy bWFya3MpKHN0cnVjdCBpbnRlbF9hdG9taWNfc3RhdGUgKnN0YXRlLAogCQkJCSAgICBzdHJ1Y3Qg aW50ZWxfY3J0Y19zdGF0ZSAqY3N0YXRlKTsKIAlpbnQgKCpjb21wdXRlX2dsb2JhbF93YXRlcm1h cmtzKShzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpOwotCXZvaWQgKCp1cGRhdGVfd20p KHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjKTsKIAlpbnQgKCptb2Rlc2V0X2NhbGNfY2RjbGspKHN0 cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSk7CiAJLyogUmV0dXJucyB0aGUgYWN0aXZlIHN0 YXRlIG9mIHRoZSBjcnRjLCBhbmQgaWYgdGhlIGNydGMgaXMgYWN0aXZlLAogCSAqIGZpbGxzIG91 dCB0aGUgcGlwZS1jb25maWcgd2l0aCB0aGUgaHcgc3RhdGUuICovCmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9hdG9taWMuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2F0b21pYy5jCmluZGV4IDM2ZDRlNjM1ZTRjZS4uZTJiNGNhNTE4YTA0IDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9hdG9taWMuYworKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9hdG9taWMuYwpAQCAtMTczLDggKzE3Myw2IEBAIGludGVsX2NydGNfZHVw bGljYXRlX3N0YXRlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKIAljcnRjX3N0YXRlLT51cGRhdGVf cGlwZSA9IGZhbHNlOwogCWNydGNfc3RhdGUtPmRpc2FibGVfbHBfd20gPSBmYWxzZTsKIAljcnRj X3N0YXRlLT5kaXNhYmxlX2N4c3IgPSBmYWxzZTsKLQljcnRjX3N0YXRlLT51cGRhdGVfd21fcHJl ID0gZmFsc2U7Ci0JY3J0Y19zdGF0ZS0+dXBkYXRlX3dtX3Bvc3QgPSBmYWxzZTsKIAljcnRjX3N0 YXRlLT5mYl9jaGFuZ2VkID0gZmFsc2U7CiAJY3J0Y19zdGF0ZS0+Zmlmb19jaGFuZ2VkID0gZmFs c2U7CiAJY3J0Y19zdGF0ZS0+d20ubmVlZF9wb3N0dmJsX3VwZGF0ZSA9IGZhbHNlOwpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCmluZGV4IDBmYTgzODk1YjhjNC4uOTBjOGE5NjRjMjY0 IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCkBAIC00ODQ4LDggKzQ4NDgsNiBA QCBzdGF0aWMgdm9pZCBpbnRlbF9wb3N0X3BsYW5lX3VwZGF0ZShzdHJ1Y3QgaW50ZWxfY3J0Y19z dGF0ZSAqb2xkX2NydGNfc3RhdGUpCiAKIAlpbnRlbF9mcm9udGJ1ZmZlcl9mbGlwKHRvX2k5MTUo Y3J0Yy0+YmFzZS5kZXYpLCBwaXBlX2NvbmZpZy0+ZmJfYml0cyk7CiAKLQlpZiAocGlwZV9jb25m aWctPnVwZGF0ZV93bV9wb3N0ICYmIHBpcGVfY29uZmlnLT5iYXNlLmFjdGl2ZSkKLQkJaW50ZWxf dXBkYXRlX3dhdGVybWFya3MoY3J0Yyk7CiAKIAlpZiAob2xkX3ByaV9zdGF0ZSkgewogCQlzdHJ1 Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKnByaW1hcnlfc3RhdGUgPQpAQCAtNDk0MCw4ICs0OTM4LDYg QEAgc3RhdGljIHZvaWQgaW50ZWxfcHJlX3BsYW5lX3VwZGF0ZShzdHJ1Y3QgaW50ZWxfY3J0Y19z dGF0ZSAqb2xkX2NydGNfc3RhdGUsCiAJaWYgKGRldl9wcml2LT5kaXNwbGF5LmluaXRpYWxfd2F0 ZXJtYXJrcyAhPSBOVUxMKQogCQlkZXZfcHJpdi0+ZGlzcGxheS5pbml0aWFsX3dhdGVybWFya3Mo b2xkX2ludGVsX3N0YXRlLAogCQkJCQkJICAgICBwaXBlX2NvbmZpZyk7Ci0JZWxzZSBpZiAocGlw ZV9jb25maWctPnVwZGF0ZV93bV9wcmUpCi0JCWludGVsX3VwZGF0ZV93YXRlcm1hcmtzKGNydGMp OwogfQogCiBzdGF0aWMgdm9pZCBpbnRlbF9jcnRjX2Rpc2FibGVfcGxhbmVzKHN0cnVjdCBkcm1f Y3J0YyAqY3J0YywgdW5zaWduZWQgcGxhbmVfbWFzaykKQEAgLTU2MjMsOCArNTYxOSw2IEBAIHN0 YXRpYyB2b2lkIGk5eHhfY3J0Y19lbmFibGUoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKnBpcGVf Y29uZmlnLAogCWlmIChkZXZfcHJpdi0+ZGlzcGxheS5pbml0aWFsX3dhdGVybWFya3MgIT0gTlVM TCkKIAkJZGV2X3ByaXYtPmRpc3BsYXkuaW5pdGlhbF93YXRlcm1hcmtzKG9sZF9pbnRlbF9zdGF0 ZSwKIAkJCQkJCSAgICAgaW50ZWxfY3J0Yy0+Y29uZmlnKTsKLQllbHNlCi0JCWludGVsX3VwZGF0 ZV93YXRlcm1hcmtzKGludGVsX2NydGMpOwogCWludGVsX2VuYWJsZV9waXBlKGludGVsX2NydGMp OwogCiAJYXNzZXJ0X3ZibGFua19kaXNhYmxlZChjcnRjKTsKQEAgLTU2ODksOSArNTY4Myw2IEBA IHN0YXRpYyB2b2lkIGk5eHhfY3J0Y19kaXNhYmxlKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpv bGRfY3J0Y19zdGF0ZSwKIAlpZiAoIUlTX0dFTjIoZGV2X3ByaXYpKQogCQlpbnRlbF9zZXRfY3B1 X2ZpZm9fdW5kZXJydW5fcmVwb3J0aW5nKGRldl9wcml2LCBwaXBlLCBmYWxzZSk7CiAKLQlpZiAo IWRldl9wcml2LT5kaXNwbGF5LmluaXRpYWxfd2F0ZXJtYXJrcykKLQkJaW50ZWxfdXBkYXRlX3dh dGVybWFya3MoaW50ZWxfY3J0Yyk7Ci0KIAkvKiBjbG9jayB0aGUgcGlwZSBkb3duIHRvIDY0MHg0 ODBANjAgdG8gcG90ZW50aWFsbHkgc2F2ZSBwb3dlciAqLwogCWlmIChJU19JODMwKGRldl9wcml2 KSkKIAkJaTgzMF9lbmFibGVfcGlwZShkZXZfcHJpdiwgcGlwZSk7CkBAIC01NzUyLDcgKzU3NDMs NiBAQCBzdGF0aWMgdm9pZCBpbnRlbF9jcnRjX2Rpc2FibGVfbm9hdG9taWMoc3RydWN0IGRybV9j cnRjICpjcnRjLAogCQllbmNvZGVyLT5iYXNlLmNydGMgPSBOVUxMOwogCiAJaW50ZWxfZmJjX2Rp c2FibGUoaW50ZWxfY3J0Yyk7Ci0JaW50ZWxfdXBkYXRlX3dhdGVybWFya3MoaW50ZWxfY3J0Yyk7 CiAJaW50ZWxfZGlzYWJsZV9zaGFyZWRfZHBsbChpbnRlbF9jcnRjKTsKIAogCWRvbWFpbnMgPSBp bnRlbF9jcnRjLT5lbmFibGVkX3Bvd2VyX2RvbWFpbnM7CkBAIC0xMDAxOSw0MCArMTAwMDksNiBA QCBzdGF0aWMgdm9pZCBpbnRlbF9jcnRjX2Rlc3Ryb3koc3RydWN0IGRybV9jcnRjICpjcnRjKQog CWtmcmVlKGludGVsX2NydGMpOwogfQogCi0vKioKLSAqIGludGVsX3dtX25lZWRfdXBkYXRlIC0g Q2hlY2sgd2hldGhlciB3YXRlcm1hcmtzIG5lZWQgdXBkYXRpbmcKLSAqIEBwbGFuZTogZHJtIHBs YW5lCi0gKiBAc3RhdGU6IG5ldyBwbGFuZSBzdGF0ZQotICoKLSAqIENoZWNrIGN1cnJlbnQgcGxh bmUgc3RhdGUgdmVyc3VzIHRoZSBuZXcgb25lIHRvIGRldGVybWluZSB3aGV0aGVyCi0gKiB3YXRl cm1hcmtzIG5lZWQgdG8gYmUgcmVjYWxjdWxhdGVkLgotICoKLSAqIFJldHVybnMgdHJ1ZSBvciBm YWxzZS4KLSAqLwotc3RhdGljIGJvb2wgaW50ZWxfd21fbmVlZF91cGRhdGUoc3RydWN0IGRybV9w bGFuZSAqcGxhbmUsCi0JCQkJIHN0cnVjdCBkcm1fcGxhbmVfc3RhdGUgKnN0YXRlKQotewotCXN0 cnVjdCBpbnRlbF9wbGFuZV9zdGF0ZSAqbmV3ID0gdG9faW50ZWxfcGxhbmVfc3RhdGUoc3RhdGUp OwotCXN0cnVjdCBpbnRlbF9wbGFuZV9zdGF0ZSAqY3VyID0gdG9faW50ZWxfcGxhbmVfc3RhdGUo cGxhbmUtPnN0YXRlKTsKLQotCS8qIFVwZGF0ZSB3YXRlcm1hcmtzIG9uIHRpbGluZyBvciBzaXpl IGNoYW5nZXMuICovCi0JaWYgKG5ldy0+YmFzZS52aXNpYmxlICE9IGN1ci0+YmFzZS52aXNpYmxl KQotCQlyZXR1cm4gdHJ1ZTsKLQotCWlmICghY3VyLT5iYXNlLmZiIHx8ICFuZXctPmJhc2UuZmIp Ci0JCXJldHVybiBmYWxzZTsKLQotCWlmIChjdXItPmJhc2UuZmItPm1vZGlmaWVyICE9IG5ldy0+ YmFzZS5mYi0+bW9kaWZpZXIgfHwKLQkgICAgY3VyLT5iYXNlLnJvdGF0aW9uICE9IG5ldy0+YmFz ZS5yb3RhdGlvbiB8fAotCSAgICBkcm1fcmVjdF93aWR0aCgmbmV3LT5iYXNlLnNyYykgIT0gZHJt X3JlY3Rfd2lkdGgoJmN1ci0+YmFzZS5zcmMpIHx8Ci0JICAgIGRybV9yZWN0X2hlaWdodCgmbmV3 LT5iYXNlLnNyYykgIT0gZHJtX3JlY3RfaGVpZ2h0KCZjdXItPmJhc2Uuc3JjKSB8fAotCSAgICBk cm1fcmVjdF93aWR0aCgmbmV3LT5iYXNlLmRzdCkgIT0gZHJtX3JlY3Rfd2lkdGgoJmN1ci0+YmFz ZS5kc3QpIHx8Ci0JICAgIGRybV9yZWN0X2hlaWdodCgmbmV3LT5iYXNlLmRzdCkgIT0gZHJtX3Jl Y3RfaGVpZ2h0KCZjdXItPmJhc2UuZHN0KSkKLQkJcmV0dXJuIHRydWU7Ci0KLQlyZXR1cm4gZmFs c2U7Ci19Ci0KIHN0YXRpYyBib29sIG5lZWRzX3NjYWxpbmcoc3RydWN0IGludGVsX3BsYW5lX3N0 YXRlICpzdGF0ZSkKIHsKIAlpbnQgc3JjX3cgPSBkcm1fcmVjdF93aWR0aCgmc3RhdGUtPmJhc2Uu c3JjKSA+PiAxNjsKQEAgLTEwMTI5LDI3ICsxMDA4NSw5IEBAIGludCBpbnRlbF9wbGFuZV9hdG9t aWNfY2FsY19jaGFuZ2VzKHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSwKIAkJCSB3 YXNfdmlzaWJsZSwgdmlzaWJsZSwKIAkJCSB0dXJuX29mZiwgdHVybl9vbiwgbW9kZV9jaGFuZ2Vk KTsKIAotCWlmICh0dXJuX29uKSB7Ci0JCWlmIChJTlRFTF9HRU4oZGV2X3ByaXYpIDwgNSAmJiAh SVNfRzRYKGRldl9wcml2KSkKLQkJCXBpcGVfY29uZmlnLT51cGRhdGVfd21fcHJlID0gdHJ1ZTsK LQotCQkvKiBtdXN0IGRpc2FibGUgY3hzciBhcm91bmQgcGxhbmUgZW5hYmxlL2Rpc2FibGUgKi8K LQkJaWYgKHBsYW5lLT5pZCAhPSBQTEFORV9DVVJTT1IpCi0JCQlwaXBlX2NvbmZpZy0+ZGlzYWJs ZV9jeHNyID0gdHJ1ZTsKLQl9IGVsc2UgaWYgKHR1cm5fb2ZmKSB7Ci0JCWlmIChJTlRFTF9HRU4o ZGV2X3ByaXYpIDwgNSAmJiAhSVNfRzRYKGRldl9wcml2KSkKLQkJCXBpcGVfY29uZmlnLT51cGRh dGVfd21fcG9zdCA9IHRydWU7Ci0KLQkJLyogbXVzdCBkaXNhYmxlIGN4c3IgYXJvdW5kIHBsYW5l IGVuYWJsZS9kaXNhYmxlICovCi0JCWlmIChwbGFuZS0+aWQgIT0gUExBTkVfQ1VSU09SKQotCQkJ cGlwZV9jb25maWctPmRpc2FibGVfY3hzciA9IHRydWU7Ci0JfSBlbHNlIGlmIChpbnRlbF93bV9u ZWVkX3VwZGF0ZSgmcGxhbmUtPmJhc2UsIHBsYW5lX3N0YXRlKSkgewotCQlpZiAoSU5URUxfR0VO KGRldl9wcml2KSA8IDUgJiYgIUlTX0c0WChkZXZfcHJpdikpIHsKLQkJCS8qIEZJWE1FIGJvbGxv Y2tzICovCi0JCQlwaXBlX2NvbmZpZy0+dXBkYXRlX3dtX3ByZSA9IHRydWU7Ci0JCQlwaXBlX2Nv bmZpZy0+dXBkYXRlX3dtX3Bvc3QgPSB0cnVlOwotCQl9Ci0JfQorCS8qIG11c3QgZGlzYWJsZSBj eHNyIGFyb3VuZCBwbGFuZSBlbmFibGUvZGlzYWJsZSAqLworCWlmICgodHVybl9vbiB8fCB0dXJu X29mZikgJiYgcGxhbmUtPmlkICE9IFBMQU5FX0NVUlNPUikKKwkJcGlwZV9jb25maWctPmRpc2Fi bGVfY3hzciA9IHRydWU7CiAKIAlpZiAodmlzaWJsZSB8fCB3YXNfdmlzaWJsZSkKIAkJcGlwZV9j b25maWctPmZiX2JpdHMgfD0gcGxhbmUtPmZyb250YnVmZmVyX2JpdDsKQEAgLTEwMjEwLDkgKzEw MTQ4LDYgQEAgc3RhdGljIGludCBpbnRlbF9jcnRjX2F0b21pY19jaGVjayhzdHJ1Y3QgZHJtX2Ny dGMgKmNydGMsCiAJaW50IHJldDsKIAlib29sIG1vZGVfY2hhbmdlZCA9IG5lZWRzX21vZGVzZXQo Y3J0Y19zdGF0ZSk7CiAKLQlpZiAobW9kZV9jaGFuZ2VkICYmICFjcnRjX3N0YXRlLT5hY3RpdmUp Ci0JCXBpcGVfY29uZmlnLT51cGRhdGVfd21fcG9zdCA9IHRydWU7Ci0KIAlpZiAobW9kZV9jaGFu Z2VkICYmIGNydGNfc3RhdGUtPmVuYWJsZSAmJgogCSAgICBkZXZfcHJpdi0+ZGlzcGxheS5jcnRj X2NvbXB1dGVfY2xvY2sgJiYKIAkgICAgIVdBUk5fT04ocGlwZV9jb25maWctPnNoYXJlZF9kcGxs KSkgewpAQCAtMTE4OTgsOSArMTE4MzMsNiBAQCBzdGF0aWMgYm9vbCBuZWVkc192Ymxhbmtfd2Fp dChzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKIAkJcmV0dXJuIHRydWU7CiAK IAkvKiB3bSBjaGFuZ2VzLCBuZWVkIHZibGFuayBiZWZvcmUgZmluYWwgd20ncyAqLwotCWlmIChj cnRjX3N0YXRlLT51cGRhdGVfd21fcG9zdCkKLQkJcmV0dXJuIHRydWU7Ci0KIAlpZiAoY3J0Y19z dGF0ZS0+d20ubmVlZF9wb3N0dmJsX3VwZGF0ZSkKIAkJcmV0dXJuIHRydWU7CiAKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZHJ2LmgKaW5kZXggMWE3MDkzOWM2OWM1Li41NDg2MTM0MTg5YTcgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2Rydi5oCkBAIC02MzIsNyArNjMyLDYgQEAgc3RydWN0IGludGVsX2NydGNf c3RhdGUgewogCXVuc2lnbmVkIGZiX2JpdHM7IC8qIGZyYW1lYnVmZmVycyB0byBmbGlwICovCiAJ Ym9vbCB1cGRhdGVfcGlwZTsgLyogY2FuIGEgZmFzdCBtb2Rlc2V0IGJlIHBlcmZvcm1lZD8gKi8K IAlib29sIGRpc2FibGVfY3hzcjsKLQlib29sIHVwZGF0ZV93bV9wcmUsIHVwZGF0ZV93bV9wb3N0 OyAvKiB3YXRlcm1hcmtzIGFyZSB1cGRhdGVkICovCiAJYm9vbCBmYl9jaGFuZ2VkOyAvKiBmYiBv biBhbnkgb2YgdGhlIHBsYW5lcyBpcyBjaGFuZ2VkICovCiAJYm9vbCBmaWZvX2NoYW5nZWQ7IC8q IEZJRk8gc3BsaXQgaXMgY2hhbmdlZCAqLwogCkBAIC0xODM4LDcgKzE4MzcsNiBAQCBib29sIGNo dl9waHlfcG93ZXJnYXRlX2NoKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgZW51 bSBkcGlvX3BoeSBwaHksCiB2b2lkIGludGVsX2luaXRfY2xvY2tfZ2F0aW5nKHN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICpkZXZfcHJpdik7CiB2b2lkIGludGVsX3N1c3BlbmRfaHcoc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KTsKIGludCBpbGtfd21fbWF4X2xldmVsKGNvbnN0IHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdik7Ci12b2lkIGludGVsX3VwZGF0ZV93YXRl cm1hcmtzKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjKTsKIHZvaWQgaW50ZWxfaW5pdF9wbShzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwogdm9pZCBpbnRlbF9pbml0X2Nsb2NrX2dh dGluZ19ob29rcyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwogdm9pZCBpbnRl bF9wbV9zZXR1cChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX3BtLmMKaW5kZXggM2FmYWE2OTMzYzRiLi4zYWE4NTdiYTY2MGIgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfcG0uYwpAQCAtNTE5MSw4ICs1MTkxLDYgQEAgc2tsX2NvbXB1dGVfd20oc3RydWN0 IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKQogCQlpZiAoKHJlc3VsdHMtPmRpcnR5X3BpcGVzICYg ZHJtX2NydGNfbWFzayhjcnRjKSkgPT0gMCkKIAkJCS8qIFRoaXMgcGlwZSdzIFdNJ3MgZGlkIG5v dCBjaGFuZ2UgKi8KIAkJCWNvbnRpbnVlOwotCi0JCWludGVsX2NzdGF0ZS0+dXBkYXRlX3dtX3By ZSA9IHRydWU7CiAJfQogCiAJc2tsX3ByaW50X3dtX2NoYW5nZXMoc3RhdGUpOwpAQCAtNTg3OCw0 NiArNTg3Niw2IEBAIHZvaWQgaWxrX3dtX2dldF9od19zdGF0ZShzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2KQogCQkhKEk5MTVfUkVBRChESVNQX0FSQl9DVEwpICYgRElTUF9GQkNfV01fRElTKTsKIH0K IAotLyoqCi0gKiBpbnRlbF91cGRhdGVfd2F0ZXJtYXJrcyAtIHVwZGF0ZSBGSUZPIHdhdGVybWFy ayB2YWx1ZXMgYmFzZWQgb24gY3VycmVudCBtb2RlcwotICoKLSAqIENhbGN1bGF0ZSB3YXRlcm1h cmsgdmFsdWVzIGZvciB0aGUgdmFyaW91cyBXTSByZWdzIGJhc2VkIG9uIGN1cnJlbnQgbW9kZQot ICogYW5kIHBsYW5lIGNvbmZpZ3VyYXRpb24uCi0gKgotICogVGhlcmUgYXJlIHNldmVyYWwgY2Fz ZXMgdG8gZGVhbCB3aXRoIGhlcmU6Ci0gKiAgIC0gbm9ybWFsIChpLmUuIG5vbi1zZWxmLXJlZnJl c2gpCi0gKiAgIC0gc2VsZi1yZWZyZXNoIChTUikgbW9kZQotICogICAtIGxpbmVzIGFyZSBsYXJn ZSByZWxhdGl2ZSB0byBGSUZPIHNpemUgKGJ1ZmZlciBjYW4gaG9sZCB1cCB0byAyKQotICogICAt IGxpbmVzIGFyZSBzbWFsbCByZWxhdGl2ZSB0byBGSUZPIHNpemUgKGJ1ZmZlciBjYW4gaG9sZCBt b3JlIHRoYW4gMgotICogICAgIGxpbmVzKSwgc28gbmVlZCB0byBhY2NvdW50IGZvciBUTEIgbGF0 ZW5jeQotICoKLSAqICAgVGhlIG5vcm1hbCBjYWxjdWxhdGlvbiBpczoKLSAqICAgICB3YXRlcm1h cmsgPSBkb3RjbG9jayAqIGJ5dGVzIHBlciBwaXhlbCAqIGxhdGVuY3kKLSAqICAgd2hlcmUgbGF0 ZW5jeSBpcyBwbGF0Zm9ybSAmIGNvbmZpZ3VyYXRpb24gZGVwZW5kZW50ICh3ZSBhc3N1bWUgcGVz c2ltYWwKLSAqICAgdmFsdWVzIGhlcmUpLgotICoKLSAqICAgVGhlIFNSIGNhbGN1bGF0aW9uIGlz OgotICogICAgIHdhdGVybWFyayA9ICh0cnVuYyhsYXRlbmN5L2xpbmUgdGltZSkrMSkgKiBzdXJm YWNlIHdpZHRoICoKLSAqICAgICAgIGJ5dGVzIHBlciBwaXhlbAotICogICB3aGVyZQotICogICAg IGxpbmUgdGltZSA9IGh0b3RhbCAvIGRvdGNsb2NrCi0gKiAgICAgc3VyZmFjZSB3aWR0aCA9IGhk aXNwbGF5IGZvciBub3JtYWwgcGxhbmUgYW5kIDY0IGZvciBjdXJzb3IKLSAqICAgYW5kIGxhdGVu Y3kgaXMgYXNzdW1lZCB0byBiZSBoaWdoLCBhcyBhYm92ZS4KLSAqCi0gKiBUaGUgZmluYWwgdmFs dWUgcHJvZ3JhbW1lZCB0byB0aGUgcmVnaXN0ZXIgc2hvdWxkIGFsd2F5cyBiZSByb3VuZGVkIHVw LAotICogYW5kIGluY2x1ZGUgYW4gZXh0cmEgMiBlbnRyaWVzIHRvIGFjY291bnQgZm9yIGNsb2Nr IGNyb3NzaW5ncy4KLSAqCi0gKiBXZSBkb24ndCB1c2UgdGhlIHNwcml0ZSwgc28gd2UgY2FuIGln bm9yZSB0aGF0LiAgQW5kIG9uIENyZXN0bGluZSB3ZSBoYXZlCi0gKiB0byBzZXQgdGhlIG5vbi1T UiB3YXRlcm1hcmtzIHRvIDguCi0gKi8KLXZvaWQgaW50ZWxfdXBkYXRlX3dhdGVybWFya3Moc3Ry dWN0IGludGVsX2NydGMgKmNydGMpCi17Ci0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2ID0gdG9faTkxNShjcnRjLT5iYXNlLmRldik7Ci0KLQlpZiAoZGV2X3ByaXYtPmRpc3BsYXku dXBkYXRlX3dtKQotCQlkZXZfcHJpdi0+ZGlzcGxheS51cGRhdGVfd20oY3J0Yyk7Ci19Ci0KIC8q CiAgKiBMb2NrIHByb3RlY3RpbmcgSVBTIHJlbGF0ZWQgZGF0YSBzdHJ1Y3R1cmVzCiAgKi8KLS0g CjIuMTEuMAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K SW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0 dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==