From mboxrd@z Thu Jan 1 00:00:00 1970 From: sourab.gupta@intel.com Subject: [RFC 6/8] drm/i915: Insert commands for capture of OA counters in the ring Date: Wed, 5 Aug 2015 11:22:55 +0530 Message-ID: <1438753977-20335-7-git-send-email-sourab.gupta@intel.com> References: <1438753977-20335-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 mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTP id 9A81472087 for ; Tue, 4 Aug 2015 22:51:02 -0700 (PDT) In-Reply-To: <1438753977-20335-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 ZGRzIHRoZSByb3V0aW5lcyB3aGljaCBpbnNlcnQgY29tbWFuZHMgZm9yIGNhcHR1cmluZyBPQQpz bmFwc2hvdHMgaW50byB0aGUgcmluZ2J1ZmZlciBvZiBSQ1MgZW5naW5lLgoKVGhlIGNvbW1hbmQg TUlfUkVQT1JUX1BFUkZfQ09VTlQgY2FuIGJlIHVzZWQgdG8gY2FwdHVyZSBzbmFwc2hvdHMgb2Yg T0EKY291bnRlcnMsIHdoaWNoIGlzIGluc2VydGVkIGF0IEJCIGJvdW5kYXJpZXMuCldoaWxlIGlu c2VydGluZyB0aGUgY29tbWFuZHMsIHdlIGtlZXAgYSByZWZlcmVuY2Ugb2YgYXNzb2NpYXRlZCBy ZXF1ZXN0LgpUaGlzIHdpbGwgYmUgcmVsZWFzZWQgd2hlbiB3ZSBhcmUgZm9yd2FyZGluZyB0aGUg c2FtcGxlcyB0byB1c2Vyc3BhY2UKKG9yIHdoZW4gdGhlIGV2ZW50IGlzIGJlaW5nIGRlc3Ryb3ll ZCkuCkFsc28sIGFuIGFjdGl2ZSByZWZlcmVuY2Ugb2YgdGhlIGRlc3RpbmF0aW9uIGJ1ZmZlciBp cyB0YWtlbiBoZXJlLCBzbyB0aGF0CndlIGNhbiBiZSBhc3N1cmVkIHRoYXQgdGhlIGJ1ZmZlciBp cyBmcmVlZCB1cCBvbmx5IGFmdGVyIEdQVSBpcyBkb25lIHdpdGgKaXQsIGV2ZW4gaWYgdGhlIGxv Y2FsIHJlZmVyZW5jZSBvZiB0aGUgYnVmZmVyIGlzIHJlbGVhc2VkLgoKdjI6IENoYW5nZXMgKGFz IHN1Z2dlc3RlZCBieSBDaHJpcyk6CiAgICAtIFBhc3NpbmcgaW4gJ3JlcXVlc3QnIHN0cnVjdCBm b3IgZW1pdCByZXBvcnQgZnVuY3Rpb24KICAgIC0gUmVtb3ZlZCBtdWx0aXBsZSBjYWxscyB0byBp OTE1X2dlbV9vYmpfdG9fZ2d0dCgpLiBLZWVwaW5nIGhvbGQgb2YKICAgICAgcGlubmVkIHZtYSBm cm9tIHN0YXJ0IGFuZCB1c2luZyB3aGVuIHJlcXVpcmVkLgogICAgLSBCZXR0ZXIgbm9tZW5jbGF0 dXJlLCBhbmQgZXJyb3IgaGFuZGxpbmcuCgpTaWduZWQtb2ZmLWJ5OiBTb3VyYWIgR3VwdGEgPHNv dXJhYi5ndXB0YUBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYu aCAgICAgICAgICAgIHwgMTMgKysrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V4 ZWNidWZmZXIuYyB8ICA0ICsrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X29hX3BlcmYuYyAg ICAgICAgfCA4NyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIDMgZmlsZXMgY2hhbmdl ZCwgMTA0IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAppbmRleCBkMzU1Njkx Li41YzE1ZTMwIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCisr KyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKQEAgLTE2NjEsNiArMTY2MSwxMSBA QCBlbnVtIGk5MTVfb2FfZXZlbnRfc3RhdGUgewogCUk5MTVfT0FfRVZFTlRfU1RPUFBFRCwKIH07 CiAKK2VudW0gaTkxNV9wcm9maWxlX21vZGUgeworCUk5MTVfUFJPRklMRV9PQSA9IDAsCisJSTkx NV9QUk9GSUxFX01BWCwKK307CisKIHN0cnVjdCBpOTE1X29hX3Jjc19ub2RlIHsKIAlzdHJ1Y3Qg bGlzdF9oZWFkIGhlYWQ7CiAJc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXE7CkBAIC0x OTY2LDYgKzE5NzEsNyBAQCBzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSB7CiAJCXN0cnVjdCB7CiAJ CQlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqOwogCQkJdTMyIGd0dF9vZmZzZXQ7CisJ CQlzdHJ1Y3QgaTkxNV92bWEgKnZtYTsKIAkJCXU4ICphZGRyOwogCQkJaW50IGZvcm1hdDsKIAkJ CWludCBmb3JtYXRfc2l6ZTsKQEAgLTE5NzYsNiArMTk4Miw5IEBAIHN0cnVjdCBkcm1faTkxNV9w cml2YXRlIHsKIAkJc3RydWN0IHdvcmtfc3RydWN0IGZvcndhcmRfd29yazsKIAkJc3RydWN0IHdv cmtfc3RydWN0IGV2ZW50X2Rlc3Ryb3lfd29yazsKIAl9IG9hX3BtdTsKKworCXZvaWQgKCplbWl0 X3Byb2ZpbGluZ19kYXRhW0k5MTVfUFJPRklMRV9NQVhdKQorCQkoc3RydWN0IGRybV9pOTE1X2dl bV9yZXF1ZXN0ICpyZXEsIHUzMiBnbG9iYWxfY3R4X2lkKTsKICNlbmRpZgogCiAJLyogQWJzdHJh Y3QgdGhlIHN1Ym1pc3Npb24gbWVjaGFuaXNtIChsZWdhY3kgcmluZ2J1ZmZlciBvciBleGVjbGlz dHMpIGF3YXkgKi8KQEAgLTMxNTYsNiArMzE2NSw4IEBAIHZvaWQgaTkxNV9vYV9jb250ZXh0X3Bp bl9ub3RpZnkoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCQkJCXN0cnVjdCBp bnRlbF9jb250ZXh0ICpjb250ZXh0KTsKIHZvaWQgaTkxNV9vYV9jb250ZXh0X3VucGluX25vdGlm eShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJCQkJICBzdHJ1Y3QgaW50ZWxf Y29udGV4dCAqY29udGV4dCk7Cit2b2lkIGk5MTVfZW1pdF9wcm9maWxpbmdfZGF0YShzdHJ1Y3Qg ZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSwKKwkJCQl1MzIgZ2xvYmFsX2N0eF9pZCk7CiAjZWxz ZQogc3RhdGljIGlubGluZSB2b2lkCiBpOTE1X29hX2NvbnRleHRfcGluX25vdGlmeShzdHJ1Y3Qg ZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCkBAIC0zMTYzLDYgKzMxNzQsOCBAQCBpOTE1X29h X2NvbnRleHRfcGluX25vdGlmeShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiBz dGF0aWMgaW5saW5lIHZvaWQKIGk5MTVfb2FfY29udGV4dF91bnBpbl9ub3RpZnkoc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCQkJICAgICBzdHJ1Y3QgaW50ZWxfY29udGV4dCAq Y29udGV4dCkge30KK3ZvaWQgaTkxNV9lbWl0X3Byb2ZpbGluZ19kYXRhKHN0cnVjdCBkcm1faTkx NV9nZW1fcmVxdWVzdCAqcmVxLAorCQkJCXUzMiBnbG9iYWxfY3R4X2lkKSB7fTsKICNlbmRpZgog CiAvKiBpOTE1X2dlbV9ldmljdC5jICovCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2dlbV9leGVjYnVmZmVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9l eGVjYnVmZmVyLmMKaW5kZXggMzMzNmUxYy4uZTU4YjEwZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9nZW1fZXhlY2J1ZmZlci5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIuYwpAQCAtMTMxNyw2ICsxMzE3LDggQEAgaTkxNV9nZW1f cmluZ2J1ZmZlcl9zdWJtaXNzaW9uKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1f ZmlsZSAqZmlsZSwKIAkJCWdvdG8gZXJyb3I7CiAJfQogCisJaTkxNV9lbWl0X3Byb2ZpbGluZ19k YXRhKGludGVsX3JpbmdfZ2V0X3JlcXVlc3QocmluZyksIGN0eC0+Z2xvYmFsX2lkKTsKKwogCWV4 ZWNfbGVuID0gYXJncy0+YmF0Y2hfbGVuOwogCWlmIChjbGlwcmVjdHMpIHsKIAkJZm9yIChpID0g MDsgaSA8IGFyZ3MtPm51bV9jbGlwcmVjdHM7IGkrKykgewpAQCAtMTMzOSw2ICsxMzQxLDggQEAg aTkxNV9nZW1fcmluZ2J1ZmZlcl9zdWJtaXNzaW9uKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0 cnVjdCBkcm1fZmlsZSAqZmlsZSwKIAkJCXJldHVybiByZXQ7CiAJfQogCisJaTkxNV9lbWl0X3By b2ZpbGluZ19kYXRhKGludGVsX3JpbmdfZ2V0X3JlcXVlc3QocmluZyksIGN0eC0+Z2xvYmFsX2lk KTsKKwogCXRyYWNlX2k5MTVfZ2VtX3JpbmdfZGlzcGF0Y2goaW50ZWxfcmluZ19nZXRfcmVxdWVz dChyaW5nKSwgZGlzcGF0Y2hfZmxhZ3MpOwogCiAJaTkxNV9nZW1fZXhlY2J1ZmZlcl9tb3ZlX3Rv X2FjdGl2ZSh2bWFzLCByaW5nKTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfb2FfcGVyZi5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9vYV9wZXJmLmMKaW5kZXgg NTU0YTlmYS4uZTNiYzhlMCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9v YV9wZXJmLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9vYV9wZXJmLmMKQEAgLTI1 LDYgKzI1LDg2IEBAIHN0YXRpYyBpbnQgaHN3X3BlcmZfZm9ybWF0X3NpemVzW10gPSB7CiAJNjQg ICAvKiBDNF9COF9IU1cgKi8KIH07CiAKK3ZvaWQgaTkxNV9lbWl0X3Byb2ZpbGluZ19kYXRhKHN0 cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxLAorCQkJCXUzMiBnbG9iYWxfY3R4X2lkKQor eworCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcgPSByZXEtPnJpbmc7CisJc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gcmluZy0+ZGV2LT5kZXZfcHJpdmF0ZTsKKwlpbnQg aTsKKworCWZvciAoaSA9IEk5MTVfUFJPRklMRV9PQTsgaSA8IEk5MTVfUFJPRklMRV9NQVg7IGkr KykgeworCQlpZiAoZGV2X3ByaXYtPmVtaXRfcHJvZmlsaW5nX2RhdGFbaV0pCisJCQlkZXZfcHJp di0+ZW1pdF9wcm9maWxpbmdfZGF0YVtpXShyZXEsIGdsb2JhbF9jdHhfaWQpOworCX0KK30KKwor LyoKKyAqIEVtaXRzIHRoZSBjb21tYW5kcyB0byBjYXB0dXJlIE9BIHBlcmYgcmVwb3J0LCBpbnRv IHRoZSBSZW5kZXIgQ1MKKyAqLworc3RhdGljIHZvaWQgaTkxNV9vYV9lbWl0X3BlcmZfcmVwb3J0 KHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxLAorCQkJCXUzMiBnbG9iYWxfY3R4X2lk KQoreworCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcgPSByZXEtPnJpbmc7CisJc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gcmluZy0+ZGV2LT5kZXZfcHJpdmF0ZTsKKwlz dHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqID0gZGV2X3ByaXYtPm9hX3BtdS5vYV9yY3Nf YnVmZmVyLm9iajsKKwlzdHJ1Y3QgaTkxNV9vYV9yY3Nfbm9kZSAqZW50cnk7CisJdW5zaWduZWQg bG9uZyBsb2NrX2ZsYWdzOworCXUzMiBhZGRyID0gMDsKKwlpbnQgcmV0OworCisJLyogT0EgY291 bnRlcnMgYXJlIG9ubHkgc3VwcG9ydGVkIG9uIHRoZSByZW5kZXIgcmluZyAqLworCWlmIChyaW5n LT5pZCAhPSBSQ1MpCisJCXJldHVybjsKKworCWVudHJ5ID0ga3phbGxvYyhzaXplb2YoKmVudHJ5 KSwgR0ZQX0tFUk5FTCk7CisJaWYgKGVudHJ5ID09IE5VTEwpIHsKKwkJRFJNX0VSUk9SKCJhbGxv YyBmYWlsZWRcbiIpOworCQlyZXR1cm47CisJfQorCisJcmV0ID0gaW50ZWxfcmluZ19iZWdpbihy aW5nLCA0KTsKKwlpZiAocmV0KSB7CisJCWtmcmVlKGVudHJ5KTsKKwkJcmV0dXJuOworCX0KKwor CWVudHJ5LT5jdHhfaWQgPSBnbG9iYWxfY3R4X2lkOworCWk5MTVfZ2VtX3JlcXVlc3RfYXNzaWdu KCZlbnRyeS0+cmVxLCByaW5nLT5vdXRzdGFuZGluZ19sYXp5X3JlcXVlc3QpOworCisJc3Bpbl9s b2NrX2lycXNhdmUoJmRldl9wcml2LT5vYV9wbXUubG9jaywgbG9ja19mbGFncyk7CisJaWYgKGxp c3RfZW1wdHkoJmRldl9wcml2LT5vYV9wbXUubm9kZV9saXN0KSkKKwkJZW50cnktPm9mZnNldCA9 IDA7CisJZWxzZSB7CisJCXN0cnVjdCBpOTE1X29hX3Jjc19ub2RlICpsYXN0X2VudHJ5OworCQlp bnQgbWF4X29mZnNldCA9IGRldl9wcml2LT5vYV9wbXUub2FfcmNzX2J1ZmZlci5ub2RlX2NvdW50 ICoKKwkJCQlkZXZfcHJpdi0+b2FfcG11Lm9hX3Jjc19idWZmZXIubm9kZV9zaXplOworCisJCWxh c3RfZW50cnkgPSBsaXN0X2xhc3RfZW50cnkoJmRldl9wcml2LT5vYV9wbXUubm9kZV9saXN0LAor CQkJCQlzdHJ1Y3QgaTkxNV9vYV9yY3Nfbm9kZSwgaGVhZCk7CisJCWVudHJ5LT5vZmZzZXQgPSBs YXN0X2VudHJ5LT5vZmZzZXQgKworCQkJCWRldl9wcml2LT5vYV9wbXUub2FfcmNzX2J1ZmZlci5u b2RlX3NpemU7CisKKwkJaWYgKGVudHJ5LT5vZmZzZXQgPiBtYXhfb2Zmc2V0KQorCQkJZW50cnkt Pm9mZnNldCA9IDA7CisJfQorCWxpc3RfYWRkX3RhaWwoJmVudHJ5LT5oZWFkLCAmZGV2X3ByaXYt Pm9hX3BtdS5ub2RlX2xpc3QpOworCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJmRldl9wcml2LT5v YV9wbXUubG9jaywgbG9ja19mbGFncyk7CisKKwlhZGRyID0gZGV2X3ByaXYtPm9hX3BtdS5vYV9y Y3NfYnVmZmVyLmd0dF9vZmZzZXQgKyBlbnRyeS0+b2Zmc2V0OworCisJLyogYWRkciBzaG91bGQg YmUgNjQgYnl0ZSBhbGlnbmVkICovCisJQlVHX09OKGFkZHIgJiAweDNmKTsKKworCWludGVsX3Jp bmdfZW1pdChyaW5nLCBNSV9SRVBPUlRfUEVSRl9DT1VOVCB8ICgxPDwwKSk7CisJaW50ZWxfcmlu Z19lbWl0KHJpbmcsIGFkZHIgfCBNSV9SRVBPUlRfUEVSRl9DT1VOVF9HR1RUKTsKKwlpbnRlbF9y aW5nX2VtaXQocmluZywgcmluZy0+b3V0c3RhbmRpbmdfbGF6eV9yZXF1ZXN0LT5zZXFubyk7CisJ aW50ZWxfcmluZ19lbWl0KHJpbmcsIE1JX05PT1ApOworCWludGVsX3JpbmdfYWR2YW5jZShyaW5n KTsKKworCW9iai0+YmFzZS53cml0ZV9kb21haW4gPSBJOTE1X0dFTV9ET01BSU5fUkVOREVSOwor CWk5MTVfdm1hX21vdmVfdG9fYWN0aXZlKGRldl9wcml2LT5vYV9wbXUub2FfcmNzX2J1ZmZlci52 bWEsIHJpbmcpOworfQorCiBzdGF0aWMgdm9pZCBmb3J3YXJkX29uZV9vYV9zbmFwc2hvdF90b19l dmVudChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJCQkJCSAgICAgdTggKnNu YXBzaG90LAogCQkJCQkgICAgIHN0cnVjdCBwZXJmX2V2ZW50ICpldmVudCkKQEAgLTMyNCw2ICs0 MDQsNyBAQCBvYV9yY3NfYnVmZmVyX2Rlc3Ryb3koc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5 MTUpCiAJc3Bpbl9sb2NrKCZpOTE1LT5vYV9wbXUubG9jayk7CiAJaTkxNS0+b2FfcG11Lm9hX3Jj c19idWZmZXIub2JqID0gTlVMTDsKIAlpOTE1LT5vYV9wbXUub2FfcmNzX2J1ZmZlci5ndHRfb2Zm c2V0ID0gMDsKKwlpOTE1LT5vYV9wbXUub2FfcmNzX2J1ZmZlci52bWEgPSBOVUxMOwogCWk5MTUt Pm9hX3BtdS5vYV9yY3NfYnVmZmVyLmFkZHIgPSBOVUxMOwogCXNwaW5fdW5sb2NrKCZpOTE1LT5v YV9wbXUubG9jayk7CiB9CkBAIC01ODQsNiArNjY1LDcgQEAgc3RhdGljIGludCBpbml0X29hX3Jj c19idWZmZXIoc3RydWN0IHBlcmZfZXZlbnQgKmV2ZW50KQogCWRldl9wcml2LT5vYV9wbXUub2Ff cmNzX2J1ZmZlci5vYmogPSBibzsKIAlkZXZfcHJpdi0+b2FfcG11Lm9hX3Jjc19idWZmZXIuZ3R0 X29mZnNldCA9CiAJCQkJaTkxNV9nZW1fb2JqX2dndHRfb2Zmc2V0KGJvKTsKKwlkZXZfcHJpdi0+ b2FfcG11Lm9hX3Jjc19idWZmZXIudm1hID0gaTkxNV9nZW1fb2JqX3RvX2dndHQoYm8pOwogCWRl dl9wcml2LT5vYV9wbXUub2FfcmNzX2J1ZmZlci5hZGRyID0gdm1hcF9vYV9idWZmZXIoYm8pOwog CUlOSVRfTElTVF9IRUFEKCZkZXZfcHJpdi0+b2FfcG11Lm5vZGVfbGlzdCk7CiAKQEAgLTEwMDYs NiArMTA4OCwxMCBAQCBzdGF0aWMgdm9pZCBpOTE1X29hX2V2ZW50X3N0YXJ0KHN0cnVjdCBwZXJm X2V2ZW50ICpldmVudCwgaW50IGZsYWdzKQogCWRldl9wcml2LT5vYV9wbXUuZXZlbnRfc3RhdGUg PSBJOTE1X09BX0VWRU5UX1NUQVJURUQ7CiAJdXBkYXRlX29hY29udHJvbChkZXZfcHJpdik7CiAK KwlpZiAoZGV2X3ByaXYtPm9hX3BtdS5tdWx0aXBsZV9jdHhfbW9kZSkKKwkJZGV2X3ByaXYtPmVt aXRfcHJvZmlsaW5nX2RhdGFbSTkxNV9QUk9GSUxFX09BXSA9CisJCQkJaTkxNV9vYV9lbWl0X3Bl cmZfcmVwb3J0OworCiAJLyogUmVzZXQgdGhlIGhlYWQgcHRyIHRvIGVuc3VyZSB3ZSBkb24ndCBm b3J3YXJkIHJlcG9ydHMgcmVsYXRpbmcKIAkgKiB0byBhIHByZXZpb3VzIHBlcmYgZXZlbnQgKi8K IAlvYXN0YXR1czEgPSBJOTE1X1JFQUQoR0VON19PQVNUQVRVUzEpOwpAQCAtMTA0Miw2ICsxMTI4 LDcgQEAgc3RhdGljIHZvaWQgaTkxNV9vYV9ldmVudF9zdG9wKHN0cnVjdCBwZXJmX2V2ZW50ICpl dmVudCwgaW50IGZsYWdzKQogCiAJCXNwaW5fbG9ja19pcnFzYXZlKCZkZXZfcHJpdi0+b2FfcG11 LmxvY2ssIGxvY2tfZmxhZ3MpOwogCisJCWRldl9wcml2LT5lbWl0X3Byb2ZpbGluZ19kYXRhW0k5 MTVfUFJPRklMRV9PQV0gPSBOVUxMOwogCQlkZXZfcHJpdi0+b2FfcG11LmV2ZW50X3N0YXRlID0g STkxNV9PQV9FVkVOVF9TVE9QX0lOX1BST0dSRVNTOwogCQlsaXN0X2Zvcl9lYWNoX2VudHJ5KGVu dHJ5LCAmZGV2X3ByaXYtPm9hX3BtdS5ub2RlX2xpc3QsIGhlYWQpCiAJCQllbnRyeS0+ZGlzY2Fy ZCA9IHRydWU7Ci0tIAoxLjguNS4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2ludGVsLWdmeAo=