From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from relay5-d.mail.gandi.net (relay5-d.mail.gandi.net [217.70.183.197]) by gabe.freedesktop.org (Postfix) with ESMTPS id 0CE6C6E984 for ; Wed, 6 Feb 2019 15:01:45 +0000 (UTC) From: Paul Kocialkowski Date: Wed, 6 Feb 2019 16:00:59 +0100 Message-Id: <20190206150059.24679-5-paul.kocialkowski@bootlin.com> In-Reply-To: <20190206150059.24679-1-paul.kocialkowski@bootlin.com> References: <20190206150059.24679-1-paul.kocialkowski@bootlin.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t RFC v2 4/4] tests: Add VC4 load tracker tests 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: Eben Upton , Thomas Petazzoni List-ID: VGhpcyBpbnRyb2R1Y2VzIG5ldyB0ZXN0cyBmb3IgdGhlIFZDNCBsb2FkIHRyYWNraW5nIG1lY2hh bmlzbSwgdGhhdAp3aWxsIGF0dGVtcHQgdG8gYWRkICJhcyBtYW55IHBsYW5lcyBhcyBwb3NzaWJs ZXMiIGluIHRoZSBtb2RlCnJlc29sdXRpb24uIFRoZSBhc3NvY2lhdGVkIHN1Yi10ZXN0cyBhcmUg dGhlIGZvbGxvd2luZzoKLSBiYW5kd2lkdGgtZGV0ZWN0aW9uOiBjaGVja3MgdGhhdCBiYW5kd2lk dGggbGltaXRhdGlvbiBpcyBkZXRlY3RlZDsKLSB1bmRlcnJ1bi1kZXRlY3Rpb246IGNoZWNrcyB0 aGF0IGhhcmR3YXJlIHVuZGVycnVucyBhcmUgZGV0ZWN0ZWQ7Ci0gY29uc2lzdGVuY3k6IGNoZWNr cyB0aGF0IGJhbmR3aWR0aCBhbmQgdW5kZXJydW4gcmVwb3J0cyBhcmUgY29uc2lzdGVudDsKClNp Z25lZC1vZmYtYnk6IFBhdWwgS29jaWFsa293c2tpIDxwYXVsLmtvY2lhbGtvd3NraUBib290bGlu LmNvbT4KLS0tCiB0ZXN0cy9tZXNvbi5idWlsZCAgICAgICAgfCAgIDEgKwogdGVzdHMvdmM0X2xv YWRfdHJhY2tlci5jIHwgMjU0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KwogMiBmaWxlcyBjaGFuZ2VkLCAyNTUgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0 IHRlc3RzL3ZjNF9sb2FkX3RyYWNrZXIuYwoKZGlmZiAtLWdpdCBhL3Rlc3RzL21lc29uLmJ1aWxk IGIvdGVzdHMvbWVzb24uYnVpbGQKaW5kZXggMGYxMmRmMjZkOWZiLi5iZWZmMjU2OGNmNzggMTAw NjQ0Ci0tLSBhL3Rlc3RzL21lc29uLmJ1aWxkCisrKyBiL3Rlc3RzL21lc29uLmJ1aWxkCkBAIC04 Niw2ICs4Niw3IEBAIHRlc3RfcHJvZ3MgPSBbCiAJJ3ZjNF9jcmVhdGVfYm8nLAogCSd2YzRfZG1h YnVmX3BvbGwnLAogCSd2YzRfbGFiZWxfYm8nLAorCSd2YzRfbG9hZF90cmFja2VyJywKIAkndmM0 X2xvb2t1cF9mYWlsJywKIAkndmM0X3B1cmdlYWJsZV9ibycsCiAJJ3ZjNF90aWxpbmcnLApkaWZm IC0tZ2l0IGEvdGVzdHMvdmM0X2xvYWRfdHJhY2tlci5jIGIvdGVzdHMvdmM0X2xvYWRfdHJhY2tl ci5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uMjA4Mjc5YzdlZThm Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvdmM0X2xvYWRfdHJhY2tlci5jCkBAIC0wLDAgKzEs MjU0IEBACisvKgorICogQ29weXJpZ2h0IMKpIDIwMTggQm9vdGxpbgorICogQ29weXJpZ2h0IMKp IDIwMTggQnJvYWRjb20KKyAqCisgKiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVl IG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYQorICogY29weSBvZiB0aGlzIHNv ZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSAiU29mdHdhcmUi KSwKKyAqIHRvIGRlYWwgaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1 ZGluZyB3aXRob3V0IGxpbWl0YXRpb24KKyAqIHRoZSByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2Rp ZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLAorICogYW5kL29yIHNl bGwgY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20g dGhlCisgKiBTb2Z0d2FyZSBpcyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZv bGxvd2luZyBjb25kaXRpb25zOgorICoKKyAqIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFu ZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIChpbmNsdWRpbmcgdGhlIG5leHQKKyAqIHBhcmFncmFw aCkgc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9u cyBvZiB0aGUKKyAqIFNvZnR3YXJlLgorICoKKyAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAi QVMgSVMiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SCisgKiBJTVBM SUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNI QU5UQUJJTElUWSwKKyAqIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05J TkZSSU5HRU1FTlQuICBJTiBOTyBFVkVOVCBTSEFMTAorICogVEhFIEFVVEhPUlMgT1IgQ09QWVJJ R0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKKyAq IExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RI RVJXSVNFLCBBUklTSU5HCisgKiBGUk9NLCBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRI RSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTCisgKiBJTiBUSEUgU09GVFdB UkUuCisgKi8KKworI2luY2x1ZGUgImlndC5oIgorI2luY2x1ZGUgImlndF92YzQuaCIKKyNpbmNs dWRlIDx1bmlzdGQuaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdGRpby5oPgor I2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPGZjbnRsLmg+CisjaW5jbHVkZSA8aW50dHlw ZXMuaD4KKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CisjaW5jbHVk ZSA8c3lzL2lvY3RsLmg+CisjaW5jbHVkZSA8cG9sbC5oPgorI2luY2x1ZGUgInZjNF9kcm0uaCIK Kworc3RhdGljIGlndF9vdXRwdXRfdCAqc2VsZWN0X291dHB1dChpZ3RfZGlzcGxheV90ICpkaXNw bGF5KQoreworCWlndF9vdXRwdXRfdCAqb3V0cHV0OworCWVudW0gcGlwZSBwaXBlOworCisJZm9y X2VhY2hfcGlwZShkaXNwbGF5LCBwaXBlKSB7CisJCWZvcl9lYWNoX3ZhbGlkX291dHB1dF9vbl9w aXBlKGRpc3BsYXksIHBpcGUsIG91dHB1dCkgeworCQkJZHJtTW9kZUNvbm5lY3RvciAqY29ubmVj dG9yID0gb3V0cHV0LT5jb25maWcuY29ubmVjdG9yOworCisJCQlpZiAoY29ubmVjdG9yLT5jb25u ZWN0aW9uICE9IERSTV9NT0RFX0NPTk5FQ1RFRCkKKwkJCQljb250aW51ZTsKKworCQkJaWd0X291 dHB1dF9zZXRfcGlwZShvdXRwdXQsIHBpcGUpOworCisJCQlyZXR1cm4gb3V0cHV0OworCQl9CisJ fQorCisJcmV0dXJuIE5VTEw7Cit9CisKK3N0YXRpYyB2b2lkIHNldHVwX3ByaW1hcnlfcGxhbmUo aW50IGRybV9mZCwgaWd0X291dHB1dF90ICpvdXRwdXQsCisJCQkJdWludDMyX3Qgd2lkdGgsIHVp bnQzMl90IGhlaWdodCwKKwkJCQlpZ3RfcGxhbmVfdCAqKnBsYW5lLCBzdHJ1Y3QgaWd0X2ZiICpm YikKK3sKKwl1bnNpZ25lZCBpbnQgZmJfaWQ7CisKKwkqcGxhbmUgPSBpZ3Rfb3V0cHV0X2dldF9w bGFuZV90eXBlKG91dHB1dCwgRFJNX1BMQU5FX1RZUEVfUFJJTUFSWSk7CisJaWd0X2Fzc2VydCgq cGxhbmUpOworCisJZmJfaWQgPSBpZ3RfY3JlYXRlX3BhdHRlcm5fZmIoZHJtX2ZkLCB3aWR0aCwg aGVpZ2h0LAorCQkJCSAgICAgIERSTV9GT1JNQVRfQVJHQjg4ODgsCisJCQkJICAgICAgTE9DQUxf RFJNX0ZPUk1BVF9NT0RfTk9ORSwgZmIpOworCWlndF9hc3NlcnQoZmJfaWQgPiAwKTsKKworCWln dF9wbGFuZV9zZXRfZmIoKnBsYW5lLCBmYik7Cit9CisKK3N0YXRpYyB2b2lkIHNldHVwX292ZXJs YXlfcGxhbmUoaW50IGRybV9mZCwgaWd0X291dHB1dF90ICpvdXRwdXQsCisJCQkJdW5zaWduZWQg aW50IGluZGV4LCB1aW50MzJfdCB3aWR0aCwKKwkJCQl1aW50MzJfdCBoZWlnaHQsIHN0cnVjdCBp Z3RfZmIgKmZicykKK3sKKwl1bnNpZ25lZCBpbnQgZmJfaWQ7CisJc3RydWN0IGlndF9mYiAqZmIg PSAmZmJzW2luZGV4XTsKKwlpZ3RfcGxhbmVfdCAqcGxhbmUgPQorCQlpZ3Rfb3V0cHV0X2dldF9w bGFuZV90eXBlX2luZGV4KG91dHB1dCwgRFJNX1BMQU5FX1RZUEVfT1ZFUkxBWSwKKwkJCQkJCWlu ZGV4KTsKKwlpZ3RfYXNzZXJ0KHBsYW5lKTsKKworCWZiX2lkID0gaWd0X2NyZWF0ZV9wYXR0ZXJu X2ZiKGRybV9mZCwgd2lkdGgsIGhlaWdodCwKKwkJCQkgICAgICBEUk1fRk9STUFUX0FSR0I4ODg4 LAorCQkJCSAgICAgIExPQ0FMX0RSTV9GT1JNQVRfTU9EX05PTkUsIGZiKTsKKwlpZ3RfYXNzZXJ0 KGZiX2lkID4gMCk7CisKKwlpZ3RfcGxhbmVfc2V0X2ZiKHBsYW5lLCBmYik7CisJaWd0X3BsYW5l X3NldF9wb3NpdGlvbihwbGFuZSwgMTAgKiAoaW5kZXggKyAxKSwgMTAgKiAoaW5kZXggKyAxKSk7 Cit9CisKK3N0YXRpYyB2b2lkIGNsZWFudXBfb3ZlcmxheV9wbGFuZShpbnQgZHJtX2ZkLCBpZ3Rf b3V0cHV0X3QgKm91dHB1dCwKKwkJCQkgIHVuc2lnbmVkIGludCBpbmRleCwgc3RydWN0IGlndF9m YiAqZmJzLAorCQkJCSAgYm9vbCBjbGVhbnVwX2ZiKQoreworCXN0cnVjdCBpZ3RfZmIgKmZiID0g JmZic1tpbmRleF07CisJaWd0X3BsYW5lX3QgKnBsYW5lID0KKwkJaWd0X291dHB1dF9nZXRfcGxh bmVfdHlwZV9pbmRleChvdXRwdXQsIERSTV9QTEFORV9UWVBFX09WRVJMQVksCisJCQkJCQlpbmRl eCk7CisJaWd0X2Fzc2VydChwbGFuZSk7CisKKwlpZiAoY2xlYW51cF9mYikKKwkJaWd0X3JlbW92 ZV9mYihkcm1fZmQsIGZiKTsKKwllbHNlCisJCWlndF9wbGFuZV9zZXRfZmIocGxhbmUsIE5VTEwp OworfQorCitzdGF0aWMgdm9pZCBsb2FkX3RyYWNrZXJfdGVzdChpbnQgZHJtX2ZkLCBpZ3RfZGlz cGxheV90ICpkaXNwbGF5LAorCQkJICAgICAgYm9vbCB0ZXN0X2NvbnNpc3RlbmN5LCBib29sIHRl c3RfYmFuZHdpZHRoKQoreworCWlndF9vdXRwdXRfdCAqb3V0cHV0OworCWRybU1vZGVNb2RlSW5m byAqbW9kZTsKKwlzdHJ1Y3QgaWd0X2ZiIHByaW1hcnlfZmI7CisJaWd0X3BsYW5lX3QgKnByaW1h cnlfcGxhbmU7CisJc3RydWN0IGlndF9mYiAqb3ZlcmxheV9mYnM7CisJdWludDMyX3Qgb3Zlcmxh eV93aWR0aCwgb3ZlcmxheV9oZWlnaHQ7CisJdW5zaWduZWQgaW50IG92ZXJsYXlfcGxhbmVzX2Nv dW50OworCXVuc2lnbmVkIGludCBjb3VudDsKKwl1bnNpZ25lZCBpbnQgaW5kZXg7CisJYm9vbCBs b2FkX3RyYWNrZXJfaW5pdGlhbCA9IGZhbHNlOworCWJvb2wgYmFuZHdpZHRoX2V4Y2VlZGVkID0g ZmFsc2U7CisJYm9vbCB1bmRlcnJ1bl9kZXRlY3RlZCA9IGZhbHNlOworCWludCB1bmRlcnJ1bl9j b3VudDsKKwlpbnQgZGVidWdmczsKKwlpbnQgcmV0OworCisJZGVidWdmcyA9IGlndF9kZWJ1Z2Zz X2Rpcihkcm1fZmQpOworCWlndF9hc3NlcnQoZGVidWdmcyA+PSAwKTsKKworCXVuZGVycnVuX2Nv dW50ID0gaWd0X3ZjNF9nZXRfdW5kZXJydW5fY291bnQoZGVidWdmcyk7CisJbG9hZF90cmFja2Vy X2luaXRpYWwgPSBpZ3RfdmM0X2dldF9sb2FkX3RyYWNrZXIoZGVidWdmcyk7CisKKwlvdXRwdXQg PSBzZWxlY3Rfb3V0cHV0KGRpc3BsYXkpOworCWlndF9hc3NlcnQob3V0cHV0KTsKKworCWlndF9k ZWJ1ZygiU2VsZWN0ZWQgY29ubmVjdG9yICVzXG4iLAorCQkgIGttc3Rlc3RfY29ubmVjdG9yX3R5 cGVfc3RyKG91dHB1dC0+Y29uZmlnLmNvbm5lY3Rvci0+Y29ubmVjdG9yX3R5cGUpKTsKKworCW1v ZGUgPSBpZ3Rfb3V0cHV0X2dldF9tb2RlKG91dHB1dCk7CisJaWd0X2Fzc2VydChtb2RlKTsKKwor CXNldHVwX3ByaW1hcnlfcGxhbmUoZHJtX2ZkLCBvdXRwdXQsIG1vZGUtPmhkaXNwbGF5LCBtb2Rl LT52ZGlzcGxheSwKKwkJCSAgICAmcHJpbWFyeV9wbGFuZSwgJnByaW1hcnlfZmIpOworCisJb3Zl cmxheV9wbGFuZXNfY291bnQgPQorCQlpZ3Rfb3V0cHV0X2NvdW50X3BsYW5lX3R5cGUob3V0cHV0 LCBEUk1fUExBTkVfVFlQRV9PVkVSTEFZKTsKKworCW92ZXJsYXlfZmJzID0gY2FsbG9jKHNpemVv ZihzdHJ1Y3QgaWd0X2ZiKSwgb3ZlcmxheV9wbGFuZXNfY291bnQpOworCisJb3ZlcmxheV93aWR0 aCA9IG1vZGUtPmhkaXNwbGF5OworCW92ZXJsYXlfaGVpZ2h0ID0gbW9kZS0+dmRpc3BsYXk7CisK Kwlmb3IgKGNvdW50ID0gMTsgY291bnQgPD0gb3ZlcmxheV9wbGFuZXNfY291bnQ7IGNvdW50Kysp IHsKKwkJaW50IHVuZGVycnVuX3VwZGF0ZTsKKworCQlpZ3RfZGVidWcoIlVzaW5nICVkIG92ZXJs YXkgcGxhbmVzIHdpdGggcmVzb2x1dGlvbiAlZHglZFxuIiwKKwkJCSAgb3ZlcmxheV9wbGFuZXNf Y291bnQsIG92ZXJsYXlfd2lkdGgsIG92ZXJsYXlfaGVpZ2h0KTsKKworCQlmb3IgKGluZGV4ID0g MDsgaW5kZXggPCBjb3VudDsgaW5kZXgrKykKKwkJCXNldHVwX292ZXJsYXlfcGxhbmUoZHJtX2Zk LCBvdXRwdXQsIGluZGV4LAorCQkJCQkgICAgb3ZlcmxheV93aWR0aCwgb3ZlcmxheV9oZWlnaHQs CisJCQkJCSAgICBvdmVybGF5X2Zicyk7CisKKwkJaWd0X3ZjNF9zZXRfbG9hZF90cmFja2VyKGRl YnVnZnMsIHRydWUpOworCisJCXJldCA9IGlndF9kaXNwbGF5X3RyeV9jb21taXQyKGRpc3BsYXks IENPTU1JVF9BVE9NSUMpOworCQliYW5kd2lkdGhfZXhjZWVkZWQgPSAocmV0IDwgMCAmJiBlcnJu byA9PSBFTk9TUEMpOworCisJCWlndF9kZWJ1ZygiQmFuZHdpZHRoIGxpbWl0YXRpb24gZXhlZWRl ZDogJXNcbiIsCisJCQkgIGJhbmR3aWR0aF9leGNlZWRlZCA/ICJZZXMiIDogIk5vIik7CisKKwkJ aWd0X3ZjNF9zZXRfbG9hZF90cmFja2VyKGRlYnVnZnMsIGZhbHNlKTsKKworCQlpZ3RfZGlzcGxh eV9jb21taXQyKGRpc3BsYXksIENPTU1JVF9BVE9NSUMpOworCisJCWlndF93YWl0X2Zvcl92Ymxh bmsoZHJtX2ZkLCBvdXRwdXQtPnBlbmRpbmdfcGlwZSk7CisKKwkJdW5kZXJydW5fdXBkYXRlID0g aWd0X3ZjNF9nZXRfdW5kZXJydW5fY291bnQoZGVidWdmcyk7CisKKwkJdW5kZXJydW5fZGV0ZWN0 ZWQgPSAodW5kZXJydW5fdXBkYXRlID4gdW5kZXJydW5fY291bnQpOworCQl1bmRlcnJ1bl9jb3Vu dCA9IHVuZGVycnVuX3VwZGF0ZTsKKworCQlpZ3RfZGVidWcoIlVuZGVycnVuIGRldGVjdGVkOiAl c1xuIiwKKwkJCSAgdW5kZXJydW5fZGV0ZWN0ZWQgPyAiWWVzIiA6ICJObyIpOworCisJCWlmICh0 ZXN0X2NvbnNpc3RlbmN5KQorCQkJaWd0X2Fzc2VydChiYW5kd2lkdGhfZXhjZWVkZWQgPT0gdW5k ZXJydW5fZGV0ZWN0ZWQpOworCisJCWZvciAoaW5kZXggPSAwOyBpbmRleCA8IGNvdW50OyBpbmRl eCsrKQorCQkJY2xlYW51cF9vdmVybGF5X3BsYW5lKGRybV9mZCwgb3V0cHV0LCBpbmRleCwKKwkJ CQkJICAgICAgb3ZlcmxheV9mYnMsIGZhbHNlKTsKKworCQlpZ3RfZGlzcGxheV9jb21taXQyKGRp c3BsYXksIENPTU1JVF9BVE9NSUMpOworCisJCWZvciAoaW5kZXggPSAwOyBpbmRleCA8IGNvdW50 OyBpbmRleCsrKQorCQkJY2xlYW51cF9vdmVybGF5X3BsYW5lKGRybV9mZCwgb3V0cHV0LCBpbmRl eCwKKwkJCQkJICAgICAgb3ZlcmxheV9mYnMsIHRydWUpOworCisJCWlmICgodGVzdF9iYW5kd2lk dGggJiYgYmFuZHdpZHRoX2V4Y2VlZGVkKSB8fAorCQkgICAgKCF0ZXN0X2JhbmR3aWR0aCAmJiB1 bmRlcnJ1bl9kZXRlY3RlZCkpCisJCQlicmVhazsKKwl9CisKKwlpZiAodGVzdF9iYW5kd2lkdGgp CisJCWlndF9hc3NlcnQoYmFuZHdpZHRoX2V4Y2VlZGVkKTsKKwllbHNlCisJCWlndF9hc3NlcnQo dW5kZXJydW5fZGV0ZWN0ZWQpOworCisJZnJlZShvdmVybGF5X2Zicyk7CisKKwlpZ3RfcGxhbmVf c2V0X2ZiKHByaW1hcnlfcGxhbmUsIE5VTEwpOworCisJaWd0X2Rpc3BsYXlfY29tbWl0MihkaXNw bGF5LCBDT01NSVRfQVRPTUlDKTsKKworCWlndF9yZW1vdmVfZmIoZHJtX2ZkLCAmcHJpbWFyeV9m Yik7CisKKwlpZ3RfdmM0X3NldF9sb2FkX3RyYWNrZXIoZGVidWdmcywgbG9hZF90cmFja2VyX2lu aXRpYWwpOworCWNsb3NlKGRlYnVnZnMpOworfQorCitpZ3RfbWFpbgoreworCWlndF9kaXNwbGF5 X3QgZGlzcGxheTsKKwlpbnQgZHJtX2ZkOworCisJaWd0X2ZpeHR1cmUgeworCQlkcm1fZmQgPSBk cm1fb3Blbl9kcml2ZXIoRFJJVkVSX1ZDNCk7CisKKwkJa21zdGVzdF9zZXRfdnRfZ3JhcGhpY3Nf bW9kZSgpOworCisJCWlndF9kaXNwbGF5X3JlcXVpcmUoJmRpc3BsYXksIGRybV9mZCk7CisJCWln dF9yZXF1aXJlKGRpc3BsYXkuaXNfYXRvbWljKTsKKwl9CisKKwlpZ3Rfc3VidGVzdCgiYmFuZHdp ZHRoLWRldGVjdGlvbiIpCisJCWxvYWRfdHJhY2tlcl90ZXN0KGRybV9mZCwgJmRpc3BsYXksIGZh bHNlLCB0cnVlKTsKKworCWlndF9zdWJ0ZXN0KCJ1bmRlcnJ1bi1kZXRlY3Rpb24iKQorCQlsb2Fk X3RyYWNrZXJfdGVzdChkcm1fZmQsICZkaXNwbGF5LCBmYWxzZSwgZmFsc2UpOworCisJaWd0X3N1 YnRlc3QoImNvbnNpc3RlbmN5IikKKwkJbG9hZF90cmFja2VyX3Rlc3QoZHJtX2ZkLCAmZGlzcGxh eSwgdHJ1ZSwgZmFsc2UpOworCisJaWd0X2ZpeHR1cmUgeworCQlpZ3RfZGlzcGxheV9maW5pKCZk aXNwbGF5KTsKKwkJa21zdGVzdF9yZXN0b3JlX3Z0X21vZGUoKTsKKwkJY2xvc2UoZHJtX2ZkKTsK Kwl9Cit9Ci0tIAoyLjIwLjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCmlndC1kZXYgbWFpbGluZyBsaXN0CmlndC1kZXZAbGlzdHMuZnJlZWRlc2t0b3Au b3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaWd0LWRl dgo=