From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville Syrjala Subject: [PATCH v3 2/7] drm/i915: Track pipe gamma enable/disable in crtc state Date: Thu, 7 Feb 2019 22:21:41 +0200 Message-ID: <20190207202146.26423-3-ville.syrjala@linux.intel.com> References: <20190207202146.26423-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 mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTPS id 773DE6ECDE for ; Thu, 7 Feb 2019 20:21:56 +0000 (UTC) In-Reply-To: <20190207202146.26423-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 RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KClRy YWNrIHdoZXRoZXIgcGlwZSBnYW1tYSBpcyBlbmFibGVkIG9yIGRpc2FibGVkLiBGb3Igbm93IHdl CnN0aWNrIHRvIHRoZSBjdXJyZW50IGJlaGF2aW91ciBvZiBhbHdheXMgZW5hYmxpbmcgZ2FtbWEu IEJ1dAp3ZSBkbyBnZXQgd29ya2luZyBzdGF0ZSByZWFkb3V0IGZvciB0aGlzIG5vdy4gT24gU0tM KyB3ZSB1c2UKdGhlIHBpcGUgYm90dG9tIGNvbG9yIGFzIG91ciBoYXJkd2FyZSBzdGF0ZS4gT24g cHJlLVNLTCB3ZQpyZWFkIHRoZSBzdGF0ZSBiYWNrIGZyb20gdGhlIHByaW1hcnkgcGxhbmUgY29u dHJvbCByZWdpc3Rlci4KVGhhdCBvbmx5IHJlYWxseSBjb3JyZWN0IGZvciBnNHgrLCBhcyBvbGRl ciBwbGF0Zm9ybXMgbmV2ZXIKZ2FtbWEgY29ycmVjdCBwaXBlIGJvdHRvbSBjb2xvci4gQnV0IGRv aW5nIHRoZSByZWFkb3V0IHRoZQpzYW1lIHdheSBvbiBhbGwgcGxhdGZvcm1zIGlzIGZpbmUsIGFu ZCB0aGVyZSBpcyBubyBvdGhlciB3YXkKdG8gZG8gaXQgcmVhbGx5LgoKdjI6IEluaXRpYWxpemUg dmFsIGF0IGRlY2xhcmF0aW9uIChVbWEpCiAgICBEcm9wIHRoZSBib2d1cyBza2wgc2NhbGVyIGNv bW1lbnQgY2hhbmdlIChVbWEpCiAgICBSZWJhc2UKdjM6IEFsbG93IGZhc3Rib290IHdpdGggZ2Ft bWFfZW5hYmxlIGNoYW5nZXMgKE1hYXJ0ZW4pCgpTaWduZWQtb2ZmLWJ5OiBWaWxsZSBTeXJqw6Rs w6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgpSZXZpZXdlZC1ieTogTWF0dCBSb3Bl ciA8bWF0dGhldy5kLnJvcGVyQGludGVsLmNvbT4KUmV2aWV3ZWQtYnk6IFVtYSBTaGFua2FyIDx1 bWEuc2hhbmthckBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY29s b3IuYyAgIHwgMjggKysrKysrKysrKysrKy0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rp c3BsYXkuYyB8IDU1ICsrKysrKysrKysrKysrKysrKysrKystLS0tLS0KIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2Rydi5oICAgICB8ICAzICsrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9zcHJpdGUuYyAgfCAxNyArKysrKysrLS0KIDQgZmlsZXMgY2hhbmdlZCwgODggaW5zZXJ0aW9u cygrKSwgMTUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfY29sb3IuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2NvbG9yLmMKaW5kZXgg ODY5MTUxMjVkMTdjLi43NDYxMzhkN2JjYmMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2NvbG9yLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfY29sb3Iu YwpAQCAtMzg3LDYgKzM4NywyOCBAQCBzdGF0aWMgdm9pZCBoc3dfY29sb3JfY29tbWl0KGNvbnN0 IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQogCWlsa19sb2FkX2NzY19tYXRy aXgoY3J0Y19zdGF0ZSk7CiB9CiAKK3N0YXRpYyB2b2lkIHNrbF9jb2xvcl9jb21taXQoY29uc3Qg c3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCit7CisJc3RydWN0IGludGVsX2Ny dGMgKmNydGMgPSB0b19pbnRlbF9jcnRjKGNydGNfc3RhdGUtPmJhc2UuY3J0Yyk7CisJc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShjcnRjLT5iYXNlLmRldik7CisJ ZW51bSBwaXBlIHBpcGUgPSBjcnRjLT5waXBlOworCXUzMiB2YWwgPSAwOworCisJLyoKKwkgKiBX ZSBkb24ndCAoeWV0KSBhbGxvdyB1c2Vyc3BhY2UgdG8gY29udHJvbCB0aGUgcGlwZSBiYWNrZ3Jv dW5kIGNvbG9yLAorCSAqIHNvIGZvcmNlIGl0IHRvIGJsYWNrLCBidXQgYXBwbHkgcGlwZSBnYW1t YSBhbmQgQ1NDIGFwcHJvcHJpYXRlbHkKKwkgKiBzbyB0aGF0IGl0cyBoYW5kbGluZyB3aWxsIG1h dGNoIGhvdyB3ZSBwcm9ncmFtIG91ciBwbGFuZXMuCisJICovCisJaWYgKGNydGNfc3RhdGUtPmdh bW1hX2VuYWJsZSkKKwkJdmFsIHw9IFNLTF9CT1RUT01fQ09MT1JfR0FNTUFfRU5BQkxFOworCXZh bCB8PSBTS0xfQk9UVE9NX0NPTE9SX0NTQ19FTkFCTEU7CisJSTkxNV9XUklURShTS0xfQk9UVE9N X0NPTE9SKHBpcGUpLCB2YWwpOworCisJSTkxNV9XUklURShHQU1NQV9NT0RFKGNydGMtPnBpcGUp LCBjcnRjX3N0YXRlLT5nYW1tYV9tb2RlKTsKKworCWlsa19sb2FkX2NzY19tYXRyaXgoY3J0Y19z dGF0ZSk7Cit9CisKIHN0YXRpYyB2b2lkIGJkd19sb2FkX2RlZ2FtbWFfbHV0KGNvbnN0IHN0cnVj dCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQogewogCXN0cnVjdCBpbnRlbF9jcnRjICpj cnRjID0gdG9faW50ZWxfY3J0YyhjcnRjX3N0YXRlLT5iYXNlLmNydGMpOwpAQCAtNjQ0LDYgKzY2 Niw4IEBAIGludCBpbnRlbF9jb2xvcl9jaGVjayhzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0 Y19zdGF0ZSkKIAlkZWdhbW1hX3Rlc3RzID0gSU5URUxfSU5GTyhkZXZfcHJpdiktPmNvbG9yLmRl Z2FtbWFfbHV0X3Rlc3RzOwogCWdhbW1hX3Rlc3RzID0gSU5URUxfSU5GTyhkZXZfcHJpdiktPmNv bG9yLmdhbW1hX2x1dF90ZXN0czsKIAorCWNydGNfc3RhdGUtPmdhbW1hX2VuYWJsZSA9IHRydWU7 CisKIAkvKiBBbHdheXMgYWxsb3cgbGVnYWN5IGdhbW1hIExVVCB3aXRoIG5vIGZ1cnRoZXIgY2hl Y2tpbmcuICovCiAJaWYgKGNydGNfc3RhdGVfaXNfbGVnYWN5X2dhbW1hKGNydGNfc3RhdGUpKSB7 CiAJCWNydGNfc3RhdGUtPmdhbW1hX21vZGUgPSBHQU1NQV9NT0RFX01PREVfOEJJVDsKQEAgLTY4 OSw3ICs3MTMsOSBAQCB2b2lkIGludGVsX2NvbG9yX2luaXQoc3RydWN0IGludGVsX2NydGMgKmNy dGMpCiAJCWVsc2UKIAkJCWRldl9wcml2LT5kaXNwbGF5LmxvYWRfbHV0cyA9IGk5eHhfbG9hZF9s dXRzOwogCi0JCWlmIChJTlRFTF9HRU4oZGV2X3ByaXYpID49IDggfHwgSVNfSEFTV0VMTChkZXZf cHJpdikpCisJCWlmIChJTlRFTF9HRU4oZGV2X3ByaXYpID49IDkpCisJCQlkZXZfcHJpdi0+ZGlz cGxheS5jb2xvcl9jb21taXQgPSBza2xfY29sb3JfY29tbWl0OworCQllbHNlIGlmIChJU19CUk9B RFdFTEwoZGV2X3ByaXYpIHx8IElTX0hBU1dFTEwoZGV2X3ByaXYpKQogCQkJZGV2X3ByaXYtPmRp c3BsYXkuY29sb3JfY29tbWl0ID0gaHN3X2NvbG9yX2NvbW1pdDsKIAkJZWxzZQogCQkJZGV2X3By aXYtPmRpc3BsYXkuY29sb3JfY29tbWl0ID0gaWxrX2NvbG9yX2NvbW1pdDsKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2Rpc3BsYXkuYwppbmRleCBhMDFiN2UwYmM3NmMuLjI5NDc5Y2Y3OWQ4ZSAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwpAQCAtMzIyMSw3ICszMjIxLDggQEAgc3Rh dGljIHUzMiBpOXh4X3BsYW5lX2N0bF9jcnRjKGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRl ICpjcnRjX3N0YXRlKQogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5 MTUoY3J0Yy0+YmFzZS5kZXYpOwogCXUzMiBkc3BjbnRyID0gMDsKIAotCWRzcGNudHIgfD0gRElT UFBMQU5FX0dBTU1BX0VOQUJMRTsKKwlpZiAoY3J0Y19zdGF0ZS0+Z2FtbWFfZW5hYmxlKQorCQlk c3BjbnRyIHw9IERJU1BQTEFORV9HQU1NQV9FTkFCTEU7CiAKIAlpZiAoSVNfSEFTV0VMTChkZXZf cHJpdikgfHwgSVNfQlJPQURXRUxMKGRldl9wcml2KSkKIAkJZHNwY250ciB8PSBESVNQUExBTkVf UElQRV9DU0NfRU5BQkxFOwpAQCAtMzcwMSw3ICszNzAyLDkgQEAgdTMyIHNrbF9wbGFuZV9jdGxf Y3J0Yyhjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKIAlpZiAoSU5U RUxfR0VOKGRldl9wcml2KSA+PSAxMCB8fCBJU19HRU1JTklMQUtFKGRldl9wcml2KSkKIAkJcmV0 dXJuIHBsYW5lX2N0bDsKIAotCXBsYW5lX2N0bCB8PSBQTEFORV9DVExfUElQRV9HQU1NQV9FTkFC TEU7CisJaWYgKGNydGNfc3RhdGUtPmdhbW1hX2VuYWJsZSkKKwkJcGxhbmVfY3RsIHw9IFBMQU5F X0NUTF9QSVBFX0dBTU1BX0VOQUJMRTsKKwogCXBsYW5lX2N0bCB8PSBQTEFORV9DVExfUElQRV9D U0NfRU5BQkxFOwogCiAJcmV0dXJuIHBsYW5lX2N0bDsKQEAgLTM3NTQsNyArMzc1Nyw5IEBAIHUz MiBnbGtfcGxhbmVfY29sb3JfY3RsX2NydGMoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUg KmNydGNfc3RhdGUpCiAJaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPj0gMTEpCiAJCXJldHVybiBw bGFuZV9jb2xvcl9jdGw7CiAKLQlwbGFuZV9jb2xvcl9jdGwgfD0gUExBTkVfQ09MT1JfUElQRV9H QU1NQV9FTkFCTEU7CisJaWYgKGNydGNfc3RhdGUtPmdhbW1hX2VuYWJsZSkKKwkJcGxhbmVfY29s b3JfY3RsIHw9IFBMQU5FX0NPTE9SX1BJUEVfR0FNTUFfRU5BQkxFOworCiAJcGxhbmVfY29sb3Jf Y3RsIHw9IFBMQU5FX0NPTE9SX1BJUEVfQ1NDX0VOQUJMRTsKIAogCXJldHVybiBwbGFuZV9jb2xv cl9jdGw7CkBAIC04MTAxLDYgKzgxMDYsMjAgQEAgc3RhdGljIHZvaWQgaW50ZWxfZ2V0X2NydGNf eWNiY3JfY29uZmlnKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAogCXBpcGVfY29uZmlnLT5vdXRw dXRfZm9ybWF0ID0gb3V0cHV0OwogfQogCitzdGF0aWMgdm9pZCBpOXh4X2dldF9waXBlX2NvbG9y X2NvbmZpZyhzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKK3sKKwlzdHJ1Y3Qg aW50ZWxfY3J0YyAqY3J0YyA9IHRvX2ludGVsX2NydGMoY3J0Y19zdGF0ZS0+YmFzZS5jcnRjKTsK KwlzdHJ1Y3QgaW50ZWxfcGxhbmUgKnBsYW5lID0gdG9faW50ZWxfcGxhbmUoY3J0Yy0+YmFzZS5w cmltYXJ5KTsKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNy dGMtPmJhc2UuZGV2KTsKKwllbnVtIGk5eHhfcGxhbmVfaWQgaTl4eF9wbGFuZSA9IHBsYW5lLT5p OXh4X3BsYW5lOworCXUzMiB0bXA7CisKKwl0bXAgPSBJOTE1X1JFQUQoRFNQQ05UUihpOXh4X3Bs YW5lKSk7CisKKwlpZiAodG1wICYgRElTUFBMQU5FX0dBTU1BX0VOQUJMRSkKKwkJY3J0Y19zdGF0 ZS0+Z2FtbWFfZW5hYmxlID0gdHJ1ZTsKK30KKwogc3RhdGljIGJvb2wgaTl4eF9nZXRfcGlwZV9j b25maWcoc3RydWN0IGludGVsX2NydGMgKmNydGMsCiAJCQkJIHN0cnVjdCBpbnRlbF9jcnRjX3N0 YXRlICpwaXBlX2NvbmZpZykKIHsKQEAgLTgxNDksNiArODE2OCw4IEBAIHN0YXRpYyBib29sIGk5 eHhfZ2V0X3BpcGVfY29uZmlnKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAogCXBpcGVfY29uZmln LT5nYW1tYV9tb2RlID0gKHRtcCAmIFBJUEVDT05GX0dBTU1BX01PREVfTUFTS19JOVhYKSA+Pgog CQlQSVBFQ09ORl9HQU1NQV9NT0RFX1NISUZUOwogCisJaTl4eF9nZXRfcGlwZV9jb2xvcl9jb25m aWcocGlwZV9jb25maWcpOworCiAJaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPCA0KQogCQlwaXBl X2NvbmZpZy0+ZG91YmxlX3dpZGUgPSB0bXAgJiBQSVBFQ09ORl9ET1VCTEVfV0lERTsKIApAQCAt OTIyNyw2ICs5MjQ4LDggQEAgc3RhdGljIGJvb2wgaXJvbmxha2VfZ2V0X3BpcGVfY29uZmlnKHN0 cnVjdCBpbnRlbF9jcnRjICpjcnRjLAogCXBpcGVfY29uZmlnLT5nYW1tYV9tb2RlID0gKHRtcCAm IFBJUEVDT05GX0dBTU1BX01PREVfTUFTS19JTEspID4+CiAJCVBJUEVDT05GX0dBTU1BX01PREVf U0hJRlQ7CiAKKwlpOXh4X2dldF9waXBlX2NvbG9yX2NvbmZpZyhwaXBlX2NvbmZpZyk7CisKIAlp ZiAoSTkxNV9SRUFEKFBDSF9UUkFOU0NPTkYoY3J0Yy0+cGlwZSkpICYgVFJBTlNfRU5BQkxFKSB7 CiAJCXN0cnVjdCBpbnRlbF9zaGFyZWRfZHBsbCAqcGxsOwogCQllbnVtIGludGVsX2RwbGxfaWQg cGxsX2lkOwpAQCAtOTg2MSw2ICs5ODg0LDE1IEBAIHN0YXRpYyBib29sIGhhc3dlbGxfZ2V0X3Bp cGVfY29uZmlnKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjLAogCXBpcGVfY29uZmlnLT5nYW1tYV9t b2RlID0KIAkJSTkxNV9SRUFEKEdBTU1BX01PREUoY3J0Yy0+cGlwZSkpICYgR0FNTUFfTU9ERV9N T0RFX01BU0s7CiAKKwlpZiAoSU5URUxfR0VOKGRldl9wcml2KSA+PSA5KSB7CisJCXUzMiB0bXAg PSBJOTE1X1JFQUQoU0tMX0JPVFRPTV9DT0xPUihjcnRjLT5waXBlKSk7CisKKwkJaWYgKHRtcCAm IFNLTF9CT1RUT01fQ09MT1JfR0FNTUFfRU5BQkxFKQorCQkJcGlwZV9jb25maWctPmdhbW1hX2Vu YWJsZSA9IHRydWU7CisJfSBlbHNlIHsKKwkJaTl4eF9nZXRfcGlwZV9jb2xvcl9jb25maWcocGlw ZV9jb25maWcpOworCX0KKwogCXBvd2VyX2RvbWFpbiA9IFBPV0VSX0RPTUFJTl9QSVBFX1BBTkVM X0ZJVFRFUihjcnRjLT5waXBlKTsKIAlpZiAoaW50ZWxfZGlzcGxheV9wb3dlcl9nZXRfaWZfZW5h YmxlZChkZXZfcHJpdiwgcG93ZXJfZG9tYWluKSkgewogCQlXQVJOX09OKHBvd2VyX2RvbWFpbl9t YXNrICYgQklUX1VMTChwb3dlcl9kb21haW4pKTsKQEAgLTEwMDMxLDcgKzEwMDYzLDEyIEBAIGk4 NDVfY3Vyc29yX21heF9zdHJpZGUoc3RydWN0IGludGVsX3BsYW5lICpwbGFuZSwKIAogc3RhdGlj IHUzMiBpODQ1X2N1cnNvcl9jdGxfY3J0Yyhjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAq Y3J0Y19zdGF0ZSkKIHsKLQlyZXR1cm4gQ1VSU09SX0dBTU1BX0VOQUJMRTsKKwl1MzIgY250bCA9 IDA7CisKKwlpZiAoY3J0Y19zdGF0ZS0+Z2FtbWFfZW5hYmxlKQorCQljbnRsIHw9IENVUlNPUl9H QU1NQV9FTkFCTEU7CisKKwlyZXR1cm4gY250bDsKIH0KIAogc3RhdGljIHUzMiBpODQ1X2N1cnNv cl9jdGwoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsCkBAIC0xMDE4 NSw3ICsxMDIyMiw4IEBAIHN0YXRpYyB1MzIgaTl4eF9jdXJzb3JfY3RsX2NydGMoY29uc3Qgc3Ry dWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCiAJaWYgKElOVEVMX0dFTihkZXZfcHJp dikgPj0gMTEpCiAJCXJldHVybiBjbnRsOwogCi0JY250bCB8PSBNQ1VSU09SX0dBTU1BX0VOQUJM RTsKKwlpZiAoY3J0Y19zdGF0ZS0+Z2FtbWFfZW5hYmxlKQorCQljbnRsID0gTUNVUlNPUl9HQU1N QV9FTkFCTEU7CiAKIAlpZiAoSEFTX0RESShkZXZfcHJpdikpCiAJCWNudGwgfD0gTUNVUlNPUl9Q SVBFX0NTQ19FTkFCTEU7CkBAIC0xMTE4MCwxMiArMTEyMTgsNiBAQCBzdGF0aWMgaW50IGludGVs X2NydGNfYXRvbWljX2NoZWNrKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAkJcmV0ID0gaW50ZWxf Y29sb3JfY2hlY2socGlwZV9jb25maWcpOwogCQlpZiAocmV0KQogCQkJcmV0dXJuIHJldDsKLQot CQkvKgotCQkgKiBDaGFuZ2luZyBjb2xvciBtYW5hZ2VtZW50IG9uIEludGVsIGhhcmR3YXJlIGlz Ci0JCSAqIGhhbmRsZWQgYXMgcGFydCBvZiBwbGFuZXMgdXBkYXRlLgotCQkgKi8KLQkJY3J0Y19z dGF0ZS0+cGxhbmVzX2NoYW5nZWQgPSB0cnVlOwogCX0KIAogCXJldCA9IDA7CkBAIC0xMjA5Miw2 ICsxMjEyNCw3IEBAIGludGVsX3BpcGVfY29uZmlnX2NvbXBhcmUoc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2LAogCQlQSVBFX0NPTkZfQ0hFQ0tfQ0xPQ0tfRlVaWlkocGl4ZWxfcmF0 ZSk7CiAKIAkJUElQRV9DT05GX0NIRUNLX1goZ2FtbWFfbW9kZSk7CisJCVBJUEVfQ09ORl9DSEVD S19CT09MKGdhbW1hX2VuYWJsZSk7CiAJfQogCiAJUElQRV9DT05GX0NIRUNLX0JPT0woZG91Ymxl X3dpZGUpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAppbmRleCAxNWRiNDEzOTRiOWUuLmVkNTMx MzAyNWE5ZSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKQEAgLTk2MSw2ICs5NjEsOSBAQCBz dHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSB7CiAJLyogT3V0cHV0IGRvd24gc2NhbGluZyBpcyBkb25l IGluIExTUENPTiBkZXZpY2UgKi8KIAlib29sIGxzcGNvbl9kb3duc2FtcGxpbmc7CiAKKwkvKiBl bmFibGUgcGlwZSBnYW1tYT8gKi8KKwlib29sIGdhbW1hX2VuYWJsZTsKKwogCS8qIERpc3BsYXkg U3RyZWFtIGNvbXByZXNzaW9uIHN0YXRlICovCiAJc3RydWN0IHsKIAkJYm9vbCBjb21wcmVzc2lv bl9lbmFibGU7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zcHJpdGUu YyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3Nwcml0ZS5jCmluZGV4IGI1NmExYTlhZDAx ZC4uZGIzNzNlM2FjNjAxIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9z cHJpdGUuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zcHJpdGUuYwpAQCAtNzQx LDcgKzc0MSwxMiBAQCB2bHZfdXBkYXRlX2NscmMoY29uc3Qgc3RydWN0IGludGVsX3BsYW5lX3N0 YXRlICpwbGFuZV9zdGF0ZSkKIAogc3RhdGljIHUzMiB2bHZfc3ByaXRlX2N0bF9jcnRjKGNvbnN0 IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQogewotCXJldHVybiBTUF9HQU1N QV9FTkFCTEU7CisJdTMyIHNwcmN0bCA9IDA7CisKKwlpZiAoY3J0Y19zdGF0ZS0+Z2FtbWFfZW5h YmxlKQorCQlzcHJjdGwgfD0gU1BfR0FNTUFfRU5BQkxFOworCisJcmV0dXJuIHNwcmN0bDsKIH0K IAogc3RhdGljIHUzMiB2bHZfc3ByaXRlX2N0bChjb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0 ZSAqY3J0Y19zdGF0ZSwKQEAgLTkxOSw3ICs5MjQsOCBAQCBzdGF0aWMgdTMyIGl2Yl9zcHJpdGVf Y3RsX2NydGMoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCiAJc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShjcnRjX3N0YXRlLT5iYXNl LmNydGMtPmRldik7CiAJdTMyIHNwcmN0bCA9IDA7CiAKLQlzcHJjdGwgfD0gU1BSSVRFX0dBTU1B X0VOQUJMRTsKKwlpZiAoY3J0Y19zdGF0ZS0+Z2FtbWFfZW5hYmxlKQorCQlzcHJjdGwgfD0gU1BS SVRFX0dBTU1BX0VOQUJMRTsKIAogCWlmIChJU19IQVNXRUxMKGRldl9wcml2KSB8fCBJU19CUk9B RFdFTEwoZGV2X3ByaXYpKQogCQlzcHJjdGwgfD0gU1BSSVRFX1BJUEVfQ1NDX0VOQUJMRTsKQEAg LTExMDcsNyArMTExMywxMiBAQCBnNHhfc3ByaXRlX21heF9zdHJpZGUoc3RydWN0IGludGVsX3Bs YW5lICpwbGFuZSwKIAogc3RhdGljIHUzMiBnNHhfc3ByaXRlX2N0bF9jcnRjKGNvbnN0IHN0cnVj dCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRlKQogewotCXJldHVybiBEVlNfR0FNTUFfRU5B QkxFOworCXUzMiBkdnNjbnRyID0gMDsKKworCWlmIChjcnRjX3N0YXRlLT5nYW1tYV9lbmFibGUp CisJCWR2c2NudHIgfD0gRFZTX0dBTU1BX0VOQUJMRTsKKworCXJldHVybiBkdnNjbnRyOwogfQog CiBzdGF0aWMgdTMyIGc0eF9zcHJpdGVfY3RsKGNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRl ICpjcnRjX3N0YXRlLAotLSAKMi4xOS4yCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5m cmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9pbnRlbC1nZngK