From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matt Roper Subject: [RFC 5/8] drm/i915: Move active watermarks into CRTC state Date: Wed, 1 Jul 2015 19:25:58 -0700 Message-ID: <1435803961-30079-6-git-send-email-matthew.d.roper@intel.com> References: <1435803961-30079-1-git-send-email-matthew.d.roper@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTP id 04E2C6E408 for ; Wed, 1 Jul 2015 19:26:44 -0700 (PDT) In-Reply-To: <1435803961-30079-1-git-send-email-matthew.d.roper@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 U2luY2Ugd2UgYWxsb2NhdGUgYSBmZXcgQ1JUQyBzdGF0ZXMgb24gdGhlIHN0YWNrLCBhbHNvIHN3 aXRjaCB0aGUgJ3dtJwpzdHJ1Y3QgaGVyZSB0byBiZSBhIHVuaW9uIHNvIHRoYXQgd2UncmUgbm90 IHdhc3Rpbmcgc3RhY2sgc3BhY2Ugd2l0aApvdGhlciBwbGF0Zm9ybXMnIHdhdGVybWFyayB2YWx1 ZXMuCgpTaWduZWQtb2ZmLWJ5OiBNYXR0IFJvcGVyIDxtYXR0aGV3LmQucm9wZXJAaW50ZWwuY29t PgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyB8ICA4ICsrKystLQog ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggICAgIHwgNTQgKysrKysrKysrKysrKysr KysrKy0tLS0tLS0tLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jICAg ICAgfCAzNCArKysrKysrKysrKysrKy0tLS0tLS0tLQogMyBmaWxlcyBjaGFuZ2VkLCA1NSBpbnNl cnRpb25zKCspLCA0MSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5 LmMKaW5kZXggNDZlZjk4MS4uMzZhZTNmNyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZGlzcGxheS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3Bs YXkuYwpAQCAtNDczMyw2ICs0NzMzLDcgQEAgaW50ZWxfcHJlX2Rpc2FibGVfcHJpbWFyeShzdHJ1 Y3QgZHJtX2NydGMgKmNydGMpCiBzdGF0aWMgdm9pZCBpbnRlbF9wb3N0X3BsYW5lX3VwZGF0ZShz dHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YykKIHsKIAlzdHJ1Y3QgaW50ZWxfY3J0Y19hdG9taWNfY29t bWl0ICphdG9taWMgPSAmY3J0Yy0+YXRvbWljOworCXN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpj c3RhdGUgPSB0b19pbnRlbF9jcnRjX3N0YXRlKGNydGMtPmJhc2Uuc3RhdGUpOwogCXN0cnVjdCBk cm1fZGV2aWNlICpkZXYgPSBjcnRjLT5iYXNlLmRldjsKIAlzdHJ1Y3QgZHJtX3BsYW5lICpwbGFu ZTsKIApAQCAtNDc0Miw3ICs0NzQzLDcgQEAgc3RhdGljIHZvaWQgaW50ZWxfcG9zdF9wbGFuZV91 cGRhdGUoc3RydWN0IGludGVsX2NydGMgKmNydGMpCiAJaW50ZWxfZnJvbnRidWZmZXJfZmxpcChk ZXYsIGF0b21pYy0+ZmJfYml0cyk7CiAKIAlpZiAoYXRvbWljLT5kaXNhYmxlX2N4c3IpCi0JCWNy dGMtPndtLmN4c3JfYWxsb3dlZCA9IHRydWU7CisJCWNzdGF0ZS0+d20uY3hzcl9hbGxvd2VkID0g dHJ1ZTsKIAogCWlmIChjcnRjLT5hdG9taWMudXBkYXRlX3dtX3Bvc3QpCiAJCWludGVsX3VwZGF0 ZV93YXRlcm1hcmtzKCZjcnRjLT5iYXNlKTsKQEAgLTQ3NjYsNiArNDc2Nyw3IEBAIHN0YXRpYyB2 b2lkIGludGVsX3Bvc3RfcGxhbmVfdXBkYXRlKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjKQogc3Rh dGljIHZvaWQgaW50ZWxfcHJlX3BsYW5lX3VwZGF0ZShzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YykK IHsKIAlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gY3J0Yy0+YmFzZS5kZXY7CisJc3RydWN0IGlu dGVsX2NydGNfc3RhdGUgKmNzdGF0ZSA9IHRvX2ludGVsX2NydGNfc3RhdGUoY3J0Yy0+YmFzZS5z dGF0ZSk7CiAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2LT5kZXZfcHJp dmF0ZTsKIAlzdHJ1Y3QgaW50ZWxfY3J0Y19hdG9taWNfY29tbWl0ICphdG9taWMgPSAmY3J0Yy0+ YXRvbWljOwogCXN0cnVjdCBkcm1fcGxhbmUgKnA7CkBAIC00Nzk4LDcgKzQ4MDAsNyBAQCBzdGF0 aWMgdm9pZCBpbnRlbF9wcmVfcGxhbmVfdXBkYXRlKHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjKQog CQlpbnRlbF9wcmVfZGlzYWJsZV9wcmltYXJ5KCZjcnRjLT5iYXNlKTsKIAogCWlmIChhdG9taWMt PmRpc2FibGVfY3hzcikgewotCQljcnRjLT53bS5jeHNyX2FsbG93ZWQgPSBmYWxzZTsKKwkJY3N0 YXRlLT53bS5jeHNyX2FsbG93ZWQgPSBmYWxzZTsKIAkJaW50ZWxfc2V0X21lbW9yeV9jeHNyKGRl dl9wcml2LCBmYWxzZSk7CiAJfQogfQpAQCAtMTQxMjcsNyArMTQxMjksNyBAQCBzdGF0aWMgdm9p ZCBpbnRlbF9jcnRjX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgaW50IHBpcGUpCiAJaW50 ZWxfY3J0Yy0+Y3Vyc29yX2NudGwgPSB+MDsKIAlpbnRlbF9jcnRjLT5jdXJzb3Jfc2l6ZSA9IH4w OwogCi0JaW50ZWxfY3J0Yy0+d20uY3hzcl9hbGxvd2VkID0gdHJ1ZTsKKwljcnRjX3N0YXRlLT53 bS5jeHNyX2FsbG93ZWQgPSB0cnVlOwogCiAJQlVHX09OKHBpcGUgPj0gQVJSQVlfU0laRShkZXZf cHJpdi0+cGxhbmVfdG9fY3J0Y19tYXBwaW5nKSB8fAogCSAgICAgICBkZXZfcHJpdi0+cGxhbmVf dG9fY3J0Y19tYXBwaW5nW2ludGVsX2NydGMtPnBsYW5lXSAhPSBOVUxMKTsKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZHJ2LmgKaW5kZXggY2RjN2Q2ZC4uYzIzY2Y3ZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZHJ2LmgKQEAgLTMyOCw2ICszMjgsMjEgQEAgc3RydWN0IGludGVsX2NydGNfc2NhbGVyX3N0YXRl IHsKIAlpbnQgc2NhbGVyX2lkOwogfTsKIAorc3RydWN0IGludGVsX3BpcGVfd20geworCXN0cnVj dCBpbnRlbF93bV9sZXZlbCB3bVs1XTsKKwl1aW50MzJfdCBsaW5ldGltZTsKKwlib29sIGZiY193 bV9lbmFibGVkOworCWJvb2wgcGlwZV9lbmFibGVkOworCWJvb2wgc3ByaXRlc19lbmFibGVkOwor CWJvb2wgc3ByaXRlc19zY2FsZWQ7Cit9OworCitzdHJ1Y3Qgc2tsX3BpcGVfd20geworCXN0cnVj dCBza2xfd21fbGV2ZWwgd21bOF07CisJc3RydWN0IHNrbF93bV9sZXZlbCB0cmFuc193bTsKKwl1 aW50MzJfdCBsaW5ldGltZTsKK307CisKIHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlIHsKIAlzdHJ1 Y3QgZHJtX2NydGNfc3RhdGUgYmFzZTsKIApAQCAtNDYzLDYgKzQ3OCwyMCBAQCBzdHJ1Y3QgaW50 ZWxfY3J0Y19zdGF0ZSB7CiAKIAkvKiBJVkIgc3ByaXRlIHNjYWxpbmcgdy9hIChXYUN4U1JEaXNh YmxlZEZvclNwcml0ZVNjYWxpbmc6aXZiKSAqLwogCWJvb2wgZGlzYWJsZV9scF93bTsKKworCXN0 cnVjdCB7CisJCS8qCisJCSAqIGZpbmFsIHdhdGVybWFya3MsIHByb2dyYW1tZWQgcG9zdC12Ymxh bmsgd2hlbiB0aGlzIHN0YXRlCisJCSAqIGlzIGNvbW1pdHRlZAorCQkgKi8KKwkJdW5pb24gewor CQkJc3RydWN0IGludGVsX3BpcGVfd20gaWxrOworCQkJc3RydWN0IHNrbF9waXBlX3dtIHNrbDsK KwkJfSBhY3RpdmU7CisKKwkJLyogYWxsb3cgQ3hTUiBvbiB0aGlzIHBpcGUgKi8KKwkJYm9vbCBj eHNyX2FsbG93ZWQ7CisJfSB3bTsKIH07CiAKIHN0cnVjdCB2bHZfd21fc3RhdGUgewpAQCAtNDc0 LDE1ICs1MDMsNiBAQCBzdHJ1Y3Qgdmx2X3dtX3N0YXRlIHsKIAlib29sIGN4c3I7CiB9OwogCi1z dHJ1Y3QgaW50ZWxfcGlwZV93bSB7Ci0Jc3RydWN0IGludGVsX3dtX2xldmVsIHdtWzVdOwotCXVp bnQzMl90IGxpbmV0aW1lOwotCWJvb2wgZmJjX3dtX2VuYWJsZWQ7Ci0JYm9vbCBwaXBlX2VuYWJs ZWQ7Ci0JYm9vbCBzcHJpdGVzX2VuYWJsZWQ7Ci0JYm9vbCBzcHJpdGVzX3NjYWxlZDsKLX07Ci0K IHN0cnVjdCBpbnRlbF9tbWlvX2ZsaXAgewogCXN0cnVjdCB3b3JrX3N0cnVjdCB3b3JrOwogCXN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1OwpAQCAtNDkwLDEyICs1MTAsNiBAQCBzdHJ1Y3Qg aW50ZWxfbW1pb19mbGlwIHsKIAlzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YzsKIH07CiAKLXN0cnVj dCBza2xfcGlwZV93bSB7Ci0Jc3RydWN0IHNrbF93bV9sZXZlbCB3bVs4XTsKLQlzdHJ1Y3Qgc2ts X3dtX2xldmVsIHRyYW5zX3dtOwotCXVpbnQzMl90IGxpbmV0aW1lOwotfTsKLQogLyoKICAqIFRy YWNraW5nIG9mIG9wZXJhdGlvbnMgdGhhdCBuZWVkIHRvIGJlIHBlcmZvcm1lZCBhdCB0aGUgYmVn aW5uaW5nL2VuZCBvZiBhbgogICogYXRvbWljIGNvbW1pdCwgb3V0c2lkZSB0aGUgYXRvbWljIHNl Y3Rpb24gd2hlcmUgaW50ZXJydXB0cyBhcmUgZGlzYWJsZWQuCkBAIC01NjQsMTYgKzU3OCw2IEBA IHN0cnVjdCBpbnRlbF9jcnRjIHsKIAlib29sIGNwdV9maWZvX3VuZGVycnVuX2Rpc2FibGVkOwog CWJvb2wgcGNoX2ZpZm9fdW5kZXJydW5fZGlzYWJsZWQ7CiAKLQkvKiBwZXItcGlwZSB3YXRlcm1h cmsgc3RhdGUgKi8KLQlzdHJ1Y3QgewotCQkvKiB3YXRlcm1hcmtzIGN1cnJlbnRseSBiZWluZyB1 c2VkICAqLwotCQlzdHJ1Y3QgaW50ZWxfcGlwZV93bSBhY3RpdmU7Ci0JCS8qIFNLTCB3bSB2YWx1 ZXMgY3VycmVudGx5IGluIHVzZSAqLwotCQlzdHJ1Y3Qgc2tsX3BpcGVfd20gc2tsX2FjdGl2ZTsK LQkJLyogYWxsb3cgQ3hTUiBvbiB0aGlzIHBpcGUgKi8KLQkJYm9vbCBjeHNyX2FsbG93ZWQ7Ci0J fSB3bTsKLQogCWludCBzY2FubGluZV9vZmZzZXQ7CiAKIAlzdHJ1Y3QgaW50ZWxfY3J0Y19hdG9t aWNfY29tbWl0IGF0b21pYzsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X3BtLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jCmluZGV4IDQ0ZTM2MWMuLjBl Mjg4MDYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMKKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYwpAQCAtMTExNiw2ICsxMTE2LDcgQEAgc3Rh dGljIHZvaWQgdmx2X2ludmVydF93bXMoc3RydWN0IGludGVsX2NydGMgKmNydGMpCiBzdGF0aWMg dm9pZCB2bHZfY29tcHV0ZV93bShzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YykKIHsKIAlzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2ID0gY3J0Yy0+YmFzZS5kZXY7CisJc3RydWN0IGludGVsX2NydGNfc3Rh dGUgKmNzdGF0ZSA9IHRvX2ludGVsX2NydGNfc3RhdGUoY3J0Yy0+YmFzZS5zdGF0ZSk7CiAJc3Ry dWN0IHZsdl93bV9zdGF0ZSAqd21fc3RhdGUgPSAmY3J0Yy0+d21fc3RhdGU7CiAJc3RydWN0IGlu dGVsX3BsYW5lICpwbGFuZTsKIAlpbnQgc3JfZmlmb19zaXplID0gSU5URUxfSU5GTyhkZXYpLT5u dW1fcGlwZXMgKiA1MTIgLSAxOwpAQCAtMTEyMyw3ICsxMTI0LDcgQEAgc3RhdGljIHZvaWQgdmx2 X2NvbXB1dGVfd20oc3RydWN0IGludGVsX2NydGMgKmNydGMpCiAKIAltZW1zZXQod21fc3RhdGUs IDAsIHNpemVvZigqd21fc3RhdGUpKTsKIAotCXdtX3N0YXRlLT5jeHNyID0gY3J0Yy0+cGlwZSAh PSBQSVBFX0MgJiYgY3J0Yy0+d20uY3hzcl9hbGxvd2VkOworCXdtX3N0YXRlLT5jeHNyID0gY3J0 Yy0+cGlwZSAhPSBQSVBFX0MgJiYgY3N0YXRlLT53bS5jeHNyX2FsbG93ZWQ7CiAJaWYgKElTX0NI RVJSWVZJRVcoZGV2KSkKIAkJd21fc3RhdGUtPm51bV9sZXZlbHMgPSBDSFZfV01fTlVNX0xFVkVM UzsKIAllbHNlCkBAIC0yMzQwLDcgKzIzNDEsOSBAQCBzdGF0aWMgdm9pZCBpbGtfY29tcHV0ZV93 bV9jb25maWcoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAogCS8qIENvbXB1dGUgdGhlIGN1cnJl bnRseSBfYWN0aXZlXyBjb25maWcgKi8KIAlmb3JfZWFjaF9pbnRlbF9jcnRjKGRldiwgaW50ZWxf Y3J0YykgewotCQljb25zdCBzdHJ1Y3QgaW50ZWxfcGlwZV93bSAqd20gPSAmaW50ZWxfY3J0Yy0+ d20uYWN0aXZlOworCQljb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3N0YXRlID0KKwkJ CXRvX2ludGVsX2NydGNfc3RhdGUoaW50ZWxfY3J0Yy0+YmFzZS5zdGF0ZSk7CisJCWNvbnN0IHN0 cnVjdCBpbnRlbF9waXBlX3dtICp3bSA9ICZjc3RhdGUtPndtLmFjdGl2ZS5pbGs7CiAKIAkJaWYg KCF3bS0+cGlwZV9lbmFibGVkKQogCQkJY29udGludWU7CkBAIC0yNDM3LDcgKzI0NDAsOSBAQCBz dGF0aWMgdm9pZCBpbGtfbWVyZ2Vfd21fbGV2ZWwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAly ZXRfd20tPmVuYWJsZSA9IHRydWU7CiAKIAlmb3JfZWFjaF9pbnRlbF9jcnRjKGRldiwgaW50ZWxf Y3J0YykgewotCQljb25zdCBzdHJ1Y3QgaW50ZWxfcGlwZV93bSAqYWN0aXZlID0gJmludGVsX2Ny dGMtPndtLmFjdGl2ZTsKKwkJY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNzdGF0ZSA9 CisJCQl0b19pbnRlbF9jcnRjX3N0YXRlKGludGVsX2NydGMtPmJhc2Uuc3RhdGUpOworCQljb25z dCBzdHJ1Y3QgaW50ZWxfcGlwZV93bSAqYWN0aXZlID0gJmNzdGF0ZS0+d20uYWN0aXZlLmlsazsK IAkJY29uc3Qgc3RydWN0IGludGVsX3dtX2xldmVsICp3bSA9ICZhY3RpdmUtPndtW2xldmVsXTsK IAogCQlpZiAoIWFjdGl2ZS0+cGlwZV9lbmFibGVkKQpAQCAtMjU4MywxNCArMjU4OCwxNSBAQCBz dGF0aWMgdm9pZCBpbGtfY29tcHV0ZV93bV9yZXN1bHRzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYs CiAKIAkvKiBMUDAgcmVnaXN0ZXIgdmFsdWVzICovCiAJZm9yX2VhY2hfaW50ZWxfY3J0YyhkZXYs IGludGVsX2NydGMpIHsKKwkJY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNzdGF0ZSA9 CisJCQl0b19pbnRlbF9jcnRjX3N0YXRlKGludGVsX2NydGMtPmJhc2Uuc3RhdGUpOwogCQllbnVt IHBpcGUgcGlwZSA9IGludGVsX2NydGMtPnBpcGU7Ci0JCWNvbnN0IHN0cnVjdCBpbnRlbF93bV9s ZXZlbCAqciA9Ci0JCQkmaW50ZWxfY3J0Yy0+d20uYWN0aXZlLndtWzBdOworCQljb25zdCBzdHJ1 Y3QgaW50ZWxfd21fbGV2ZWwgKnIgPSAmY3N0YXRlLT53bS5hY3RpdmUuaWxrLndtWzBdOwogCiAJ CWlmIChXQVJOX09OKCFyLT5lbmFibGUpKQogCQkJY29udGludWU7CiAKLQkJcmVzdWx0cy0+d21f bGluZXRpbWVbcGlwZV0gPSBpbnRlbF9jcnRjLT53bS5hY3RpdmUubGluZXRpbWU7CisJCXJlc3Vs dHMtPndtX2xpbmV0aW1lW3BpcGVdID0gY3N0YXRlLT53bS5hY3RpdmUuaWxrLmxpbmV0aW1lOwog CiAJCXJlc3VsdHMtPndtX3BpcGVbcGlwZV0gPQogCQkJKHItPnByaV92YWwgPDwgV00wX1BJUEVf UExBTkVfU0hJRlQpIHwKQEAgLTM1ODMsMTYgKzM1ODksMTYgQEAgc3RhdGljIGJvb2wgc2tsX3Vw ZGF0ZV9waXBlX3dtKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAkJCSAgICAgICBzdHJ1Y3Qgc2ts X2RkYl9hbGxvY2F0aW9uICpkZGIsIC8qIG91dCAqLwogCQkJICAgICAgIHN0cnVjdCBza2xfcGlw ZV93bSAqcGlwZV93bSAvKiBvdXQgKi8pCiB7Ci0Jc3RydWN0IGludGVsX2NydGMgKmludGVsX2Ny dGMgPSB0b19pbnRlbF9jcnRjKGNydGMpOworCXN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjc3Rh dGUgPSB0b19pbnRlbF9jcnRjX3N0YXRlKGNydGMtPnN0YXRlKTsKIAogCXNrbF9jb21wdXRlX3dt X3BpcGVfcGFyYW1ldGVycyhjcnRjLCBwYXJhbXMpOwogCXNrbF9hbGxvY2F0ZV9waXBlX2RkYihj cnRjLCBjb25maWcsIHBhcmFtcywgZGRiKTsKIAlza2xfY29tcHV0ZV9waXBlX3dtKGNydGMsIGRk YiwgcGFyYW1zLCBwaXBlX3dtKTsKIAotCWlmICghbWVtY21wKCZpbnRlbF9jcnRjLT53bS5za2xf YWN0aXZlLCBwaXBlX3dtLCBzaXplb2YoKnBpcGVfd20pKSkKKwlpZiAoIW1lbWNtcCgmY3N0YXRl LT53bS5hY3RpdmUuc2tsLCBwaXBlX3dtLCBzaXplb2YoKnBpcGVfd20pKSkKIAkJcmV0dXJuIGZh bHNlOwogCi0JaW50ZWxfY3J0Yy0+d20uc2tsX2FjdGl2ZSA9ICpwaXBlX3dtOworCWNzdGF0ZS0+ d20uYWN0aXZlLnNrbCA9ICpwaXBlX3dtOwogCiAJcmV0dXJuIHRydWU7CiB9CkBAIC0zNzYyLDEw ICszNzY4LDEwIEBAIHN0YXRpYyB2b2lkIGlsa191cGRhdGVfd20oc3RydWN0IGRybV9jcnRjICpj cnRjKQogCiAJaW50ZWxfY29tcHV0ZV9waXBlX3dtKGNzdGF0ZSwgJnBpcGVfd20pOwogCi0JaWYg KCFtZW1jbXAoJmludGVsX2NydGMtPndtLmFjdGl2ZSwgJnBpcGVfd20sIHNpemVvZihwaXBlX3dt KSkpCisJaWYgKCFtZW1jbXAoJmNzdGF0ZS0+d20uYWN0aXZlLmlsaywgJnBpcGVfd20sIHNpemVv ZihwaXBlX3dtKSkpCiAJCXJldHVybjsKIAotCWludGVsX2NydGMtPndtLmFjdGl2ZSA9IHBpcGVf d207CisJY3N0YXRlLT53bS5hY3RpdmUuaWxrID0gcGlwZV93bTsKIAogCWlsa19wcm9ncmFtX3dh dGVybWFya3MoZGV2X3ByaXYpOwogfQpAQCAtMzgyMCw3ICszODI2LDggQEAgc3RhdGljIHZvaWQg c2tsX3BpcGVfd21fZ2V0X2h3X3N0YXRlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKIAlzdHJ1Y3Qg ZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwogCXN0cnVjdCBz a2xfd21fdmFsdWVzICpodyA9ICZkZXZfcHJpdi0+d20uc2tsX2h3OwogCXN0cnVjdCBpbnRlbF9j cnRjICppbnRlbF9jcnRjID0gdG9faW50ZWxfY3J0YyhjcnRjKTsKLQlzdHJ1Y3Qgc2tsX3BpcGVf d20gKmFjdGl2ZSA9ICZpbnRlbF9jcnRjLT53bS5za2xfYWN0aXZlOworCXN0cnVjdCBpbnRlbF9j cnRjX3N0YXRlICpjc3RhdGUgPSB0b19pbnRlbF9jcnRjX3N0YXRlKGNydGMtPnN0YXRlKTsKKwlz dHJ1Y3Qgc2tsX3BpcGVfd20gKmFjdGl2ZSA9ICZjc3RhdGUtPndtLmFjdGl2ZS5za2w7CiAJZW51 bSBwaXBlIHBpcGUgPSBpbnRlbF9jcnRjLT5waXBlOwogCWludCBsZXZlbCwgaSwgbWF4X2xldmVs OwogCXVpbnQzMl90IHRlbXA7CkBAIC0zODgzLDcgKzM4OTAsOCBAQCBzdGF0aWMgdm9pZCBpbGtf cGlwZV93bV9nZXRfaHdfc3RhdGUoc3RydWN0IGRybV9jcnRjICpjcnRjKQogCXN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7CiAJc3RydWN0IGlsa193 bV92YWx1ZXMgKmh3ID0gJmRldl9wcml2LT53bS5odzsKIAlzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50 ZWxfY3J0YyA9IHRvX2ludGVsX2NydGMoY3J0Yyk7Ci0Jc3RydWN0IGludGVsX3BpcGVfd20gKmFj dGl2ZSA9ICZpbnRlbF9jcnRjLT53bS5hY3RpdmU7CisJc3RydWN0IGludGVsX2NydGNfc3RhdGUg KmNzdGF0ZSA9IHRvX2ludGVsX2NydGNfc3RhdGUoY3J0Yy0+c3RhdGUpOworCXN0cnVjdCBpbnRl bF9waXBlX3dtICphY3RpdmUgPSAmY3N0YXRlLT53bS5hY3RpdmUuaWxrOwogCWVudW0gcGlwZSBw aXBlID0gaW50ZWxfY3J0Yy0+cGlwZTsKIAlzdGF0aWMgY29uc3QgdW5zaWduZWQgaW50IHdtMF9w aXBlX3JlZ1tdID0gewogCQlbUElQRV9BXSA9IFdNMF9QSVBFQV9JTEssCi0tIAoyLjEuNAoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1h aWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK