From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville Syrjala Subject: [PATCH v2 4/5] drm: Check crtc_state->enable rather than crtc->enabled in drm_plane_helper_check_state() Date: Wed, 1 Nov 2017 22:15:58 +0200 Message-ID: <20171101201558.6059-1-ville.syrjala@linux.intel.com> References: <20171101182920.14386-5-ville.syrjala@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20171101182920.14386-5-ville.syrjala@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KCmRy bV9wbGFuZV9oZWxwZXJfY2hlY2tfc3RhdGUoKSBpcyBzdXBwb3NlZCB0byBkbyB0aGluZ3MgdGhl IGF0b21pYyB3YXksCnNvIGl0IHNob3VsZCBub3QgYmUgaW5zcGVjdGluZyBjcnRjLT5lbmFibGVk LiBSYXRoZXIgd2Ugc2hvdWxkIGJlCmxvb2tpbmcgYXQgY3J0Y19zdGF0ZS0+ZW5hYmxlLgoKV2Ug aGF2ZSBhIHNsaWdodCBjb21wbGljYXRpb24gZHVlIHRvIGRybV9wbGFuZV9oZWxwZXJfY2hlY2tf dXBkYXRlKCkKcmV1c2luZyBkcm1fcGxhbmVfaGVscGVyX2NoZWNrX3N0YXRlKCkgZm9yIG5vbi1h dG9taWMgZHJpdmVycy4gVGh1cwp3ZSdsbCBoYXZlIHRvIHBhc3MgdGhlIGNydGNfc3RhdGUgaW4g bWFuYWxseSBhbmQgY29uc3RydWN0IGEgZmFrZQpjcnRjX3N0YXRlIGluIGRybV9wbGFuZV9oZWxw ZXJfY2hlY2tfdXBkYXRlKCkuCgp2MjogRml4IHRoZSBXQVJOcyBhYm91dCBwbGFuZV9zdGF0ZS0+ Y3J0YyBtYXRjaGluZyBjcnRjX3N0YXRlLT5jcnRjCgpTaWduZWQtb2ZmLWJ5OiBWaWxsZSBTeXJq w6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2Ry bS9hcm0vaGRsY2RfY3J0Yy5jICAgICAgICAgICAgfCAgMiArLQogZHJpdmVycy9ncHUvZHJtL2Fy bS9tYWxpZHBfcGxhbmVzLmMgICAgICAgICB8ICAzICstCiBkcml2ZXJzL2dwdS9kcm0vZHJtX3Bs YW5lX2hlbHBlci5jICAgICAgICAgIHwgNTEgKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0K IGRyaXZlcnMvZ3B1L2RybS9kcm1fc2ltcGxlX2ttc19oZWxwZXIuYyAgICAgfCAgMiArLQogZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jICAgICAgICB8ICAyICsrCiBkcml2ZXJz L2dwdS9kcm0vaW14L2lwdXYzLXBsYW5lLmMgICAgICAgICAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1 L2RybS9tZWRpYXRlay9tdGtfZHJtX3BsYW5lLmMgICAgfCAgMiArLQogZHJpdmVycy9ncHUvZHJt L21lc29uL21lc29uX3BsYW5lLmMgICAgICAgICB8ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vbXNt L21kcC9tZHA1L21kcDVfcGxhbmUuYyAgIHwgIDQgKy0tCiBkcml2ZXJzL2dwdS9kcm0vbm91dmVh dS9udjUwX2Rpc3BsYXkuYyAgICAgIHwgIDYgKystLQogZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlw L3JvY2tjaGlwX2RybV92b3AuYyB8ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vdGVncmEvZGMuYyAg ICAgICAgICAgICAgICAgIHwgIDQgKy0tCiBkcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9r bXMuYyAgICAgICAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS96dGUvenhfcGxhbmUuYyAgICAg ICAgICAgICAgfCAgNCArLS0KIGluY2x1ZGUvZHJtL2RybV9wbGFuZV9oZWxwZXIuaCAgICAgICAg ICAgICAgfCAgMyArLQogMTUgZmlsZXMgY2hhbmdlZCwgNTIgaW5zZXJ0aW9ucygrKSwgMzkgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FybS9oZGxjZF9jcnRjLmMg Yi9kcml2ZXJzL2dwdS9kcm0vYXJtL2hkbGNkX2NydGMuYwppbmRleCA3MmIyMmI4MDU0MTIuLjE0 NzIxNzIzZmE4YSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FybS9oZGxjZF9jcnRjLmMK KysrIGIvZHJpdmVycy9ncHUvZHJtL2FybS9oZGxjZF9jcnRjLmMKQEAgLTI1Miw3ICsyNTIsNyBA QCBzdGF0aWMgaW50IGhkbGNkX3BsYW5lX2F0b21pY19jaGVjayhzdHJ1Y3QgZHJtX3BsYW5lICpw bGFuZSwKIAljbGlwLngyID0gY3J0Y19zdGF0ZS0+YWRqdXN0ZWRfbW9kZS5oZGlzcGxheTsKIAlj bGlwLnkyID0gY3J0Y19zdGF0ZS0+YWRqdXN0ZWRfbW9kZS52ZGlzcGxheTsKIAotCXJldHVybiBk cm1fcGxhbmVfaGVscGVyX2NoZWNrX3N0YXRlKHN0YXRlLCAmY2xpcCwKKwlyZXR1cm4gZHJtX3Bs YW5lX2hlbHBlcl9jaGVja19zdGF0ZShzdGF0ZSwgY3J0Y19zdGF0ZSwgJmNsaXAsCiAJCQkJCSAg ICBEUk1fUExBTkVfSEVMUEVSX05PX1NDQUxJTkcsCiAJCQkJCSAgICBEUk1fUExBTkVfSEVMUEVS X05PX1NDQUxJTkcsCiAJCQkJCSAgICBmYWxzZSwgdHJ1ZSk7CmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vYXJtL21hbGlkcF9wbGFuZXMuYyBiL2RyaXZlcnMvZ3B1L2RybS9hcm0vbWFsaWRw X3BsYW5lcy5jCmluZGV4IDk0ZTdlM2ZhMzQwOC4uNDkyZDk5ZGQ1NWQ0IDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vYXJtL21hbGlkcF9wbGFuZXMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0v YXJtL21hbGlkcF9wbGFuZXMuYwpAQCAtMTUwLDcgKzE1MCw4IEBAIHN0YXRpYyBpbnQgbWFsaWRw X3NlX2NoZWNrX3NjYWxpbmcoc3RydWN0IG1hbGlkcF9wbGFuZSAqbXAsCiAKIAljbGlwLngyID0g Y3J0Y19zdGF0ZS0+YWRqdXN0ZWRfbW9kZS5oZGlzcGxheTsKIAljbGlwLnkyID0gY3J0Y19zdGF0 ZS0+YWRqdXN0ZWRfbW9kZS52ZGlzcGxheTsKLQlyZXQgPSBkcm1fcGxhbmVfaGVscGVyX2NoZWNr X3N0YXRlKHN0YXRlLCAmY2xpcCwgMCwgSU5UX01BWCwgdHJ1ZSwgdHJ1ZSk7CisJcmV0ID0gZHJt X3BsYW5lX2hlbHBlcl9jaGVja19zdGF0ZShzdGF0ZSwgY3J0Y19zdGF0ZSwgJmNsaXAsCisJCQkJ CSAgIDAsIElOVF9NQVgsIHRydWUsIHRydWUpOwogCWlmIChyZXQpCiAJCXJldHVybiByZXQ7CiAK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fcGxhbmVfaGVscGVyLmMgYi9kcml2ZXJz L2dwdS9kcm0vZHJtX3BsYW5lX2hlbHBlci5jCmluZGV4IDc1OWVkOTNmNGJhOC4uZWVmMGZmY2Q3 ZWQ1IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX3BsYW5lX2hlbHBlci5jCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9kcm1fcGxhbmVfaGVscGVyLmMKQEAgLTEwMSw3ICsxMDEsOCBAQCBz dGF0aWMgaW50IGdldF9jb25uZWN0b3JzX2Zvcl9jcnRjKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywK IAogLyoqCiAgKiBkcm1fcGxhbmVfaGVscGVyX2NoZWNrX3N0YXRlKCkgLSBDaGVjayBwbGFuZSBz dGF0ZSBmb3IgdmFsaWRpdHkKLSAqIEBzdGF0ZTogcGxhbmUgc3RhdGUgdG8gY2hlY2sKKyAqIEBw bGFuZV9zdGF0ZTogcGxhbmUgc3RhdGUgdG8gY2hlY2sKKyAqIEBjcnRjX3N0YXRlOiBjcnRjIHN0 YXRlIHRvIGNoZWNrCiAgKiBAY2xpcDogaW50ZWdlciBjbGlwcGluZyBjb29yZGluYXRlcwogICog QG1pbl9zY2FsZTogbWluaW11bSBAc3JjOkBkZXN0IHNjYWxpbmcgZmFjdG9yIGluIDE2LjE2IGZp eGVkIHBvaW50CiAgKiBAbWF4X3NjYWxlOiBtYXhpbXVtIEBzcmM6QGRlc3Qgc2NhbGluZyBmYWN0 b3IgaW4gMTYuMTYgZml4ZWQgcG9pbnQKQEAgLTEyMCwzNSArMTIxLDM3IEBAIHN0YXRpYyBpbnQg Z2V0X2Nvbm5lY3RvcnNfZm9yX2NydGMoc3RydWN0IGRybV9jcnRjICpjcnRjLAogICogUkVUVVJO UzoKICAqIFplcm8gaWYgdXBkYXRlIGFwcGVhcnMgdmFsaWQsIGVycm9yIGNvZGUgb24gZmFpbHVy ZQogICovCi1pbnQgZHJtX3BsYW5lX2hlbHBlcl9jaGVja19zdGF0ZShzdHJ1Y3QgZHJtX3BsYW5l X3N0YXRlICpzdGF0ZSwKK2ludCBkcm1fcGxhbmVfaGVscGVyX2NoZWNrX3N0YXRlKHN0cnVjdCBk cm1fcGxhbmVfc3RhdGUgKnBsYW5lX3N0YXRlLAorCQkJCSBjb25zdCBzdHJ1Y3QgZHJtX2NydGNf c3RhdGUgKmNydGNfc3RhdGUsCiAJCQkJIGNvbnN0IHN0cnVjdCBkcm1fcmVjdCAqY2xpcCwKIAkJ CQkgaW50IG1pbl9zY2FsZSwKIAkJCQkgaW50IG1heF9zY2FsZSwKIAkJCQkgYm9vbCBjYW5fcG9z aXRpb24sCiAJCQkJIGJvb2wgY2FuX3VwZGF0ZV9kaXNhYmxlZCkKIHsKLQlzdHJ1Y3QgZHJtX2Ny dGMgKmNydGMgPSBzdGF0ZS0+Y3J0YzsKLQlzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiA9IHN0 YXRlLT5mYjsKLQlzdHJ1Y3QgZHJtX3JlY3QgKnNyYyA9ICZzdGF0ZS0+c3JjOwotCXN0cnVjdCBk cm1fcmVjdCAqZHN0ID0gJnN0YXRlLT5kc3Q7Ci0JdW5zaWduZWQgaW50IHJvdGF0aW9uID0gc3Rh dGUtPnJvdGF0aW9uOworCXN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKmZiID0gcGxhbmVfc3RhdGUt PmZiOworCXN0cnVjdCBkcm1fcmVjdCAqc3JjID0gJnBsYW5lX3N0YXRlLT5zcmM7CisJc3RydWN0 IGRybV9yZWN0ICpkc3QgPSAmcGxhbmVfc3RhdGUtPmRzdDsKKwl1bnNpZ25lZCBpbnQgcm90YXRp b24gPSBwbGFuZV9zdGF0ZS0+cm90YXRpb247CiAJaW50IGhzY2FsZSwgdnNjYWxlOwogCi0JKnNy YyA9IGRybV9wbGFuZV9zdGF0ZV9zcmMoc3RhdGUpOwotCSpkc3QgPSBkcm1fcGxhbmVfc3RhdGVf ZGVzdChzdGF0ZSk7CisJV0FSTl9PTihwbGFuZV9zdGF0ZS0+Y3J0YyAmJiBwbGFuZV9zdGF0ZS0+ Y3J0YyAhPSBjcnRjX3N0YXRlLT5jcnRjKTsKKworCSpzcmMgPSBkcm1fcGxhbmVfc3RhdGVfc3Jj KHBsYW5lX3N0YXRlKTsKKwkqZHN0ID0gZHJtX3BsYW5lX3N0YXRlX2Rlc3QocGxhbmVfc3RhdGUp OwogCiAJaWYgKCFmYikgewotCQlzdGF0ZS0+dmlzaWJsZSA9IGZhbHNlOworCQlwbGFuZV9zdGF0 ZS0+dmlzaWJsZSA9IGZhbHNlOwogCQlyZXR1cm4gMDsKIAl9CiAKIAkvKiBjcnRjIHNob3VsZCBv bmx5IGJlIE5VTEwgd2hlbiBkaXNhYmxpbmcgKGkuZS4sICFmYikgKi8KLQlpZiAoV0FSTl9PTigh Y3J0YykpIHsKLQkJc3RhdGUtPnZpc2libGUgPSBmYWxzZTsKKwlpZiAoV0FSTl9PTighcGxhbmVf c3RhdGUtPmNydGMpKSB7CisJCXBsYW5lX3N0YXRlLT52aXNpYmxlID0gZmFsc2U7CiAJCXJldHVy biAwOwogCX0KIAotCWlmICghY3J0Yy0+ZW5hYmxlZCAmJiAhY2FuX3VwZGF0ZV9kaXNhYmxlZCkg eworCWlmICghY3J0Y19zdGF0ZS0+ZW5hYmxlICYmICFjYW5fdXBkYXRlX2Rpc2FibGVkKSB7CiAJ CURSTV9ERUJVR19LTVMoIkNhbm5vdCB1cGRhdGUgcGxhbmUgb2YgYSBkaXNhYmxlZCBDUlRDLlxu Iik7CiAJCXJldHVybiAtRUlOVkFMOwogCX0KQEAgLTE2MCwxNiArMTYzLDE2IEBAIGludCBkcm1f cGxhbmVfaGVscGVyX2NoZWNrX3N0YXRlKHN0cnVjdCBkcm1fcGxhbmVfc3RhdGUgKnN0YXRlLAog CXZzY2FsZSA9IGRybV9yZWN0X2NhbGNfdnNjYWxlKHNyYywgZHN0LCBtaW5fc2NhbGUsIG1heF9z Y2FsZSk7CiAJaWYgKGhzY2FsZSA8IDAgfHwgdnNjYWxlIDwgMCkgewogCQlEUk1fREVCVUdfS01T KCJJbnZhbGlkIHNjYWxpbmcgb2YgcGxhbmVcbiIpOwotCQlkcm1fcmVjdF9kZWJ1Z19wcmludCgi c3JjOiAiLCAmc3RhdGUtPnNyYywgdHJ1ZSk7Ci0JCWRybV9yZWN0X2RlYnVnX3ByaW50KCJkc3Q6 ICIsICZzdGF0ZS0+ZHN0LCBmYWxzZSk7CisJCWRybV9yZWN0X2RlYnVnX3ByaW50KCJzcmM6ICIs ICZwbGFuZV9zdGF0ZS0+c3JjLCB0cnVlKTsKKwkJZHJtX3JlY3RfZGVidWdfcHJpbnQoImRzdDog IiwgJnBsYW5lX3N0YXRlLT5kc3QsIGZhbHNlKTsKIAkJcmV0dXJuIC1FUkFOR0U7CiAJfQogCi0J c3RhdGUtPnZpc2libGUgPSBkcm1fcmVjdF9jbGlwX3NjYWxlZChzcmMsIGRzdCwgY2xpcCwgaHNj YWxlLCB2c2NhbGUpOworCXBsYW5lX3N0YXRlLT52aXNpYmxlID0gZHJtX3JlY3RfY2xpcF9zY2Fs ZWQoc3JjLCBkc3QsIGNsaXAsIGhzY2FsZSwgdnNjYWxlKTsKIAogCWRybV9yZWN0X3JvdGF0ZV9p bnYoc3JjLCBmYi0+d2lkdGggPDwgMTYsIGZiLT5oZWlnaHQgPDwgMTYsIHJvdGF0aW9uKTsKIAot CWlmICghc3RhdGUtPnZpc2libGUpCisJaWYgKCFwbGFuZV9zdGF0ZS0+dmlzaWJsZSkKIAkJLyoK IAkJICogUGxhbmUgaXNuJ3QgdmlzaWJsZTsgc29tZSBkcml2ZXJzIGNhbiBoYW5kbGUgdGhpcwog CQkgKiBzbyB3ZSBqdXN0IHJldHVybiBzdWNjZXNzIGhlcmUuICBEcml2ZXJzIHRoYXQgY2FuJ3QK QEAgLTIzMCw3ICsyMzMsNyBAQCBpbnQgZHJtX3BsYW5lX2hlbHBlcl9jaGVja191cGRhdGUoc3Ry dWN0IGRybV9wbGFuZSAqcGxhbmUsCiAJCQkJICBib29sIGNhbl91cGRhdGVfZGlzYWJsZWQsCiAJ CQkJICBib29sICp2aXNpYmxlKQogewotCXN0cnVjdCBkcm1fcGxhbmVfc3RhdGUgc3RhdGUgPSB7 CisJc3RydWN0IGRybV9wbGFuZV9zdGF0ZSBwbGFuZV9zdGF0ZSA9IHsKIAkJLnBsYW5lID0gcGxh bmUsCiAJCS5jcnRjID0gY3J0YywKIAkJLmZiID0gZmIsCkBAIC0yNDUsMTggKzI0OCwyMiBAQCBp bnQgZHJtX3BsYW5lX2hlbHBlcl9jaGVja191cGRhdGUoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUs CiAJCS5yb3RhdGlvbiA9IHJvdGF0aW9uLAogCQkudmlzaWJsZSA9ICp2aXNpYmxlLAogCX07CisJ c3RydWN0IGRybV9jcnRjX3N0YXRlIGNydGNfc3RhdGUgPSB7CisJCS5jcnRjID0gY3J0YywKKwkJ LmVuYWJsZSA9IGNydGMtPmVuYWJsZWQsCisJfTsKIAlpbnQgcmV0OwogCi0JcmV0ID0gZHJtX3Bs YW5lX2hlbHBlcl9jaGVja19zdGF0ZSgmc3RhdGUsIGNsaXAsCisJcmV0ID0gZHJtX3BsYW5lX2hl bHBlcl9jaGVja19zdGF0ZSgmcGxhbmVfc3RhdGUsICZjcnRjX3N0YXRlLCBjbGlwLAogCQkJCQkg ICBtaW5fc2NhbGUsIG1heF9zY2FsZSwKIAkJCQkJICAgY2FuX3Bvc2l0aW9uLAogCQkJCQkgICBj YW5fdXBkYXRlX2Rpc2FibGVkKTsKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCi0JKnNyYyA9 IHN0YXRlLnNyYzsKLQkqZHN0ID0gc3RhdGUuZHN0OwotCSp2aXNpYmxlID0gc3RhdGUudmlzaWJs ZTsKKwkqc3JjID0gcGxhbmVfc3RhdGUuc3JjOworCSpkc3QgPSBwbGFuZV9zdGF0ZS5kc3Q7CisJ KnZpc2libGUgPSBwbGFuZV9zdGF0ZS52aXNpYmxlOwogCiAJcmV0dXJuIDA7CiB9CmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX3NpbXBsZV9rbXNfaGVscGVyLmMgYi9kcml2ZXJzL2dw dS9kcm0vZHJtX3NpbXBsZV9rbXNfaGVscGVyLmMKaW5kZXggZGM5ZmQxMDlkZTE0Li5kNDI4Yzgw NTAyNWMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fc2ltcGxlX2ttc19oZWxwZXIu YworKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX3NpbXBsZV9rbXNfaGVscGVyLmMKQEAgLTEwMyw3 ICsxMDMsNyBAQCBzdGF0aWMgaW50IGRybV9zaW1wbGVfa21zX3BsYW5lX2F0b21pY19jaGVjayhz dHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKIAljbGlwLngyID0gY3J0Y19zdGF0ZS0+YWRqdXN0ZWRf bW9kZS5oZGlzcGxheTsKIAljbGlwLnkyID0gY3J0Y19zdGF0ZS0+YWRqdXN0ZWRfbW9kZS52ZGlz cGxheTsKIAotCXJldCA9IGRybV9wbGFuZV9oZWxwZXJfY2hlY2tfc3RhdGUocGxhbmVfc3RhdGUs ICZjbGlwLAorCXJldCA9IGRybV9wbGFuZV9oZWxwZXJfY2hlY2tfc3RhdGUocGxhbmVfc3RhdGUs IGNydGNfc3RhdGUsICZjbGlwLAogCQkJCQkgICBEUk1fUExBTkVfSEVMUEVSX05PX1NDQUxJTkcs CiAJCQkJCSAgIERSTV9QTEFORV9IRUxQRVJfTk9fU0NBTElORywKIAkJCQkJICAgZmFsc2UsIHRy dWUpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCmluZGV4IDczN2RlMjUxZDBmOC4u NGE0NTk3MjZiMzZiIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNw bGF5LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCkBAIC05MzE3 LDYgKzkzMTcsNyBAQCBzdGF0aWMgaW50IGludGVsX2NoZWNrX2N1cnNvcihzdHJ1Y3QgaW50ZWxf Y3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSwKIAlpbnQgcmV0OwogCiAJcmV0ID0gZHJtX3BsYW5lX2hl bHBlcl9jaGVja19zdGF0ZSgmcGxhbmVfc3RhdGUtPmJhc2UsCisJCQkJCSAgICZjcnRjX3N0YXRl LT5iYXNlLAogCQkJCQkgICAmcGxhbmVfc3RhdGUtPmNsaXAsCiAJCQkJCSAgIERSTV9QTEFORV9I RUxQRVJfTk9fU0NBTElORywKIAkJCQkJICAgRFJNX1BMQU5FX0hFTFBFUl9OT19TQ0FMSU5HLApA QCAtMTI4MDgsNiArMTI4MDksNyBAQCBpbnRlbF9jaGVja19wcmltYXJ5X3BsYW5lKHN0cnVjdCBp bnRlbF9wbGFuZSAqcGxhbmUsCiAJfQogCiAJcmV0ID0gZHJtX3BsYW5lX2hlbHBlcl9jaGVja19z dGF0ZSgmc3RhdGUtPmJhc2UsCisJCQkJCSAgICZjcnRjX3N0YXRlLT5iYXNlLAogCQkJCQkgICAm c3RhdGUtPmNsaXAsCiAJCQkJCSAgIG1pbl9zY2FsZSwgbWF4X3NjYWxlLAogCQkJCQkgICBjYW5f cG9zaXRpb24sIHRydWUpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2lteC9pcHV2My1w bGFuZS5jIGIvZHJpdmVycy9ncHUvZHJtL2lteC9pcHV2My1wbGFuZS5jCmluZGV4IDI0N2M2MGU2 YmVkMi4uNTFiMjNhYzE3NWUzIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaW14L2lwdXYz LXBsYW5lLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2lteC9pcHV2My1wbGFuZS5jCkBAIC0zNDIs NyArMzQyLDcgQEAgc3RhdGljIGludCBpcHVfcGxhbmVfYXRvbWljX2NoZWNrKHN0cnVjdCBkcm1f cGxhbmUgKnBsYW5lLAogCWNsaXAueTEgPSAwOwogCWNsaXAueDIgPSBjcnRjX3N0YXRlLT5hZGp1 c3RlZF9tb2RlLmhkaXNwbGF5OwogCWNsaXAueTIgPSBjcnRjX3N0YXRlLT5hZGp1c3RlZF9tb2Rl LnZkaXNwbGF5OwotCXJldCA9IGRybV9wbGFuZV9oZWxwZXJfY2hlY2tfc3RhdGUoc3RhdGUsICZj bGlwLAorCXJldCA9IGRybV9wbGFuZV9oZWxwZXJfY2hlY2tfc3RhdGUoc3RhdGUsIGNydGNfc3Rh dGUsICZjbGlwLAogCQkJCQkgICBEUk1fUExBTkVfSEVMUEVSX05PX1NDQUxJTkcsCiAJCQkJCSAg IERSTV9QTEFORV9IRUxQRVJfTk9fU0NBTElORywKIAkJCQkJICAgY2FuX3Bvc2l0aW9uLCB0cnVl KTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX3BsYW5lLmMg Yi9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9wbGFuZS5jCmluZGV4IDZmMTIxODkx NDMwZi4uN2ViYjMzNjU3NzA0IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsv bXRrX2RybV9wbGFuZS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX3Bs YW5lLmMKQEAgLTExMSw3ICsxMTEsNyBAQCBzdGF0aWMgaW50IG10a19wbGFuZV9hdG9taWNfY2hl Y2soc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCiAJY2xpcC54MiA9IGNydGNfc3RhdGUtPm1vZGUu aGRpc3BsYXk7CiAJY2xpcC55MiA9IGNydGNfc3RhdGUtPm1vZGUudmRpc3BsYXk7CiAKLQlyZXR1 cm4gZHJtX3BsYW5lX2hlbHBlcl9jaGVja19zdGF0ZShzdGF0ZSwgJmNsaXAsCisJcmV0dXJuIGRy bV9wbGFuZV9oZWxwZXJfY2hlY2tfc3RhdGUoc3RhdGUsIGNydGNfc3RhdGUsICZjbGlwLAogCQkJ CQkgICAgRFJNX1BMQU5FX0hFTFBFUl9OT19TQ0FMSU5HLAogCQkJCQkgICAgRFJNX1BMQU5FX0hF TFBFUl9OT19TQ0FMSU5HLAogCQkJCQkgICAgdHJ1ZSwgdHJ1ZSk7CmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vbWVzb24vbWVzb25fcGxhbmUuYyBiL2RyaXZlcnMvZ3B1L2RybS9tZXNvbi9t ZXNvbl9wbGFuZS5jCmluZGV4IDE3ZTk2ZmE0Nzg2OC4uMmEwMGI3MjBjMzcxIDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vbWVzb24vbWVzb25fcGxhbmUuYworKysgYi9kcml2ZXJzL2dwdS9k cm0vbWVzb24vbWVzb25fcGxhbmUuYwpAQCAtNjEsNyArNjEsNyBAQCBzdGF0aWMgaW50IG1lc29u X3BsYW5lX2F0b21pY19jaGVjayhzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKIAljbGlwLngyID0g Y3J0Y19zdGF0ZS0+bW9kZS5oZGlzcGxheTsKIAljbGlwLnkyID0gY3J0Y19zdGF0ZS0+bW9kZS52 ZGlzcGxheTsKIAotCXJldHVybiBkcm1fcGxhbmVfaGVscGVyX2NoZWNrX3N0YXRlKHN0YXRlLCAm Y2xpcCwKKwlyZXR1cm4gZHJtX3BsYW5lX2hlbHBlcl9jaGVja19zdGF0ZShzdGF0ZSwgY3J0Y19z dGF0ZSwgJmNsaXAsCiAJCQkJCSAgICBEUk1fUExBTkVfSEVMUEVSX05PX1NDQUxJTkcsCiAJCQkJ CSAgICBEUk1fUExBTkVfSEVMUEVSX05PX1NDQUxJTkcsCiAJCQkJCSAgICB0cnVlLCB0cnVlKTsK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDUvbWRwNV9wbGFuZS5jIGIv ZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRwNS9tZHA1X3BsYW5lLmMKaW5kZXggNGIyMmFjMzQx M2ExLi4xYzE5NGE5NDUzZDkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21k cDUvbWRwNV9wbGFuZS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDUvbWRwNV9w bGFuZS5jCkBAIC0zNDgsOCArMzQ4LDggQEAgc3RhdGljIGludCBtZHA1X3BsYW5lX2F0b21pY19j aGVja193aXRoX3N0YXRlKHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSwKIAltaW5f c2NhbGUgPSBGUkFDXzE2XzE2KDEsIDgpOwogCW1heF9zY2FsZSA9IEZSQUNfMTZfMTYoOCwgMSk7 CiAKLQlyZXQgPSBkcm1fcGxhbmVfaGVscGVyX2NoZWNrX3N0YXRlKHN0YXRlLCAmY2xpcCwgbWlu X3NjYWxlLAotCQkJCQkgICBtYXhfc2NhbGUsIHRydWUsIHRydWUpOworCXJldCA9IGRybV9wbGFu ZV9oZWxwZXJfY2hlY2tfc3RhdGUoc3RhdGUsIGNydGNfc3RhdGUsICZjbGlwLAorCQkJCQkgICBt aW5fc2NhbGUsIG1heF9zY2FsZSwgdHJ1ZSwgdHJ1ZSk7CiAJaWYgKHJldCkKIAkJcmV0dXJuIHJl dDsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvbnY1MF9kaXNwbGF5LmMg Yi9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9udjUwX2Rpc3BsYXkuYwppbmRleCBlNDc1MWY5MmIz NDIuLjdmMTFhODhkMDU5MyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvbnY1 MF9kaXNwbGF5LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvbnY1MF9kaXNwbGF5LmMK QEAgLTExNDMsNyArMTE0Myw4IEBAIG52NTBfY3Vyc19hY3F1aXJlKHN0cnVjdCBudjUwX3duZHcg KnduZHcsIHN0cnVjdCBudjUwX3duZHdfYXRvbSAqYXN5dywKIHsKIAlpbnQgcmV0OwogCi0JcmV0 ID0gZHJtX3BsYW5lX2hlbHBlcl9jaGVja19zdGF0ZSgmYXN5dy0+c3RhdGUsICZhc3l3LT5jbGlw LAorCXJldCA9IGRybV9wbGFuZV9oZWxwZXJfY2hlY2tfc3RhdGUoJmFzeXctPnN0YXRlLCAmYXN5 aC0+c3RhdGUsCisJCQkJCSAgICZhc3l3LT5jbGlwLAogCQkJCQkgICBEUk1fUExBTkVfSEVMUEVS X05PX1NDQUxJTkcsCiAJCQkJCSAgIERSTV9QTEFORV9IRUxQRVJfTk9fU0NBTElORywKIAkJCQkJ ICAgdHJ1ZSwgdHJ1ZSk7CkBAIC0xNDMyLDcgKzE0MzMsOCBAQCBudjUwX2Jhc2VfYWNxdWlyZShz dHJ1Y3QgbnY1MF93bmR3ICp3bmR3LCBzdHJ1Y3QgbnY1MF93bmR3X2F0b20gKmFzeXcsCiAJaWYg KCFmYi0+Zm9ybWF0LT5kZXB0aCkKIAkJcmV0dXJuIC1FSU5WQUw7CiAKLQlyZXQgPSBkcm1fcGxh bmVfaGVscGVyX2NoZWNrX3N0YXRlKCZhc3l3LT5zdGF0ZSwgJmFzeXctPmNsaXAsCisJcmV0ID0g ZHJtX3BsYW5lX2hlbHBlcl9jaGVja19zdGF0ZSgmYXN5dy0+c3RhdGUsICZhc3loLT5zdGF0ZSwK KwkJCQkJICAgJmFzeXctPmNsaXAsCiAJCQkJCSAgIERSTV9QTEFORV9IRUxQRVJfTk9fU0NBTElO RywKIAkJCQkJICAgRFJNX1BMQU5FX0hFTFBFUl9OT19TQ0FMSU5HLAogCQkJCQkgICBmYWxzZSwg dHJ1ZSk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvcm9ja2NoaXBfZHJt X3ZvcC5jIGIvZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL3JvY2tjaGlwX2RybV92b3AuYwppbmRl eCAxOTEyOGI0ZGVhNTQuLjM2ZDBmMTAxZTMwZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJt L3JvY2tjaGlwL3JvY2tjaGlwX2RybV92b3AuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcm9ja2No aXAvcm9ja2NoaXBfZHJtX3ZvcC5jCkBAIC02NTksNyArNjU5LDcgQEAgc3RhdGljIGludCB2b3Bf cGxhbmVfYXRvbWljX2NoZWNrKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLAogCWNsaXAueDIgPSBj cnRjX3N0YXRlLT5hZGp1c3RlZF9tb2RlLmhkaXNwbGF5OwogCWNsaXAueTIgPSBjcnRjX3N0YXRl LT5hZGp1c3RlZF9tb2RlLnZkaXNwbGF5OwogCi0JcmV0ID0gZHJtX3BsYW5lX2hlbHBlcl9jaGVj a19zdGF0ZShzdGF0ZSwgJmNsaXAsCisJcmV0ID0gZHJtX3BsYW5lX2hlbHBlcl9jaGVja19zdGF0 ZShzdGF0ZSwgY3J0Y19zdGF0ZSwgJmNsaXAsCiAJCQkJCSAgIG1pbl9zY2FsZSwgbWF4X3NjYWxl LAogCQkJCQkgICB0cnVlLCB0cnVlKTsKIAlpZiAocmV0KQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL3RlZ3JhL2RjLmMgYi9kcml2ZXJzL2dwdS9kcm0vdGVncmEvZGMuYwppbmRleCAyNGE1 ZWY0ZjViYjguLmU5NWQ5ZTJhN2Y2YyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3RlZ3Jh L2RjLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3RlZ3JhL2RjLmMKQEAgLTQ5MSw4ICs0OTEsOCBA QCBzdGF0aWMgaW50IHRlZ3JhX3BsYW5lX3N0YXRlX2FkZChzdHJ1Y3QgdGVncmFfcGxhbmUgKnBs YW5lLAogCWNsaXAueTIgPSBjcnRjX3N0YXRlLT5tb2RlLnZkaXNwbGF5OwogCiAJLyogQ2hlY2sg cGxhbmUgc3RhdGUgZm9yIHZpc2liaWxpdHkgYW5kIGNhbGN1bGF0ZSBjbGlwcGluZyBib3VuZHMg Ki8KLQllcnIgPSBkcm1fcGxhbmVfaGVscGVyX2NoZWNrX3N0YXRlKHN0YXRlLCAmY2xpcCwgMCwg SU5UX01BWCwKLQkJCQkJICAgdHJ1ZSwgdHJ1ZSk7CisJZXJyID0gZHJtX3BsYW5lX2hlbHBlcl9j aGVja19zdGF0ZShzdGF0ZSwgY3J0Y19zdGF0ZSwgJmNsaXAsCisJCQkJCSAgIDAsIElOVF9NQVgs IHRydWUsIHRydWUpOwogCWlmIChlcnIgPCAwKQogCQlyZXR1cm4gZXJyOwogCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9rbXMuYyBiL2RyaXZlcnMvZ3B1L2RybS92 bXdnZngvdm13Z2Z4X2ttcy5jCmluZGV4IGVmYTQxYzA4NjE5OC4uZDk1ZTdiMWMzYjExIDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9rbXMuYworKysgYi9kcml2ZXJz L2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9rbXMuYwpAQCAtNDU0LDcgKzQ1NCw3IEBAIGludCB2bXdf ZHVfcHJpbWFyeV9wbGFuZV9hdG9taWNfY2hlY2soc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCiAJ CWNsaXAueTIgPSBjcnRjX3N0YXRlLT5hZGp1c3RlZF9tb2RlLnZkaXNwbGF5OwogCX0KIAotCXJl dCA9IGRybV9wbGFuZV9oZWxwZXJfY2hlY2tfc3RhdGUoc3RhdGUsICZjbGlwLAorCXJldCA9IGRy bV9wbGFuZV9oZWxwZXJfY2hlY2tfc3RhdGUoc3RhdGUsIGNydGNfc3RhdGUsICZjbGlwLAogCQkJ CQkgICBEUk1fUExBTkVfSEVMUEVSX05PX1NDQUxJTkcsCiAJCQkJCSAgIERSTV9QTEFORV9IRUxQ RVJfTk9fU0NBTElORywKIAkJCQkJICAgZmFsc2UsIHRydWUpOwpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL3p0ZS96eF9wbGFuZS5jIGIvZHJpdmVycy9ncHUvZHJtL3p0ZS96eF9wbGFuZS5j CmluZGV4IDE4ZTc2MzQ5MzI2NC4uZWUwMDAyNTI5YjhmIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0venRlL3p4X3BsYW5lLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3p0ZS96eF9wbGFuZS5j CkBAIC04MCw3ICs4MCw3IEBAIHN0YXRpYyBpbnQgenhfdmxfcGxhbmVfYXRvbWljX2NoZWNrKHN0 cnVjdCBkcm1fcGxhbmUgKnBsYW5lLAogCWNsaXAueDIgPSBjcnRjX3N0YXRlLT5hZGp1c3RlZF9t b2RlLmhkaXNwbGF5OwogCWNsaXAueTIgPSBjcnRjX3N0YXRlLT5hZGp1c3RlZF9tb2RlLnZkaXNw bGF5OwogCi0JcmV0dXJuIGRybV9wbGFuZV9oZWxwZXJfY2hlY2tfc3RhdGUocGxhbmVfc3RhdGUs ICZjbGlwLAorCXJldHVybiBkcm1fcGxhbmVfaGVscGVyX2NoZWNrX3N0YXRlKHBsYW5lX3N0YXRl LCBjcnRjX3N0YXRlLCAmY2xpcCwKIAkJCQkJICAgIG1pbl9zY2FsZSwgbWF4X3NjYWxlLAogCQkJ CQkgICAgdHJ1ZSwgdHJ1ZSk7CiB9CkBAIC0zMTUsNyArMzE1LDcgQEAgc3RhdGljIGludCB6eF9n bF9wbGFuZV9hdG9taWNfY2hlY2soc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCiAJY2xpcC54MiA9 IGNydGNfc3RhdGUtPmFkanVzdGVkX21vZGUuaGRpc3BsYXk7CiAJY2xpcC55MiA9IGNydGNfc3Rh dGUtPmFkanVzdGVkX21vZGUudmRpc3BsYXk7CiAKLQlyZXR1cm4gZHJtX3BsYW5lX2hlbHBlcl9j aGVja19zdGF0ZShwbGFuZV9zdGF0ZSwgJmNsaXAsCisJcmV0dXJuIGRybV9wbGFuZV9oZWxwZXJf Y2hlY2tfc3RhdGUocGxhbmVfc3RhdGUsIGNydGNfc3RhdGUsICZjbGlwLAogCQkJCQkgICAgRFJN X1BMQU5FX0hFTFBFUl9OT19TQ0FMSU5HLAogCQkJCQkgICAgRFJNX1BMQU5FX0hFTFBFUl9OT19T Q0FMSU5HLAogCQkJCQkgICAgZmFsc2UsIHRydWUpOwpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0v ZHJtX3BsYW5lX2hlbHBlci5oIGIvaW5jbHVkZS9kcm0vZHJtX3BsYW5lX2hlbHBlci5oCmluZGV4 IDdjOGEwMGNlYWRiNy4uNDFiODMwOWIwYTU3IDEwMDY0NAotLS0gYS9pbmNsdWRlL2RybS9kcm1f cGxhbmVfaGVscGVyLmgKKysrIGIvaW5jbHVkZS9kcm0vZHJtX3BsYW5lX2hlbHBlci5oCkBAIC0z OCw3ICszOCw4IEBACiAgKi8KICNkZWZpbmUgRFJNX1BMQU5FX0hFTFBFUl9OT19TQ0FMSU5HICgx PDwxNikKIAotaW50IGRybV9wbGFuZV9oZWxwZXJfY2hlY2tfc3RhdGUoc3RydWN0IGRybV9wbGFu ZV9zdGF0ZSAqc3RhdGUsCitpbnQgZHJtX3BsYW5lX2hlbHBlcl9jaGVja19zdGF0ZShzdHJ1Y3Qg ZHJtX3BsYW5lX3N0YXRlICpwbGFuZV9zdGF0ZSwKKwkJCQkgY29uc3Qgc3RydWN0IGRybV9jcnRj X3N0YXRlICpjcnRjX3N0YXRlLAogCQkJCSBjb25zdCBzdHJ1Y3QgZHJtX3JlY3QgKmNsaXAsCiAJ CQkJIGludCBtaW5fc2NhbGUsIGludCBtYXhfc2NhbGUsCiAJCQkJIGJvb2wgY2FuX3Bvc2l0aW9u LAotLSAKMi4xMy42CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5v cmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2 ZWwK