From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [PATCH v3] drm/i915/tracing: Enable user interrupts while intel_engine_notify is active Date: Thu, 9 Aug 2018 10:07:51 +0100 Message-ID: <20180809090751.24001-1-tvrtko.ursulin@linux.intel.com> References: <153374247359.16501.13991783434037634639@skylake-alporthouse-com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wr1-x436.google.com (mail-wr1-x436.google.com [IPv6:2a00:1450:4864:20::436]) by gabe.freedesktop.org (Postfix) with ESMTPS id 023586E6B8 for ; Thu, 9 Aug 2018 09:07:59 +0000 (UTC) Received: by mail-wr1-x436.google.com with SMTP id g6-v6so4498814wrp.0 for ; Thu, 09 Aug 2018 02:07:59 -0700 (PDT) In-Reply-To: <153374247359.16501.13991783434037634639@skylake-alporthouse-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 List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCktlZXAgdGhl IHVzZXIgaW50ZXJydXB0IGVuYWJsZWQgYW5kIGVtaXQgaW50ZWxfZW5naW5lX25vdGlmeSB0cmFj ZXBvaW50CmV2ZXJ5IHRpbWUgYXMgbG9uZyBhcyBpdCBpcyBlbmFibGVkLiBQcmVtaXNlIGlzIHRo YXQgaWYgc29tZW9uZSBpcwpsaXN0ZW5pbmcsIHRoZXkgd2FudCB0byBzZWUgaW50ZXJydXB0cyBs b2dnZWQuCgpXZSB1c2UgdHJhY2Vwb2ludCAoZGUpcmVnaXN0cmF0aW9uIGNhbGxiYWNrcyB0byBl bmFibGUgdXNlciBpbnRlcnJ1cHRzIG9uCmFsbCBkZXZpY2VzIChmdXR1cmUgcHJvb2ZpbmcgYW5k IGF2b2lkaW5nIHVnbHkgZ2xvYmFsIHBvaW50ZXJzKSBhbmQgYWxsCmVuZ2luZXMuIEFuZCBpbiB0 aGUgdXNlciBpbnRlcnJ1cHQgaGFuZGxlciB3ZSBtYWtlIHN1cmUKdHJhY2VfaW50ZWxfZW5naW5l X25vdGlmeSBpcyBjYWxsZWQgZXZlbiB3aGVuIHRoZXJlIGFyZSBubyB3YWl0ZXJzLgoKdjI6CiAq IEltcHJvdmUgbWFrZWZpbGUuIChDaHJpcyBXaWxzb24pCiAqIFNpbXBsaWZ5IGJ5IGRyb3BwaW5n IHRoZSBwb2ludGVsZXNzIGdsb2JhbCBkcml2ZXIgbGlzdC4gKENocmlzIFdpbHNvbikKICogRW1p dCB0cmFjZXBvaW50IHdoZW4gdGhlcmUgYXJlIG5vIHdhaXRlcnMsIG5vdCBqdXN0IHRoZSB1c2Vy IGludGVycnVwdC4KICogQ29tbWl0IG1lc3NhZ2UgdGlkeS4KCnYzOgogKiBGYXZvdXIgb25lIHJl dHVybiBmcm9tIG5vdGlmeV9yaW5nLgogQ2hyaXMgV2lsc29uOgogKiBSZXdvcmQgY29tbWl0IG1l c3NhZ2UgYSBiaXQgZm9yIGNsYXJpdHkuCiAqIEFkZCBSUE0gcmVmZXJlbmNlcyB0byBkcml2ZXIg KHVuKXJlZ2lzdHJhdGlvbiBwYXRocy4KICogUmVuYW1lIGxpc3QgbGluayBtZW1iZXIuCiAqIEhh bmRsZSAhQ09ORklHX1RSQUNFUE9JTlRTIGluIHRoZSBoZWFkZXIuCgpTaWduZWQtb2ZmLWJ5OiBU dnJ0a28gVXJzdWxpbiA8dHZydGtvLnVyc3VsaW5AaW50ZWwuY29tPgpDYzogQ2hyaXMgV2lsc29u IDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+CkNjOiBEbWl0cnkgUm9nb3poa2luIDxkbWl0cnku di5yb2dvemhraW5AaW50ZWwuY29tPgpDYzogSm9obiBIYXJyaXNvbiA8Sm9obi5DLkhhcnJpc29u QGludGVsLmNvbT4KQ2M6IHN2ZXRsYW5hLmt1a2Fub3ZhQGludGVsLmNvbQpSZXZpZXdlZC1ieTog Q2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+Ci0tLQogZHJpdmVycy9ncHUv ZHJtL2k5MTUvTWFrZWZpbGUgICAgICAgfCAgIDMgKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9kcnYuYyAgICAgfCAgIDUgKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggICAg IHwgICAyICsKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfaXJxLmMgICAgIHwgICA1ICstCiBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3RyYWNlLmggICB8ICA1MCArKysrKysrLS0tLS0tLQog ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV90cmFjaW5nLmMgfCAxMDAgKysrKysrKysrKysrKysr KysrKysrKysrKysrKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV90cmFjaW5nLmggfCAgMjkg KysrKysrKysKIDcgZmlsZXMgY2hhbmdlZCwgMTY5IGluc2VydGlvbnMoKyksIDI1IGRlbGV0aW9u cygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfdHJhY2lu Zy5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV90cmFjaW5n LmgKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9NYWtlZmlsZSBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L01ha2VmaWxlCmluZGV4IDU3OTRmMTAyZjliOC4uZGZjOTQwYjMyMDc4IDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9NYWtlZmlsZQorKysgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9NYWtlZmlsZQpAQCAtMTgyLDYgKzE4Miw5IEBAIGk5MTUteSArPSBpOTE1X3Bl cmYubyBcCiAJICBpOTE1X29hX2NubC5vIFwKIAkgIGk5MTVfb2FfaWNsLm8KIAorIyB0cmFjaW5n CitpOTE1LSQoQ09ORklHX1RSQUNFUE9JTlRTKSArPSBpOTE1X3RyYWNpbmcubworCiBpZmVxICgk KENPTkZJR19EUk1fSTkxNV9HVlQpLHkpCiBpOTE1LXkgKz0gaW50ZWxfZ3Z0Lm8KIGluY2x1ZGUg JChzcmMpL2d2dC9NYWtlZmlsZQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9kcnYuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMKaW5kZXggOWRjZTU1MTgy YzNhLi4wM2UyMjRlYmMyOGMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf ZHJ2LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuYwpAQCAtMTI4MSw2ICsx MjgxLDkgQEAgc3RhdGljIHZvaWQgaTkxNV9kcml2ZXJfcmVnaXN0ZXIoc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2KQogCSAqLwogCWlmIChJTlRFTF9JTkZPKGRldl9wcml2KS0+bnVt X3BpcGVzKQogCQlkcm1fa21zX2hlbHBlcl9wb2xsX2luaXQoZGV2KTsKKworCS8qIE5vdGlmeSBv dXIgdHJhY2Vwb2ludHMgZHJpdmVyIGhhcyBiZWVuIHJlZ2lzdGVyZWQuICovCisJaTkxNV90cmFj aW5nX3JlZ2lzdGVyKGRldl9wcml2KTsKIH0KIAogLyoqCkBAIC0xMjkyLDYgKzEyOTUsOCBAQCBz dGF0aWMgdm9pZCBpOTE1X2RyaXZlcl91bnJlZ2lzdGVyKHN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICpkZXZfcHJpdikKIAlpbnRlbF9mYmRldl91bnJlZ2lzdGVyKGRldl9wcml2KTsKIAlpbnRlbF9h dWRpb19kZWluaXQoZGV2X3ByaXYpOwogCisJaTkxNV90cmFjaW5nX3VucmVnaXN0ZXIoZGV2X3By aXYpOworCiAJLyoKIAkgKiBBZnRlciBmbHVzaGluZyB0aGUgZmJkZXYgKGluY2wuIGEgbGF0ZSBh c3luYyBjb25maWcgd2hpY2ggd2lsbAogCSAqIGhhdmUgZGVsYXllZCBxdWV1aW5nIG9mIGEgaG90 cGx1ZyBldmVudCksIHRoZW4gZmx1c2ggdGhlIGhvdHBsdWcKZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5o CmluZGV4IDBiMTBhMzBiN2Q5Ni4uMDBkOWU5ZjY1NzM5IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2 LmgKQEAgLTIxNDEsNiArMjE0MSw4IEBAIHN0cnVjdCBkcm1faTkxNV9wcml2YXRlIHsKIAogCXN0 cnVjdCBpOTE1X3BtdSBwbXU7CiAKKwlzdHJ1Y3QgbGlzdF9oZWFkIHRyYWNpbmdfbGluazsKKwog CS8qCiAJICogTk9URTogVGhpcyBpcyB0aGUgZHJpMS91bXMgZHVuZ2VvbiwgZG9uJ3QgYWRkIHN0 dWZmIGhlcmUuIFlvdXIgcGF0Y2gKIAkgKiB3aWxsIGJlIHJlamVjdGVkLiBJbnN0ZWFkIGxvb2sg Zm9yIGEgYmV0dGVyIHBsYWNlLgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9pcnEuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfaXJxLmMKaW5kZXggODA4NGUzNWIy NWM1Li4wZjAwN2E0NjI0OWUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf aXJxLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9pcnEuYwpAQCAtMTE1NywxMCAr MTE1NywxMCBAQCBzdGF0aWMgdm9pZCBub3RpZnlfcmluZyhzdHJ1Y3QgaW50ZWxfZW5naW5lX2Nz ICplbmdpbmUpCiAJY29uc3QgdTMyIHNlcW5vID0gaW50ZWxfZW5naW5lX2dldF9zZXFubyhlbmdp bmUpOwogCXN0cnVjdCBpOTE1X3JlcXVlc3QgKnJxID0gTlVMTDsKIAlzdHJ1Y3QgdGFza19zdHJ1 Y3QgKnRzayA9IE5VTEw7Ci0Jc3RydWN0IGludGVsX3dhaXQgKndhaXQ7CisJc3RydWN0IGludGVs X3dhaXQgKndhaXQgPSBOVUxMOwogCiAJaWYgKHVubGlrZWx5KCFlbmdpbmUtPmJyZWFkY3J1bWJz LmlycV9hcm1lZCkpCi0JCXJldHVybjsKKwkJZ290byBvdXQ7CiAKIAlyY3VfcmVhZF9sb2NrKCk7 CiAKQEAgLTEyMTksNiArMTIxOSw3IEBAIHN0YXRpYyB2b2lkIG5vdGlmeV9yaW5nKHN0cnVjdCBp bnRlbF9lbmdpbmVfY3MgKmVuZ2luZSkKIAogCXJjdV9yZWFkX3VubG9jaygpOwogCitvdXQ6CiAJ dHJhY2VfaW50ZWxfZW5naW5lX25vdGlmeShlbmdpbmUsIHdhaXQpOwogfQogCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3RyYWNlLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X3RyYWNlLmgKaW5kZXggYjUwYzZiODI5NzE1Li4yMTJlN2ZjMWU4MGUgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfdHJhY2UuaAorKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X3RyYWNlLmgKQEAgLTgsNiArOCw3IEBACiAKICNpbmNsdWRlIDxkcm0vZHJt UC5oPgogI2luY2x1ZGUgImk5MTVfZHJ2LmgiCisjaW5jbHVkZSAiaTkxNV90cmFjaW5nLmgiCiAj aW5jbHVkZSAiaW50ZWxfZHJ2LmgiCiAjaW5jbHVkZSAiaW50ZWxfcmluZ2J1ZmZlci5oIgogCkBA IC03ODAsMjkgKzc4MSwzMiBAQCB0cmFjZV9pOTE1X3JlcXVlc3Rfb3V0KHN0cnVjdCBpOTE1X3Jl cXVlc3QgKnJxKQogI2VuZGlmCiAjZW5kaWYKIAotVFJBQ0VfRVZFTlQoaW50ZWxfZW5naW5lX25v dGlmeSwKLQkgICAgVFBfUFJPVE8oc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lLCBib29s IHdhaXRlcnMpLAotCSAgICBUUF9BUkdTKGVuZ2luZSwgd2FpdGVycyksCi0KLQkgICAgVFBfU1RS VUNUX19lbnRyeSgKLQkJCSAgICAgX19maWVsZCh1MzIsIGRldikKLQkJCSAgICAgX19maWVsZCh1 MTYsIGNsYXNzKQotCQkJICAgICBfX2ZpZWxkKHUxNiwgaW5zdGFuY2UpCi0JCQkgICAgIF9fZmll bGQodTMyLCBzZXFubykKLQkJCSAgICAgX19maWVsZChib29sLCB3YWl0ZXJzKQotCQkJICAgICAp LAotCi0JICAgIFRQX2Zhc3RfYXNzaWduKAotCQkJICAgX19lbnRyeS0+ZGV2ID0gZW5naW5lLT5p OTE1LT5kcm0ucHJpbWFyeS0+aW5kZXg7Ci0JCQkgICBfX2VudHJ5LT5jbGFzcyA9IGVuZ2luZS0+ dWFiaV9jbGFzczsKLQkJCSAgIF9fZW50cnktPmluc3RhbmNlID0gZW5naW5lLT5pbnN0YW5jZTsK LQkJCSAgIF9fZW50cnktPnNlcW5vID0gaW50ZWxfZW5naW5lX2dldF9zZXFubyhlbmdpbmUpOwot CQkJICAgX19lbnRyeS0+d2FpdGVycyA9IHdhaXRlcnM7Ci0JCQkgICApLAotCi0JICAgIFRQX3By aW50aygiZGV2PSV1LCBlbmdpbmU9JXU6JXUsIHNlcW5vPSV1LCB3YWl0ZXJzPSV1IiwKLQkJICAg ICAgX19lbnRyeS0+ZGV2LCBfX2VudHJ5LT5jbGFzcywgX19lbnRyeS0+aW5zdGFuY2UsCi0JCSAg ICAgIF9fZW50cnktPnNlcW5vLCBfX2VudHJ5LT53YWl0ZXJzKQorVFJBQ0VfRVZFTlRfRk4oaW50 ZWxfZW5naW5lX25vdGlmeSwKKwkgICAgICAgVFBfUFJPVE8oc3RydWN0IGludGVsX2VuZ2luZV9j cyAqZW5naW5lLCBib29sIHdhaXRlcnMpLAorCSAgICAgICBUUF9BUkdTKGVuZ2luZSwgd2FpdGVy cyksCisKKwkgICAgICAgVFBfU1RSVUNUX19lbnRyeSgKKwkJCSAgICAgICAgX19maWVsZCh1MzIs IGRldikKKwkJCSAgICAgICAgX19maWVsZCh1MTYsIGNsYXNzKQorCQkJICAgICAgICBfX2ZpZWxk KHUxNiwgaW5zdGFuY2UpCisJCQkgICAgICAgIF9fZmllbGQodTMyLCBzZXFubykKKwkJCSAgICAg ICAgX19maWVsZChib29sLCB3YWl0ZXJzKQorCQkJICAgICAgICApLAorCisJICAgICAgIFRQX2Zh c3RfYXNzaWduKAorCQkJICAgICAgX19lbnRyeS0+ZGV2ID0gZW5naW5lLT5pOTE1LT5kcm0ucHJp bWFyeS0+aW5kZXg7CisJCQkgICAgICBfX2VudHJ5LT5jbGFzcyA9IGVuZ2luZS0+dWFiaV9jbGFz czsKKwkJCSAgICAgIF9fZW50cnktPmluc3RhbmNlID0gZW5naW5lLT5pbnN0YW5jZTsKKwkJCSAg ICAgIF9fZW50cnktPnNlcW5vID0gaW50ZWxfZW5naW5lX2dldF9zZXFubyhlbmdpbmUpOworCQkJ ICAgICAgX19lbnRyeS0+d2FpdGVycyA9IHdhaXRlcnM7CisJCQkgICAgICApLAorCisJICAgICAg IFRQX3ByaW50aygiZGV2PSV1LCBlbmdpbmU9JXU6JXUsIHNlcW5vPSV1LCB3YWl0ZXJzPSV1IiwK KwkJCSBfX2VudHJ5LT5kZXYsIF9fZW50cnktPmNsYXNzLCBfX2VudHJ5LT5pbnN0YW5jZSwKKwkJ CSBfX2VudHJ5LT5zZXFubywgX19lbnRyeS0+d2FpdGVycyksCisKKwkgICAgICAgaW50ZWxfZW5n aW5lX25vdGlmeV90cmFjZXBvaW50X3JlZ2lzdGVyLAorCSAgICAgICBpbnRlbF9lbmdpbmVfbm90 aWZ5X3RyYWNlcG9pbnRfdW5yZWdpc3RlcgogKTsKIAogREVGSU5FX0VWRU5UKGk5MTVfcmVxdWVz dCwgaTkxNV9yZXF1ZXN0X3JldGlyZSwKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfdHJhY2luZy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV90cmFjaW5nLmMKbmV3 IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi42NTA3NGYwZmNmOTUKLS0tIC9k ZXYvbnVsbAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3RyYWNpbmcuYwpAQCAtMCww ICsxLDEwMCBAQAorLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQTC0yLjAKKy8qCisgKiBD b3B5cmlnaHQgwqkgMjAxOCBJbnRlbCBDb3Jwb3JhdGlvbgorICoKKyAqLworCisjaW5jbHVkZSAi aTkxNV90cmFjaW5nLmgiCisKKyNpbmNsdWRlICJpOTE1X2Rydi5oIgorI2luY2x1ZGUgImludGVs X3JpbmdidWZmZXIuaCIKKworc3RhdGljIERFRklORV9NVVRFWChkcml2ZXJfbGlzdF9sb2NrKTsK K3N0YXRpYyBMSVNUX0hFQUQoZHJpdmVyX2xpc3QpOworc3RhdGljIGJvb2wgbm90aWZ5X2VuYWJs ZWQ7CisKK3N0YXRpYyB2b2lkIF9faTkxNV9lbmFibGVfbm90aWZ5KHN0cnVjdCBkcm1faTkxNV9w cml2YXRlICppOTE1KQoreworCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZTsKKwllbnVt IGludGVsX2VuZ2luZV9pZCBpZDsKKworCWludGVsX3J1bnRpbWVfcG1fZ2V0KGk5MTUpOworCisJ Zm9yX2VhY2hfZW5naW5lKGVuZ2luZSwgaTkxNSwgaWQpCisJCWludGVsX2VuZ2luZV9waW5fYnJl YWRjcnVtYnNfaXJxKGVuZ2luZSk7CisKKwlpbnRlbF9ydW50aW1lX3BtX3B1dChpOTE1KTsKK30K Kworc3RhdGljIHZvaWQgX19pOTE1X2Rpc2FibGVfbm90aWZ5KHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICppOTE1KQoreworCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZTsKKwllbnVtIGlu dGVsX2VuZ2luZV9pZCBpZDsKKworCWludGVsX3J1bnRpbWVfcG1fZ2V0KGk5MTUpOworCisJZm9y X2VhY2hfZW5naW5lKGVuZ2luZSwgaTkxNSwgaWQpCisJCWludGVsX2VuZ2luZV91bnBpbl9icmVh ZGNydW1ic19pcnEoZW5naW5lKTsKKworCWludGVsX3J1bnRpbWVfcG1fcHV0KGk5MTUpOworfQor Cit2b2lkIGk5MTVfdHJhY2luZ19yZWdpc3RlcihzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkx NSkKK3sKKwlJTklUX0xJU1RfSEVBRCgmaTkxNS0+dHJhY2luZ19saW5rKTsKKworCW11dGV4X2xv Y2soJmRyaXZlcl9saXN0X2xvY2spOworCisJbGlzdF9hZGRfdGFpbCgmaTkxNS0+dHJhY2luZ19s aW5rLCAmZHJpdmVyX2xpc3QpOworCisJaWYgKG5vdGlmeV9lbmFibGVkKQorCQlfX2k5MTVfZW5h YmxlX25vdGlmeShpOTE1KTsKKworCW11dGV4X3VubG9jaygmZHJpdmVyX2xpc3RfbG9jayk7Cit9 CisKK3ZvaWQgaTkxNV90cmFjaW5nX3VucmVnaXN0ZXIoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg Kmk5MTUpCit7CisJbXV0ZXhfbG9jaygmZHJpdmVyX2xpc3RfbG9jayk7CisKKwlpZiAobm90aWZ5 X2VuYWJsZWQpCisJCV9faTkxNV9kaXNhYmxlX25vdGlmeShpOTE1KTsKKworCWxpc3RfZGVsKCZp OTE1LT50cmFjaW5nX2xpbmspOworCisJbXV0ZXhfdW5sb2NrKCZkcml2ZXJfbGlzdF9sb2NrKTsK K30KKworaW50IGludGVsX2VuZ2luZV9ub3RpZnlfdHJhY2Vwb2ludF9yZWdpc3Rlcih2b2lkKQor eworCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1OworCisJbXV0ZXhfbG9jaygmZHJpdmVy X2xpc3RfbG9jayk7CisKKwlHRU1fQlVHX09OKG5vdGlmeV9lbmFibGVkKTsKKworCWxpc3RfZm9y X2VhY2hfZW50cnkoaTkxNSwgJmRyaXZlcl9saXN0LCB0cmFjaW5nX2xpbmspCisJCV9faTkxNV9l bmFibGVfbm90aWZ5KGk5MTUpOworCisJbm90aWZ5X2VuYWJsZWQgPSB0cnVlOworCisJbXV0ZXhf dW5sb2NrKCZkcml2ZXJfbGlzdF9sb2NrKTsKKworCXJldHVybiAwOworfQorCit2b2lkIGludGVs X2VuZ2luZV9ub3RpZnlfdHJhY2Vwb2ludF91bnJlZ2lzdGVyKHZvaWQpCit7CisJc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmk5MTU7CisKKwltdXRleF9sb2NrKCZkcml2ZXJfbGlzdF9sb2NrKTsK KworCUdFTV9CVUdfT04oIW5vdGlmeV9lbmFibGVkKTsKKworCWxpc3RfZm9yX2VhY2hfZW50cnko aTkxNSwgJmRyaXZlcl9saXN0LCB0cmFjaW5nX2xpbmspCisJCV9faTkxNV9kaXNhYmxlX25vdGlm eShpOTE1KTsKKworCW5vdGlmeV9lbmFibGVkID0gZmFsc2U7CisKKwltdXRleF91bmxvY2soJmRy aXZlcl9saXN0X2xvY2spOworfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV90cmFjaW5nLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3RyYWNpbmcuaApuZXcgZmls ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLjRkODcxMGY1Njg3YgotLS0gL2Rldi9u dWxsCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfdHJhY2luZy5oCkBAIC0wLDAgKzEs MjkgQEAKKy8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBHUEwtMi4wCisvKgorICogQ29weXJp Z2h0IMKpIDIwMTggSW50ZWwgQ29ycG9yYXRpb24KKyAqCisgKi8KKyNpZm5kZWYgX0k5MTVfVFJB Q0lOR19IXworI2RlZmluZSBfSTkxNV9UUkFDSU5HX0hfCisKKyNpZiBJU19FTkFCTEVEKENPTkZJ R19UUkFDRVBPSU5UUykKKworI2luY2x1ZGUgImk5MTVfZHJ2LmgiCisKK3ZvaWQgaTkxNV90cmFj aW5nX3JlZ2lzdGVyKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1KTsKK3ZvaWQgaTkxNV90 cmFjaW5nX3VucmVnaXN0ZXIoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUpOworCitpbnQg aW50ZWxfZW5naW5lX25vdGlmeV90cmFjZXBvaW50X3JlZ2lzdGVyKHZvaWQpOwordm9pZCBpbnRl bF9lbmdpbmVfbm90aWZ5X3RyYWNlcG9pbnRfdW5yZWdpc3Rlcih2b2lkKTsKKworI2Vsc2UKKwor c3RhdGljIGlubGluZSB2b2lkIGk5MTVfdHJhY2luZ19yZWdpc3RlcihzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqaTkxNSkgeyB9CitzdGF0aWMgaW5saW5lIHZvaWQgaTkxNV90cmFjaW5nX3VucmVn aXN0ZXIoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUpIHsgfQorCitzdGF0aWMgaW5saW5l IGludCBpbnRlbF9lbmdpbmVfbm90aWZ5X3RyYWNlcG9pbnRfcmVnaXN0ZXIodm9pZCkgeyB9Citz dGF0aWMgaW5saW5lIHZvaWQgaW50ZWxfZW5naW5lX25vdGlmeV90cmFjZXBvaW50X3VucmVnaXN0 ZXIodm9pZCkgeyB9CisKKyNlbmRpZgorCisjZW5kaWYKLS0gCjIuMTcuMQoKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlz dApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0 b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==