From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id 752C089ED6 for ; Fri, 5 Apr 2019 22:53:48 +0000 (UTC) From: Manasi Navare Date: Fri, 5 Apr 2019 15:55:49 -0700 Message-Id: <20190405225549.7306-1-manasi.d.navare@intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t v2] tests/kms_dp_dsc: Force a full modeset when we force dsc enable List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: igt-dev@lists.freedesktop.org Cc: Manasi Navare , Anusha Srivatsa , Petri Latvala List-ID: RFNDIGVuYWJsZSBnZXRzIGNvbmZpZ3VyZWQgZHVyaW5nIGNvbXB1dGVfY29uZmlnIGFuZCBuZWVk cwphIGZ1bGwgbW9kZXNldCB0byBmb3JjZSBEU0MuClNvbWV0aW1lcyBpbiBiZXR3ZWVuIHRoZSB0 ZXN0cywgaWYgdGhlIGluaXRpYWwgb3V0cHV0IGlzIHNhbWUgYXMgdGhlCm1vZGUgYmVpbmcgc2V0 IGZvciBEU0MgdGhlbiBpdCB3aWxsIG5vdCBkbyBhIGZ1bGwgbW9kZXNldC4KU28gd2UgZGlzYWJs ZSB0aGUgb3V0cHV0IGJlZm9yZSBmb3JjaW5nIGEgbW9kZSB3aXRoIERTQyBlbmFibGUuCgpZb3Ug bmVlZCB0aGUga2VybmVsIHBhdGNoOgpodHRwczovL3BhdGNod29yay5mcmVlZGVza3RvcC5vcmcv c2VyaWVzLzU5MDg0LwoKdjI6CiogUmVzdG9yZSB0aGUgdmFsdWUgb2YgZm9yY2UgZHNjIGVuYWJs ZSBhZnRlciB0aGUgdGVzdCBhbmQgaW4gaWd0X2V4aXRfaGFuZGxlcgoqIEFkZCBpZ3RfaW5zdGFs bF9leGl0X2hhbmRsZXIgdG8gcmVzdG9yZSB2YWx1ZXMgb24gZmFpbC9leGl0CgpGaXhlczogZGIx OWJjY2MxYzIyICgidGVzdC9rbXNfZHBfZHNjOiBCYXNpYyBLTVMgdGVzdCB0byB2YWxpZGF0ZSBW RVNBIERTQyBvbiBEUC9lRFAiKQpDYzogUGV0cmkgTGF0dmFsYSA8cGV0cmkubGF0dmFsYUBpbnRl bC5jb20+CkNjOiBBbnVzaGEgU3JpdmF0c2EgPGFudXNoYS5zcml2YXRzYUBpbnRlbC5jb20+CkNj OiBJbXJlIERlYWsgPGltcmUuZGVha0BpbnRlbC5jb20+ClNpZ25lZC1vZmYtYnk6IE1hbmFzaSBO YXZhcmUgPG1hbmFzaS5kLm5hdmFyZUBpbnRlbC5jb20+Ci0tLQogdGVzdHMva21zX2RwX2RzYy5j IHwgMTMzICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQogMSBm aWxlIGNoYW5nZWQsIDgxIGluc2VydGlvbnMoKyksIDUyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL3Rlc3RzL2ttc19kcF9kc2MuYyBiL3Rlc3RzL2ttc19kcF9kc2MuYwppbmRleCBkYTkzY2Q3 NC4uYWNhZWU4OTAgMTAwNjQ0Ci0tLSBhL3Rlc3RzL2ttc19kcF9kc2MuYworKysgYi90ZXN0cy9r bXNfZHBfZHNjLmMKQEAgLTYzLDExOSArNjMsMTQ3IEBAIHR5cGVkZWYgc3RydWN0IHsKIAlpbnQg Y3J0YzsKIAllbnVtIHBpcGUgcGlwZTsKIAljaGFyIGNvbm5fbmFtZVsxMjhdOworCWJvb2wgZm9y Y2VfZHNjX2VuOwogfSBkYXRhX3Q7CiAKK2RhdGFfdCBkYXRhID0ge307CisKIHN0YXRpYyBpbmxp bmUgdm9pZCBtYW51YWwoY29uc3QgY2hhciAqZXhwZWN0ZWQpCiB7CiAJaWd0X2RlYnVnX21hbnVh bF9jaGVjaygiYWxsIiwgZXhwZWN0ZWQpOwogfQogCi1zdGF0aWMgYm9vbCBpc19kcF9kc2Nfc3Vw cG9ydGVkKGRhdGFfdCAqZGF0YSkKK3N0YXRpYyBib29sIGlzX2RwX2RzY19zdXBwb3J0ZWQodm9p ZCkKIHsKIAljaGFyIGZpbGVfbmFtZVsxMjhdID0gezB9OwogCWNoYXIgYnVmWzUxMl07CiAKLQlz dHJjcHkoZmlsZV9uYW1lLCBkYXRhLT5jb25uX25hbWUpOworCXN0cmNweShmaWxlX25hbWUsIGRh dGEuY29ubl9uYW1lKTsKIAlzdHJjYXQoZmlsZV9uYW1lLCAiL2k5MTVfZHNjX2ZlY19zdXBwb3J0 Iik7Ci0JaWd0X3JlcXVpcmUoaWd0X2RlYnVnZnNfc2ltcGxlX3JlYWQoZGF0YS0+ZGVidWdmc19m ZCwgZmlsZV9uYW1lLCBidWYsCisJaWd0X3JlcXVpcmUoaWd0X2RlYnVnZnNfc2ltcGxlX3JlYWQo ZGF0YS5kZWJ1Z2ZzX2ZkLCBmaWxlX25hbWUsIGJ1ZiwKIAkJCQkJICAgIHNpemVvZihidWYpKSA+ IDApOwotCWlndF9kZWJ1Z2ZzX3JlYWQoZGF0YS0+ZHJtX2ZkLCBmaWxlX25hbWUsIGJ1Zik7CisJ aWd0X2RlYnVnZnNfcmVhZChkYXRhLmRybV9mZCwgZmlsZV9uYW1lLCBidWYpOwogCiAJcmV0dXJu IHN0cnN0cihidWYsICJEU0NfU2lua19TdXBwb3J0OiB5ZXMiKTsKIH0KIAotc3RhdGljIGJvb2wg aXNfZHBfZmVjX3N1cHBvcnRlZChkYXRhX3QgKmRhdGEpCitzdGF0aWMgYm9vbCBpc19kcF9mZWNf c3VwcG9ydGVkKHZvaWQpCiB7CiAJY2hhciBmaWxlX25hbWVbMTI4XSA9IHswfTsKIAljaGFyIGJ1 Zls1MTJdOwogCi0Jc3RyY3B5KGZpbGVfbmFtZSwgZGF0YS0+Y29ubl9uYW1lKTsKKwlzdHJjcHko ZmlsZV9uYW1lLCBkYXRhLmNvbm5fbmFtZSk7CiAJc3RyY2F0KGZpbGVfbmFtZSwgIi9pOTE1X2Rz Y19mZWNfc3VwcG9ydCIpOwotCWlndF9kZWJ1Z2ZzX3JlYWQoZGF0YS0+ZHJtX2ZkLCBmaWxlX25h bWUsIGJ1Zik7CisJaWd0X2RlYnVnZnNfcmVhZChkYXRhLmRybV9mZCwgZmlsZV9uYW1lLCBidWYp OwogCiAJcmV0dXJuIHN0cnN0cihidWYsICJGRUNfU2lua19TdXBwb3J0OiB5ZXMiKTsKIH0KIAot c3RhdGljIGJvb2wgaXNfZHBfZHNjX2VuYWJsZWQoZGF0YV90ICpkYXRhKQorc3RhdGljIGJvb2wg aXNfZHBfZHNjX2VuYWJsZWQodm9pZCkKIHsKIAljaGFyIGZpbGVfbmFtZVsxMjhdID0gezB9Owog CWNoYXIgYnVmWzUxMl07CiAKLQlzdHJjcHkoZmlsZV9uYW1lLCBkYXRhLT5jb25uX25hbWUpOwor CXN0cmNweShmaWxlX25hbWUsIGRhdGEuY29ubl9uYW1lKTsKIAlzdHJjYXQoZmlsZV9uYW1lLCAi L2k5MTVfZHNjX2ZlY19zdXBwb3J0Iik7Ci0JaWd0X2RlYnVnZnNfcmVhZChkYXRhLT5kcm1fZmQs IGZpbGVfbmFtZSwgYnVmKTsKKwlpZ3RfZGVidWdmc19yZWFkKGRhdGEuZHJtX2ZkLCBmaWxlX25h bWUsIGJ1Zik7CiAKIAlyZXR1cm4gc3Ryc3RyKGJ1ZiwgIkRTQ19FbmFibGVkOiB5ZXMiKTsKIH0K IAotc3RhdGljIHZvaWQgZm9yY2VfZHBfZHNjX2VuYWJsZShkYXRhX3QgKmRhdGEpCitzdGF0aWMg Ym9vbCBpc19mb3JjZV9kc2NfZW5hYmxlZCh2b2lkKQoreworCWNoYXIgZmlsZV9uYW1lWzEyOF0g PSB7MH07CisJY2hhciBidWZbNTEyXTsKKworCXN0cmNweShmaWxlX25hbWUsIGRhdGEuY29ubl9u YW1lKTsKKwlzdHJjYXQoZmlsZV9uYW1lLCAiL2k5MTVfZHNjX2ZlY19zdXBwb3J0Iik7CisJaWd0 X2RlYnVnZnNfcmVhZChkYXRhLmRybV9mZCwgZmlsZV9uYW1lLCBidWYpOworCisJcmV0dXJuIHN0 cnN0cihidWYsICJGb3JjZV9EU0NfRW5hYmxlOiB5ZXMiKTsKK30KKworc3RhdGljIHZvaWQgZm9y Y2VfZHBfZHNjX2VuYWJsZSh2b2lkKQogewogCWNoYXIgZmlsZV9uYW1lWzEyOF0gPSB7MH07CiAJ aW50IHJldDsKIAotCXN0cmNweShmaWxlX25hbWUsIGRhdGEtPmNvbm5fbmFtZSk7CisJc3RyY3B5 KGZpbGVfbmFtZSwgZGF0YS5jb25uX25hbWUpOwogCXN0cmNhdChmaWxlX25hbWUsICIvaTkxNV9k c2NfZmVjX3N1cHBvcnQiKTsKLQlpZ3RfZGVidWcgKCJGb3JjaW5nIERTQyBlbmFibGUgb24gJXNc biIsIGRhdGEtPmNvbm5fbmFtZSk7Ci0JcmV0ID0gaWd0X3N5c2ZzX3dyaXRlKGRhdGEtPmRlYnVn ZnNfZmQsIGZpbGVfbmFtZSwgIjEiLCAxKTsKKwlpZ3RfZGVidWcgKCJGb3JjaW5nIERTQyBlbmFi bGUgb24gJXNcbiIsIGRhdGEuY29ubl9uYW1lKTsKKwlyZXQgPSBpZ3Rfc3lzZnNfd3JpdGUoZGF0 YS5kZWJ1Z2ZzX2ZkLCBmaWxlX25hbWUsICIxIiwgMSk7CiAJaWd0X2Fzc2VydF9mKHJldCA+IDAs ICJkZWJ1Z2ZzX3dyaXRlIGZhaWxlZCIpOwogfQogCi1zdGF0aWMgdm9pZCBjbGVhcl9kcF9kc2Nf ZW5hYmxlKGRhdGFfdCAqZGF0YSkKK3N0YXRpYyB2b2lkIHJlc3RvcmVfZHBfZHNjX2VuYWJsZSh2 b2lkKQogewogCWNoYXIgZmlsZV9uYW1lWzEyOF0gPSB7MH07CiAJaW50IHJldDsKIAotCXN0cmNw eShmaWxlX25hbWUsIGRhdGEtPmNvbm5fbmFtZSk7CisJc3RyY3B5KGZpbGVfbmFtZSwgZGF0YS5j b25uX25hbWUpOwogCXN0cmNhdChmaWxlX25hbWUsICIvaTkxNV9kc2NfZmVjX3N1cHBvcnQiKTsK LQlpZ3RfZGVidWcgKCJDbGVhcmluZyBEU0MgZW5hYmxlIG9uICVzXG4iLCBkYXRhLT5jb25uX25h bWUpOwotCXJldCA9IGlndF9zeXNmc193cml0ZShkYXRhLT5kZWJ1Z2ZzX2ZkLCBmaWxlX25hbWUs ICIwIiwgMSk7CisJaWd0X2RlYnVnICgiUmVzdG9yaW5nIERTQyBlbmFibGUgb24gJXNcbiIsIGRh dGEuY29ubl9uYW1lKTsKKwlyZXQgPSBpZ3Rfc3lzZnNfd3JpdGUoZGF0YS5kZWJ1Z2ZzX2ZkLCBm aWxlX25hbWUsCisJCQkgICAgICBkYXRhLmZvcmNlX2RzY19lbiA/ICIxIiA6ICIwIiwgMSk7CiAJ aWd0X2Fzc2VydF9mKHJldCA+IDAsICJkZWJ1Z2ZzX3dyaXRlIGZhaWxlZCIpOwogfQogCi1zdGF0 aWMgdm9pZCB0ZXN0X2NsZWFudXAoZGF0YV90ICpkYXRhKSB7CitzdGF0aWMgdm9pZCB0ZXN0X2Ns ZWFudXAodm9pZCkgewogCWlndF9wbGFuZV90ICpwcmltYXJ5OwogCi0JaWYgKGRhdGEtPm91dHB1 dCkgewotCQlwcmltYXJ5ID0gaWd0X291dHB1dF9nZXRfcGxhbmVfdHlwZShkYXRhLT5vdXRwdXQs CisJaWYgKGRhdGEub3V0cHV0KSB7CisJCXByaW1hcnkgPSBpZ3Rfb3V0cHV0X2dldF9wbGFuZV90 eXBlKGRhdGEub3V0cHV0LAogCQkJCQkJICAgIERSTV9QTEFORV9UWVBFX1BSSU1BUlkpOwogCQlp Z3RfcGxhbmVfc2V0X2ZiKHByaW1hcnksIE5VTEwpOwotCQlpZ3RfZGlzcGxheV9jb21taXQoJmRh dGEtPmRpc3BsYXkpOwotCQlpZ3RfcmVtb3ZlX2ZiKGRhdGEtPmRybV9mZCwgJmRhdGEtPmZiX3Rl c3RfcGF0dGVybik7CisJCWlndF9kaXNwbGF5X2NvbW1pdCgmZGF0YS5kaXNwbGF5KTsKKwkJaWd0 X3JlbW92ZV9mYihkYXRhLmRybV9mZCwgJmRhdGEuZmJfdGVzdF9wYXR0ZXJuKTsKIAl9CiB9CiAK K3N0YXRpYyB2b2lkIGttc19kcF9kc2NfZXhpdF9oYW5kbGVyKGludCBzaWcpIHsKKworCXJlc3Rv cmVfZHBfZHNjX2VuYWJsZSgpOworfQorCiAKIC8qCiAgKiBSZS1wcm9iZSBjb25uZWN0b3JzIGFu ZCBkbyBhIG1vZGVzZXQgd2l0aCBEU0MKICAqCiAgKi8KLXN0YXRpYyB2b2lkIHVwZGF0ZV9kaXNw bGF5KGRhdGFfdCAqZGF0YSwgZW51bSBkc2NfdGVzdF90eXBlIHRlc3RfdHlwZSkKK3N0YXRpYyB2 b2lkIHVwZGF0ZV9kaXNwbGF5KGVudW0gZHNjX3Rlc3RfdHlwZSB0ZXN0X3R5cGUpCiB7CiAJaWd0 X3BsYW5lX3QgKnByaW1hcnk7Ci0JZGF0YS0+bW9kZSA9IGlndF9vdXRwdXRfZ2V0X21vZGUoZGF0 YS0+b3V0cHV0KTsKLQlkYXRhLT5jb25uZWN0b3IgPSBkYXRhLT5vdXRwdXQtPmNvbmZpZy5jb25u ZWN0b3I7CisJZGF0YS5tb2RlID0gaWd0X291dHB1dF9nZXRfbW9kZShkYXRhLm91dHB1dCk7CisJ ZGF0YS5jb25uZWN0b3IgPSBkYXRhLm91dHB1dC0+Y29uZmlnLmNvbm5lY3RvcjsKIAotCWlmIChk YXRhLT5jb25uZWN0b3ItPmNvbm5lY3Rvcl90eXBlID09IERSTV9NT0RFX0NPTk5FQ1RPUl9EaXNw bGF5UG9ydCAmJgotCSAgICBkYXRhLT5waXBlID09IFBJUEVfQSkgeworCWlmIChkYXRhLmNvbm5l Y3Rvci0+Y29ubmVjdG9yX3R5cGUgPT0gRFJNX01PREVfQ09OTkVDVE9SX0Rpc3BsYXlQb3J0ICYm CisJICAgIGRhdGEucGlwZSA9PSBQSVBFX0EpIHsKIAkJaWd0X2RlYnVnKCJEU0Mgbm90IHN1cHBv cnRlZCBvbiBQaXBlIEEgb24gZXh0ZXJuYWwgRFBcbiIpOwogCQlyZXR1cm47CiAJfQogCisJLyog RGlzYWJsZSB0aGUgb3V0cHV0IGZpcnN0ICovCisJaWd0X291dHB1dF9zZXRfcGlwZShkYXRhLm91 dHB1dCwgUElQRV9OT05FKTsKKwlpZ3RfZGlzcGxheV9jb21taXQoJmRhdGEuZGlzcGxheSk7CisK IAlpZiAodGVzdF90eXBlID09IHRlc3RfYmFzaWNfZHNjX2VuYWJsZSkgewogCQlib29sIGVuYWJs ZWQ7CiAKLQkJaWd0X2RlYnVnKCJEU0MgaXMgc3VwcG9ydGVkIG9uICVzXG4iLCBkYXRhLT5jb25u X25hbWUpOwotCQlmb3JjZV9kcF9kc2NfZW5hYmxlKGRhdGEpOworCQlpZ3RfZGVidWcoIkRTQyBp cyBzdXBwb3J0ZWQgb24gJXNcbiIsIGRhdGEuY29ubl9uYW1lKTsKKwkJZm9yY2VfZHBfZHNjX2Vu YWJsZSgpOwogCi0JCWlndF9jcmVhdGVfcGF0dGVybl9mYihkYXRhLT5kcm1fZmQsIGRhdGEtPm1v ZGUtPmhkaXNwbGF5LAotCQkJCSAgICAgIGRhdGEtPm1vZGUtPnZkaXNwbGF5LAorCQlpZ3Rfb3V0 cHV0X3NldF9waXBlKGRhdGEub3V0cHV0LCBkYXRhLnBpcGUpOworCQlpZ3RfY3JlYXRlX3BhdHRl cm5fZmIoZGF0YS5kcm1fZmQsIGRhdGEubW9kZS0+aGRpc3BsYXksCisJCQkJICAgICAgZGF0YS5t b2RlLT52ZGlzcGxheSwKIAkJCQkgICAgICBEUk1fRk9STUFUX1hSR0I4ODg4LAogCQkJCSAgICAg IExPQ0FMX0RSTV9GT1JNQVRfTU9EX05PTkUsCi0JCQkJICAgICAgJmRhdGEtPmZiX3Rlc3RfcGF0 dGVybik7Ci0JCXByaW1hcnkgPSBpZ3Rfb3V0cHV0X2dldF9wbGFuZV90eXBlKGRhdGEtPm91dHB1 dCwKKwkJCQkgICAgICAmZGF0YS5mYl90ZXN0X3BhdHRlcm4pOworCQlwcmltYXJ5ID0gaWd0X291 dHB1dF9nZXRfcGxhbmVfdHlwZShkYXRhLm91dHB1dCwKIAkJCQkJCSAgICBEUk1fUExBTkVfVFlQ RV9QUklNQVJZKTsKLQkJaWd0X3BsYW5lX3NldF9mYihwcmltYXJ5LCAmZGF0YS0+ZmJfdGVzdF9w YXR0ZXJuKTsKLQkJaWd0X2Rpc3BsYXlfY29tbWl0KCZkYXRhLT5kaXNwbGF5KTsKKworCQkvKiBO b3cgc2V0IHRoZSBvdXRwdXQgdG8gdGhlIGRlc2lyZWQgbW9kZSAqLworCQlpZ3RfcGxhbmVfc2V0 X2ZiKHByaW1hcnksICZkYXRhLmZiX3Rlc3RfcGF0dGVybik7CisJCWlndF9kaXNwbGF5X2NvbW1p dCgmZGF0YS5kaXNwbGF5KTsKIAogCQkvKgogCQkgKiBVbnRpbCB3ZSBoYXZlIENSQyBjaGVjayBz dXBwb3J0LCBtYW51YWxseSBjaGVjayBpZiBSR0IgdGVzdApAQCAtMTgzLDM4ICsyMTEsMzcgQEAg c3RhdGljIHZvaWQgdXBkYXRlX2Rpc3BsYXkoZGF0YV90ICpkYXRhLCBlbnVtIGRzY190ZXN0X3R5 cGUgdGVzdF90eXBlKQogCQkgKi8KIAkJbWFudWFsKCJSR0IgdGVzdCBwYXR0ZXJuIHdpdGhvdXQg Y29ycnVwdGlvbiIpOwogCi0JCWVuYWJsZWQgPSBpc19kcF9kc2NfZW5hYmxlZChkYXRhKTsKLQkJ Y2xlYXJfZHBfZHNjX2VuYWJsZShkYXRhKTsKKwkJZW5hYmxlZCA9IGlzX2RwX2RzY19lbmFibGVk KCk7CisJCXJlc3RvcmVfZHBfZHNjX2VuYWJsZSgpOwogCiAJCWlndF9hc3NlcnRfZihlbmFibGVk LAotCQkJICAgICAiRGVmYXVsdCBEU0MgZW5hYmxlIGZhaWxlZCBvbiBDb25uZWN0b3I6ICVzIFBp cGU6ICVzIiwKLQkJCSAgICAgZGF0YS0+Y29ubl9uYW1lLAotCQkJICAgICBrbXN0ZXN0X3BpcGVf bmFtZShkYXRhLT5waXBlKSk7CisJCQkgICAgICJEZWZhdWx0IERTQyBlbmFibGUgZmFpbGVkIG9u IENvbm5lY3RvcjogJXMgUGlwZTogJXNcbiIsCisJCQkgICAgIGRhdGEuY29ubl9uYW1lLAorCQkJ ICAgICBrbXN0ZXN0X3BpcGVfbmFtZShkYXRhLnBpcGUpKTsKIAl9IGVsc2UgewogCQlpZ3RfYXNz ZXJ0KCEiVW5rbm93biB0ZXN0IHR5cGVcbiIpOwogCX0KIH0KIAotc3RhdGljIHZvaWQgcnVuX3Rl c3QoZGF0YV90ICpkYXRhLCBpZ3Rfb3V0cHV0X3QgKm91dHB1dCwKK3N0YXRpYyB2b2lkIHJ1bl90 ZXN0KGlndF9vdXRwdXRfdCAqb3V0cHV0LAogCQkgICAgIGVudW0gZHNjX3Rlc3RfdHlwZSB0ZXN0 X3R5cGUpCiB7CiAJZW51bSBwaXBlIHBpcGU7CiAKLQlmb3JfZWFjaF9waXBlKCZkYXRhLT5kaXNw bGF5LCBwaXBlKSB7CisJZm9yX2VhY2hfcGlwZSgmZGF0YS5kaXNwbGF5LCBwaXBlKSB7CiAKIAkJ aWYgKGlndF9waXBlX2Nvbm5lY3Rvcl92YWxpZChwaXBlLCBvdXRwdXQpKSB7Ci0JCQlpZ3Rfb3V0 cHV0X3NldF9waXBlKG91dHB1dCwgcGlwZSk7Ci0JCQlkYXRhLT5waXBlID0gcGlwZTsKLQkJCWRh dGEtPm91dHB1dCA9IG91dHB1dDsKLQkJCXVwZGF0ZV9kaXNwbGF5KGRhdGEsIHRlc3RfdHlwZSk7 Ci0JCQl0ZXN0X2NsZWFudXAoZGF0YSk7CisJCQlkYXRhLnBpcGUgPSBwaXBlOworCQkJZGF0YS5v dXRwdXQgPSBvdXRwdXQ7CisJCQl1cGRhdGVfZGlzcGxheSh0ZXN0X3R5cGUpOworCQkJdGVzdF9j bGVhbnVwKCk7CiAJCX0KIAl9CiB9CiAKIGlndF9tYWluCiB7Ci0JZGF0YV90IGRhdGEgPSB7fTsK KwkvL2RhdGFfdCBkYXRhID0ge307CiAJaWd0X291dHB1dF90ICpvdXRwdXQ7CiAJZHJtTW9kZVJl cyAqcmVzOwogCWRybU1vZGVDb25uZWN0b3IgKmNvbm5lY3RvcjsKQEAgLTIyNSw2ICsyNTIsNyBA QCBpZ3RfbWFpbgogCQlkYXRhLmRybV9mZCA9IGRybV9vcGVuX2RyaXZlcl9tYXN0ZXIoRFJJVkVS X0FOWSk7CiAJCWRhdGEuZGVidWdmc19mZCA9IGlndF9kZWJ1Z2ZzX2RpcihkYXRhLmRybV9mZCk7 CiAJCWttc3Rlc3Rfc2V0X3Z0X2dyYXBoaWNzX21vZGUoKTsKKwkJaWd0X2luc3RhbGxfZXhpdF9o YW5kbGVyKGttc19kcF9kc2NfZXhpdF9oYW5kbGVyKTsKIAkJaWd0X2Rpc3BsYXlfcmVxdWlyZSgm ZGF0YS5kaXNwbGF5LCBkYXRhLmRybV9mZCk7CiAJCWlndF9yZXF1aXJlKHJlcyA9IGRybU1vZGVH ZXRSZXNvdXJjZXMoZGF0YS5kcm1fZmQpKTsKIAl9CkBAIC0yNDUsMTkgKzI3MywyMCBAQCBpZ3Rf bWFpbgogCQkJCXNwcmludGYoZGF0YS5jb25uX25hbWUsICIlcy0lZCIsCiAJCQkJCWttc3Rlc3Rf Y29ubmVjdG9yX3R5cGVfc3RyKGNvbm5lY3Rvci0+Y29ubmVjdG9yX3R5cGUpLAogCQkJCQljb25u ZWN0b3ItPmNvbm5lY3Rvcl90eXBlX2lkKTsKLQkJCQlpZighaXNfZHBfZHNjX3N1cHBvcnRlZCgm ZGF0YSkpIHsKKwkJCQlpZighaXNfZHBfZHNjX3N1cHBvcnRlZCgpKSB7CiAJCQkJCWlndF9kZWJ1 ZygiRFNDIG5vdCBzdXBwb3J0ZWQgb24gY29ubmVjdG9yICVzIFxuIiwKIAkJCQkJCSAgZGF0YS5j b25uX25hbWUpOwogCQkJCQljb250aW51ZTsKIAkJCQl9CiAJCQkJaWYgKGNvbm5lY3Rvci0+Y29u bmVjdG9yX3R5cGUgPT0gRFJNX01PREVfQ09OTkVDVE9SX0Rpc3BsYXlQb3J0ICYmCi0JCQkJICAg ICFpc19kcF9mZWNfc3VwcG9ydGVkKCZkYXRhKSkgeworCQkJCSAgICAhaXNfZHBfZmVjX3N1cHBv cnRlZCgpKSB7CiAJCQkJCWlndF9kZWJ1ZygiRFNDIGNhbm5vdCBiZSBlbmFibGVkIHdpdGhvdXQg RkVDIG9uICVzXG4iLAogCQkJCQkJICBkYXRhLmNvbm5fbmFtZSk7CiAJCQkJCWNvbnRpbnVlOwog CQkJCX0KIAkJCQl0ZXN0X2Nvbm5fY250Kys7Ci0JCQkJcnVuX3Rlc3QoJmRhdGEsIG91dHB1dCwg dGVzdF9iYXNpY19kc2NfZW5hYmxlKTsKKwkJCQlkYXRhLmZvcmNlX2RzY19lbiA9IGlzX2ZvcmNl X2RzY19lbmFibGVkKCk7CisJCQkJcnVuX3Rlc3Qob3V0cHV0LCB0ZXN0X2Jhc2ljX2RzY19lbmFi bGUpOwogCQkJfQogCQkJaWd0X3NraXBfb24odGVzdF9jb25uX2NudCA9PSAwKTsKIAkJfQotLSAK Mi4xOS4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpp Z3QtZGV2IG1haWxpbmcgbGlzdAppZ3QtZGV2QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczov L2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2lndC1kZXY=