From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville Syrjala Subject: [PATCH 04/13] drm/i915: Constify the state arguments to the color management stuff Date: Fri, 11 Jan 2019 19:08:14 +0200 Message-ID: <20190111170823.4441-5-ville.syrjala@linux.intel.com> References: <20190111170823.4441-1-ville.syrjala@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id CE77D6F87C for ; Fri, 11 Jan 2019 17:08:39 +0000 (UTC) In-Reply-To: <20190111170823.4441-1-ville.syrjala@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 RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KClBh c3MgdGhlIGNydGMgc3RhdGUgZXRjLiBhcyBjb25zdCB0byB0aGUgY29sb3IgbWFuYWdlbWVudCBj b21taXQKZnVuY3Rpb25zLiBBbmQgd2hpbGUgYXQgaXQgcG9saXNoIHNvbWUgb2YgdGhlIGxvY2Fs IHZhcmlhYmxlcy4KClNpZ25lZC1vZmYtYnk6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFs YUBsaW51eC5pbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCAg ICB8ICAgNCArLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY29sb3IuYyB8IDEyOCArKysr KysrKysrKysrKysrLS0tLS0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2 LmggICB8ICAgNCArLQogMyBmaWxlcyBjaGFuZ2VkLCA3MyBpbnNlcnRpb25zKCspLCA2MyBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAppbmRleCA1ZGYyNmNjZGE4YTQuLjcxODJh NTgwMDAyYyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAorKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCkBAIC0zMjAsOCArMzIwLDggQEAgc3Ry dWN0IGRybV9pOTE1X2Rpc3BsYXlfZnVuY3MgewogCS8qIGRpc3BsYXkgY2xvY2sgaW5jcmVhc2Uv ZGVjcmVhc2UgKi8KIAkvKiBwbGwgY2xvY2sgaW5jcmVhc2UvZGVjcmVhc2UgKi8KIAotCXZvaWQg KCpsb2FkX2NzY19tYXRyaXgpKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKTsK LQl2b2lkICgqbG9hZF9sdXRzKShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSk7 CisJdm9pZCAoKmxvYWRfY3NjX21hdHJpeCkoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUg KmNydGNfc3RhdGUpOworCXZvaWQgKCpsb2FkX2x1dHMpKGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRj X3N0YXRlICpjcnRjX3N0YXRlKTsKIH07CiAKICNkZWZpbmUgQ1NSX1ZFUlNJT04obWFqb3IsIG1p bm9yKQkoKG1ham9yKSA8PCAxNiB8IChtaW5vcikpCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9jb2xvci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY29sb3Iu YwppbmRleCBiMTBlNjZjZTM5NzAuLjBkZmQxMDRiODlkNyAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfY29sb3IuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9jb2xvci5jCkBAIC03NCwxMiArNzQsMTIgQEAKICNkZWZpbmUgSUxLX0NTQ19DT0VGRl8xXzAJ CVwKIAkoKDcgPDwgMTIpIHwgSUxLX0NTQ19DT0VGRl9GUChDVE1fQ09FRkZfMV8wLCA4KSkKIAot c3RhdGljIGJvb2wgbHV0X2lzX2xlZ2FjeShzdHJ1Y3QgZHJtX3Byb3BlcnR5X2Jsb2IgKmx1dCkK K3N0YXRpYyBib29sIGx1dF9pc19sZWdhY3koY29uc3Qgc3RydWN0IGRybV9wcm9wZXJ0eV9ibG9i ICpsdXQpCiB7CiAJcmV0dXJuIGRybV9jb2xvcl9sdXRfc2l6ZShsdXQpID09IExFR0FDWV9MVVRf TEVOR1RIOwogfQogCi1zdGF0aWMgYm9vbCBjcnRjX3N0YXRlX2lzX2xlZ2FjeV9nYW1tYShzdHJ1 Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKK3N0YXRpYyBib29sIGNydGNfc3RhdGVf aXNfbGVnYWN5X2dhbW1hKGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRl KQogewogCXJldHVybiAhY3J0Y19zdGF0ZS0+YmFzZS5kZWdhbW1hX2x1dCAmJgogCQkhY3J0Y19z dGF0ZS0+YmFzZS5jdG0gJiYKQEAgLTExNSw4ICsxMTUsOCBAQCBzdGF0aWMgdTY0ICpjdG1fbXVs dF9ieV9saW1pdGVkKHU2NCAqcmVzdWx0LCBjb25zdCB1NjQgKmlucHV0KQogCiBzdGF0aWMgdm9p ZCBpbGtfbG9hZF95Y2Jjcl9jb252ZXJzaW9uX21hdHJpeChzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0 YykKIHsKLQlpbnQgcGlwZSA9IGNydGMtPnBpcGU7CiAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2ID0gdG9faTkxNShjcnRjLT5iYXNlLmRldik7CisJZW51bSBwaXBlIHBpcGUgPSBj cnRjLT5waXBlOwogCiAJSTkxNV9XUklURShQSVBFX0NTQ19QUkVPRkZfSEkocGlwZSksIDApOwog CUk5MTVfV1JJVEUoUElQRV9DU0NfUFJFT0ZGX01FKHBpcGUpLCAwKTsKQEAgLTEzNywxMyArMTM3 LDE0IEBAIHN0YXRpYyB2b2lkIGlsa19sb2FkX3ljYmNyX2NvbnZlcnNpb25fbWF0cml4KHN0cnVj dCBpbnRlbF9jcnRjICpjcnRjKQogCUk5MTVfV1JJVEUoUElQRV9DU0NfTU9ERShwaXBlKSwgMCk7 CiB9CiAKLXN0YXRpYyB2b2lkIGlsa19sb2FkX2NzY19tYXRyaXgoc3RydWN0IGludGVsX2NydGNf c3RhdGUgKmNydGNfc3RhdGUpCitzdGF0aWMgdm9pZCBpbGtfbG9hZF9jc2NfbWF0cml4KGNvbnN0 IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQogewogCXN0cnVjdCBpbnRlbF9j cnRjICpjcnRjID0gdG9faW50ZWxfY3J0YyhjcnRjX3N0YXRlLT5iYXNlLmNydGMpOwogCXN0cnVj dCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoY3J0Yy0+YmFzZS5kZXYpOwot CWludCBpLCBwaXBlID0gY3J0Yy0+cGlwZTsKLQl1aW50MTZfdCBjb2VmZnNbOV0gPSB7IDAsIH07 CiAJYm9vbCBsaW1pdGVkX2NvbG9yX3JhbmdlID0gZmFsc2U7CisJZW51bSBwaXBlIHBpcGUgPSBj cnRjLT5waXBlOworCXUxNiBjb2VmZnNbOV0gPSB7fTsKKwlpbnQgaTsKIAogCS8qCiAJICogRklY TUUgaWYgdGhlcmUncyBhIGdhbW1hIExVVCBhZnRlciB0aGUgQ1NDLCB3ZSBzaG91bGQKQEAgLTI1 NiwxNSArMjU3LDE1IEBAIHN0YXRpYyB2b2lkIGlsa19sb2FkX2NzY19tYXRyaXgoc3RydWN0IGlu dGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCiAvKgogICogU2V0IHVwIHRoZSBwaXBlIENTQyB1 bml0IG9uIENoZXJyeVZpZXcuCiAgKi8KLXN0YXRpYyB2b2lkIGNoZXJyeXZpZXdfbG9hZF9jc2Nf bWF0cml4KHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQorc3RhdGljIHZvaWQg Y2hlcnJ5dmlld19sb2FkX2NzY19tYXRyaXgoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUg KmNydGNfc3RhdGUpCiB7Ci0Jc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGNydGNfc3RhdGUtPmJh c2UuY3J0Yy0+ZGV2OwotCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5 MTUoZGV2KTsKLQlpbnQgcGlwZSA9IHRvX2ludGVsX2NydGMoY3J0Y19zdGF0ZS0+YmFzZS5jcnRj KS0+cGlwZTsKKwlzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YyA9IHRvX2ludGVsX2NydGMoY3J0Y19z dGF0ZS0+YmFzZS5jcnRjKTsKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0 b19pOTE1KGNydGMtPmJhc2UuZGV2KTsKKwllbnVtIHBpcGUgcGlwZSA9IGNydGMtPnBpcGU7CiAJ dWludDMyX3QgbW9kZTsKIAogCWlmIChjcnRjX3N0YXRlLT5iYXNlLmN0bSkgewotCQlzdHJ1Y3Qg ZHJtX2NvbG9yX2N0bSAqY3RtID0gY3J0Y19zdGF0ZS0+YmFzZS5jdG0tPmRhdGE7CisJCWNvbnN0 IHN0cnVjdCBkcm1fY29sb3JfY3RtICpjdG0gPSBjcnRjX3N0YXRlLT5iYXNlLmN0bS0+ZGF0YTsK IAkJdWludDE2X3QgY29lZmZzWzldID0geyAwLCB9OwogCQlpbnQgaTsKIApAQCAtMzAzLDE4ICsz MDQsMTcgQEAgc3RhdGljIHZvaWQgY2hlcnJ5dmlld19sb2FkX2NzY19tYXRyaXgoc3RydWN0IGlu dGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCiAJSTkxNV9XUklURShDR01fUElQRV9NT0RFKHBp cGUpLCBtb2RlKTsKIH0KIAotdm9pZCBpbnRlbF9jb2xvcl9zZXRfY3NjKHN0cnVjdCBpbnRlbF9j cnRjX3N0YXRlICpjcnRjX3N0YXRlKQordm9pZCBpbnRlbF9jb2xvcl9zZXRfY3NjKGNvbnN0IHN0 cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQogewotCXN0cnVjdCBkcm1fZGV2aWNl ICpkZXYgPSBjcnRjX3N0YXRlLT5iYXNlLmNydGMtPmRldjsKLQlzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGRldik7CisJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2ID0gdG9faTkxNShjcnRjX3N0YXRlLT5iYXNlLmNydGMtPmRldik7CiAKIAlpZiAo ZGV2X3ByaXYtPmRpc3BsYXkubG9hZF9jc2NfbWF0cml4KQogCQlkZXZfcHJpdi0+ZGlzcGxheS5s b2FkX2NzY19tYXRyaXgoY3J0Y19zdGF0ZSk7CiB9CiAKIC8qIExvYWRzIHRoZSBsZWdhY3kgcGFs ZXR0ZS9nYW1tYSB1bml0IGZvciB0aGUgQ1JUQy4gKi8KLXN0YXRpYyB2b2lkIGk5eHhfbG9hZF9s dXRzX2ludGVybmFsKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlLAotCQkJCSAg ICBzdHJ1Y3QgZHJtX3Byb3BlcnR5X2Jsb2IgKmJsb2IpCitzdGF0aWMgdm9pZCBpOXh4X2xvYWRf bHV0c19pbnRlcm5hbChjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSwK KwkJCQkgICAgY29uc3Qgc3RydWN0IGRybV9wcm9wZXJ0eV9ibG9iICpibG9iKQogewogCXN0cnVj dCBpbnRlbF9jcnRjICpjcnRjID0gdG9faW50ZWxfY3J0YyhjcnRjX3N0YXRlLT5iYXNlLmNydGMp OwogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoY3J0Yy0+YmFz ZS5kZXYpOwpAQCAtMzI5LDcgKzMyOSw4IEBAIHN0YXRpYyB2b2lkIGk5eHhfbG9hZF9sdXRzX2lu dGVybmFsKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlLAogCX0KIAogCWlmIChi bG9iKSB7Ci0JCXN0cnVjdCBkcm1fY29sb3JfbHV0ICpsdXQgPSBibG9iLT5kYXRhOworCQljb25z dCBzdHJ1Y3QgZHJtX2NvbG9yX2x1dCAqbHV0ID0gYmxvYi0+ZGF0YTsKKwogCQlmb3IgKGkgPSAw OyBpIDwgMjU2OyBpKyspIHsKIAkJCXVpbnQzMl90IHdvcmQgPQogCQkJCShkcm1fY29sb3JfbHV0 X2V4dHJhY3QobHV0W2ldLnJlZCwgOCkgPDwgMTYpIHwKQEAgLTM1MywxMyArMzU0LDEzIEBAIHN0 YXRpYyB2b2lkIGk5eHhfbG9hZF9sdXRzX2ludGVybmFsKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRl ICpjcnRjX3N0YXRlLAogCX0KIH0KIAotc3RhdGljIHZvaWQgaTl4eF9sb2FkX2x1dHMoc3RydWN0 IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCitzdGF0aWMgdm9pZCBpOXh4X2xvYWRfbHV0 cyhjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKIHsKIAlpOXh4X2xv YWRfbHV0c19pbnRlcm5hbChjcnRjX3N0YXRlLCBjcnRjX3N0YXRlLT5iYXNlLmdhbW1hX2x1dCk7 CiB9CiAKIC8qIExvYWRzIHRoZSBsZWdhY3kgcGFsZXR0ZS9nYW1tYSB1bml0IGZvciB0aGUgQ1JU QyBvbiBIYXN3ZWxsLiAqLwotc3RhdGljIHZvaWQgaGFzd2VsbF9sb2FkX2x1dHMoc3RydWN0IGlu dGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCitzdGF0aWMgdm9pZCBoYXN3ZWxsX2xvYWRfbHV0 cyhjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKIHsKIAlzdHJ1Y3Qg aW50ZWxfY3J0YyAqY3J0YyA9IHRvX2ludGVsX2NydGMoY3J0Y19zdGF0ZS0+YmFzZS5jcnRjKTsK IAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNydGMtPmJhc2Uu ZGV2KTsKQEAgLTM4MywxNyArMzg0LDE5IEBAIHN0YXRpYyB2b2lkIGhhc3dlbGxfbG9hZF9sdXRz KHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQogCQloc3dfZW5hYmxlX2lwcyhj cnRjX3N0YXRlKTsKIH0KIAotc3RhdGljIHZvaWQgYmR3X2xvYWRfZGVnYW1tYV9sdXQoc3RydWN0 IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCitzdGF0aWMgdm9pZCBiZHdfbG9hZF9kZWdh bW1hX2x1dChjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKIHsKLQlz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNydGNfc3RhdGUtPmJh c2UuY3J0Yy0+ZGV2KTsKLQllbnVtIHBpcGUgcGlwZSA9IHRvX2ludGVsX2NydGMoY3J0Y19zdGF0 ZS0+YmFzZS5jcnRjKS0+cGlwZTsKKwlzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YyA9IHRvX2ludGVs X2NydGMoY3J0Y19zdGF0ZS0+YmFzZS5jcnRjKTsKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYgPSB0b19pOTE1KGNydGMtPmJhc2UuZGV2KTsKKwljb25zdCBzdHJ1Y3QgZHJtX3By b3BlcnR5X2Jsb2IgKmRlZ2FtbWFfbHV0ID0gY3J0Y19zdGF0ZS0+YmFzZS5kZWdhbW1hX2x1dDsK IAl1aW50MzJfdCBpLCBsdXRfc2l6ZSA9IElOVEVMX0lORk8oZGV2X3ByaXYpLT5jb2xvci5kZWdh bW1hX2x1dF9zaXplOworCWVudW0gcGlwZSBwaXBlID0gY3J0Yy0+cGlwZTsKIAogCUk5MTVfV1JJ VEUoUFJFQ19QQUxfSU5ERVgocGlwZSksCiAJCSAgIFBBTF9QUkVDX1NQTElUX01PREUgfCBQQUxf UFJFQ19BVVRPX0lOQ1JFTUVOVCk7CiAKLQlpZiAoY3J0Y19zdGF0ZS0+YmFzZS5kZWdhbW1hX2x1 dCkgewotCQlzdHJ1Y3QgZHJtX2NvbG9yX2x1dCAqbHV0ID0gY3J0Y19zdGF0ZS0+YmFzZS5kZWdh bW1hX2x1dC0+ZGF0YTsKKwlpZiAoZGVnYW1tYV9sdXQpIHsKKwkJY29uc3Qgc3RydWN0IGRybV9j b2xvcl9sdXQgKmx1dCA9IGRlZ2FtbWFfbHV0LT5kYXRhOwogCiAJCWZvciAoaSA9IDA7IGkgPCBs dXRfc2l6ZTsgaSsrKSB7CiAJCQl1aW50MzJfdCB3b3JkID0KQEAgLTQxMywxMSArNDE2LDEzIEBA IHN0YXRpYyB2b2lkIGJkd19sb2FkX2RlZ2FtbWFfbHV0KHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRl ICpjcnRjX3N0YXRlKQogCX0KIH0KIAotc3RhdGljIHZvaWQgYmR3X2xvYWRfZ2FtbWFfbHV0KHN0 cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlLCB1MzIgb2Zmc2V0KQorc3RhdGljIHZv aWQgYmR3X2xvYWRfZ2FtbWFfbHV0KGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRj X3N0YXRlLCB1MzIgb2Zmc2V0KQogewotCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp diA9IHRvX2k5MTUoY3J0Y19zdGF0ZS0+YmFzZS5jcnRjLT5kZXYpOwotCWVudW0gcGlwZSBwaXBl ID0gdG9faW50ZWxfY3J0YyhjcnRjX3N0YXRlLT5iYXNlLmNydGMpLT5waXBlOworCXN0cnVjdCBp bnRlbF9jcnRjICpjcnRjID0gdG9faW50ZWxfY3J0YyhjcnRjX3N0YXRlLT5iYXNlLmNydGMpOwor CXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoY3J0Yy0+YmFzZS5k ZXYpOworCWNvbnN0IHN0cnVjdCBkcm1fcHJvcGVydHlfYmxvYiAqZ2FtbWFfbHV0ID0gY3J0Y19z dGF0ZS0+YmFzZS5nYW1tYV9sdXQ7CiAJdWludDMyX3QgaSwgbHV0X3NpemUgPSBJTlRFTF9JTkZP KGRldl9wcml2KS0+Y29sb3IuZ2FtbWFfbHV0X3NpemU7CisJZW51bSBwaXBlIHBpcGUgPSBjcnRj LT5waXBlOwogCiAJV0FSTl9PTihvZmZzZXQgJiB+UEFMX1BSRUNfSU5ERVhfVkFMVUVfTUFTSyk7 CiAKQEAgLTQyNiw4ICs0MzEsOCBAQCBzdGF0aWMgdm9pZCBiZHdfbG9hZF9nYW1tYV9sdXQoc3Ry dWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsIHUzMiBvZmZzZXQpCiAJCSAgIFBBTF9Q UkVDX0FVVE9fSU5DUkVNRU5UIHwKIAkJICAgb2Zmc2V0KTsKIAotCWlmIChjcnRjX3N0YXRlLT5i YXNlLmdhbW1hX2x1dCkgewotCQlzdHJ1Y3QgZHJtX2NvbG9yX2x1dCAqbHV0ID0gY3J0Y19zdGF0 ZS0+YmFzZS5nYW1tYV9sdXQtPmRhdGE7CisJaWYgKGdhbW1hX2x1dCkgeworCQljb25zdCBzdHJ1 Y3QgZHJtX2NvbG9yX2x1dCAqbHV0ID0gZ2FtbWFfbHV0LT5kYXRhOwogCiAJCWZvciAoaSA9IDA7 IGkgPCBsdXRfc2l6ZTsgaSsrKSB7CiAJCQl1aW50MzJfdCB3b3JkID0KQEAgLTQ2MSwxMCArNDY2 LDExIEBAIHN0YXRpYyB2b2lkIGJkd19sb2FkX2dhbW1hX2x1dChzdHJ1Y3QgaW50ZWxfY3J0Y19z dGF0ZSAqY3J0Y19zdGF0ZSwgdTMyIG9mZnNldCkKIH0KIAogLyogTG9hZHMgdGhlIHBhbGV0dGUv Z2FtbWEgdW5pdCBmb3IgdGhlIENSVEMgb24gQnJvYWR3ZWxsKy4gKi8KLXN0YXRpYyB2b2lkIGJy b2Fkd2VsbF9sb2FkX2x1dHMoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCitz dGF0aWMgdm9pZCBicm9hZHdlbGxfbG9hZF9sdXRzKGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0 YXRlICpjcnRjX3N0YXRlKQogewotCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9 IHRvX2k5MTUoY3J0Y19zdGF0ZS0+YmFzZS5jcnRjLT5kZXYpOwotCWVudW0gcGlwZSBwaXBlID0g dG9faW50ZWxfY3J0YyhjcnRjX3N0YXRlLT5iYXNlLmNydGMpLT5waXBlOworCXN0cnVjdCBpbnRl bF9jcnRjICpjcnRjID0gdG9faW50ZWxfY3J0YyhjcnRjX3N0YXRlLT5iYXNlLmNydGMpOworCXN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoY3J0Yy0+YmFzZS5kZXYp OworCWVudW0gcGlwZSBwaXBlID0gY3J0Yy0+cGlwZTsKIAogCWlmIChjcnRjX3N0YXRlX2lzX2xl Z2FjeV9nYW1tYShjcnRjX3N0YXRlKSkgewogCQloYXN3ZWxsX2xvYWRfbHV0cyhjcnRjX3N0YXRl KTsKQEAgLTQ4NCwxMCArNDkwLDExIEBAIHN0YXRpYyB2b2lkIGJyb2Fkd2VsbF9sb2FkX2x1dHMo c3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCiAJSTkxNV9XUklURShQUkVDX1BB TF9JTkRFWChwaXBlKSwgMCk7CiB9CiAKLXN0YXRpYyB2b2lkIGdsa19sb2FkX2RlZ2FtbWFfbHV0 KHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQorc3RhdGljIHZvaWQgZ2xrX2xv YWRfZGVnYW1tYV9sdXQoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUp CiB7Ci0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShjcnRjX3N0 YXRlLT5iYXNlLmNydGMtPmRldik7Ci0JZW51bSBwaXBlIHBpcGUgPSB0b19pbnRlbF9jcnRjKGNy dGNfc3RhdGUtPmJhc2UuY3J0YyktPnBpcGU7CisJc3RydWN0IGludGVsX2NydGMgKmNydGMgPSB0 b19pbnRlbF9jcnRjKGNydGNfc3RhdGUtPmJhc2UuY3J0Yyk7CisJc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShjcnRjLT5iYXNlLmRldik7CisJZW51bSBwaXBlIHBp cGUgPSBjcnRjLT5waXBlOwogCWNvbnN0IHVpbnQzMl90IGx1dF9zaXplID0gMzM7CiAJdWludDMy X3QgaTsKIApAQCAtNTE0LDExICs1MjEsMTEgQEAgc3RhdGljIHZvaWQgZ2xrX2xvYWRfZGVnYW1t YV9sdXQoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCiAJCUk5MTVfV1JJVEUo UFJFX0NTQ19HQU1DX0RBVEEocGlwZSksICgxIDw8IDE2KSk7CiB9CiAKLXN0YXRpYyB2b2lkIGds a19sb2FkX2x1dHMoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCitzdGF0aWMg dm9pZCBnbGtfbG9hZF9sdXRzKGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0 YXRlKQogewotCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjcnRjX3N0YXRlLT5iYXNlLmNydGMt PmRldjsKLQlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGRldik7 Ci0JZW51bSBwaXBlIHBpcGUgPSB0b19pbnRlbF9jcnRjKGNydGNfc3RhdGUtPmJhc2UuY3J0Yykt PnBpcGU7CisJc3RydWN0IGludGVsX2NydGMgKmNydGMgPSB0b19pbnRlbF9jcnRjKGNydGNfc3Rh dGUtPmJhc2UuY3J0Yyk7CisJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9f aTkxNShjcnRjLT5iYXNlLmRldik7CisJZW51bSBwaXBlIHBpcGUgPSBjcnRjLT5waXBlOwogCiAJ Z2xrX2xvYWRfZGVnYW1tYV9sdXQoY3J0Y19zdGF0ZSk7CiAKQEAgLTUzMiwyOCArNTM5LDI5IEBA IHN0YXRpYyB2b2lkIGdsa19sb2FkX2x1dHMoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNf c3RhdGUpCiAJSTkxNV9XUklURShHQU1NQV9NT0RFKHBpcGUpLCBjcnRjX3N0YXRlLT5nYW1tYV9t b2RlKTsKIH0KIAotLyogTG9hZHMgdGhlIHBhbGV0dGUvZ2FtbWEgdW5pdCBmb3IgdGhlIENSVEMg b24gQ2hlcnJ5Vmlldy4gKi8KLXN0YXRpYyB2b2lkIGNoZXJyeXZpZXdfbG9hZF9sdXRzKHN0cnVj dCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQorc3RhdGljIHZvaWQgY2hlcnJ5dmlld19s b2FkX2x1dHMoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCiB7Ci0J c3RydWN0IGRybV9jcnRjICpjcnRjID0gY3J0Y19zdGF0ZS0+YmFzZS5jcnRjOwotCXN0cnVjdCBk cm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoY3J0Yy0+ZGV2KTsKLQllbnVtIHBp cGUgcGlwZSA9IHRvX2ludGVsX2NydGMoY3J0YyktPnBpcGU7Ci0Jc3RydWN0IGRybV9jb2xvcl9s dXQgKmx1dDsKLQl1aW50MzJfdCBpLCBsdXRfc2l6ZTsKLQl1aW50MzJfdCB3b3JkMCwgd29yZDE7 CisJc3RydWN0IGludGVsX2NydGMgKmNydGMgPSB0b19pbnRlbF9jcnRjKGNydGNfc3RhdGUtPmJh c2UuY3J0Yyk7CisJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShj cnRjLT5iYXNlLmRldik7CisJY29uc3Qgc3RydWN0IGRybV9wcm9wZXJ0eV9ibG9iICpnYW1tYV9s dXQgPSBjcnRjX3N0YXRlLT5iYXNlLmdhbW1hX2x1dDsKKwljb25zdCBzdHJ1Y3QgZHJtX3Byb3Bl cnR5X2Jsb2IgKmRlZ2FtbWFfbHV0ID0gY3J0Y19zdGF0ZS0+YmFzZS5kZWdhbW1hX2x1dDsKKwll bnVtIHBpcGUgcGlwZSA9IGNydGMtPnBpcGU7CiAKIAlpZiAoY3J0Y19zdGF0ZV9pc19sZWdhY3lf Z2FtbWEoY3J0Y19zdGF0ZSkpIHsKIAkJLyogVHVybiBvZmYgZGVnYW1tYS9nYW1tYSBvbiBDR00g YmxvY2suICovCiAJCUk5MTVfV1JJVEUoQ0dNX1BJUEVfTU9ERShwaXBlKSwKIAkJCSAgIChjcnRj X3N0YXRlLT5iYXNlLmN0bSA/IENHTV9QSVBFX01PREVfQ1NDIDogMCkpOwotCQlpOXh4X2xvYWRf bHV0c19pbnRlcm5hbChjcnRjX3N0YXRlLCBjcnRjX3N0YXRlLT5iYXNlLmdhbW1hX2x1dCk7CisJ CWk5eHhfbG9hZF9sdXRzX2ludGVybmFsKGNydGNfc3RhdGUsIGdhbW1hX2x1dCk7CiAJCXJldHVy bjsKIAl9CiAKLQlpZiAoY3J0Y19zdGF0ZS0+YmFzZS5kZWdhbW1hX2x1dCkgewotCQlsdXQgPSBj cnRjX3N0YXRlLT5iYXNlLmRlZ2FtbWFfbHV0LT5kYXRhOwotCQlsdXRfc2l6ZSA9IElOVEVMX0lO Rk8oZGV2X3ByaXYpLT5jb2xvci5kZWdhbW1hX2x1dF9zaXplOworCWlmIChkZWdhbW1hX2x1dCkg eworCQljb25zdCBzdHJ1Y3QgZHJtX2NvbG9yX2x1dCAqbHV0ID0gZGVnYW1tYV9sdXQtPmRhdGE7 CisJCWludCBpLCBsdXRfc2l6ZSA9IElOVEVMX0lORk8oZGV2X3ByaXYpLT5jb2xvci5kZWdhbW1h X2x1dF9zaXplOworCiAJCWZvciAoaSA9IDA7IGkgPCBsdXRfc2l6ZTsgaSsrKSB7CisJCQl1MzIg d29yZDAsIHdvcmQxOworCiAJCQkvKiBXcml0ZSBMVVQgaW4gVTAuMTQgZm9ybWF0LiAqLwogCQkJ d29yZDAgPQogCQkJKGRybV9jb2xvcl9sdXRfZXh0cmFjdChsdXRbaV0uZ3JlZW4sIDE0KSA8PCAx NikgfApAQCAtNTY1LDEwICs1NzMsMTMgQEAgc3RhdGljIHZvaWQgY2hlcnJ5dmlld19sb2FkX2x1 dHMoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCiAJCX0KIAl9CiAKLQlpZiAo Y3J0Y19zdGF0ZS0+YmFzZS5nYW1tYV9sdXQpIHsKLQkJbHV0ID0gY3J0Y19zdGF0ZS0+YmFzZS5n YW1tYV9sdXQtPmRhdGE7Ci0JCWx1dF9zaXplID0gSU5URUxfSU5GTyhkZXZfcHJpdiktPmNvbG9y LmdhbW1hX2x1dF9zaXplOworCWlmIChnYW1tYV9sdXQpIHsKKwkJY29uc3Qgc3RydWN0IGRybV9j b2xvcl9sdXQgKmx1dCA9IGdhbW1hX2x1dC0+ZGF0YTsKKwkJaW50IGksIGx1dF9zaXplID0gSU5U RUxfSU5GTyhkZXZfcHJpdiktPmNvbG9yLmdhbW1hX2x1dF9zaXplOworCiAJCWZvciAoaSA9IDA7 IGkgPCBsdXRfc2l6ZTsgaSsrKSB7CisJCQl1MzIgd29yZDAsIHdvcmQxOworCiAJCQkvKiBXcml0 ZSBMVVQgaW4gVTAuMTAgZm9ybWF0LiAqLwogCQkJd29yZDAgPQogCQkJKGRybV9jb2xvcl9sdXRf ZXh0cmFjdChsdXRbaV0uZ3JlZW4sIDEwKSA8PCAxNikgfApAQCAtNTgyLDggKzU5Myw4IEBAIHN0 YXRpYyB2b2lkIGNoZXJyeXZpZXdfbG9hZF9sdXRzKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpj cnRjX3N0YXRlKQogCiAJSTkxNV9XUklURShDR01fUElQRV9NT0RFKHBpcGUpLAogCQkgICAoY3J0 Y19zdGF0ZS0+YmFzZS5jdG0gPyBDR01fUElQRV9NT0RFX0NTQyA6IDApIHwKLQkJICAgKGNydGNf c3RhdGUtPmJhc2UuZGVnYW1tYV9sdXQgPyBDR01fUElQRV9NT0RFX0RFR0FNTUEgOiAwKSB8Ci0J CSAgIChjcnRjX3N0YXRlLT5iYXNlLmdhbW1hX2x1dCA/IENHTV9QSVBFX01PREVfR0FNTUEgOiAw KSk7CisJCSAgIChkZWdhbW1hX2x1dCA/IENHTV9QSVBFX01PREVfREVHQU1NQSA6IDApIHwKKwkJ ICAgKGdhbW1hX2x1dCA/IENHTV9QSVBFX01PREVfR0FNTUEgOiAwKSk7CiAKIAkvKgogCSAqIEFs c28gcHJvZ3JhbSBhIGxpbmVhciBMVVQgaW4gdGhlIGxlZ2FjeSBibG9jayAoYmVoaW5kIHRoZQpA QCAtNTkyLDEwICs2MDMsOSBAQCBzdGF0aWMgdm9pZCBjaGVycnl2aWV3X2xvYWRfbHV0cyhzdHJ1 Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKIAlpOXh4X2xvYWRfbHV0c19pbnRlcm5h bChjcnRjX3N0YXRlLCBOVUxMKTsKIH0KIAotdm9pZCBpbnRlbF9jb2xvcl9sb2FkX2x1dHMoc3Ry dWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCit2b2lkIGludGVsX2NvbG9yX2xvYWRf bHV0cyhjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKIHsKLQlzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2ID0gY3J0Y19zdGF0ZS0+YmFzZS5jcnRjLT5kZXY7Ci0Jc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShkZXYpOworCXN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoY3J0Y19zdGF0ZS0+YmFzZS5jcnRjLT5k ZXYpOwogCiAJZGV2X3ByaXYtPmRpc3BsYXkubG9hZF9sdXRzKGNydGNfc3RhdGUpOwogfQpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kcnYuaAppbmRleCA4OGFjNDJiMmQ3ZWQuLjk2NzQzZjUwYjEzYSAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKQEAgLTIzMzgsOCArMjMzOCw4IEBAIGludCBpbnRlbF9w bGFuZV9hdG9taWNfY2hlY2tfd2l0aF9zdGF0ZShjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0 ZSAqb2xkX2NydGNfCiAvKiBpbnRlbF9jb2xvci5jICovCiB2b2lkIGludGVsX2NvbG9yX2luaXQo c3RydWN0IGludGVsX2NydGMgKmNydGMpOwogaW50IGludGVsX2NvbG9yX2NoZWNrKHN0cnVjdCBp bnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKTsKLXZvaWQgaW50ZWxfY29sb3Jfc2V0X2NzYyhz dHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSk7Ci12b2lkIGludGVsX2NvbG9yX2xv YWRfbHV0cyhzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSk7Cit2b2lkIGludGVs X2NvbG9yX3NldF9jc2MoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUp Owordm9pZCBpbnRlbF9jb2xvcl9sb2FkX2x1dHMoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3Rh dGUgKmNydGNfc3RhdGUpOwogCiAvKiBpbnRlbF9sc3Bjb24uYyAqLwogYm9vbCBsc3Bjb25faW5p dChzdHJ1Y3QgaW50ZWxfZGlnaXRhbF9wb3J0ICppbnRlbF9kaWdfcG9ydCk7Ci0tIAoyLjE5LjIK Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdm eCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xp c3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=