From mboxrd@z Thu Jan 1 00:00:00 1970 From: sourab.gupta@intel.com Subject: [RFC 2/8] drm/i915: Add mechanism for forwarding the timestamp data through perf Date: Wed, 15 Jul 2015 14:21:40 +0530 Message-ID: <1436950306-14147-3-git-send-email-sourab.gupta@intel.com> References: <1436950306-14147-1-git-send-email-sourab.gupta@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTP id AAD706EB15 for ; Wed, 15 Jul 2015 01:49:48 -0700 (PDT) In-Reply-To: <1436950306-14147-1-git-send-email-sourab.gupta@intel.com> 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: Insoo Woo , Peter Zijlstra , Jabin Wu , Sourab Gupta List-Id: intel-gfx@lists.freedesktop.org RnJvbTogU291cmFiIEd1cHRhIDxzb3VyYWIuZ3VwdGFAaW50ZWwuY29tPgoKVGhpcyBwYXRjaCBh ZGRzIHRoZSBtZWNoYW5pc20gZm9yIGZvcndhcmRpbmcgdGhlIHRpbWVzdGFtcCBkYXRhIHRvCnVz ZXJzcGFjZSB1c2luZyB0aGUgR2VuIFBNVSBwZXJmIGV2ZW50IGludGVyZmFjZS4KClRoZSB0aW1l c3RhbXBzIHdpbGwgYmUgY2FwdHVyZWQgaW4gYSBnZW0gYnVmZmVyIG9iamVjdC4gVGhlIG1ldGFk YXRhCmluZm9ybWF0aW9uIChjdHhfaWQgcmlnaHQgbm93KSBwZXJ0YWluaW5nIHRvIHNuYXBzaG90 IGlzIG1haW50YWluZWQgaW4gYQpsaXN0LCB3aG9zZSBlYWNoIG5vZGUgaGFzIG9mZnNldHMgaW50 byB0aGUgZ2VtIGJ1ZmZlciBvYmplY3QgZm9yIGVhY2gKc25hcHNob3QgY2FwdHVyZWQuCkluIG9y ZGVyIHRvIHRyYWNrIHdoZXRoZXIgdGhlIGdwdSBoYXMgY29tcGxldGVkIHByb2Nlc3NpbmcgdGhl IG5vZGUsCmEgZmllbGQgcGVydGFpbmluZyB0byBjb3JyZXNwb25kaW5nIGdlbSByZXF1ZXN0IGlz IGFkZGVkLiBUaGUgcmVxdWVzdCBpcwpleHBlY3RlZCB0byBiZSByZWZlcmVuY2VkIHdoZW5ldmVy IHRoZSBncHUgY29tbWFuZCBpcyBzdWJtaXR0ZWQuCgpFYWNoIHNuYXBzaG90IGNvbGxlY3RlZCBp cyBmb3J3YXJkZWQgYXMgYSBzZXBhcmF0ZSBwZXJmIHNhbXBsZS4gVGhlIHBlcmYKc2FtcGxlIHdp bGwgaGF2ZSByYXcgdGltZXN0YW1wIGRhdGEgZm9sbG93ZWQgYnkgbWV0YWRhdGEgaW5mb3JtYXRp b24KcGVydGFpbmluZyB0byB0aGF0IHNhbXBsZS4KV2hpbGUgZm9yd2FyZGluZyB0aGUgc2FtcGxl cywgd2UgY2hlY2sgd2hldGhlciB0aGUgZ2VtIHJlcXVlc3QgaXMgY29tcGxldGVkCmFuZCBkZXJl ZmVyZW5jZSB0aGUgY29ycmVzcG9uZGluZyByZXF1ZXN0LiBUaGUgbmVlZCB0byBkZXJlZmVyZW5j ZSB0aGUKcmVxdWVzdCBuZWNlc3NpdGF0ZXMgYSB3b3JrZXIgaGVyZSwgd2hpY2ggd2lsbCBiZSBz Y2hlZHVsZWQgd2hlbiB0aGUKaHJ0aW1lciB0cmlnZ2Vycy4KV2hpbGUgZmx1c2hpbmcgdGhlIHNh bXBsZXMsIHdlIGhhdmUgdG8gd2FpdCBmb3IgdGhlIHJlcXVlc3RzIGFscmVhZHkKc2NoZWR1bGVk LCBiZWZvcmUgZm9yd2FyZGluZyB0aGUgc2FtcGxlcy4gVGhpcyB3YWl0IGlzIGRvbmUgaW4gYSBs b2NrbGVzcwpmYXNoaW9uLgoKU2lnbmVkLW9mZi1ieTogU291cmFiIEd1cHRhIDxzb3VyYWIuZ3Vw dGFAaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggICAgIHwg IDExICsrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfb2FfcGVyZi5jIHwgMTE4ICsrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLQogaW5jbHVkZS91YXBpL2RybS9pOTE1X2Ry bS5oICAgICAgICAgfCAgMTAgKysrCiAzIGZpbGVzIGNoYW5nZWQsIDEzNyBpbnNlcnRpb25zKCsp LCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf ZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCmluZGV4IDdlOGU3N2IuLjY5 ODQxNTAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAtMTY3NSw2ICsxNjc1LDEzIEBAIHN0 cnVjdCBpOTE1X29hX3Jjc19ub2RlIHsKIAl1MzIgdGFnOwogfTsKIAorc3RydWN0IGk5MTVfZ2Vu X3BtdV9ub2RlIHsKKwlzdHJ1Y3QgbGlzdF9oZWFkIGhlYWQ7CisJc3RydWN0IGRybV9pOTE1X2dl bV9yZXF1ZXN0ICpyZXE7CisJdTMyIG9mZnNldDsKKwl1MzIgY3R4X2lkOworfTsKKwogZXh0ZXJu IGNvbnN0IHN0cnVjdCBpOTE1X29hX3JlZyBpOTE1X29hXzNkX211eF9jb25maWdfaHN3W107CiBl eHRlcm4gY29uc3QgaW50IGk5MTVfb2FfM2RfbXV4X2NvbmZpZ19oc3dfbGVuOwogZXh0ZXJuIGNv bnN0IHN0cnVjdCBpOTE1X29hX3JlZyBpOTE1X29hXzNkX2JfY291bnRlcl9jb25maWdfaHN3W107 CkBAIC0xOTk2LDcgKzIwMDMsMTEgQEAgc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgewogCQlzdHJ1 Y3QgewogCQkJc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iajsKIAkJCXU4ICphZGRyOwor CQkJdTMyIG5vZGVfc2l6ZTsKKwkJCXUzMiBub2RlX2NvdW50OwogCQl9IGJ1ZmZlcjsKKwkJc3Ry dWN0IGxpc3RfaGVhZCBub2RlX2xpc3Q7CisJCXN0cnVjdCB3b3JrX3N0cnVjdCB3b3JrX3RpbWVy OwogCX0gZ2VuX3BtdTsKIAogCXZvaWQgKCppbnNlcnRfcHJvZmlsZV9jbWRbSTkxNV9QUk9GSUxF X01BWF0pCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X29hX3BlcmYuYyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfb2FfcGVyZi5jCmluZGV4IGFiOTY1YjQuLjM1MGI1 NjAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfb2FfcGVyZi5jCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfb2FfcGVyZi5jCkBAIC00MDgsMTEgKzQwOCwxMDgg QEAgdm9pZCBmb3J3YXJkX29hX3Jjc19zbmFwc2hvdHNfd29yayhzdHJ1Y3Qgd29ya19zdHJ1Y3Qg Kl9fd29yaykKIAl9CiB9CiAKK2ludCBpOTE1X2dlbl9wbXVfd2FpdF9ncHUoc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2KQoreworCXN0cnVjdCBpOTE1X2dlbl9wbXVfbm9kZSAqbGFz dF9lbnRyeTsKKwl1bnNpZ25lZCBsb25nIGxvY2tfZmxhZ3M7CisJaW50IHJldDsKKworCS8qCisJ ICogV2FpdCBmb3IgdGhlIGxhc3Qgc2NoZWR1bGVkIHJlcXVlc3QgdG8gY29tcGxldGUuIFRoaXMg d291bGQKKwkgKiBpbXBsaWNpdGx5IHdhaXQgZm9yIHRoZSBwcmlvciBzdWJtaXR0ZWQgcmVxdWVz dHMuIFRoZSByZWZjb3VudAorCSAqIG9mIHRoZSByZXF1ZXN0cyBpcyBub3QgZGVjcmVtZW50ZWQg aGVyZS4KKwkgKi8KKwlzcGluX2xvY2tfaXJxc2F2ZSgmZGV2X3ByaXYtPmdlbl9wbXUubG9jaywg bG9ja19mbGFncyk7CisKKwlpZiAobGlzdF9lbXB0eSgmZGV2X3ByaXYtPmdlbl9wbXUubm9kZV9s aXN0KSkgeworCQlzcGluX3VubG9ja19pcnFyZXN0b3JlKCZkZXZfcHJpdi0+Z2VuX3BtdS5sb2Nr LCBsb2NrX2ZsYWdzKTsKKwkJcmV0dXJuIDA7CisJfQorCWxhc3RfZW50cnkgPSBsaXN0X2xhc3Rf ZW50cnkoJmRldl9wcml2LT5nZW5fcG11Lm5vZGVfbGlzdCwKKwkJCXN0cnVjdCBpOTE1X2dlbl9w bXVfbm9kZSwgaGVhZCk7CisJc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmZGV2X3ByaXYtPmdlbl9w bXUubG9jaywgbG9ja19mbGFncyk7CisKKwlpZiAobGFzdF9lbnRyeSAmJiBsYXN0X2VudHJ5LT5y ZXEpIHsKKwkJcmV0ID0gX19pOTE1X3dhaXRfcmVxdWVzdChsYXN0X2VudHJ5LT5yZXEsIGF0b21p Y19yZWFkKAorCQkJCSZkZXZfcHJpdi0+Z3B1X2Vycm9yLnJlc2V0X2NvdW50ZXIpLAorCQkJCWRl dl9wcml2LT5tbS5pbnRlcnJ1cHRpYmxlLCBOVUxMLCBOVUxMKTsKKwkJaWYgKHJldCkgeworCQkJ RFJNX0VSUk9SKCJmYWlsZWQgdG8gd2FpdFxuIik7CisJCQlyZXR1cm4gcmV0OworCQl9CisJfQor CXJldHVybiAwOworfQorCitzdGF0aWMgdm9pZCBmb3J3YXJkX29uZV9nZW5fcG11X3NhbXBsZShz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCisJCQkJc3RydWN0IGk5MTVfZ2VuX3Bt dV9ub2RlICpub2RlKQoreworCXN0cnVjdCBwZXJmX3NhbXBsZV9kYXRhIGRhdGE7CisJc3RydWN0 IHBlcmZfZXZlbnQgKmV2ZW50ID0gZGV2X3ByaXYtPmdlbl9wbXUuZXhjbHVzaXZlX2V2ZW50Owor CWludCB0c19zaXplLCBzbmFwc2hvdF9zaXplOworCXU4ICpzbmFwc2hvdDsKKwlzdHJ1Y3QgZHJt X2k5MTVfdHNfbm9kZV9jdHhfaWQgKmN0eF9pbmZvOworCXN0cnVjdCBwZXJmX3Jhd19yZWNvcmQg cmF3OworCisJdHNfc2l6ZSA9IHNpemVvZihzdHJ1Y3QgZHJtX2k5MTVfdHNfZGF0YSk7CisJc25h cHNob3Rfc2l6ZSA9IHRzX3NpemUgKyBzaXplb2YoKmN0eF9pbmZvKTsKKwlzbmFwc2hvdCA9IGRl dl9wcml2LT5nZW5fcG11LmJ1ZmZlci5hZGRyICsgbm9kZS0+b2Zmc2V0OworCisJY3R4X2luZm8g PSAoc3RydWN0IGRybV9pOTE1X3RzX25vZGVfY3R4X2lkICopKHNuYXBzaG90ICsgdHNfc2l6ZSk7 CisJY3R4X2luZm8tPmN0eF9pZCA9IG5vZGUtPmN0eF9pZDsKKworCXBlcmZfc2FtcGxlX2RhdGFf aW5pdCgmZGF0YSwgMCwgZXZlbnQtPmh3Lmxhc3RfcGVyaW9kKTsKKworCS8qIE5vdGU6IHRoZSBj b21iaW5lZCB1MzIgcmF3LT5zaXplIG1lbWJlciArIHJhdyBkYXRhIGl0c2VsZiBtdXN0IGJlIDgK KwkgKiBieXRlIGFsaWduZWQuIChTZWUgbm90ZSBpbiBpbml0X2dlbl9wbXVfYnVmZmVyIGZvciBt b3JlIGRldGFpbHMpICovCisJcmF3LnNpemUgPSBzbmFwc2hvdF9zaXplICsgNDsKKwlyYXcuZGF0 YSA9IHNuYXBzaG90OworCisJZGF0YS5yYXcgPSAmcmF3OworCisJcGVyZl9ldmVudF9vdmVyZmxv dyhldmVudCwgJmRhdGEsICZkZXZfcHJpdi0+Z2VuX3BtdS5kdW1teV9yZWdzKTsKK30KKwordm9p ZCBmb3J3YXJkX2dlbl9wbXVfc25hcHNob3RzX3dvcmsoc3RydWN0IHdvcmtfc3RydWN0ICpfX3dv cmspCit7CisJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0KKwkJY29udGFpbmVy X29mKF9fd29yaywgdHlwZW9mKCpkZXZfcHJpdiksIGdlbl9wbXUud29ya190aW1lcik7CisJc3Ry dWN0IGk5MTVfZ2VuX3BtdV9ub2RlICplbnRyeSwgKm5leHQ7CisJc3RydWN0IGRybV9pOTE1X2dl bV9yZXF1ZXN0ICpyZXE7CisJdW5zaWduZWQgbG9uZyBsb2NrX2ZsYWdzOworCWludCByZXQ7CisK KwlsaXN0X2Zvcl9lYWNoX2VudHJ5X3NhZmUKKwkJKGVudHJ5LCBuZXh0LCAmZGV2X3ByaXYtPmdl bl9wbXUubm9kZV9saXN0LCBoZWFkKSB7CisJCXJlcSA9IGVudHJ5LT5yZXE7CisJCWlmIChyZXEg JiYgaTkxNV9nZW1fcmVxdWVzdF9jb21wbGV0ZWQocmVxLCB0cnVlKSkgeworCQkJZm9yd2FyZF9v bmVfZ2VuX3BtdV9zYW1wbGUoZGV2X3ByaXYsIGVudHJ5KTsKKwkJCXJldCA9IGk5MTVfbXV0ZXhf bG9ja19pbnRlcnJ1cHRpYmxlKGRldl9wcml2LT5kZXYpOworCQkJaWYgKHJldCkKKwkJCQlicmVh azsKKwkJCWk5MTVfZ2VtX3JlcXVlc3RfYXNzaWduKCZlbnRyeS0+cmVxLCBOVUxMKTsKKwkJCW11 dGV4X3VubG9jaygmZGV2X3ByaXYtPmRldi0+c3RydWN0X211dGV4KTsKKwkJfSBlbHNlCisJCQli cmVhazsKKworCQkvKgorCQkgKiBEbyB3ZSBpbnN0ZWFkIG5lZWQgdG8gcHJvdGVjdCB3aG9sZSBs b29wPyBJZiBzbywgd2Ugd291bGQKKwkJICogbmVlZCB0byAqbGlzdF9tb3ZlX3RhaWwqIHRvIGEg ZGVmZXJyZWQgbGlzdCwgZnJvbSB3aGVyZQorCQkgKiBpOTE1IGRldmljZSBtdXRleCBjb3VsZCBi ZSB0YWtlbiB0byBkZWZlcmVuY2UgdGhlIHJlcXVlc3RzLAorCQkgKiBhbmQgZnJlZSB0aGUgbm9k ZS4KKwkJICovCisJCXNwaW5fbG9ja19pcnFzYXZlKCZkZXZfcHJpdi0+Z2VuX3BtdS5sb2NrLCBs b2NrX2ZsYWdzKTsKKwkJbGlzdF9kZWwoJmVudHJ5LT5oZWFkKTsKKwkJc3Bpbl91bmxvY2tfaXJx cmVzdG9yZSgmZGV2X3ByaXYtPmdlbl9wbXUubG9jaywgbG9ja19mbGFncyk7CisJCWtmcmVlKGVu dHJ5KTsKKwl9Cit9CisKIHN0YXRpYyB2b2lkIGdlbl9wbXVfZmx1c2hfc25hcHNob3RzKHN0cnVj dCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIHsKIAlXQVJOX09OKCFkZXZfcHJpdi0+Z2Vu X3BtdS5idWZmZXIuYWRkcik7CiAKLQkvKiBUT0RPOiByb3V0aW5lIGZvciBmb3J3YXJkaW5nIHNu YXBzaG90cyB0byB1c2Vyc3BhY2UgKi8KKwlzY2hlZHVsZV93b3JrKCZkZXZfcHJpdi0+Z2VuX3Bt dS53b3JrX3RpbWVyKTsKIH0KIAogc3RhdGljIHZvaWQKQEAgLTc2MSw3ICs4NTgsNyBAQCBzdGF0 aWMgaW50IGluaXRfZ2VuX3BtdV9idWZmZXIoc3RydWN0IHBlcmZfZXZlbnQgKmV2ZW50KQogCXN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9CiAJCWNvbnRhaW5lcl9vZihldmVudC0+ cG11LCB0eXBlb2YoKmRldl9wcml2KSwgZ2VuX3BtdS5wbXUpOwogCXN0cnVjdCBkcm1faTkxNV9n ZW1fb2JqZWN0ICpibzsKLQlpbnQgcmV0OworCWludCByZXQsIG5vZGVfc2l6ZTsKIAogCUJVR19P TihkZXZfcHJpdi0+Z2VuX3BtdS5idWZmZXIub2JqKTsKIApAQCAtNzcyLDYgKzg2OSwxNSBAQCBz dGF0aWMgaW50IGluaXRfZ2VuX3BtdV9idWZmZXIoc3RydWN0IHBlcmZfZXZlbnQgKmV2ZW50KQog CWRldl9wcml2LT5nZW5fcG11LmJ1ZmZlci5vYmogPSBibzsKIAogCWRldl9wcml2LT5nZW5fcG11 LmJ1ZmZlci5hZGRyID0gdm1hcF9vYV9idWZmZXIoYm8pOworCUlOSVRfTElTVF9IRUFEKCZkZXZf cHJpdi0+Z2VuX3BtdS5ub2RlX2xpc3QpOworCisJbm9kZV9zaXplID0gc2l6ZW9mKHN0cnVjdCBk cm1faTkxNV90c19kYXRhKSArCisJCQlzaXplb2Yoc3RydWN0IGRybV9pOTE1X3RzX25vZGVfY3R4 X2lkKTsKKworCS8qIHNpemUgaGFzIHRvIGJlIGFsaWduZWQgdG8gOCBieXRlcyAocmVxdWlyZWQg YnkgcmVsZXZhbnQgZ3B1IGNtZHMpICovCisJbm9kZV9zaXplID0gQUxJR04obm9kZV9zaXplLCA4 KTsKKwlkZXZfcHJpdi0+Z2VuX3BtdS5idWZmZXIubm9kZV9zaXplID0gbm9kZV9zaXplOworCWRl dl9wcml2LT5nZW5fcG11LmJ1ZmZlci5ub2RlX2NvdW50ID0gYm8tPmJhc2Uuc2l6ZSAvIG5vZGVf c2l6ZTsKIAogCURSTV9ERUJVR19EUklWRVIoIkdlbiBQTVUgQnVmZmVyIGluaXRpYWxpemVkLCB2 YWRkciA9ICVwIiwKIAkJCSBkZXZfcHJpdi0+Z2VuX3BtdS5idWZmZXIuYWRkcik7CkBAIC0xMzk3 LDYgKzE1MDMsMTEgQEAgc3RhdGljIGludCBpOTE1X2dlbl9ldmVudF9mbHVzaChzdHJ1Y3QgcGVy Zl9ldmVudCAqZXZlbnQpCiB7CiAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUgPQogCQlj b250YWluZXJfb2YoZXZlbnQtPnBtdSwgdHlwZW9mKCppOTE1KSwgZ2VuX3BtdS5wbXUpOworCWlu dCByZXQ7CisKKwlyZXQgPSBpOTE1X2dlbl9wbXVfd2FpdF9ncHUoaTkxNSk7CisJaWYgKHJldCkK KwkJcmV0dXJuIHJldDsKIAogCWdlbl9wbXVfZmx1c2hfc25hcHNob3RzKGk5MTUpOwogCXJldHVy biAwOwpAQCAtMTU0OCw2ICsxNjU5LDcgQEAgdm9pZCBpOTE1X2dlbl9wbXVfcmVnaXN0ZXIoc3Ry dWN0IGRybV9kZXZpY2UgKmRldikKIAlocnRpbWVyX2luaXQoJmk5MTUtPmdlbl9wbXUudGltZXIs IENMT0NLX01PTk9UT05JQywgSFJUSU1FUl9NT0RFX1JFTCk7CiAJaTkxNS0+Z2VuX3BtdS50aW1l ci5mdW5jdGlvbiA9IGhydGltZXJfc2FtcGxlX2dlbjsKIAorCUlOSVRfV09SSygmaTkxNS0+Z2Vu X3BtdS53b3JrX3RpbWVyLCBmb3J3YXJkX2dlbl9wbXVfc25hcHNob3RzX3dvcmspOwogCXNwaW5f bG9ja19pbml0KCZpOTE1LT5nZW5fcG11LmxvY2spOwogCiAJaTkxNS0+Z2VuX3BtdS5wbXUuY2Fw YWJpbGl0aWVzICA9IFBFUkZfUE1VX0NBUF9JU19ERVZJQ0U7CkBAIC0xNTc3LDYgKzE2ODksOCBA QCB2b2lkIGk5MTVfZ2VuX3BtdV91bnJlZ2lzdGVyKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJ aWYgKGk5MTUtPmdlbl9wbXUucG11LmV2ZW50X2luaXQgPT0gTlVMTCkKIAkJcmV0dXJuOwogCisJ Y2FuY2VsX3dvcmtfc3luYygmaTkxNS0+Z2VuX3BtdS53b3JrX3RpbWVyKTsKKwogCXBlcmZfcG11 X3VucmVnaXN0ZXIoJmk5MTUtPmdlbl9wbXUucG11KTsKIAlpOTE1LT5nZW5fcG11LnBtdS5ldmVu dF9pbml0ID0gTlVMTDsKIH0KZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0u aCBiL2luY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0uaAppbmRleCAxMDg0MTc4Li45YzA4M2EyIDEw MDY0NAotLS0gYS9pbmNsdWRlL3VhcGkvZHJtL2k5MTVfZHJtLmgKKysrIGIvaW5jbHVkZS91YXBp L2RybS9pOTE1X2RybS5oCkBAIC0xNDAsNiArMTQwLDE2IEBAIHN0cnVjdCBkcm1faTkxNV9vYV9u b2RlX3RhZyB7CiAJX191MzIgcGFkOwogfTsKIAorc3RydWN0IGRybV9pOTE1X3RzX2RhdGEgewor CV9fdTMyIHRzX2xvdzsKKwlfX3UzMiB0c19oaWdoOworfTsKKworc3RydWN0IGRybV9pOTE1X3Rz X25vZGVfY3R4X2lkIHsKKwlfX3UzMiBjdHhfaWQ7CisJX191MzIgcGFkOworfTsKKwogLyogRWFj aCByZWdpb24gaXMgYSBtaW5pbXVtIG9mIDE2aywgYW5kIHRoZXJlIGFyZSBhdCBtb3N0IDI1NSBv ZiB0aGVtLgogICovCiAjZGVmaW5lIEk5MTVfTlJfVEVYX1JFR0lPTlMgMjU1CS8qIHRhYmxlIHNp emUgMmsgLSBtYXhpbXVtIGR1ZSB0byB1c2UKLS0gCjEuOC41LjEKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50 ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==