From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH igt] igt/gem_eio: Exercise set-wedging against request submission Date: Sat, 17 Mar 2018 09:09:01 +0000 Message-ID: <20180317090901.2656-1-chris@chris-wilson.co.uk> References: <20180316220234.1603-1-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20180316220234.1603-1-chris@chris-wilson.co.uk> 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 Cc: igt-dev@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org QnVpbGQgdXAgYSBsYXJnZSBzdG9ja3BpbGUgb2YgcmVxdWVzdHMsIH41MDAsMDAwLCBhbmQgZmVl ZCB0aGVtIGludG8gdGhlCnN5c3RlbSBhdCAyMEtIeiB3aGlsc3Qgc2ltdWx0YW5lb3VzbHkgdHJp Z2dlcmluZyBzZXQtd2VkZ2VkIGluIG9yZGVyIHRvCnRyeSBhbmQgcmFjZSBpOTE1X2dlbV9zZXRf d2VkZ2VkKCkgYWdhaW5zdCB0aGUgZW5naW5lLT5zdWJtaXRfcmVxdWVzdCgpCmNhbGxiYWNrLgoK djI6IFR3ZWFrIHNsZWVwIGZvciBmbHVzaGluZyB0aW1lciBzaWduYWxzLgoKU2lnbmVkLW9mZi1i eTogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+CkNjOiBNaWthIEt1b3Bw YWxhIDxtaWthLmt1b3BwYWxhQGxpbnV4LmludGVsLmNvbT4KQWNrZWQtYnk6IEFudG9uaW8gQXJn ZW56aWFubyA8YW50b25pby5hcmdlbnppYW5vQGludGVsLmNvbT4KLS0tCiB0ZXN0cy9nZW1fZWlv LmMgfCAxMTAgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCAxMTAgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBh L3Rlc3RzL2dlbV9laW8uYyBiL3Rlc3RzL2dlbV9laW8uYwppbmRleCAyNDlmNWJmZi4uZmYzZGY3 YjYgMTAwNjQ0Ci0tLSBhL3Rlc3RzL2dlbV9laW8uYworKysgYi90ZXN0cy9nZW1fZWlvLmMKQEAg LTM0LDEyICszNCwxNSBAQAogI2luY2x1ZGUgPGZjbnRsLmg+CiAjaW5jbHVkZSA8aW50dHlwZXMu aD4KICNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPHNjaGVkLmg+CisjaW5jbHVkZSA8c2ln bmFsLmg+CiAjaW5jbHVkZSA8c3lzL2lvY3RsLmg+CiAKICNpbmNsdWRlIDxkcm0uaD4KIAogI2lu Y2x1ZGUgImlndC5oIgogI2luY2x1ZGUgImlndF9zeXNmcy5oIgorI2luY2x1ZGUgImk5MTUvZ2Vt X3JpbmcuaCIKICNpbmNsdWRlICJzd19zeW5jLmgiCiAKIElHVF9URVNUX0RFU0NSSVBUSU9OKCJU ZXN0IHRoYXQgc3BlY2lmaWMgaW9jdGxzIHJlcG9ydCBhIHdlZGdlZCBHUFUgKEVJTykuIik7CkBA IC00NTIsNiArNDU1LDEwOCBAQCBzdGF0aWMgdm9pZCB0ZXN0X2luZmxpZ2h0X2ludGVybmFsKGlu dCBmZCkKIAl0cmlnZ2VyX3Jlc2V0KGZkKTsKIH0KIAorc3RhdGljIHZvaWQgbm90aWZ5KHVuaW9u IHNpZ3ZhbCBhcmcpCit7CisJc3dfc3luY190aW1lbGluZV9pbmMoYXJnLnNpdmFsX2ludCwgMSk7 Cit9CisKK3N0YXRpYyB2b2lkIHRlc3Rfc2V0X3dlZGdlZChpbnQgZmQpCit7CisjZGVmaW5lIE5D VFggNDA5NgorCWNvbnN0IHVpbnQzMl90IGJiZSA9IE1JX0JBVENIX0JVRkZFUl9FTkQ7CisJY29u c3QgdW5zaWduZWQgaW50IHJpbmdfc2l6ZSA9IGdlbV9tZWFzdXJlX3JpbmdfaW5mbGlnaHQoZmQs IDAsIDApIC0gMTsKKwlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNidWZmZXIyIGV4ZWNidWY7CisJ c3RydWN0IGRybV9pOTE1X2dlbV9leGVjX29iamVjdDIgb2JqOworCWludCBkaXIgPSBpZ3RfZGVi dWdmc19kaXIoZmQpOworCXN0cnVjdCBpdGltZXJzcGVjIGl0czsKKwlzdHJ1Y3Qgc2lnZXZlbnQg c2V2OworCXVpbnQzMl90ICpjb250ZXh0czsKKwl0aW1lcl90IHRpbWVyOworCWludCB0aW1lbGlu ZTsKKwlpbnQgc3luY3B0OworCisJY29udGV4dHMgPSBjYWxsb2MoTkNUWCwgc2l6ZW9mKCpjb250 ZXh0cykpOworCWlndF9hc3NlcnQoY29udGV4dHMpOworCisJZm9yIChpbnQgbiA9IDA7IG4gPCBO Q1RYOyBuKyspCisJCWNvbnRleHRzW25dID0gY29udGV4dF9jcmVhdGVfc2FmZShmZCk7CisKKwlt ZW1zZXQoJm9iaiwgMCwgc2l6ZW9mKG9iaikpOworCW9iai5oYW5kbGUgPSBnZW1fY3JlYXRlKGZk LCA0MDk2KTsKKwlnZW1fd3JpdGUoZmQsIG9iai5oYW5kbGUsIDAsICZiYmUsIHNpemVvZihiYmUp KTsKKworCW1lbXNldCgmZXhlY2J1ZiwgMCwgc2l6ZW9mKGV4ZWNidWYpKTsKKwlleGVjYnVmLmJ1 ZmZlcnNfcHRyID0gdG9fdXNlcl9wb2ludGVyKCZvYmopOworCWV4ZWNidWYuYnVmZmVyX2NvdW50 ID0gMTsKKwlleGVjYnVmLmZsYWdzID0gSTkxNV9FWEVDX0ZFTkNFX0lOOworCisJZm9yICh1bnNp Z25lZCBpbnQgbmN0eCA9IDE7IG5jdHggPD0gTkNUWDsgbmN0eCA8PD0gMSkgeworCQl1bnNpZ25l ZCBpbnQgbnJxID0gcmluZ19zaXplOworCQlpZiAoIWdlbV9oYXNfZXhlY2xpc3RzKGZkKSkgewor CQkJbnJxID0gKHJpbmdfc2l6ZSArIG5jdHggLSAxKSAvIG5jdHggKyAxOworCQkJbmN0eCA9IHJp bmdfc2l6ZSAvIG5ycSArIDE7CisJCX0KKwkJaWd0X2Fzc2VydChucnEpOworCQlpZ3RfYXNzZXJ0 KG5jdHgpOworCisJCXRpbWVsaW5lID0gc3dfc3luY190aW1lbGluZV9jcmVhdGUoKTsKKworCQkv KiBCdWlsZCB1cCBhIGxhcmdlIG9yZGVybHkgcXVldWUgb2YgcmVxdWVzdHMgKi8KKwkJc3luY3B0 ID0gMTsKKwkJZm9yIChpbnQgbSA9IDA7IG0gPCBucnE7IG0rKykgeworCQkJZm9yIChpbnQgbiA9 IDA7IG4gPCBuY3R4OyBuKyspIHsKKwkJCQlleGVjYnVmLnJzdmQxID0gY29udGV4dHNbbl07CisJ CQkJZXhlY2J1Zi5yc3ZkMiA9CisJCQkJCXN3X3N5bmNfdGltZWxpbmVfY3JlYXRlX2ZlbmNlKHRp bWVsaW5lLCBzeW5jcHQpOworCQkJCWdlbV9leGVjYnVmKGZkLCAmZXhlY2J1Zik7CisJCQkJY2xv c2UoZXhlY2J1Zi5yc3ZkMik7CisKKwkJCQlzeW5jcHQrKzsKKwkJCX0KKwkJfQorCQlpZ3RfZGVi dWcoIlF1ZXVlZCAlZCByZXF1ZXN0cyBvdmVyICVkIGNvbnRleHRzXG4iLAorCQkJICBzeW5jcHQs IG5jdHgpOworCisJCWlndF9yZXF1aXJlKGk5MTVfcmVzZXRfY29udHJvbChmYWxzZSkpOworCisJ CS8qIEZlZWQgZWFjaCByZXF1ZXN0IGluIGF0IDIwS0h6ICovCisJCW1lbXNldCgmc2V2LCAwLCBz aXplb2Yoc2V2KSk7CisJCXNldi5zaWdldl9ub3RpZnkgPSBTSUdFVl9USFJFQUQ7CisJCXNldi5z aWdldl92YWx1ZS5zaXZhbF9pbnQgPSB0aW1lbGluZTsKKwkJc2V2LnNpZ2V2X25vdGlmeV9mdW5j dGlvbiA9IG5vdGlmeTsKKwkJaWd0X2Fzc2VydCh0aW1lcl9jcmVhdGUoQ0xPQ0tfTU9OT1RPTklD LCAmc2V2LCAmdGltZXIpID09IDApOworCisJCW1lbXNldCgmaXRzLCAwLCBzaXplb2YoaXRzKSk7 CisJCWl0cy5pdF9pbnRlcnZhbC50dl9zZWMgPSAwOworCQlpdHMuaXRfaW50ZXJ2YWwudHZfbnNl YyA9IDUwMDA7CisJCWl0cy5pdF92YWx1ZSA9IGl0cy5pdF9pbnRlcnZhbDsKKwkJaWd0X2Fzc2Vy dCh0aW1lcl9zZXR0aW1lKHRpbWVyLCAwLCAmaXRzLCBOVUxMKSA9PSAwKTsKKwkJdXNsZWVwKDEw KTsKKworCQlpZ3RfZGVidWcoIlRyaWdnZXJpbmcgd2VkZ2VcbiIpOworCQlpZ3Rfc3lzZnNfc2V0 KGRpciwgImk5MTVfd2VkZ2VkIiwgIi0xIik7CisKKwkJaWd0X2RlYnVnKCJEaXNhYmxpbmcgdGlt ZXJcbiIpOworCQl0aW1lcl9kZWxldGUodGltZXIpOworCQl1c2xlZXAoMTAwMDApOy8qIHRpbWVy X2RlbGV0ZSgpIGRvZXNuJ3QgZmx1c2ggcGVuZGluZyBzaWduYWxzICovCisKKwkJaWd0X2RlYnVn KCJDbGVhbmluZyB1cFxuIik7CisJCWNsb3NlKHRpbWVsaW5lKTsKKworCQlzY2hlZF95aWVsZCgp OworCQlpZ3RfYXNzZXJ0KCFnZW1fYm9fYnVzeShmZCwgb2JqLmhhbmRsZSkpOworCisJCWlndF9h c3NlcnQoaTkxNV9yZXNldF9jb250cm9sKHRydWUpKTsKKwkJdHJpZ2dlcl9yZXNldChmZCk7CisJ fQorCisJZ2VtX2Nsb3NlKGZkLCBvYmouaGFuZGxlKTsKKwlmb3IgKGludCBuID0gMDsgbiA8IE5D VFg7IG4rKykKKwkJZ2VtX2NvbnRleHRfZGVzdHJveShmZCwgY29udGV4dHNbbl0pOworCWZyZWUo Y29udGV4dHMpOworCWNsb3NlKGRpcik7Cit9CisKIHN0YXRpYyBpbnQgZmQgPSAtMTsKIAogc3Rh dGljIHZvaWQKQEAgLTUwOSw0ICs2MTQsOSBAQCBpZ3RfbWFpbgogCiAJaWd0X3N1YnRlc3QoImlu LWZsaWdodC1zdXNwZW5kIikKIAkJdGVzdF9pbmZsaWdodF9zdXNwZW5kKGZkKTsKKworCWlndF9z dWJ0ZXN0KCJzZXQtd2VkZ2VkLXJhY2luZyIpIHsKKwkJaWd0X3JlcXVpcmVfc3dfc3luYygpOwor CQl0ZXN0X3NldF93ZWRnZWQoZmQpOworCX0KIH0KLS0gCjIuMTYuMgoKX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJ bnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Au b3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg== From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: Chris Wilson Date: Sat, 17 Mar 2018 09:09:01 +0000 Message-Id: <20180317090901.2656-1-chris@chris-wilson.co.uk> In-Reply-To: <20180316220234.1603-1-chris@chris-wilson.co.uk> References: <20180316220234.1603-1-chris@chris-wilson.co.uk> Subject: [igt-dev] [PATCH igt] igt/gem_eio: Exercise set-wedging against request submission List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: intel-gfx@lists.freedesktop.org Cc: igt-dev@lists.freedesktop.org, Mika Kuoppala List-ID: QnVpbGQgdXAgYSBsYXJnZSBzdG9ja3BpbGUgb2YgcmVxdWVzdHMsIH41MDAsMDAwLCBhbmQgZmVl ZCB0aGVtIGludG8gdGhlCnN5c3RlbSBhdCAyMEtIeiB3aGlsc3Qgc2ltdWx0YW5lb3VzbHkgdHJp Z2dlcmluZyBzZXQtd2VkZ2VkIGluIG9yZGVyIHRvCnRyeSBhbmQgcmFjZSBpOTE1X2dlbV9zZXRf d2VkZ2VkKCkgYWdhaW5zdCB0aGUgZW5naW5lLT5zdWJtaXRfcmVxdWVzdCgpCmNhbGxiYWNrLgoK djI6IFR3ZWFrIHNsZWVwIGZvciBmbHVzaGluZyB0aW1lciBzaWduYWxzLgoKU2lnbmVkLW9mZi1i eTogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+CkNjOiBNaWthIEt1b3Bw YWxhIDxtaWthLmt1b3BwYWxhQGxpbnV4LmludGVsLmNvbT4KQWNrZWQtYnk6IEFudG9uaW8gQXJn ZW56aWFubyA8YW50b25pby5hcmdlbnppYW5vQGludGVsLmNvbT4KLS0tCiB0ZXN0cy9nZW1fZWlv LmMgfCAxMTAgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCAxMTAgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBh L3Rlc3RzL2dlbV9laW8uYyBiL3Rlc3RzL2dlbV9laW8uYwppbmRleCAyNDlmNWJmZi4uZmYzZGY3 YjYgMTAwNjQ0Ci0tLSBhL3Rlc3RzL2dlbV9laW8uYworKysgYi90ZXN0cy9nZW1fZWlvLmMKQEAg LTM0LDEyICszNCwxNSBAQAogI2luY2x1ZGUgPGZjbnRsLmg+CiAjaW5jbHVkZSA8aW50dHlwZXMu aD4KICNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPHNjaGVkLmg+CisjaW5jbHVkZSA8c2ln bmFsLmg+CiAjaW5jbHVkZSA8c3lzL2lvY3RsLmg+CiAKICNpbmNsdWRlIDxkcm0uaD4KIAogI2lu Y2x1ZGUgImlndC5oIgogI2luY2x1ZGUgImlndF9zeXNmcy5oIgorI2luY2x1ZGUgImk5MTUvZ2Vt X3JpbmcuaCIKICNpbmNsdWRlICJzd19zeW5jLmgiCiAKIElHVF9URVNUX0RFU0NSSVBUSU9OKCJU ZXN0IHRoYXQgc3BlY2lmaWMgaW9jdGxzIHJlcG9ydCBhIHdlZGdlZCBHUFUgKEVJTykuIik7CkBA IC00NTIsNiArNDU1LDEwOCBAQCBzdGF0aWMgdm9pZCB0ZXN0X2luZmxpZ2h0X2ludGVybmFsKGlu dCBmZCkKIAl0cmlnZ2VyX3Jlc2V0KGZkKTsKIH0KIAorc3RhdGljIHZvaWQgbm90aWZ5KHVuaW9u IHNpZ3ZhbCBhcmcpCit7CisJc3dfc3luY190aW1lbGluZV9pbmMoYXJnLnNpdmFsX2ludCwgMSk7 Cit9CisKK3N0YXRpYyB2b2lkIHRlc3Rfc2V0X3dlZGdlZChpbnQgZmQpCit7CisjZGVmaW5lIE5D VFggNDA5NgorCWNvbnN0IHVpbnQzMl90IGJiZSA9IE1JX0JBVENIX0JVRkZFUl9FTkQ7CisJY29u c3QgdW5zaWduZWQgaW50IHJpbmdfc2l6ZSA9IGdlbV9tZWFzdXJlX3JpbmdfaW5mbGlnaHQoZmQs IDAsIDApIC0gMTsKKwlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNidWZmZXIyIGV4ZWNidWY7CisJ c3RydWN0IGRybV9pOTE1X2dlbV9leGVjX29iamVjdDIgb2JqOworCWludCBkaXIgPSBpZ3RfZGVi dWdmc19kaXIoZmQpOworCXN0cnVjdCBpdGltZXJzcGVjIGl0czsKKwlzdHJ1Y3Qgc2lnZXZlbnQg c2V2OworCXVpbnQzMl90ICpjb250ZXh0czsKKwl0aW1lcl90IHRpbWVyOworCWludCB0aW1lbGlu ZTsKKwlpbnQgc3luY3B0OworCisJY29udGV4dHMgPSBjYWxsb2MoTkNUWCwgc2l6ZW9mKCpjb250 ZXh0cykpOworCWlndF9hc3NlcnQoY29udGV4dHMpOworCisJZm9yIChpbnQgbiA9IDA7IG4gPCBO Q1RYOyBuKyspCisJCWNvbnRleHRzW25dID0gY29udGV4dF9jcmVhdGVfc2FmZShmZCk7CisKKwlt ZW1zZXQoJm9iaiwgMCwgc2l6ZW9mKG9iaikpOworCW9iai5oYW5kbGUgPSBnZW1fY3JlYXRlKGZk LCA0MDk2KTsKKwlnZW1fd3JpdGUoZmQsIG9iai5oYW5kbGUsIDAsICZiYmUsIHNpemVvZihiYmUp KTsKKworCW1lbXNldCgmZXhlY2J1ZiwgMCwgc2l6ZW9mKGV4ZWNidWYpKTsKKwlleGVjYnVmLmJ1 ZmZlcnNfcHRyID0gdG9fdXNlcl9wb2ludGVyKCZvYmopOworCWV4ZWNidWYuYnVmZmVyX2NvdW50 ID0gMTsKKwlleGVjYnVmLmZsYWdzID0gSTkxNV9FWEVDX0ZFTkNFX0lOOworCisJZm9yICh1bnNp Z25lZCBpbnQgbmN0eCA9IDE7IG5jdHggPD0gTkNUWDsgbmN0eCA8PD0gMSkgeworCQl1bnNpZ25l ZCBpbnQgbnJxID0gcmluZ19zaXplOworCQlpZiAoIWdlbV9oYXNfZXhlY2xpc3RzKGZkKSkgewor CQkJbnJxID0gKHJpbmdfc2l6ZSArIG5jdHggLSAxKSAvIG5jdHggKyAxOworCQkJbmN0eCA9IHJp bmdfc2l6ZSAvIG5ycSArIDE7CisJCX0KKwkJaWd0X2Fzc2VydChucnEpOworCQlpZ3RfYXNzZXJ0 KG5jdHgpOworCisJCXRpbWVsaW5lID0gc3dfc3luY190aW1lbGluZV9jcmVhdGUoKTsKKworCQkv KiBCdWlsZCB1cCBhIGxhcmdlIG9yZGVybHkgcXVldWUgb2YgcmVxdWVzdHMgKi8KKwkJc3luY3B0 ID0gMTsKKwkJZm9yIChpbnQgbSA9IDA7IG0gPCBucnE7IG0rKykgeworCQkJZm9yIChpbnQgbiA9 IDA7IG4gPCBuY3R4OyBuKyspIHsKKwkJCQlleGVjYnVmLnJzdmQxID0gY29udGV4dHNbbl07CisJ CQkJZXhlY2J1Zi5yc3ZkMiA9CisJCQkJCXN3X3N5bmNfdGltZWxpbmVfY3JlYXRlX2ZlbmNlKHRp bWVsaW5lLCBzeW5jcHQpOworCQkJCWdlbV9leGVjYnVmKGZkLCAmZXhlY2J1Zik7CisJCQkJY2xv c2UoZXhlY2J1Zi5yc3ZkMik7CisKKwkJCQlzeW5jcHQrKzsKKwkJCX0KKwkJfQorCQlpZ3RfZGVi dWcoIlF1ZXVlZCAlZCByZXF1ZXN0cyBvdmVyICVkIGNvbnRleHRzXG4iLAorCQkJICBzeW5jcHQs IG5jdHgpOworCisJCWlndF9yZXF1aXJlKGk5MTVfcmVzZXRfY29udHJvbChmYWxzZSkpOworCisJ CS8qIEZlZWQgZWFjaCByZXF1ZXN0IGluIGF0IDIwS0h6ICovCisJCW1lbXNldCgmc2V2LCAwLCBz aXplb2Yoc2V2KSk7CisJCXNldi5zaWdldl9ub3RpZnkgPSBTSUdFVl9USFJFQUQ7CisJCXNldi5z aWdldl92YWx1ZS5zaXZhbF9pbnQgPSB0aW1lbGluZTsKKwkJc2V2LnNpZ2V2X25vdGlmeV9mdW5j dGlvbiA9IG5vdGlmeTsKKwkJaWd0X2Fzc2VydCh0aW1lcl9jcmVhdGUoQ0xPQ0tfTU9OT1RPTklD LCAmc2V2LCAmdGltZXIpID09IDApOworCisJCW1lbXNldCgmaXRzLCAwLCBzaXplb2YoaXRzKSk7 CisJCWl0cy5pdF9pbnRlcnZhbC50dl9zZWMgPSAwOworCQlpdHMuaXRfaW50ZXJ2YWwudHZfbnNl YyA9IDUwMDA7CisJCWl0cy5pdF92YWx1ZSA9IGl0cy5pdF9pbnRlcnZhbDsKKwkJaWd0X2Fzc2Vy dCh0aW1lcl9zZXR0aW1lKHRpbWVyLCAwLCAmaXRzLCBOVUxMKSA9PSAwKTsKKwkJdXNsZWVwKDEw KTsKKworCQlpZ3RfZGVidWcoIlRyaWdnZXJpbmcgd2VkZ2VcbiIpOworCQlpZ3Rfc3lzZnNfc2V0 KGRpciwgImk5MTVfd2VkZ2VkIiwgIi0xIik7CisKKwkJaWd0X2RlYnVnKCJEaXNhYmxpbmcgdGlt ZXJcbiIpOworCQl0aW1lcl9kZWxldGUodGltZXIpOworCQl1c2xlZXAoMTAwMDApOy8qIHRpbWVy X2RlbGV0ZSgpIGRvZXNuJ3QgZmx1c2ggcGVuZGluZyBzaWduYWxzICovCisKKwkJaWd0X2RlYnVn KCJDbGVhbmluZyB1cFxuIik7CisJCWNsb3NlKHRpbWVsaW5lKTsKKworCQlzY2hlZF95aWVsZCgp OworCQlpZ3RfYXNzZXJ0KCFnZW1fYm9fYnVzeShmZCwgb2JqLmhhbmRsZSkpOworCisJCWlndF9h c3NlcnQoaTkxNV9yZXNldF9jb250cm9sKHRydWUpKTsKKwkJdHJpZ2dlcl9yZXNldChmZCk7CisJ fQorCisJZ2VtX2Nsb3NlKGZkLCBvYmouaGFuZGxlKTsKKwlmb3IgKGludCBuID0gMDsgbiA8IE5D VFg7IG4rKykKKwkJZ2VtX2NvbnRleHRfZGVzdHJveShmZCwgY29udGV4dHNbbl0pOworCWZyZWUo Y29udGV4dHMpOworCWNsb3NlKGRpcik7Cit9CisKIHN0YXRpYyBpbnQgZmQgPSAtMTsKIAogc3Rh dGljIHZvaWQKQEAgLTUwOSw0ICs2MTQsOSBAQCBpZ3RfbWFpbgogCiAJaWd0X3N1YnRlc3QoImlu LWZsaWdodC1zdXNwZW5kIikKIAkJdGVzdF9pbmZsaWdodF9zdXNwZW5kKGZkKTsKKworCWlndF9z dWJ0ZXN0KCJzZXQtd2VkZ2VkLXJhY2luZyIpIHsKKwkJaWd0X3JlcXVpcmVfc3dfc3luYygpOwor CQl0ZXN0X3NldF93ZWRnZWQoZmQpOworCX0KIH0KLS0gCjIuMTYuMgoKX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KaWd0LWRldiBtYWlsaW5nIGxpc3QKaWd0 LWRldkBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv bWFpbG1hbi9saXN0aW5mby9pZ3QtZGV2Cg==