From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [CI 2/4] drm/i915: Identify active requests Date: Tue, 29 Jan 2019 18:54:50 +0000 Message-ID: <20190129185452.20989-2-chris@chris-wilson.co.uk> References: <20190129185452.20989-1-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from fireflyinternet.com (mail.fireflyinternet.com [109.228.58.192]) by gabe.freedesktop.org (Postfix) with ESMTPS id D78D46E935 for ; Tue, 29 Jan 2019 18:55:01 +0000 (UTC) Received: from haswell.alporthouse.com (unverified [78.156.65.138]) by fireflyinternet.com (Firefly Internet (M1)) with ESMTP id 15394678-1500050 for ; Tue, 29 Jan 2019 18:54:53 +0000 In-Reply-To: <20190129185452.20989-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 List-Id: intel-gfx@lists.freedesktop.org VG8gYWxsb3cgcmVxdWVzdHMgdG8gZm9yZ28gYSBjb21tb24gZXhlY3V0aW9uIHRpbWVsaW5lLCBv bmUgcXVlc3Rpb24gd2UKbmVlZCB0byBiZSBhYmxlIHRvIGFuc3dlciBpcyAiaXMgdGhpcyByZXF1 ZXN0IHJ1bm5pbmc/Ii4gVG8gdHJhY2sKd2hldGhlciBhIHJlcXVlc3QgaGFzIHN0YXJ0ZWQgb24g SFcsIHdlIGNhbiBlbWl0IGEgYnJlYWRjcnVtYiBhdCB0aGUKYmVnaW5uaW5nIG9mIHRoZSByZXF1 ZXN0IGFuZCBjaGVjayBpdHMgdGltZWxpbmUncyBIV1NQIHRvIHNlZSBpZiB0aGUKYnJlYWRjcnVt YiBoYXMgYWR2YW5jZWQgcGFzdCB0aGUgc3RhcnQgb2YgdGhpcyByZXF1ZXN0LiAoVGhpcyBpcyBp bgpjb250cmFzdCB0byB0aGUgZ2xvYmFsIHRpbWVsaW5lIHdoZXJlIHdlIG5lZWQgb25seSBhc2sg aWYgd2UgYXJlIG9uIHRoZQpnbG9iYWwgdGltZWxpbmUgYW5kIGlmIHRoZSB0aW1lbGluZSBoYXMg YWR2YW5jZWQgcGFzdCB0aGUgZW5kIG9mIHRoZQpwcmV2aW91cyByZXF1ZXN0LikKClRoZXJlIGlz IHN0aWxsIGNvbmZ1c2lvbiBmcm9tIGEgcHJlZW1wdGVkIHJlcXVlc3QsIHdoaWNoIGhhcyBhbHJl YWR5CnN0YXJ0ZWQgYnV0IHJlbGlucXVpc2hlZCB0aGUgSFcgdG8gYSBoaWdoIHByaW9yaXR5IHJl cXVlc3QuIEZvciB0aGUKY29tbW9uIGNhc2UsIHRoaXMgZGlzY3JlcGFuY3kgc2hvdWxkIGJlIG5l Z2xpZ2libGUuIEhvd2V2ZXIsIGZvcgppZGVudGlmaWNhdGlvbiBvZiBodW5nIHJlcXVlc3RzLCBr bm93aW5nIHdoaWNoIG9uZSB3YXMgcnVubmluZyBhdCB0aGUKdGltZSBvZiB0aGUgaGFuZyB3aWxs IGJlIG11Y2ggbW9yZSBpbXBvcnRhbnQuCgpTaWduZWQtb2ZmLWJ5OiBDaHJpcyBXaWxzb24gPGNo cmlzQGNocmlzLXdpbHNvbi5jby51az4KUmV2aWV3ZWQtYnk6IFR2cnRrbyBVcnN1bGluIDx0dnJ0 a28udXJzdWxpbkBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0u YyAgICAgICAgICAgICAgfCAxNSArKysrKysrKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9n ZW1fZXhlY2J1ZmZlci5jICAgfCAxMiArKysrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf cmVxdWVzdC5jICAgICAgICAgIHwgMTAgKystLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf cmVxdWVzdC5oICAgICAgICAgIHwgIDEgKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV90aW1l bGluZS5jICAgICAgICAgfCAgMSArCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3RpbWVsaW5l LmggICAgICAgICB8ICAyICsKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2VuZ2luZV9jcy5j ICAgICAgIHwgIDggKystLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMgICAgICAg ICAgICAgfCAzOSArKysrKysrKysrKysrKysrKy0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfcmluZ2J1ZmZlci5jICAgICAgfCAyNSArKysrKysrKy0tLS0tCiBkcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9yaW5nYnVmZmVyLmggICAgICB8ICA2ICsrLQogZHJpdmVycy9ncHUvZHJtL2k5 MTUvc2VsZnRlc3RzL21vY2tfZW5naW5lLmMgfCAgMiArLQogMTEgZmlsZXMgY2hhbmdlZCwgOTYg aW5zZXJ0aW9ucygrKSwgMjUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9nZW0uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKaW5k ZXggMDU2MjcwMDBiNzdkLi5lODAyYWY2NGQ2MjggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwpA QCAtMjg3Myw2ICsyODczLDE0IEBAIGk5MTVfZ2VtX29iamVjdF9wd3JpdGVfZ3R0KHN0cnVjdCBk cm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCiAJcmV0dXJuIDA7CiB9CiAKK3N0YXRpYyBib29sIG1h dGNoX3Jpbmcoc3RydWN0IGk5MTVfcmVxdWVzdCAqcnEpCit7CisJc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2ID0gcnEtPmk5MTU7CisJdTMyIHJpbmcgPSBJOTE1X1JFQUQoUklOR19T VEFSVChycS0+ZW5naW5lLT5tbWlvX2Jhc2UpKTsKKworCXJldHVybiByaW5nID09IGk5MTVfZ2d0 dF9vZmZzZXQocnEtPnJpbmctPnZtYSk7Cit9CisKIHN0cnVjdCBpOTE1X3JlcXVlc3QgKgogaTkx NV9nZW1fZmluZF9hY3RpdmVfcmVxdWVzdChzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUp CiB7CkBAIC0yODk1LDYgKzI5MDMsMTMgQEAgaTkxNV9nZW1fZmluZF9hY3RpdmVfcmVxdWVzdChz dHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUpCiAJCWlmIChpOTE1X3JlcXVlc3RfY29tcGxl dGVkKHJlcXVlc3QpKQogCQkJY29udGludWU7CiAKKwkJaWYgKCFpOTE1X3JlcXVlc3Rfc3RhcnRl ZChyZXF1ZXN0KSkKKwkJCWJyZWFrOworCisJCS8qIE1vcmUgdGhhbiBvbmUgcHJlZW1wdGlibGUg cmVxdWVzdCBtYXkgbWF0Y2ghICovCisJCWlmICghbWF0Y2hfcmluZyhyZXF1ZXN0KSkKKwkJCWJy ZWFrOworCiAJCWFjdGl2ZSA9IHJlcXVlc3Q7CiAJCWJyZWFrOwogCX0KZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIuYwppbmRleCBmMjUwMTA5ZTFmNjYuLjhlZWRmN2Nh YzQ5MyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZXhlY2J1ZmZl ci5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIuYwpAQCAt MTk3Niw2ICsxOTc2LDE4IEBAIHN0YXRpYyBpbnQgZWJfc3VibWl0KHN0cnVjdCBpOTE1X2V4ZWNi dWZmZXIgKmViKQogCQkJcmV0dXJuIGVycjsKIAl9CiAKKwkvKgorCSAqIEFmdGVyIHdlIGNvbXBs ZXRlZCB3YWl0aW5nIGZvciBvdGhlciBlbmdpbmVzICh1c2luZyBIVyBzZW1hcGhvcmVzKQorCSAq IHRoZW4gd2UgY2FuIHNpZ25hbCB0aGF0IHRoaXMgcmVxdWVzdC9iYXRjaCBpcyByZWFkeSB0byBy dW4uIFRoaXMKKwkgKiBhbGxvd3MgdXMgdG8gZGV0ZXJtaW5lIGlmIHRoZSBiYXRjaCBpcyBzdGls bCB3YWl0aW5nIG9uIHRoZSBHUFUKKwkgKiBvciBhY3R1YWxseSBydW5uaW5nIGJ5IGNoZWNraW5n IHRoZSBicmVhZGNydW1iLgorCSAqLworCWlmIChlYi0+ZW5naW5lLT5lbWl0X2luaXRfYnJlYWRj cnVtYikgeworCQllcnIgPSBlYi0+ZW5naW5lLT5lbWl0X2luaXRfYnJlYWRjcnVtYihlYi0+cmVx dWVzdCk7CisJCWlmIChlcnIpCisJCQlyZXR1cm4gZXJyOworCX0KKwogCWVyciA9IGViLT5lbmdp bmUtPmVtaXRfYmJfc3RhcnQoZWItPnJlcXVlc3QsCiAJCQkJCWViLT5iYXRjaC0+bm9kZS5zdGFy dCArCiAJCQkJCWViLT5iYXRjaF9zdGFydF9vZmZzZXQsCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X3JlcXVlc3QuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVx dWVzdC5jCmluZGV4IDRkNTg3NzBlNmE4Yy4uN2RiMTViN2IzZGU4IDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlcXVlc3QuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X3JlcXVlc3QuYwpAQCAtMzMzLDcgKzMzMyw3IEBAIHZvaWQgaTkxNV9yZXF1ZXN0X3Jl dGlyZV91cHRvKHN0cnVjdCBpOTE1X3JlcXVlc3QgKnJxKQogCiBzdGF0aWMgdTMyIHRpbWVsaW5l X2dldF9zZXFubyhzdHJ1Y3QgaTkxNV90aW1lbGluZSAqdGwpCiB7Ci0JcmV0dXJuICsrdGwtPnNl cW5vOworCXJldHVybiB0bC0+c2Vxbm8gKz0gMSArIHRsLT5oYXNfaW5pdGlhbF9icmVhZGNydW1i OwogfQogCiBzdGF0aWMgdm9pZCBtb3ZlX3RvX3RpbWVsaW5lKHN0cnVjdCBpOTE1X3JlcXVlc3Qg KnJlcXVlc3QsCkBAIC0zODIsOCArMzgyLDggQEAgdm9pZCBfX2k5MTVfcmVxdWVzdF9zdWJtaXQo c3RydWN0IGk5MTVfcmVxdWVzdCAqcmVxdWVzdCkKIAkJaW50ZWxfZW5naW5lX2VuYWJsZV9zaWdu YWxpbmcocmVxdWVzdCwgZmFsc2UpOwogCXNwaW5fdW5sb2NrKCZyZXF1ZXN0LT5sb2NrKTsKIAot CWVuZ2luZS0+ZW1pdF9icmVhZGNydW1iKHJlcXVlc3QsCi0JCQkJcmVxdWVzdC0+cmluZy0+dmFk ZHIgKyByZXF1ZXN0LT5wb3N0Zml4KTsKKwllbmdpbmUtPmVtaXRfZmluaV9icmVhZGNydW1iKHJl cXVlc3QsCisJCQkJICAgICByZXF1ZXN0LT5yaW5nLT52YWRkciArIHJlcXVlc3QtPnBvc3RmaXgp OwogCiAJLyogVHJhbnNmZXIgZnJvbSBwZXItY29udGV4dCBvbnRvIHRoZSBnbG9iYWwgcGVyLWVu Z2luZSB0aW1lbGluZSAqLwogCW1vdmVfdG9fdGltZWxpbmUocmVxdWVzdCwgJmVuZ2luZS0+dGlt ZWxpbmUpOwpAQCAtNjU3LDcgKzY1Nyw3IEBAIGk5MTVfcmVxdWVzdF9hbGxvYyhzdHJ1Y3QgaW50 ZWxfZW5naW5lX2NzICplbmdpbmUsIHN0cnVjdCBpOTE1X2dlbV9jb250ZXh0ICpjdHgpCiAJICog YXJvdW5kIGluc2lkZSBpOTE1X3JlcXVlc3RfYWRkKCkgdGhlcmUgaXMgc3VmZmljaWVudCBzcGFj ZSBhdAogCSAqIHRoZSBiZWdpbm5pbmcgb2YgdGhlIHJpbmcgYXMgd2VsbC4KIAkgKi8KLQlycS0+ cmVzZXJ2ZWRfc3BhY2UgPSAyICogZW5naW5lLT5lbWl0X2JyZWFkY3J1bWJfZHcgKiBzaXplb2Yo dTMyKTsKKwlycS0+cmVzZXJ2ZWRfc3BhY2UgPSAyICogZW5naW5lLT5lbWl0X2ZpbmlfYnJlYWRj cnVtYl9kdyAqIHNpemVvZih1MzIpOwogCiAJLyoKIAkgKiBSZWNvcmQgdGhlIHBvc2l0aW9uIG9m IHRoZSBzdGFydCBvZiB0aGUgcmVxdWVzdCBzbyB0aGF0CkBAIC05MDgsNyArOTA4LDcgQEAgdm9p ZCBpOTE1X3JlcXVlc3RfYWRkKHN0cnVjdCBpOTE1X3JlcXVlc3QgKnJlcXVlc3QpCiAJICogR1BV IHByb2Nlc3NpbmcgdGhlIHJlcXVlc3QsIHdlIG5ldmVyIG92ZXItZXN0aW1hdGUgdGhlCiAJICog cG9zaXRpb24gb2YgdGhlIHJpbmcncyBIRUFELgogCSAqLwotCWNzID0gaW50ZWxfcmluZ19iZWdp bihyZXF1ZXN0LCBlbmdpbmUtPmVtaXRfYnJlYWRjcnVtYl9kdyk7CisJY3MgPSBpbnRlbF9yaW5n X2JlZ2luKHJlcXVlc3QsIGVuZ2luZS0+ZW1pdF9maW5pX2JyZWFkY3J1bWJfZHcpOwogCUdFTV9C VUdfT04oSVNfRVJSKGNzKSk7CiAJcmVxdWVzdC0+cG9zdGZpeCA9IGludGVsX3Jpbmdfb2Zmc2V0 KHJlcXVlc3QsIGNzKTsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9y ZXF1ZXN0LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlcXVlc3QuaAppbmRleCA5NmM1 ODZkNmZmNGQuLjM0MGQ2MjE2NzkxYyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9yZXF1ZXN0LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZXF1ZXN0LmgK QEAgLTM0NCw2ICszNDQsNyBAQCBzdGF0aWMgaW5saW5lIGJvb2wgaTkxNV9yZXF1ZXN0X3N0YXJ0 ZWQoY29uc3Qgc3RydWN0IGk5MTVfcmVxdWVzdCAqcnEpCiAJaWYgKGk5MTVfcmVxdWVzdF9zaWdu YWxlZChycSkpCiAJCXJldHVybiB0cnVlOwogCisJLyogUmVtZW1iZXI6IHN0YXJ0ZWQgYnV0IG1h eSBoYXZlIHNpbmNlIGJlZW4gcHJlZW1wdGVkISAqLwogCXJldHVybiBpOTE1X3NlcW5vX3Bhc3Nl ZChod3NwX3NlcW5vKHJxKSwgcnEtPmZlbmNlLnNlcW5vIC0gMSk7CiB9CiAKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfdGltZWxpbmUuYyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfdGltZWxpbmUuYwppbmRleCA3OTgzOGQ4OWJkYjkuLjVlYTNhZjM5M2ZmZSAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV90aW1lbGluZS5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfdGltZWxpbmUuYwpAQCAtMTM1LDYgKzEzNSw3IEBAIGludCBp OTE1X3RpbWVsaW5lX2luaXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsCiAJdGltZWxp bmUtPmk5MTUgPSBpOTE1OwogCXRpbWVsaW5lLT5uYW1lID0gbmFtZTsKIAl0aW1lbGluZS0+cGlu X2NvdW50ID0gMDsKKwl0aW1lbGluZS0+aGFzX2luaXRpYWxfYnJlYWRjcnVtYiA9ICFod3NwOwog CiAJdGltZWxpbmUtPmh3c3Bfb2Zmc2V0ID0gSTkxNV9HRU1fSFdTX1NFUU5PX0FERFI7CiAJaWYg KCFod3NwKSB7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3RpbWVsaW5l LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3RpbWVsaW5lLmgKaW5kZXggYWI3MzZlMmU1 NzA3Li44Y2FlYjY2ZDFjZDUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf dGltZWxpbmUuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3RpbWVsaW5lLmgKQEAg LTQ4LDYgKzQ4LDggQEAgc3RydWN0IGk5MTVfdGltZWxpbmUgewogCXN0cnVjdCBpOTE1X3ZtYSAq aHdzcF9nZ3R0OwogCXUzMiBod3NwX29mZnNldDsKIAorCWJvb2wgaGFzX2luaXRpYWxfYnJlYWRj cnVtYjsKKwogCS8qKgogCSAqIExpc3Qgb2YgYnJlYWRjcnVtYnMgYXNzb2NpYXRlZCB3aXRoIEdQ VSByZXF1ZXN0cyBjdXJyZW50bHkKIAkgKiBvdXRzdGFuZGluZy4KZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2VuZ2luZV9jcy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZW5naW5lX2NzLmMKaW5kZXggZWFkOWM0MzcxZmUxLi44ZGNhNzZmNjMxNWQgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2VuZ2luZV9jcy5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2VuZ2luZV9jcy5jCkBAIC02NjQsNyArNjY0LDcgQEAgc3Rh dGljIGludCBtZWFzdXJlX2JyZWFkY3J1bWJfZHcoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5n aW5lKQogCWlmIChkdyA8IDApCiAJCWdvdG8gb3V0X3RpbWVsaW5lOwogCi0JZHcgPSBlbmdpbmUt PmVtaXRfYnJlYWRjcnVtYigmZnJhbWUtPnJxLCBmcmFtZS0+Y3MpIC0gZnJhbWUtPmNzOworCWR3 ID0gZW5naW5lLT5lbWl0X2ZpbmlfYnJlYWRjcnVtYigmZnJhbWUtPnJxLCBmcmFtZS0+Y3MpIC0g ZnJhbWUtPmNzOwogCiAJaTkxNV90aW1lbGluZV91bnBpbigmZnJhbWUtPnRpbWVsaW5lKTsKIApA QCAtNzI1LDcgKzcyNSw3IEBAIGludCBpbnRlbF9lbmdpbmVfaW5pdF9jb21tb24oc3RydWN0IGlu dGVsX2VuZ2luZV9jcyAqZW5naW5lKQogCWlmIChyZXQgPCAwKQogCQlnb3RvIGVycl9icmVhZGNy dW1iczsKIAotCWVuZ2luZS0+ZW1pdF9icmVhZGNydW1iX2R3ID0gcmV0OworCWVuZ2luZS0+ZW1p dF9maW5pX2JyZWFkY3J1bWJfZHcgPSByZXQ7CiAKIAlyZXR1cm4gMDsKIApAQCAtMTI5Nyw3ICsx Mjk3LDkgQEAgc3RhdGljIHZvaWQgcHJpbnRfcmVxdWVzdChzdHJ1Y3QgZHJtX3ByaW50ZXIgKm0s CiAJZHJtX3ByaW50ZihtLCAiJXMleCVzIFslbGx4OiVsbHhdJXMgQCAlZG1zOiAlc1xuIiwKIAkJ ICAgcHJlZml4LAogCQkgICBycS0+Z2xvYmFsX3NlcW5vLAotCQkgICBpOTE1X3JlcXVlc3RfY29t cGxldGVkKHJxKSA/ICIhIiA6ICIiLAorCQkgICBpOTE1X3JlcXVlc3RfY29tcGxldGVkKHJxKSA/ ICIhIiA6CisJCSAgIGk5MTVfcmVxdWVzdF9zdGFydGVkKHJxKSA/ICIqIiA6CisJCSAgICIiLAog CQkgICBycS0+ZmVuY2UuY29udGV4dCwgcnEtPmZlbmNlLnNlcW5vLAogCQkgICBidWYsCiAJCSAg IGppZmZpZXNfdG9fbXNlY3MoamlmZmllcyAtIHJxLT5lbWl0dGVkX2ppZmZpZXMpLApkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9scmMuYwppbmRleCBmZGJiM2ZlOGVhYzkuLjVkYjE2ZGQ4ZTg0NCAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMKKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfbHJjLmMKQEAgLTYyNCw3ICs2MjQsNyBAQCBzdGF0aWMgdm9pZCBleGVj bGlzdHNfZGVxdWV1ZShzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUpCiAJCSAqIFdhSWRs ZUxpdGVSZXN0b3JlOmJkdyxza2wKIAkJICogQXBwbHkgdGhlIHdhIE5PT1BzIHRvIHByZXZlbnQK IAkJICogcmluZzpIRUFEID09IHJxOlRBSUwgYXMgd2UgcmVzdWJtaXQgdGhlCi0JCSAqIHJlcXVl c3QuIFNlZSBnZW44X2VtaXRfYnJlYWRjcnVtYigpIGZvcgorCQkgKiByZXF1ZXN0LiBTZWUgZ2Vu OF9lbWl0X2ZpbmlfYnJlYWRjcnVtYigpIGZvcgogCQkgKiB3aGVyZSB3ZSBwcmVwYXJlIHRoZSBw YWRkaW5nIGFmdGVyIHRoZQogCQkgKiBlbmQgb2YgdGhlIHJlcXVlc3QuCiAJCSAqLwpAQCAtMTI4 Myw2ICsxMjgzLDM0IEBAIGV4ZWNsaXN0c19jb250ZXh0X3BpbihzdHJ1Y3QgaW50ZWxfZW5naW5l X2NzICplbmdpbmUsCiAJcmV0dXJuIF9fZXhlY2xpc3RzX2NvbnRleHRfcGluKGVuZ2luZSwgY3R4 LCBjZSk7CiB9CiAKK3N0YXRpYyBpbnQgZ2VuOF9lbWl0X2luaXRfYnJlYWRjcnVtYihzdHJ1Y3Qg aTkxNV9yZXF1ZXN0ICpycSkKK3sKKwl1MzIgKmNzOworCisJR0VNX0JVR19PTighcnEtPnRpbWVs aW5lLT5oYXNfaW5pdGlhbF9icmVhZGNydW1iKTsKKworCWNzID0gaW50ZWxfcmluZ19iZWdpbihy cSwgNik7CisJaWYgKElTX0VSUihjcykpCisJCXJldHVybiBQVFJfRVJSKGNzKTsKKworCS8qCisJ ICogQ2hlY2sgaWYgd2UgaGF2ZSBiZWVuIHByZWVtcHRlZCBiZWZvcmUgd2UgZXZlbiBnZXQgc3Rh cnRlZC4KKwkgKgorCSAqIEFmdGVyIHRoaXMgcG9pbnQgaTkxNV9yZXF1ZXN0X3N0YXJ0ZWQoKSBy ZXBvcnRzIHRydWUsIGV2ZW4gaWYKKwkgKiB3ZSBnZXQgcHJlZW1wdGVkIGFuZCBzbyBhcmUgbm8g bG9uZ2VyIHJ1bm5pbmcuCisJICovCisJKmNzKysgPSBNSV9BUkJfQ0hFQ0s7CisJKmNzKysgPSBN SV9OT09QOworCisJKmNzKysgPSBNSV9TVE9SRV9EV09SRF9JTU1fR0VONCB8IE1JX1VTRV9HR1RU OworCSpjcysrID0gcnEtPnRpbWVsaW5lLT5od3NwX29mZnNldDsKKwkqY3MrKyA9IDA7CisJKmNz KysgPSBycS0+ZmVuY2Uuc2Vxbm8gLSAxOworCisJaW50ZWxfcmluZ19hZHZhbmNlKHJxLCBjcyk7 CisJcmV0dXJuIDA7Cit9CisKIHN0YXRpYyBpbnQgZW1pdF9wZHBzKHN0cnVjdCBpOTE1X3JlcXVl c3QgKnJxKQogewogCWNvbnN0IHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKiBjb25zdCBlbmdpbmUg PSBycS0+ZW5naW5lOwpAQCAtMjAzOSw3ICsyMDY3LDcgQEAgc3RhdGljIHUzMiAqZ2VuOF9lbWl0 X3dhX3RhaWwoc3RydWN0IGk5MTVfcmVxdWVzdCAqcmVxdWVzdCwgdTMyICpjcykKIAlyZXR1cm4g Y3M7CiB9CiAKLXN0YXRpYyB1MzIgKmdlbjhfZW1pdF9icmVhZGNydW1iKHN0cnVjdCBpOTE1X3Jl cXVlc3QgKnJlcXVlc3QsIHUzMiAqY3MpCitzdGF0aWMgdTMyICpnZW44X2VtaXRfZmluaV9icmVh ZGNydW1iKHN0cnVjdCBpOTE1X3JlcXVlc3QgKnJlcXVlc3QsIHUzMiAqY3MpCiB7CiAJLyogdy9h OiBiaXQgNSBuZWVkcyB0byBiZSB6ZXJvIGZvciBNSV9GTFVTSF9EVyBhZGRyZXNzLiAqLwogCUJV SUxEX0JVR19PTihJOTE1X0dFTV9IV1NfSU5ERVhfQUREUiAmICgxIDw8IDUpKTsKQEAgLTIwNjEs NyArMjA4OSw3IEBAIHN0YXRpYyB1MzIgKmdlbjhfZW1pdF9icmVhZGNydW1iKHN0cnVjdCBpOTE1 X3JlcXVlc3QgKnJlcXVlc3QsIHUzMiAqY3MpCiAJcmV0dXJuIGdlbjhfZW1pdF93YV90YWlsKHJl cXVlc3QsIGNzKTsKIH0KIAotc3RhdGljIHUzMiAqZ2VuOF9lbWl0X2JyZWFkY3J1bWJfcmNzKHN0 cnVjdCBpOTE1X3JlcXVlc3QgKnJlcXVlc3QsIHUzMiAqY3MpCitzdGF0aWMgdTMyICpnZW44X2Vt aXRfZmluaV9icmVhZGNydW1iX3JjcyhzdHJ1Y3QgaTkxNV9yZXF1ZXN0ICpyZXF1ZXN0LCB1MzIg KmNzKQogewogCWNzID0gZ2VuOF9lbWl0X2dndHRfd3JpdGVfcmNzKGNzLAogCQkJCSAgICAgIHJl cXVlc3QtPmZlbmNlLnNlcW5vLApAQCAtMjE3Niw3ICsyMjA0LDggQEAgbG9naWNhbF9yaW5nX2Rl ZmF1bHRfdmZ1bmNzKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSkKIAllbmdpbmUtPnJl cXVlc3RfYWxsb2MgPSBleGVjbGlzdHNfcmVxdWVzdF9hbGxvYzsKIAogCWVuZ2luZS0+ZW1pdF9m bHVzaCA9IGdlbjhfZW1pdF9mbHVzaDsKLQllbmdpbmUtPmVtaXRfYnJlYWRjcnVtYiA9IGdlbjhf ZW1pdF9icmVhZGNydW1iOworCWVuZ2luZS0+ZW1pdF9pbml0X2JyZWFkY3J1bWIgPSBnZW44X2Vt aXRfaW5pdF9icmVhZGNydW1iOworCWVuZ2luZS0+ZW1pdF9maW5pX2JyZWFkY3J1bWIgPSBnZW44 X2VtaXRfZmluaV9icmVhZGNydW1iOwogCiAJZW5naW5lLT5zZXRfZGVmYXVsdF9zdWJtaXNzaW9u ID0gaW50ZWxfZXhlY2xpc3RzX3NldF9kZWZhdWx0X3N1Ym1pc3Npb247CiAKQEAgLTIyODksNyAr MjMxOCw3IEBAIGludCBsb2dpY2FsX3JlbmRlcl9yaW5nX2luaXQoc3RydWN0IGludGVsX2VuZ2lu ZV9jcyAqZW5naW5lKQogCS8qIE92ZXJyaWRlIHNvbWUgZm9yIHJlbmRlciByaW5nLiAqLwogCWVu Z2luZS0+aW5pdF9jb250ZXh0ID0gZ2VuOF9pbml0X3Jjc19jb250ZXh0OwogCWVuZ2luZS0+ZW1p dF9mbHVzaCA9IGdlbjhfZW1pdF9mbHVzaF9yZW5kZXI7Ci0JZW5naW5lLT5lbWl0X2JyZWFkY3J1 bWIgPSBnZW44X2VtaXRfYnJlYWRjcnVtYl9yY3M7CisJZW5naW5lLT5lbWl0X2ZpbmlfYnJlYWRj cnVtYiA9IGdlbjhfZW1pdF9maW5pX2JyZWFkY3J1bWJfcmNzOwogCiAJcmV0ID0gbG9naWNhbF9y aW5nX2luaXQoZW5naW5lKTsKIAlpZiAocmV0KQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmlu Z2J1ZmZlci5jCmluZGV4IGVlMzcxOTMyNGUyZC4uNjY4ZWQ2NzMzNmEyIDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmMKKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5jCkBAIC0xNjA3LDYgKzE2MDcsNyBAQCBzdGF0aWMg aW50IGludGVsX2luaXRfcmluZ19idWZmZXIoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5l KQogCQllcnIgPSBQVFJfRVJSKHRpbWVsaW5lKTsKIAkJZ290byBlcnI7CiAJfQorCUdFTV9CVUdf T04odGltZWxpbmUtPmhhc19pbml0aWFsX2JyZWFkY3J1bWIpOwogCiAJcmluZyA9IGludGVsX2Vu Z2luZV9jcmVhdGVfcmluZyhlbmdpbmUsIHRpbWVsaW5lLCAzMiAqIFBBR0VfU0laRSk7CiAJaTkx NV90aW1lbGluZV9wdXQodGltZWxpbmUpOwpAQCAtMTk2MCw2ICsxOTYxLDcgQEAgc3RhdGljIGlu dCByaW5nX3JlcXVlc3RfYWxsb2Moc3RydWN0IGk5MTVfcmVxdWVzdCAqcmVxdWVzdCkKIAlpbnQg cmV0OwogCiAJR0VNX0JVR19PTighcmVxdWVzdC0+aHdfY29udGV4dC0+cGluX2NvdW50KTsKKwlH RU1fQlVHX09OKHJlcXVlc3QtPnRpbWVsaW5lLT5oYXNfaW5pdGlhbF9icmVhZGNydW1iKTsKIAog CS8qCiAJICogRmx1c2ggZW5vdWdoIHNwYWNlIHRvIHJlZHVjZSB0aGUgbGlrZWxpaG9vZCBvZiB3 YWl0aW5nIGFmdGVyCkBAIC0yMjk2LDkgKzIyOTgsMTQgQEAgc3RhdGljIHZvaWQgaW50ZWxfcmlu Z19kZWZhdWx0X3ZmdW5jcyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJZW5n aW5lLT5jb250ZXh0X3BpbiA9IGludGVsX3JpbmdfY29udGV4dF9waW47CiAJZW5naW5lLT5yZXF1 ZXN0X2FsbG9jID0gcmluZ19yZXF1ZXN0X2FsbG9jOwogCi0JZW5naW5lLT5lbWl0X2JyZWFkY3J1 bWIgPSBpOXh4X2VtaXRfYnJlYWRjcnVtYjsKKwkvKgorCSAqIFVzaW5nIGEgZ2xvYmFsIGV4ZWN1 dGlvbiB0aW1lbGluZTsgdGhlIHByZXZpb3VzIGZpbmFsIGJyZWFkY3J1bWIgaXMKKwkgKiBlcXVp dmFsZW50IHRvIG91ciBuZXh0IGluaXRpYWwgYnJlYWQgc28gd2UgY2FuIGVsaWRlCisJICogZW5n aW5lLT5lbWl0X2luaXRfYnJlYWRjcnVtYigpLgorCSAqLworCWVuZ2luZS0+ZW1pdF9maW5pX2Jy ZWFkY3J1bWIgPSBpOXh4X2VtaXRfYnJlYWRjcnVtYjsKIAlpZiAoSVNfR0VOKGRldl9wcml2LCA1 KSkKLQkJZW5naW5lLT5lbWl0X2JyZWFkY3J1bWIgPSBnZW41X2VtaXRfYnJlYWRjcnVtYjsKKwkJ ZW5naW5lLT5lbWl0X2ZpbmlfYnJlYWRjcnVtYiA9IGdlbjVfZW1pdF9icmVhZGNydW1iOwogCiAJ ZW5naW5lLT5zZXRfZGVmYXVsdF9zdWJtaXNzaW9uID0gaTl4eF9zZXRfZGVmYXVsdF9zdWJtaXNz aW9uOwogCkBAIC0yMzI3LDExICsyMzM0LDExIEBAIGludCBpbnRlbF9pbml0X3JlbmRlcl9yaW5n X2J1ZmZlcihzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUpCiAJaWYgKElOVEVMX0dFTihk ZXZfcHJpdikgPj0gNykgewogCQllbmdpbmUtPmluaXRfY29udGV4dCA9IGludGVsX3Jjc19jdHhf aW5pdDsKIAkJZW5naW5lLT5lbWl0X2ZsdXNoID0gZ2VuN19yZW5kZXJfcmluZ19mbHVzaDsKLQkJ ZW5naW5lLT5lbWl0X2JyZWFkY3J1bWIgPSBnZW43X3Jjc19lbWl0X2JyZWFkY3J1bWI7CisJCWVu Z2luZS0+ZW1pdF9maW5pX2JyZWFkY3J1bWIgPSBnZW43X3Jjc19lbWl0X2JyZWFkY3J1bWI7CiAJ fSBlbHNlIGlmIChJU19HRU4oZGV2X3ByaXYsIDYpKSB7CiAJCWVuZ2luZS0+aW5pdF9jb250ZXh0 ID0gaW50ZWxfcmNzX2N0eF9pbml0OwogCQllbmdpbmUtPmVtaXRfZmx1c2ggPSBnZW42X3JlbmRl cl9yaW5nX2ZsdXNoOwotCQllbmdpbmUtPmVtaXRfYnJlYWRjcnVtYiA9IGdlbjZfcmNzX2VtaXRf YnJlYWRjcnVtYjsKKwkJZW5naW5lLT5lbWl0X2ZpbmlfYnJlYWRjcnVtYiA9IGdlbjZfcmNzX2Vt aXRfYnJlYWRjcnVtYjsKIAl9IGVsc2UgaWYgKElTX0dFTihkZXZfcHJpdiwgNSkpIHsKIAkJZW5n aW5lLT5lbWl0X2ZsdXNoID0gZ2VuNF9yZW5kZXJfcmluZ19mbHVzaDsKIAl9IGVsc2UgewpAQCAt MjM2OCw5ICsyMzc1LDkgQEAgaW50IGludGVsX2luaXRfYnNkX3JpbmdfYnVmZmVyKHN0cnVjdCBp bnRlbF9lbmdpbmVfY3MgKmVuZ2luZSkKIAkJZW5naW5lLT5pcnFfZW5hYmxlX21hc2sgPSBHVF9C U0RfVVNFUl9JTlRFUlJVUFQ7CiAKIAkJaWYgKElTX0dFTihkZXZfcHJpdiwgNikpCi0JCQllbmdp bmUtPmVtaXRfYnJlYWRjcnVtYiA9IGdlbjZfeGNzX2VtaXRfYnJlYWRjcnVtYjsKKwkJCWVuZ2lu ZS0+ZW1pdF9maW5pX2JyZWFkY3J1bWIgPSBnZW42X3hjc19lbWl0X2JyZWFkY3J1bWI7CiAJCWVs c2UKLQkJCWVuZ2luZS0+ZW1pdF9icmVhZGNydW1iID0gZ2VuN194Y3NfZW1pdF9icmVhZGNydW1i OworCQkJZW5naW5lLT5lbWl0X2ZpbmlfYnJlYWRjcnVtYiA9IGdlbjdfeGNzX2VtaXRfYnJlYWRj cnVtYjsKIAl9IGVsc2UgewogCQllbmdpbmUtPmVtaXRfZmx1c2ggPSBic2RfcmluZ19mbHVzaDsK IAkJaWYgKElTX0dFTihkZXZfcHJpdiwgNSkpCkBAIC0yMzk0LDkgKzI0MDEsOSBAQCBpbnQgaW50 ZWxfaW5pdF9ibHRfcmluZ19idWZmZXIoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKQog CWVuZ2luZS0+aXJxX2VuYWJsZV9tYXNrID0gR1RfQkxUX1VTRVJfSU5URVJSVVBUOwogCiAJaWYg KElTX0dFTihkZXZfcHJpdiwgNikpCi0JCWVuZ2luZS0+ZW1pdF9icmVhZGNydW1iID0gZ2VuNl94 Y3NfZW1pdF9icmVhZGNydW1iOworCQllbmdpbmUtPmVtaXRfZmluaV9icmVhZGNydW1iID0gZ2Vu Nl94Y3NfZW1pdF9icmVhZGNydW1iOwogCWVsc2UKLQkJZW5naW5lLT5lbWl0X2JyZWFkY3J1bWIg PSBnZW43X3hjc19lbWl0X2JyZWFkY3J1bWI7CisJCWVuZ2luZS0+ZW1pdF9maW5pX2JyZWFkY3J1 bWIgPSBnZW43X3hjc19lbWl0X2JyZWFkY3J1bWI7CiAKIAlyZXR1cm4gaW50ZWxfaW5pdF9yaW5n X2J1ZmZlcihlbmdpbmUpOwogfQpAQCAtMjQxNCw3ICsyNDIxLDcgQEAgaW50IGludGVsX2luaXRf dmVib3hfcmluZ19idWZmZXIoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKQogCWVuZ2lu ZS0+aXJxX2VuYWJsZSA9IGhzd192ZWJveF9pcnFfZW5hYmxlOwogCWVuZ2luZS0+aXJxX2Rpc2Fi bGUgPSBoc3dfdmVib3hfaXJxX2Rpc2FibGU7CiAKLQllbmdpbmUtPmVtaXRfYnJlYWRjcnVtYiA9 IGdlbjdfeGNzX2VtaXRfYnJlYWRjcnVtYjsKKwllbmdpbmUtPmVtaXRfZmluaV9icmVhZGNydW1i ID0gZ2VuN194Y3NfZW1pdF9icmVhZGNydW1iOwogCiAJcmV0dXJuIGludGVsX2luaXRfcmluZ19i dWZmZXIoZW5naW5lKTsKIH0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X3JpbmdidWZmZXIuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaApp bmRleCAyOTI3YjcxMmI5NzMuLjFmMzBmZmI4NDkzNiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX3JpbmdidWZmZXIuaApAQCAtNDYzLDggKzQ2MywxMCBAQCBzdHJ1Y3QgaW50ZWxfZW5naW5l X2NzIHsKIAkJCQkJIHVuc2lnbmVkIGludCBkaXNwYXRjaF9mbGFncyk7CiAjZGVmaW5lIEk5MTVf RElTUEFUQ0hfU0VDVVJFIEJJVCgwKQogI2RlZmluZSBJOTE1X0RJU1BBVENIX1BJTk5FRCBCSVQo MSkKLQl1MzIJCSooKmVtaXRfYnJlYWRjcnVtYikoc3RydWN0IGk5MTVfcmVxdWVzdCAqcnEsIHUz MiAqY3MpOwotCWludAkJZW1pdF9icmVhZGNydW1iX2R3OworCWludAkJICgqZW1pdF9pbml0X2Jy ZWFkY3J1bWIpKHN0cnVjdCBpOTE1X3JlcXVlc3QgKnJxKTsKKwl1MzIJCSooKmVtaXRfZmluaV9i cmVhZGNydW1iKShzdHJ1Y3QgaTkxNV9yZXF1ZXN0ICpycSwKKwkJCQkJCSB1MzIgKmNzKTsKKwl1 bnNpZ25lZCBpbnQJZW1pdF9maW5pX2JyZWFkY3J1bWJfZHc7CiAKIAkvKiBQYXNzIHRoZSByZXF1 ZXN0IHRvIHRoZSBoYXJkd2FyZSBxdWV1ZSAoZS5nLiBkaXJlY3RseSBpbnRvCiAJICogdGhlIGxl Z2FjeSByaW5nYnVmZmVyIG9yIHRvIHRoZSBlbmQgb2YgYW4gZXhlY2xpc3QpLgpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvc2VsZnRlc3RzL21vY2tfZW5naW5lLmMgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9zZWxmdGVzdHMvbW9ja19lbmdpbmUuYwppbmRleCA5NWU4OTBkN2Y1OGIu LjNiMjI2ZWJjNmJjNCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvc2VsZnRlc3Rz L21vY2tfZW5naW5lLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvc2VsZnRlc3RzL21vY2tf ZW5naW5lLmMKQEAgLTIyNyw3ICsyMjcsNyBAQCBzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICptb2Nr X2VuZ2luZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSwKIAllbmdpbmUtPmJhc2UuY29u dGV4dF9waW4gPSBtb2NrX2NvbnRleHRfcGluOwogCWVuZ2luZS0+YmFzZS5yZXF1ZXN0X2FsbG9j ID0gbW9ja19yZXF1ZXN0X2FsbG9jOwogCWVuZ2luZS0+YmFzZS5lbWl0X2ZsdXNoID0gbW9ja19l bWl0X2ZsdXNoOwotCWVuZ2luZS0+YmFzZS5lbWl0X2JyZWFkY3J1bWIgPSBtb2NrX2VtaXRfYnJl YWRjcnVtYjsKKwllbmdpbmUtPmJhc2UuZW1pdF9maW5pX2JyZWFkY3J1bWIgPSBtb2NrX2VtaXRf YnJlYWRjcnVtYjsKIAllbmdpbmUtPmJhc2Uuc3VibWl0X3JlcXVlc3QgPSBtb2NrX3N1Ym1pdF9y ZXF1ZXN0OwogCiAJaWYgKGk5MTVfdGltZWxpbmVfaW5pdChpOTE1LAotLSAKMi4yMC4xCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFp bGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK