From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by gabe.freedesktop.org (Postfix) with ESMTPS id DB35E893A4 for ; Tue, 21 May 2019 13:22:57 +0000 (UTC) From: Lionel Landwerlin Date: Tue, 21 May 2019 14:22:48 +0100 Message-Id: <20190521132248.21811-6-lionel.g.landwerlin@intel.com> In-Reply-To: <20190521132248.21811-1-lionel.g.landwerlin@intel.com> References: <20190521132248.21811-1-lionel.g.landwerlin@intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t v2 5/5] tests/syncobj_timeline: add more timeline 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 List-ID: SW5jbHVkaW5nIG9yZGVyaW5nIHRlc3RzIGFuZCAzMmJpdCBsaW1pdC4KCnYyOiBhZGQgcG9pbnQg MCBzaWduYWxpbmcgdGVzdCAoTGlvbmVsKQoKU2lnbmVkLW9mZi1ieTogTGlvbmVsIExhbmR3ZXJs aW4gPGxpb25lbC5nLmxhbmR3ZXJsaW5AaW50ZWwuY29tPgotLS0KIHRlc3RzL3N5bmNvYmpfdGlt ZWxpbmUuYyB8IDMwNCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIDEg ZmlsZSBjaGFuZ2VkLCAzMDQgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL3Rlc3RzL3N5bmNv YmpfdGltZWxpbmUuYyBiL3Rlc3RzL3N5bmNvYmpfdGltZWxpbmUuYwppbmRleCA3ZmQ2MDJkZS4u YjY3NjFkMzQgMTAwNjQ0Ci0tLSBhL3Rlc3RzL3N5bmNvYmpfdGltZWxpbmUuYworKysgYi90ZXN0 cy9zeW5jb2JqX3RpbWVsaW5lLmMKQEAgLTU2NCw2ICs1NjQsMjEgQEAgdGVzdF9zaWduYWwoaW50 IGZkKQogCXN5bmNvYmpfZGVzdHJveShmZCwgc3luY29iaik7CiB9CiAKK3N0YXRpYyB2b2lkCit0 ZXN0X3NpZ25hbF9wb2ludF8wKGludCBmZCkKK3sKKwl1aW50MzJfdCBzeW5jb2JqID0gc3luY29i al9jcmVhdGUoZmQsIDApOworCXVpbnQzMl90IGZsYWdzID0gRFJNX1NZTkNPQkpfV0FJVF9GTEFH U19XQUlUX0ZPUl9TVUJNSVQ7CisJdWludDY0X3QgcG9pbnQgPSAwOworCisJc3luY29ial90aW1l bGluZV9zaWduYWwoZmQsICZzeW5jb2JqLCAmcG9pbnQsIDEpOworCisJaWd0X2Fzc2VydChzeW5j b2JqX3RpbWVsaW5lX3dhaXQoZmQsICZzeW5jb2JqLCAmcG9pbnQsIDEsIDAsIDAsIE5VTEwpKTsK KwlpZ3RfYXNzZXJ0KHN5bmNvYmpfd2FpdChmZCwgJnN5bmNvYmosIDEsIDAsIGZsYWdzLCBOVUxM KSk7CisKKwlzeW5jb2JqX2Rlc3Ryb3koZmQsIHN5bmNvYmopOworfQorCiBzdGF0aWMgdm9pZAog dGVzdF9tdWx0aV93YWl0KGludCBmZCwgdWludDMyX3QgdGVzdF9mbGFncywgaW50IGV4cGVjdCkK IHsKQEAgLTg1Niw2ICs4NzEsMjc3IEBAIHRlc3Rfd2FpdF9pbnRlcnJ1cHRlZChpbnQgZmQsIHVp bnQzMl90IHRlc3RfZmxhZ3MpCiAJY2xvc2UodGltZWxpbmUpOwogfQogCisvKgorICogVmVyaWZp ZXMgdGhhdCBhcyB3ZSBzaWduYWwgcG9pbnRzIGZyb20gdGhlIGhvc3QsIHRoZSBzeW5jb2JqCisg KiB0aW1lbGluZSB2YWx1ZSBpbmNyZW1lbnRzIGFuZCB0aGF0IHdhaXRzIGZvciBzdWJtaXRzL3Np Z25hbHMgd29ya3MKKyAqIHByb3Blcmx5LgorICovCitzdGF0aWMgdm9pZAordGVzdF9ob3N0X3Np Z25hbF9wb2ludHMoaW50IGZkKQoreworCXVpbnQzMl90IHN5bmNvYmogPSBzeW5jb2JqX2NyZWF0 ZShmZCwgMCk7CisJdWludDY0X3QgdmFsdWUgPSAwOworCWludCBpOworCisJZm9yIChpID0gMDsg aSA8IDEwMDsgaSsrKSB7CisJCXVpbnQ2NF90IHF1ZXJ5X3ZhbHVlID0gMDsKKworCQl2YWx1ZSAr PSByYW5kKCk7CisKKwkJc3luY29ial90aW1lbGluZV9zaWduYWwoZmQsICZzeW5jb2JqLCAmdmFs dWUsIDEpOworCisJCXN5bmNvYmpfdGltZWxpbmVfcXVlcnkoZmQsICZzeW5jb2JqLCAmcXVlcnlf dmFsdWUsIDEpOworCQlpZ3RfYXNzZXJ0X2VxKHF1ZXJ5X3ZhbHVlLCB2YWx1ZSk7CisKKwkJaWd0 X2Fzc2VydChzeW5jb2JqX3RpbWVsaW5lX3dhaXQoZmQsICZzeW5jb2JqLCAmcXVlcnlfdmFsdWUs CisJCQkJCQkgMSwgMCwgV0FJVF9GT1JfU1VCTUlULCBOVUxMKSk7CisKKwkJcXVlcnlfdmFsdWUg LT0gMTsKKwkJaWd0X2Fzc2VydChzeW5jb2JqX3RpbWVsaW5lX3dhaXQoZmQsICZzeW5jb2JqLCAm cXVlcnlfdmFsdWUsCisJCQkJCQkgMSwgMCwgV0FJVF9BTEwsIE5VTEwpKTsKKwl9CisKKwlzeW5j b2JqX2Rlc3Ryb3koZmQsIHN5bmNvYmopOworfQorCisvKgorICogVmVyaWZpZXMgdGhhdCBhIGRl dmljZSBzaWduYWxpbmcgZmVuY2VzIG91dCBvZiBvcmRlciBvbiB0aGUKKyAqIHRpbWVsaW5lIHN0 aWxsIGluY3JlbWVudHMgdGhlIHRpbWVsaW5lIG1vbm90b25pY2FsbHkgYW5kIHRoYXQgd2FpdHMK KyAqIHdvcmsgcHJvcGVybHkuCisgKi8KK3N0YXRpYyB2b2lkCit0ZXN0X2RldmljZV9zaWduYWxf dW5vcmRlcmVkKGludCBmZCkKK3sKKwl1aW50MzJfdCBzeW5jb2JqID0gc3luY29ial9jcmVhdGUo ZmQsIDApOworCWludCBwb2ludF9pbmRpY2VzW10gPSB7IDAsIDIsIDEsIDQsIDMgfTsKKwlib29s IHNpZ25hbGVkW0FSUkFZX1NJWkUocG9pbnRfaW5kaWNlcyldID0ge307CisJaW50IGZlbmNlc1tB UlJBWV9TSVpFKHBvaW50X2luZGljZXMpXTsKKwlpbnQgdGltZWxpbmUgPSBzd19zeW5jX3RpbWVs aW5lX2NyZWF0ZSgpOworCXVpbnQ2NF90IHZhbHVlID0gMDsKKwlpbnQgaSwgajsKKworCWZvciAo aSA9IDA7IGkgPCBBUlJBWV9TSVpFKGZlbmNlcyk7IGkrKykgeworCQlmZW5jZXNbcG9pbnRfaW5k aWNlc1tpXV0gPSBzd19zeW5jX3RpbWVsaW5lX2NyZWF0ZV9mZW5jZSh0aW1lbGluZSwgaSArIDEp OworCX0KKworCWZvciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKGZlbmNlcyk7IGkrKykgeworCQl1 aW50MzJfdCB0bXBfc3luY29iaiA9IHN5bmNvYmpfY3JlYXRlKGZkLCAwKTsKKworCQlzeW5jb2Jq X2ltcG9ydF9zeW5jX2ZpbGUoZmQsIHRtcF9zeW5jb2JqLCBmZW5jZXNbaV0pOworCQlzeW5jb2Jq X2JpbmFyeV90b190aW1lbGluZShmZCwgc3luY29iaiwgaSArIDEsIHRtcF9zeW5jb2JqKTsKKwkJ c3luY29ial9kZXN0cm95KGZkLCB0bXBfc3luY29iaik7CisJfQorCisJZm9yIChpID0gMDsgaSA8 IEFSUkFZX1NJWkUoZmVuY2VzKTsgaSsrKSB7CisJCXVpbnQ2NF90IHF1ZXJ5X3ZhbHVlID0gMDsK KwkJdWludDY0X3QgbWluX3ZhbHVlID0gMDsKKworCQlzd19zeW5jX3RpbWVsaW5lX2luYyh0aW1l bGluZSwgMSk7CisKKwkJc2lnbmFsZWRbcG9pbnRfaW5kaWNlc1tpXV0gPSB0cnVlOworCisJCS8q CisJCSAqIENvbXB1dGUgYSBtaW5pbXVtIHZhbHVlIG9mIHRoZSB0aW1lbGluZSBiYXNlZCBvZgor CQkgKiB0aGUgc21hbGxlc3Qgc2lnbmFsZWQgcG9pbnQuCisJCSAqLworCQlmb3IgKGogPSAwOyBq IDwgQVJSQVlfU0laRShzaWduYWxlZCk7IGorKykgeworCQkJaWYgKCFzaWduYWxlZFtqXSkKKwkJ CQlicmVhazsKKwkJCW1pbl92YWx1ZSA9IGo7CisJCX0KKworCQlzeW5jb2JqX3RpbWVsaW5lX3F1 ZXJ5KGZkLCAmc3luY29iaiwgJnF1ZXJ5X3ZhbHVlLCAxKTsKKwkJaWd0X2Fzc2VydChxdWVyeV92 YWx1ZSA+PSBtaW5fdmFsdWUpOworCQlpZ3RfYXNzZXJ0KHF1ZXJ5X3ZhbHVlID49IHZhbHVlKTsK KworCQlpZ3RfZGVidWcoInNpZ25hbGluZyBwb2ludCAlaSwgdGltZWxpbmUgdmFsdWUgPSAlIiBQ Ukl1NjQgIlxuIiwKKwkJCSAgcG9pbnRfaW5kaWNlc1tpXSArIDEsIHF1ZXJ5X3ZhbHVlKTsKKwor CQl2YWx1ZSA9IG1heChxdWVyeV92YWx1ZSwgdmFsdWUpOworCisJCWlndF9hc3NlcnQoc3luY29i al90aW1lbGluZV93YWl0KGZkLCAmc3luY29iaiwgJnF1ZXJ5X3ZhbHVlLAorCQkJCQkJIDEsIDAs IFdBSVRfRk9SX1NVQk1JVCwgTlVMTCkpOworCisJCWlndF9hc3NlcnQoc3luY29ial90aW1lbGlu ZV93YWl0KGZkLCAmc3luY29iaiwgJnF1ZXJ5X3ZhbHVlLAorCQkJCQkJIDEsIDAsIFdBSVRfQUxM LCBOVUxMKSk7CisJfQorCisJZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUoZmVuY2VzKTsgaSsr KQorCQljbG9zZShmZW5jZXNbaV0pOworCisJc3luY29ial9kZXN0cm95KGZkLCBzeW5jb2JqKTsK KwljbG9zZSh0aW1lbGluZSk7Cit9CisKKy8qCisgKiBWZXJpZmllcyB0aGF0IHN1Ym1pdHRpbmcg b3V0IG9mIG9yZGVyIGRvZXNuJ3QgYnJlYWsgdGhlIHRpbWVsaW5lLgorICovCitzdGF0aWMgdm9p ZAordGVzdF9kZXZpY2Vfc3VibWl0X3Vub3JkZXJlZChpbnQgZmQpCit7CisJdWludDMyX3Qgc3lu Y29iaiA9IHN5bmNvYmpfY3JlYXRlKGZkLCAwKTsKKwl1aW50NjRfdCBwb2ludHNbXSA9IHsgMSwg NSwgMywgNiwgNyB9OworCWludCB0aW1lbGluZSA9IHN3X3N5bmNfdGltZWxpbmVfY3JlYXRlKCk7 CisJdWludDY0X3QgcXVlcnlfdmFsdWU7CisJaW50IGk7CisKKwlmb3IgKGkgPSAwOyBpIDwgQVJS QVlfU0laRShwb2ludHMpOyBpKyspIHsKKwkJaW50IGZlbmNlID0gc3dfc3luY190aW1lbGluZV9j cmVhdGVfZmVuY2UodGltZWxpbmUsIGkgKyAxKTsKKwkJdWludDMyX3QgdG1wX3N5bmNvYmogPSBz eW5jb2JqX2NyZWF0ZShmZCwgMCk7CisKKwkJc3luY29ial9pbXBvcnRfc3luY19maWxlKGZkLCB0 bXBfc3luY29iaiwgZmVuY2UpOworCQlzeW5jb2JqX2JpbmFyeV90b190aW1lbGluZShmZCwgc3lu Y29iaiwgcG9pbnRzW2ldLCB0bXBfc3luY29iaik7CisJCWNsb3NlKGZlbmNlKTsKKwkJc3luY29i al9kZXN0cm95KGZkLCB0bXBfc3luY29iaik7CisJfQorCisJLyoKKwkgKiBTaWduYWwgcG9pbnRz IDEsIDUgJiAzLiBUaGVyZSBhcmUgbm8gb3RoZXIgcG9pbnRzIDw9IDUgc28KKwkgKiB3YWl0aW5n IG9uIDUgc2hvdWxkIHJldHVybiBpbW1lZGlhdGVseSBmb3Igc3VibWlzc2lvbiAmCisJICogc2ln bmFsaW5nLgorCSAqLworCXN3X3N5bmNfdGltZWxpbmVfaW5jKHRpbWVsaW5lLCAzKTsKKworCXN5 bmNvYmpfdGltZWxpbmVfcXVlcnkoZmQsICZzeW5jb2JqLCAmcXVlcnlfdmFsdWUsIDEpOworCWln dF9hc3NlcnRfZXEocXVlcnlfdmFsdWUsIDUpOworCisJaWd0X2Fzc2VydChzeW5jb2JqX3RpbWVs aW5lX3dhaXQoZmQsICZzeW5jb2JqLCAmcXVlcnlfdmFsdWUsCisJCQkJCSAxLCAwLCBXQUlUX0ZP Ul9TVUJNSVQsIE5VTEwpKTsKKworCWlndF9hc3NlcnQoc3luY29ial90aW1lbGluZV93YWl0KGZk LCAmc3luY29iaiwgJnF1ZXJ5X3ZhbHVlLAorCQkJCQkgMSwgMCwgV0FJVF9BTEwsIE5VTEwpKTsK KworCXN5bmNvYmpfZGVzdHJveShmZCwgc3luY29iaik7CisJY2xvc2UodGltZWxpbmUpOworfQor CisvKgorICogVmVyaWZpZXMgdGhhdCB0aGUgaG9zdCBzaWduYWxpbmcgZmVuY2VzIG91dCBvZiBv cmRlciBvbiB0aGUKKyAqIHRpbWVsaW5lIHN0aWxsIGluY3JlbWVudHMgdGhlIHRpbWVsaW5lIG1v bm90b25pY2FsbHkgYW5kIHRoYXQgd2FpdHMKKyAqIHdvcmsgcHJvcGVybHkuCisgKi8KK3N0YXRp YyB2b2lkCit0ZXN0X2hvc3Rfc2lnbmFsX29yZGVyZWQoaW50IGZkKQoreworCXVpbnQzMl90IHN5 bmNvYmogPSBzeW5jb2JqX2NyZWF0ZShmZCwgMCk7CisJaW50IHRpbWVsaW5lID0gc3dfc3luY190 aW1lbGluZV9jcmVhdGUoKTsKKwl1aW50NjRfdCBob3N0X3NpZ25hbF92YWx1ZSA9IDgsIHF1ZXJ5 X3ZhbHVlOworCWludCBpOworCisJZm9yIChpID0gMDsgaSA8IDU7IGkrKykgeworCQlpbnQgZmVu Y2UgPSBzd19zeW5jX3RpbWVsaW5lX2NyZWF0ZV9mZW5jZSh0aW1lbGluZSwgaSArIDEpOworCQl1 aW50MzJfdCB0bXBfc3luY29iaiA9IHN5bmNvYmpfY3JlYXRlKGZkLCAwKTsKKworCQlzeW5jb2Jq X2ltcG9ydF9zeW5jX2ZpbGUoZmQsIHRtcF9zeW5jb2JqLCBmZW5jZSk7CisJCXN5bmNvYmpfYmlu YXJ5X3RvX3RpbWVsaW5lKGZkLCBzeW5jb2JqLCBpICsgMSwgdG1wX3N5bmNvYmopOworCQlzeW5j b2JqX2Rlc3Ryb3koZmQsIHRtcF9zeW5jb2JqKTsKKwkJY2xvc2UoZmVuY2UpOworCX0KKworCXN3 X3N5bmNfdGltZWxpbmVfaW5jKHRpbWVsaW5lLCAzKTsKKworCXN5bmNvYmpfdGltZWxpbmVfcXVl cnkoZmQsICZzeW5jb2JqLCAmcXVlcnlfdmFsdWUsIDEpOworCWlndF9hc3NlcnRfZXEocXVlcnlf dmFsdWUsIDMpOworCisJc3luY29ial90aW1lbGluZV9zaWduYWwoZmQsICZzeW5jb2JqLCAmaG9z dF9zaWduYWxfdmFsdWUsIDEpOworCisJc3luY29ial90aW1lbGluZV9xdWVyeShmZCwgJnN5bmNv YmosICZxdWVyeV92YWx1ZSwgMSk7CisJaWd0X2Fzc2VydF9lcShxdWVyeV92YWx1ZSwgMyk7CisK Kwlzd19zeW5jX3RpbWVsaW5lX2luYyh0aW1lbGluZSwgNSk7CisKKwlzeW5jb2JqX3RpbWVsaW5l X3F1ZXJ5KGZkLCAmc3luY29iaiwgJnF1ZXJ5X3ZhbHVlLCAxKTsKKwlpZ3RfYXNzZXJ0X2VxKHF1 ZXJ5X3ZhbHVlLCA4KTsKKworCXN5bmNvYmpfZGVzdHJveShmZCwgc3luY29iaik7CisJY2xvc2Uo dGltZWxpbmUpOworfQorCitzdHJ1Y3QgY2hlY2tlcl90aHJlYWRfZGF0YSB7CisJaW50IGZkOwor CXVpbnQzMl90IHN5bmNvYmo7CisJYm9vbCBydW5uaW5nOworCWJvb2wgc3RhcnRlZDsKK307CisK K3N0YXRpYyB2b2lkICoKK2NoZWNrZXJfdGhyZWFkX2Z1bmModm9pZCAqX2RhdGEpCit7CisJc3Ry dWN0IGNoZWNrZXJfdGhyZWFkX2RhdGEgKmRhdGEgPSBfZGF0YTsKKwl1aW50NjRfdCB2YWx1ZSwg bGFzdF92YWx1ZSA9IDA7CisKKwl3aGlsZSAoZGF0YS0+cnVubmluZykgeworCQlzeW5jb2JqX3Rp bWVsaW5lX3F1ZXJ5KGRhdGEtPmZkLCAmZGF0YS0+c3luY29iaiwgJnZhbHVlLCAxKTsKKworCQlk YXRhLT5zdGFydGVkID0gdHJ1ZTsKKworCQlpZ3RfYXNzZXJ0KGxhc3RfdmFsdWUgPD0gdmFsdWUp OworCQlsYXN0X3ZhbHVlID0gdmFsdWU7CisJfQorCisJcmV0dXJuIE5VTEw7Cit9CisKKy8qCisg KiBWZXJpZmllcyB0aGF0IHNpZ25hbGluZyBhcm91bmQgdGhlIGludDMyX3QgbGltaXQuIEZvciBj b21wYXRpYmlsaXR5CisgKiByZWFzb24sIHRoZSBoYW5kbGluZyBvZiBzZXFub3MgaW4gdGhlIGRt YS1mZW5jZXMgY2FuIGNvbnNpZGVyIGEKKyAqIHNlcW5vQSBpcyBwcmlvciBzZXFub0IgZXZlbiB0 aG91Z2ggc2Vxbm9BID4gc2Vxbm9CLiBXZSByYW4gaW50bworICogdGhhdCBpc3N1ZSBhbmQgaXQg d2FzIGZpeGVkIGluIDoKKyAqCisgKiBjb21taXQgYjMxMmQ4Y2EzYTdjZWJlMTk5NDFkOTY5YTUx ZjJiN2Y4OTliODFlMgorICogQXV0aG9yOiBDaHJpc3RpYW4gS8O2bmlnIDxjaHJpc3RpYW4ua29l bmlnQGFtZC5jb20+CisgKiBEYXRlOiAgIFdlZCBOb3YgMTQgMTY6MTE6MDYgMjAxOCArMDEwMAor ICoKKyAqICAgIGRtYS1idWY6IG1ha2UgZmVuY2Ugc2VxdWVuY2UgbnVtYmVycyA2NCBiaXQgdjIK KyAqCisgKi8KK3N0YXRpYyB2b2lkCit0ZXN0XzMyYml0c19saW1pdChpbnQgZmQpCit7CisJc3Ry dWN0IGNoZWNrZXJfdGhyZWFkX2RhdGEgdGhyZWFkX2RhdGEgPSB7CisJCS5mZCA9IGZkLAorCQku c3luY29iaiA9IHN5bmNvYmpfY3JlYXRlKGZkLCAwKSwKKwkJLnJ1bm5pbmcgPSB0cnVlLAorCQku c3RhcnRlZCA9IGZhbHNlLAorCX07CisJaW50IHRpbWVsaW5lID0gc3dfc3luY190aW1lbGluZV9j cmVhdGUoKTsKKwl1aW50NjRfdCBsaW1pdF9kaWZmID0gKDF1bGwgPDwgMzEpIC0gMTsKKwl1aW50 NjRfdCBwb2ludHNbXSA9IHsgMSwgNSwgbGltaXRfZGlmZiArIDUsIGxpbWl0X2RpZmYgKyA2LCBs aW1pdF9kaWZmICogMiwgfTsKKwlwdGhyZWFkX3QgdGhyZWFkOworCXVpbnQ2NF90IHZhbHVlLCBs YXN0X3ZhbHVlOworCWludCBpOworCisJaWd0X2Fzc2VydF9lcShwdGhyZWFkX2NyZWF0ZSgmdGhy ZWFkLCBOVUxMLCBjaGVja2VyX3RocmVhZF9mdW5jLCAmdGhyZWFkX2RhdGEpLCAwKTsKKworCXdo aWxlICghdGhyZWFkX2RhdGEuc3RhcnRlZCk7CisKKwlmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0la RShwb2ludHMpOyBpKyspIHsKKwkJaW50IGZlbmNlID0gc3dfc3luY190aW1lbGluZV9jcmVhdGVf ZmVuY2UodGltZWxpbmUsIGkgKyAxKTsKKwkJdWludDMyX3QgdG1wX3N5bmNvYmogPSBzeW5jb2Jq X2NyZWF0ZShmZCwgMCk7CisKKwkJc3luY29ial9pbXBvcnRfc3luY19maWxlKGZkLCB0bXBfc3lu Y29iaiwgZmVuY2UpOworCQlzeW5jb2JqX2JpbmFyeV90b190aW1lbGluZShmZCwgdGhyZWFkX2Rh dGEuc3luY29iaiwgcG9pbnRzW2ldLCB0bXBfc3luY29iaik7CisJCWNsb3NlKGZlbmNlKTsKKwkJ c3luY29ial9kZXN0cm95KGZkLCB0bXBfc3luY29iaik7CisJfQorCisJbGFzdF92YWx1ZSA9IDA7 CisJZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUocG9pbnRzKTsgaSsrKSB7CisJCXN3X3N5bmNf dGltZWxpbmVfaW5jKHRpbWVsaW5lLCAxKTsKKworCQlzeW5jb2JqX3RpbWVsaW5lX3F1ZXJ5KGZk LCAmdGhyZWFkX2RhdGEuc3luY29iaiwgJnZhbHVlLCAxKTsKKwkJaWd0X2Fzc2VydChsYXN0X3Zh bHVlIDw9IHZhbHVlKTsKKworCQlsYXN0X3ZhbHVlID0gdmFsdWU7CisJfQorCisJdGhyZWFkX2Rh dGEucnVubmluZyA9IGZhbHNlOworCXB0aHJlYWRfam9pbih0aHJlYWQsIE5VTEwpOworCisJc3lu Y29ial9kZXN0cm95KGZkLCB0aHJlYWRfZGF0YS5zeW5jb2JqKTsKKwljbG9zZSh0aW1lbGluZSk7 Cit9CisKIHN0YXRpYyBib29sCiBoYXNfc3luY29ial90aW1lbGluZV93YWl0KGludCBmZCkKIHsK QEAgLTk4NSw2ICsxMjcxLDkgQEAgaWd0X21haW4KIAlpZ3Rfc3VidGVzdCgic2lnbmFsIikKIAkJ dGVzdF9zaWduYWwoZmQpOwogCisJaWd0X3N1YnRlc3QoInNpZ25hbC1wb2ludC0wIikKKwkJdGVz dF9zaWduYWxfcG9pbnRfMChmZCk7CisKIAlmb3IgKHVuc2lnbmVkIGZsYWdzID0gMDsgZmxhZ3Mg PCBXQUlUX0ZMQUdTX01BWDsgZmxhZ3MrKykgewogCQlpbnQgZXJyOwogCkBAIC0xMDQ2LDQgKzEz MzUsMTkgQEAgaWd0X21haW4KIAogCWlndF9zdWJ0ZXN0KCJ3YWl0LWFsbC1pbnRlcnJ1cHRlZCIp CiAJCXRlc3Rfd2FpdF9pbnRlcnJ1cHRlZChmZCwgV0FJVF9BTEwpOworCisJaWd0X3N1YnRlc3Qo Imhvc3Qtc2lnbmFsLXBvaW50cyIpCisJCXRlc3RfaG9zdF9zaWduYWxfcG9pbnRzKGZkKTsKKwor CWlndF9zdWJ0ZXN0KCJkZXZpY2Utc2lnbmFsLXVub3JkZXJlZCIpCisJCXRlc3RfZGV2aWNlX3Np Z25hbF91bm9yZGVyZWQoZmQpOworCisJaWd0X3N1YnRlc3QoImRldmljZS1zdWJtaXQtdW5vcmRl cmVkIikKKwkJdGVzdF9kZXZpY2Vfc3VibWl0X3Vub3JkZXJlZChmZCk7CisKKwlpZ3Rfc3VidGVz dCgiaG9zdC1zaWduYWwtb3JkZXJlZCIpCisJCXRlc3RfaG9zdF9zaWduYWxfb3JkZXJlZChmZCk7 CisKKwlpZ3Rfc3VidGVzdCgiMzJiaXRzLWxpbWl0IikKKwkJdGVzdF8zMmJpdHNfbGltaXQoZmQp OwogfQotLSAKMi4yMS4wLjM5Mi5nZjhmNjc4NzE1OWUKCl9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fCmlndC1kZXYgbWFpbGluZyBsaXN0CmlndC1kZXZAbGlz dHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4v bGlzdGluZm8vaWd0LWRldg==