From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pj1-x1029.google.com (mail-pj1-x1029.google.com [IPv6:2607:f8b0:4864:20::1029]) by gabe.freedesktop.org (Postfix) with ESMTPS id 6E69689F6B for ; Mon, 14 Jun 2021 16:37:27 +0000 (UTC) Received: by mail-pj1-x1029.google.com with SMTP id m13-20020a17090b068db02901656cc93a75so10434416pjz.3 for ; Mon, 14 Jun 2021 09:37:27 -0700 (PDT) From: Jason Ekstrand Date: Mon, 14 Jun 2021 11:36:22 -0500 Message-Id: <20210614163704.365989-8-jason@jlekstrand.net> In-Reply-To: <20210614163704.365989-1-jason@jlekstrand.net> References: <20210614163704.365989-1-jason@jlekstrand.net> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t 07/77] tests/i915/gem_busy: Convert to intel_ctx_t (v2) 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 List-ID: djIgKFpiaWduaWV3IEtlbXBjennFhHNraSk6CiAtIERvbid0IG51bGwtaW5pdCBjdHgKClNpZ25l ZC1vZmYtYnk6IEphc29uIEVrc3RyYW5kIDxqYXNvbkBqbGVrc3RyYW5kLm5ldD4KUmV2aWV3ZWQt Ynk6IFpiaWduaWV3IEtlbXBjennFhHNraSA8emJpZ25pZXcua2VtcGN6eW5za2lAaW50ZWwuY29t PgotLS0KIHRlc3RzL2k5MTUvZ2VtX2J1c3kuYyB8IDc3ICsrKysrKysrKysrKysrKysrKysrKysr KystLS0tLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0NSBpbnNlcnRpb25zKCspLCAz MiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS90ZXN0cy9pOTE1L2dlbV9idXN5LmMgYi90ZXN0 cy9pOTE1L2dlbV9idXN5LmMKaW5kZXggZGM0ODFmM2M1Li5jNWNlMGEwZjkgMTAwNjQ0Ci0tLSBh L3Rlc3RzL2k5MTUvZ2VtX2J1c3kuYworKysgYi90ZXN0cy9pOTE1L2dlbV9idXN5LmMKQEAgLTY4 LDYgKzY4LDcgQEAgc3RhdGljIHZvaWQgX19nZW1fYnVzeShpbnQgZmQsCiAKIHN0YXRpYyBib29s IGV4ZWNfbm9vcChpbnQgZmQsCiAJCSAgICAgIHVpbnQzMl90ICpoYW5kbGVzLAorCQkgICAgICBj b25zdCBpbnRlbF9jdHhfdCAqY3R4LAogCQkgICAgICB1bnNpZ25lZCBmbGFncywKIAkJICAgICAg Ym9vbCB3cml0ZSkKIHsKQEAgLTg1LDYgKzg2LDcgQEAgc3RhdGljIGJvb2wgZXhlY19ub29wKGlu dCBmZCwKIAlleGVjYnVmLmJ1ZmZlcnNfcHRyID0gdG9fdXNlcl9wb2ludGVyKGV4ZWMpOwogCWV4 ZWNidWYuYnVmZmVyX2NvdW50ID0gMzsKIAlleGVjYnVmLmZsYWdzID0gZmxhZ3M7CisJZXhlY2J1 Zi5yc3ZkMSA9IGN0eC0+aWQ7CiAJaWd0X2RlYnVnKCJRdWV1aW5nIGhhbmRsZSBmb3IgJXMgb24g ZW5naW5lICVkXG4iLAogCQkgIHdyaXRlID8gIndyaXRpbmciIDogInJlYWRpbmciLCBmbGFncyk7 CiAJcmV0dXJuIF9fZ2VtX2V4ZWNidWYoZmQsICZleGVjYnVmKSA9PSAwOwpAQCAtOTcsNyArOTks OCBAQCBzdGF0aWMgYm9vbCBzdGlsbF9idXN5KGludCBmZCwgdWludDMyX3QgaGFuZGxlKQogCXJl dHVybiB3cml0ZTsKIH0KIAotc3RhdGljIHZvaWQgc2VtYXBob3JlKGludCBmZCwgY29uc3Qgc3Ry dWN0IGludGVsX2V4ZWN1dGlvbl9lbmdpbmUyICplKQorc3RhdGljIHZvaWQgc2VtYXBob3JlKGlu dCBmZCwgY29uc3QgaW50ZWxfY3R4X3QgKmN0eCwKKwkJICAgICAgY29uc3Qgc3RydWN0IGludGVs X2V4ZWN1dGlvbl9lbmdpbmUyICplKQogewogCXN0cnVjdCBpbnRlbF9leGVjdXRpb25fZW5naW5l MiAqX19lOwogCXVpbnQzMl90IGJiZSA9IE1JX0JBVENIX0JVRkZFUl9FTkQ7CkBAIC0xMTQsMTgg KzExNywxOSBAQCBzdGF0aWMgdm9pZCBzZW1hcGhvcmUoaW50IGZkLCBjb25zdCBzdHJ1Y3QgaW50 ZWxfZXhlY3V0aW9uX2VuZ2luZTIgKmUpCiAJLyogQ3JlYXRlIGEgbG9uZyBydW5uaW5nIGJhdGNo IHdoaWNoIHdlIGNhbiB1c2UgdG8gaG9nIHRoZSBHUFUgKi8KIAloYW5kbGVbQlVTWV0gPSBnZW1f Y3JlYXRlKGZkLCA0MDk2KTsKIAlzcGluID0gaWd0X3NwaW5fbmV3KGZkLAorCQkJICAgIC5jdHgg PSBjdHgsCiAJCQkgICAgLmVuZ2luZSA9IGUtPmZsYWdzLAogCQkJICAgIC5kZXBlbmRlbmN5ID0g aGFuZGxlW0JVU1ldKTsKIAogCS8qIFF1ZXVlIGEgYmF0Y2ggYWZ0ZXIgdGhlIGJ1c3ksIGl0IHNo b3VsZCBibG9jayBhbmQgcmVtYWluICJidXN5IiAqLwotCWlndF9hc3NlcnQoZXhlY19ub29wKGZk LCBoYW5kbGUsIGUtPmZsYWdzLCBmYWxzZSkpOworCWlndF9hc3NlcnQoZXhlY19ub29wKGZkLCBo YW5kbGUsIGN0eCwgZS0+ZmxhZ3MsIGZhbHNlKSk7CiAJaWd0X2Fzc2VydChzdGlsbF9idXN5KGZk LCBoYW5kbGVbQlVTWV0pKTsKIAlfX2dlbV9idXN5KGZkLCBoYW5kbGVbVEVTVF0sICZyZWFkLCAm d3JpdGUpOwogCWlndF9hc3NlcnRfZXEocmVhZCwgMSA8PCBlLT5jbGFzcyk7CiAJaWd0X2Fzc2Vy dF9lcSh3cml0ZSwgMCk7CiAKIAkvKiBSZXF1ZXVlIHdpdGggYSB3cml0ZSAqLwotCWlndF9hc3Nl cnQoZXhlY19ub29wKGZkLCBoYW5kbGUsIGUtPmZsYWdzLCB0cnVlKSk7CisJaWd0X2Fzc2VydChl eGVjX25vb3AoZmQsIGhhbmRsZSwgY3R4LCBlLT5mbGFncywgdHJ1ZSkpOwogCWlndF9hc3NlcnQo c3RpbGxfYnVzeShmZCwgaGFuZGxlW0JVU1ldKSk7CiAJX19nZW1fYnVzeShmZCwgaGFuZGxlW1RF U1RdLCAmcmVhZCwgJndyaXRlKTsKIAlpZ3RfYXNzZXJ0X2VxKHJlYWQsIDEgPDwgZS0+Y2xhc3Mp OwpAQCAtMTMzLDggKzEzNyw4IEBAIHN0YXRpYyB2b2lkIHNlbWFwaG9yZShpbnQgZmQsIGNvbnN0 IHN0cnVjdCBpbnRlbF9leGVjdXRpb25fZW5naW5lMiAqZSkKIAogCS8qIE5vdyBxdWV1ZSBpdCBm b3IgYSByZWFkIGFjcm9zcyBhbGwgYXZhaWxhYmxlIHJpbmdzICovCiAJYWN0aXZlID0gMDsKLQlf X2Zvcl9lYWNoX3BoeXNpY2FsX2VuZ2luZShmZCwgX19lKSB7Ci0JCWlmIChleGVjX25vb3AoZmQs IGhhbmRsZSwgX19lLT5mbGFncywgZmFsc2UpKQorCWZvcl9lYWNoX2N0eF9lbmdpbmUoZmQsIGN0 eCwgX19lKSB7CisJCWlmIChleGVjX25vb3AoZmQsIGhhbmRsZSwgY3R4LCBfX2UtPmZsYWdzLCBm YWxzZSkpCiAJCQlhY3RpdmUgfD0gMSA8PCBfX2UtPmNsYXNzOwogCX0KIAlpZ3RfYXNzZXJ0KHN0 aWxsX2J1c3koZmQsIGhhbmRsZVtCVVNZXSkpOwpAQCAtMTU4LDcgKzE2Miw4IEBAIHN0YXRpYyB2 b2lkIHNlbWFwaG9yZShpbnQgZmQsIGNvbnN0IHN0cnVjdCBpbnRlbF9leGVjdXRpb25fZW5naW5l MiAqZSkKIAogI2RlZmluZSBQQVJBTExFTCAxCiAjZGVmaW5lIEhBTkcgMgotc3RhdGljIHZvaWQg b25lKGludCBmZCwgY29uc3Qgc3RydWN0IGludGVsX2V4ZWN1dGlvbl9lbmdpbmUyICplLCB1bnNp Z25lZCB0ZXN0X2ZsYWdzKQorc3RhdGljIHZvaWQgb25lKGludCBmZCwgY29uc3QgaW50ZWxfY3R4 X3QgKmN0eCwKKwkJY29uc3Qgc3RydWN0IGludGVsX2V4ZWN1dGlvbl9lbmdpbmUyICplLCB1bnNp Z25lZCB0ZXN0X2ZsYWdzKQogewogCXVpbnQzMl90IHNjcmF0Y2ggPSBnZW1fY3JlYXRlKGZkLCA0 MDk2KTsKIAl1aW50MzJfdCByZWFkWzJdLCB3cml0ZVsyXTsKQEAgLTE2OCw2ICsxNzMsNyBAQCBz dGF0aWMgdm9pZCBvbmUoaW50IGZkLCBjb25zdCBzdHJ1Y3QgaW50ZWxfZXhlY3V0aW9uX2VuZ2lu ZTIgKmUsIHVuc2lnbmVkIHRlc3RfZgogCWludCB0aW1lb3V0OwogCiAJc3BpbiA9IGlndF9zcGlu X25ldyhmZCwKKwkJCSAgICAuY3R4ID0gY3R4LAogCQkJICAgIC5lbmdpbmUgPSBlLT5mbGFncywK IAkJCSAgICAuZGVwZW5kZW5jeSA9IHNjcmF0Y2gsCiAJCQkgICAgLmZsYWdzID0gKHRlc3RfZmxh Z3MgJiBIQU5HKSA/IElHVF9TUElOX05PX1BSRUVNUFRJT04gOiAwKTsKQEAgLTE3OCwxMyArMTg0 LDEzIEBAIHN0YXRpYyB2b2lkIG9uZShpbnQgZmQsIGNvbnN0IHN0cnVjdCBpbnRlbF9leGVjdXRp b25fZW5naW5lMiAqZSwgdW5zaWduZWQgdGVzdF9mCiAJaWYgKHRlc3RfZmxhZ3MgJiBQQVJBTExF TCkgewogCQlzdHJ1Y3QgaW50ZWxfZXhlY3V0aW9uX2VuZ2luZTIgKmUyOwogCi0JCV9fZm9yX2Vh Y2hfcGh5c2ljYWxfZW5naW5lKGZkLCBlMikgeworCQlmb3JfZWFjaF9jdHhfZW5naW5lKGZkLCBj dHgsIGUyKSB7CiAJCQlpZiAoZTItPmNsYXNzID09IGUtPmNsYXNzICYmCiAJCQkgICAgZTItPmlu c3RhbmNlID09IGUtPmluc3RhbmNlKQogCQkJCWNvbnRpbnVlOwogCiAJCQlpZ3RfZGVidWcoIlRl c3RpbmcgJXMgaW4gcGFyYWxsZWxcbiIsIGUyLT5uYW1lKTsKLQkJCW9uZShmZCwgZTIsIDApOwor CQkJb25lKGZkLCBjdHgsIGUyLCAwKTsKIAkJfQogCX0KIApAQCAtMjI5LDcgKzIzNSw3IEBAIHN0 YXRpYyB2b2lkIHhjaGdfdTMyKHZvaWQgKmFycmF5LCB1bnNpZ25lZCBpLCB1bnNpZ25lZCBqKQog CXUzMltqXSA9IHRtcDsKIH0KIAotc3RhdGljIHZvaWQgY2xvc2VfcmFjZShpbnQgZmQpCitzdGF0 aWMgdm9pZCBjbG9zZV9yYWNlKGludCBmZCwgY29uc3QgaW50ZWxfY3R4X3QgKmN0eCkKIHsKIAlj b25zdCB1bnNpZ25lZCBpbnQgbmNwdXMgPSBzeXNjb25mKF9TQ19OUFJPQ0VTU09SU19PTkxOKTsK IAljb25zdCB1bnNpZ25lZCBpbnQgbmhhbmRsZXMgPSBnZW1fc3VibWlzc2lvbl9tZWFzdXJlKGZk LCBBTExfRU5HSU5FUyk7CkBAIC0yNDgsNyArMjU0LDcgQEAgc3RhdGljIHZvaWQgY2xvc2VfcmFj ZShpbnQgZmQpCiAJICovCiAKIAluZW5naW5lID0gMDsKLQlfX2Zvcl9lYWNoX3BoeXNpY2FsX2Vu Z2luZShmZCwgZSkKKwlmb3JfZWFjaF9jdHhfZW5naW5lKGZkLCBjdHgsIGUpCiAJCWVuZ2luZXNb bmVuZ2luZSsrXSA9IGUtPmZsYWdzOwogCWlndF9yZXF1aXJlKG5lbmdpbmUpOwogCkBAIC0yOTYs NiArMzAyLDcgQEAgc3RhdGljIHZvaWQgY2xvc2VfcmFjZShpbnQgZmQpCiAKIAkJZm9yIChpID0g MDsgaSA8IG5oYW5kbGVzOyBpKyspIHsKIAkJCXNwaW5baV0gPSBfX2lndF9zcGluX25ldyhmZCwK KwkJCQkJCSAuY3R4ID0gY3R4LAogCQkJCQkJIC5lbmdpbmUgPSBlbmdpbmVzW3JhbmQoKSAlIG5l bmdpbmVdKTsKIAkJCWhhbmRsZXNbaV0gPSBzcGluW2ldLT5oYW5kbGU7CiAJCX0KQEAgLTMwNCw2 ICszMTEsNyBAQCBzdGF0aWMgdm9pZCBjbG9zZV9yYWNlKGludCBmZCkKIAkJCWZvciAoaSA9IDA7 IGkgPCBuaGFuZGxlczsgaSsrKSB7CiAJCQkJaWd0X3NwaW5fZnJlZShmZCwgc3BpbltpXSk7CiAJ CQkJc3BpbltpXSA9IF9faWd0X3NwaW5fbmV3KGZkLAorCQkJCQkJCSAuY3R4ID0gY3R4LAogCQkJ CQkJCSAuZW5naW5lID0gZW5naW5lc1tyYW5kKCkgJSBuZW5naW5lXSk7CiAJCQkJaGFuZGxlc1tp XSA9IHNwaW5baV0tPmhhbmRsZTsKIAkJCQlfX3N5bmNfc3luY2hyb25pemUoKTsKQEAgLTM1NSwx MCArMzYzLDEyIEBAIHN0YXRpYyBib29sIGhhc19leHRlbmRlZF9idXN5X2lvY3RsKGludCBmZCkK IAlyZXR1cm4gcmVhZCAhPSAwOwogfQogCi1zdGF0aWMgdm9pZCBiYXNpYyhpbnQgZmQsIGNvbnN0 IHN0cnVjdCBpbnRlbF9leGVjdXRpb25fZW5naW5lMiAqZSwgdW5zaWduZWQgZmxhZ3MpCitzdGF0 aWMgdm9pZCBiYXNpYyhpbnQgZmQsIGNvbnN0IGludGVsX2N0eF90ICpjdHgsCisJCSAgY29uc3Qg c3RydWN0IGludGVsX2V4ZWN1dGlvbl9lbmdpbmUyICplLCB1bnNpZ25lZCBmbGFncykKIHsKIAlp Z3Rfc3Bpbl90ICpzcGluID0KIAkJaWd0X3NwaW5fbmV3KGZkLAorCQkJICAgICAuY3R4ID0gY3R4 LAogCQkJICAgICAuZW5naW5lID0gZS0+ZmxhZ3MsCiAJCQkgICAgIC5mbGFncyA9IGZsYWdzICYg SEFORyA/CiAJCQkgICAgIElHVF9TUElOX05PX1BSRUVNUFRJT04gfCBJR1RfU1BJTl9JTlZBTElE X0NTIDogMCk7CkBAIC0zODUsMzIgKzM5NSwzNCBAQCBzdGF0aWMgdm9pZCBiYXNpYyhpbnQgZmQs IGNvbnN0IHN0cnVjdCBpbnRlbF9leGVjdXRpb25fZW5naW5lMiAqZSwgdW5zaWduZWQgZmxhZwog CWlndF9zcGluX2ZyZWUoZmQsIHNwaW4pOwogfQogCi1zdGF0aWMgdm9pZCBhbGwoaW50IGk5MTUp CitzdGF0aWMgdm9pZCBhbGwoaW50IGk5MTUsIGNvbnN0IGludGVsX2N0eF90ICpjdHgpCiB7CiAJ Y29uc3Qgc3RydWN0IGludGVsX2V4ZWN1dGlvbl9lbmdpbmUyICplOwogCi0JX19mb3JfZWFjaF9w aHlzaWNhbF9lbmdpbmUoaTkxNSwgZSkKLQkJaWd0X2ZvcmsoY2hpbGQsIDEpIGJhc2ljKGk5MTUs IGUsIDApOworCWZvcl9lYWNoX2N0eF9lbmdpbmUoaTkxNSwgY3R4LCBlKQorCQlpZ3RfZm9yayhj aGlsZCwgMSkgYmFzaWMoaTkxNSwgY3R4LCBlLCAwKTsKIAlpZ3Rfd2FpdGNoaWxkcmVuKCk7CiB9 CiAKLSNkZWZpbmUgdGVzdF9lYWNoX2VuZ2luZShULCBpOTE1LCBlKSBcCi0JaWd0X3N1YnRlc3Rf d2l0aF9keW5hbWljKFQpIF9fZm9yX2VhY2hfcGh5c2ljYWxfZW5naW5lKGk5MTUsIGUpIFwKKyNk ZWZpbmUgdGVzdF9lYWNoX2VuZ2luZShULCBpOTE1LCBjdHgsIGUpIFwKKwlpZ3Rfc3VidGVzdF93 aXRoX2R5bmFtaWMoVCkgZm9yX2VhY2hfY3R4X2VuZ2luZShpOTE1LCBjdHgsIGUpIFwKIAkJaWd0 X2R5bmFtaWNfZigiJXMiLCAoZSktPm5hbWUpCiAKLSNkZWZpbmUgdGVzdF9lYWNoX2VuZ2luZV9z dG9yZShULCBpOTE1LCBlKSBcCi0JaWd0X3N1YnRlc3Rfd2l0aF9keW5hbWljKFQpIF9fZm9yX2Vh Y2hfcGh5c2ljYWxfZW5naW5lKGk5MTUsIGUpIFwKKyNkZWZpbmUgdGVzdF9lYWNoX2VuZ2luZV9z dG9yZShULCBpOTE1LCBjdHgsIGUpIFwKKwlpZ3Rfc3VidGVzdF93aXRoX2R5bmFtaWMoVCkgZm9y X2VhY2hfY3R4X2VuZ2luZShpOTE1LCBjdHgsIGUpIFwKIAkJZm9yX2VhY2hfaWYgKGdlbV9jbGFz c19jYW5fc3RvcmVfZHdvcmQoaTkxNSwgKGUpLT5jbGFzcykpIFwKIAkJCWlndF9keW5hbWljX2Yo IiVzIiwgKGUpLT5uYW1lKQogCiBpZ3RfbWFpbgogewogCWNvbnN0IHN0cnVjdCBpbnRlbF9leGVj dXRpb25fZW5naW5lMiAqZTsKKwljb25zdCBpbnRlbF9jdHhfdCAqY3R4OwogCWludCBmZCA9IC0x OwogCiAJaWd0X2ZpeHR1cmUgewogCQlmZCA9IGRybV9vcGVuX2RyaXZlcl9tYXN0ZXIoRFJJVkVS X0lOVEVMKTsKIAkJaWd0X3JlcXVpcmVfZ2VtKGZkKTsKKwkJY3R4ID0gaW50ZWxfY3R4X2NyZWF0 ZV9hbGxfcGh5c2ljYWwoZmQpOwogCX0KIAogCWlndF9zdWJ0ZXN0X2dyb3VwIHsKQEAgLTQyMSwx MyArNDMzLDEzIEBAIGlndF9tYWluCiAJCWlndF9zdWJ0ZXN0X3dpdGhfZHluYW1pYygiYnVzeSIp IHsKIAkJCWlndF9keW5hbWljKCJhbGwiKSB7CiAJCQkJZ2VtX3F1aWVzY2VudF9ncHUoZmQpOwot CQkJCWFsbChmZCk7CisJCQkJYWxsKGZkLCBjdHgpOwogCQkJfQogCi0JCQlfX2Zvcl9lYWNoX3Bo eXNpY2FsX2VuZ2luZShmZCwgZSkgeworCQkJZm9yX2VhY2hfY3R4X2VuZ2luZShmZCwgY3R4LCBl KSB7CiAJCQkJaWd0X2R5bmFtaWNfZigiJXMiLCBlLT5uYW1lKSB7CiAJCQkJCWdlbV9xdWllc2Nl bnRfZ3B1KGZkKTsKLQkJCQkJYmFzaWMoZmQsIGUsIDApOworCQkJCQliYXNpYyhmZCwgY3R4LCBl LCAwKTsKIAkJCQl9CiAJCQl9CiAJCX0KQEAgLTQzOCwxNSArNDUwLDE1IEBAIGlndF9tYWluCiAJ CQkJZ2VtX3JlcXVpcmVfbW1hcF93YyhmZCk7CiAJCQl9CiAKLQkJCXRlc3RfZWFjaF9lbmdpbmVf c3RvcmUoImV4dGVuZGVkIiwgZmQsIGUpIHsKKwkJCXRlc3RfZWFjaF9lbmdpbmVfc3RvcmUoImV4 dGVuZGVkIiwgZmQsIGN0eCwgZSkgewogCQkJCWdlbV9xdWllc2NlbnRfZ3B1KGZkKTsKLQkJCQlv bmUoZmQsIGUsIDApOworCQkJCW9uZShmZCwgY3R4LCBlLCAwKTsKIAkJCQlnZW1fcXVpZXNjZW50 X2dwdShmZCk7CiAJCQl9CiAKLQkJCXRlc3RfZWFjaF9lbmdpbmVfc3RvcmUoInBhcmFsbGVsIiwg ZmQsIGUpIHsKKwkJCXRlc3RfZWFjaF9lbmdpbmVfc3RvcmUoInBhcmFsbGVsIiwgZmQsIGN0eCwg ZSkgewogCQkJCWdlbV9xdWllc2NlbnRfZ3B1KGZkKTsKLQkJCQlvbmUoZmQsIGUsIFBBUkFMTEVM KTsKKwkJCQlvbmUoZmQsIGN0eCwgZSwgUEFSQUxMRUwpOwogCQkJCWdlbV9xdWllc2NlbnRfZ3B1 KGZkKTsKIAkJCX0KIAkJfQpAQCAtNDU3LDE1ICs0NjksMTUgQEAgaWd0X21haW4KIAkJCQlpZ3Rf cmVxdWlyZShoYXNfc2VtYXBob3JlcyhmZCkpOwogCQkJfQogCi0JCQl0ZXN0X2VhY2hfZW5naW5l KCJzZW1hcGhvcmUiLCBmZCwgZSkgeworCQkJdGVzdF9lYWNoX2VuZ2luZSgic2VtYXBob3JlIiwg ZmQsIGN0eCwgZSkgewogCQkJCWdlbV9xdWllc2NlbnRfZ3B1KGZkKTsKLQkJCQlzZW1hcGhvcmUo ZmQsIGUpOworCQkJCXNlbWFwaG9yZShmZCwgY3R4LCBlKTsKIAkJCQlnZW1fcXVpZXNjZW50X2dw dShmZCk7CiAJCQl9CiAJCX0KIAogCQlpZ3Rfc3VidGVzdCgiY2xvc2UtcmFjZSIpCi0JCQljbG9z ZV9yYWNlKGZkKTsKKwkJCWNsb3NlX3JhY2UoZmQsIGN0eCk7CiAKIAkJaWd0X2ZpeHR1cmUgewog CQkJaWd0X3N0b3BfaGFuZ19kZXRlY3RvcigpOwpAQCAtNDc5LDkgKzQ5MSw5IEBAIGlndF9tYWlu CiAJCQloYW5nID0gaWd0X2FsbG93X2hhbmcoZmQsIDAsIDApOwogCQl9CiAKLQkJdGVzdF9lYWNo X2VuZ2luZSgiaGFuZyIsIGZkLCBlKSB7CisJCXRlc3RfZWFjaF9lbmdpbmUoImhhbmciLCBmZCwg Y3R4LCBlKSB7CiAJCQlnZW1fcXVpZXNjZW50X2dwdShmZCk7Ci0JCQliYXNpYyhmZCwgZSwgSEFO Ryk7CisJCQliYXNpYyhmZCwgY3R4LCBlLCBIQU5HKTsKIAkJCWdlbV9xdWllc2NlbnRfZ3B1KGZk KTsKIAkJfQogCkBAIC00OTEsOSArNTAzLDkgQEAgaWd0X21haW4KIAkJCQlnZW1fcmVxdWlyZV9t bWFwX3djKGZkKTsKIAkJCX0KIAotCQkJdGVzdF9lYWNoX2VuZ2luZV9zdG9yZSgiaGFuZy1leHRl bmRlZCIsIGZkLCBlKSB7CisJCQl0ZXN0X2VhY2hfZW5naW5lX3N0b3JlKCJoYW5nLWV4dGVuZGVk IiwgZmQsIGN0eCwgZSkgewogCQkJCWdlbV9xdWllc2NlbnRfZ3B1KGZkKTsKLQkJCQlvbmUoZmQs IGUsIEhBTkcpOworCQkJCW9uZShmZCwgY3R4LCBlLCBIQU5HKTsKIAkJCQlnZW1fcXVpZXNjZW50 X2dwdShmZCk7CiAJCQl9CiAJCX0KQEAgLTUwNCw2ICs1MTYsNyBAQCBpZ3RfbWFpbgogCX0KIAog CWlndF9maXh0dXJlIHsKKwkJaW50ZWxfY3R4X2Rlc3Ryb3koZmQsIGN0eCk7CiAJCWNsb3NlKGZk KTsKIAl9CiB9Ci0tIAoyLjMxLjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCmlndC1kZXYgbWFpbGluZyBsaXN0CmlndC1kZXZAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaWd0 LWRldgo=