From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [PATCH v11] drm/i915: Engine discovery query Date: Wed, 1 May 2019 11:52:28 +0100 Message-ID: <20190501105228.24579-1-tvrtko.ursulin@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by gabe.freedesktop.org (Postfix) with ESMTPS id 772BF89232 for ; Wed, 1 May 2019 10:52:58 +0000 (UTC) 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 RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCkVuZ2luZSBk aXNjb3ZlcnkgcXVlcnkgYWxsb3dzIHVzZXJzcGFjZSB0byBlbnVtZXJhdGUgZW5naW5lcywgcHJv YmUgdGhlaXIKY29uZmlndXJhdGlvbiBmZWF0dXJlcywgYWxsIHdpdGhvdXQgbmVlZGluZyB0byBt YWludGFpbiB0aGUgaW50ZXJuYWwgUENJCklEIGJhc2VkIGRhdGFiYXNlLgoKQSBuZXcgcXVlcnkg Zm9yIHRoZSBnZW5lcmljIGk5MTUgcXVlcnkgaW9jdGwgaXMgYWRkZWQgbmFtZWQKRFJNX0k5MTVf UVVFUllfRU5HSU5FX0lORk8sIHRvZ2V0aGVyIHdpdGggYWNjb21wYW55aW5nIHN0cnVjdHVyZQpk cm1faTkxNV9xdWVyeV9lbmdpbmVfaW5mby4gVGhlIGFkZHJlc3Mgb2YgbGF0dGVyIHNob3VsZCBi ZSBwYXNzZWQgdG8gdGhlCmtlcm5lbCBpbiB0aGUgcXVlcnkuZGF0YV9wdHIgZmllbGQsIGFuZCBz aG91bGQgYmUgbGFyZ2UgZW5vdWdoIGZvciB0aGUKa2VybmVsIHRvIGZpbGwgb3V0IGFsbCBrbm93 biBlbmdpbmVzIGFzIHN0cnVjdCBkcm1faTkxNV9lbmdpbmVfaW5mbwplbGVtZW50cyB0cmFpbGlu ZyB0aGUgcXVlcnkuCgpBcyB3aXRoIG90aGVyIHF1ZXJpZXMsIHNldHRpbmcgdGhlIGl0ZW0gcXVl cnkgbGVuZ3RoIHRvIHplcm8gYWxsb3dzCnVzZXJzcGFjZSB0byBxdWVyeSBtaW5pbXVtIHJlcXVp cmVkIGJ1ZmZlciBzaXplLgoKRW51bWVyYXRlZCBlbmdpbmVzIGhhdmUgY29tbW9uIHR5cGUgbWFz ayB3aGljaCBjYW4gYmUgdXNlZCB0byBxdWVyeSBhbGwKaGFyZHdhcmUgZW5naW5lcywgdmVyc3Vz IGVuZ2luZXMgdXNlcnNwYWNlIGNhbiBzdWJtaXQgdG8gdXNpbmcgdGhlIGV4ZWNidWYKdUFQSS4K CkVuZ2luZXMgYWxzbyBoYXZlIGNhcGFiaWxpdGllcyB3aGljaCBhcmUgcGVyIGVuZ2luZSBjbGFz cyBuYW1lc3BhY2Ugb2YKYml0cyBkZXNjcmliaW5nIGZlYXR1cmVzIG5vdCBwcmVzZW50IG9uIGFs bCBlbmdpbmUgaW5zdGFuY2VzLgoKdjI6CiAqIEZpeGVkIEhFVkMgYXNzaWdubWVudC4KICogUmVv cmRlciBzb21lIGZpZWxkcywgcmVuYW1lIHR5cGUgdG8gZmxhZ3MsIGluY3JlYXNlIHdpZHRoLiAo TGlvbmVsKQogKiBObyBuZWVkIHRvIGFsbG9jYXRlIHRlbXBvcmFyeSBzdG9yYWdlIGlmIHdlIGRv IGl0IGVuZ2luZSBieSBlbmdpbmUuCiAgIChMaW9uZWwpCgp2MzoKICogRGVzY3JpYmUgZW5naW5l IGZsYWdzIGFuZCBtYXJrIG1ieiBmaWVsZHMuIChMaW9uZWwpCiAqIEhFVkMgb25seSBhcHBsaWVz IHRvIFZDUy4KCnY0OgogKiBTcXVhc2ggU0ZDIGZsYWcgaW50byBtYWluIHBhdGNoLgogKiBUaWR5 IHNvbWUgY29tbWVudHMuCgp2NToKICogQWRkIHVhYmlfIHByZWZpeCB0byBlbmdpbmUgY2FwYWJp bGl0aWVzLiAoQ2hyaXMgV2lsc29uKQogKiBSZXBvcnQgZXhhY3Qgc2l6ZSBvZiBlbmdpbmUgaW5m byBhcnJheS4gKENocmlzIFdpbHNvbikKICogRHJvcCB0aGUgZW5naW5lIGZsYWdzLiAoSm9vbmFz IExhaHRpbmVuKQogKiBBZGRlZCBzb21lIG1vcmUgcmVzZXJ2ZWQgZmllbGRzLgogKiBNb3ZlIGZs YWdzIGFmdGVyIGNsYXNzL2luc3RhbmNlLgoKdjY6CiAqIERvIG5vdCBjaGVjayBlbmdpbmUgaW5m byBhcnJheSB3YXMgemVyb2VkIGJ5IHVzZXJzcGFjZSBidXQgemVybyB0aGUKICAgdW51c2VkIGZp ZWxkcyBmb3IgdGhlbSBpbnN0ZWFkLgoKdjc6CiAqIFNpbXBsaWZ5IGxlbmd0aCBjYWxjdWxhdGlv biBsb29wLiAoTGlvbmVsIExhbmR3ZXJsaW4pCgp2ODoKICogUmVtb3ZlIE1CWiBjb21tZW50cyB3 aGVyZSBub3QgYXBwbGljYWJsZS4KICogUmVuYW1lIEFCSSBmbGFncyB0byBtYXRjaCBlbmdpbmUg Y2xhc3MgZGVmaW5lIG5hbWluZy4KICogUmVuYW1lIFNGQyBBQkkgZmxhZyB0byByZWZsZWN0IGl0 IGFwcGxpZXMgdG8gVkNTIGFuZCBWRUNTLgogKiBTRkMgaXMgd2lyZWQgdG8gZXZlbiBfbG9naWNh bF8gZW5naW5lIGluc3RhbmNlcy4KICogU0ZDIGFwcGxpZXMgdG8gVkNTIGFuZCBWRUNTLgogKiBI RVZDIGlzIHByZXNlbnQgb24gYWxsIGluc3RhbmNlcyBvbiBHZW4xMS4gKFRvbnkpCiAqIFNpbXBs aWZ5IGxlbmd0aCBjYWxjdWxhdGlvbiBldmVuIG1vcmUuIChDaHJpcyBXaWxzb24pCiAqIE1vdmUg aW5mb19wdHIgYXNzaWdtZW50IGNsb3NlciB0byBsb29wIGZvciBjbGFyaXR5LiAoQ2hyaXMgV2ls c29uKQogKiBVc2UgdmRib3hfc2ZjX2FjY2VzcyBmcm9tIHJ1bnRpbWUgaW5mby4KICogUmViYXNl IGZvciBSVU5USU1FX0lORk8uCiAqIFJlZmFjdG9yIGZvciBsb3dlciBpbmRlbnRhdGlvbi4KICog UmVuYW1lIHVBUEkgY2xhc3MvaW5zdGFuY2UgdG8gZW5naW5lX2NsYXNzL2luc3RhbmNlIHRvIGF2 b2lkIEMrKwogICBrZXl3b3JkLgoKdjk6CiAqIFJlYmFzZSBmb3Igcy9udW1fcmluZ3MvbnVtX2Vu Z2luZXMvIGluIFJVTlRJTUVfSU5GTy4KCnYxMDoKICogVXNlIG5ldyBjb3B5X3F1ZXJ5X2l0ZW0u Cgp2MTE6CiAqIENvbnNvbGlkYXRlIHdpdGggc3RydWN0IGk5MTVfZW5naW5lX2NsYXNzX2luc3Ru YWNlLgoKU2lnbmVkLW9mZi1ieTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVs LmNvbT4KQ2M6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgpDYzogSm9u IEJsb29tZmllbGQgPGpvbi5ibG9vbWZpZWxkQGludGVsLmNvbT4KQ2M6IERtaXRyeSBSb2dvemhr aW4gPGRtaXRyeS52LnJvZ296aGtpbkBpbnRlbC5jb20+CkNjOiBMaW9uZWwgTGFuZHdlcmxpbiA8 bGlvbmVsLmcubGFuZHdlcmxpbkBpbnRlbC5jb20+CkNjOiBKb29uYXMgTGFodGluZW4gPGpvb25h cy5sYWh0aW5lbkBsaW51eC5pbnRlbC5jb20+CkNjOiBUb255IFllIDx0b255LnllQGludGVsLmNv bT4KUmV2aWV3ZWQtYnk6IExpb25lbCBMYW5kd2VybGluIDxsaW9uZWwuZy5sYW5kd2VybGluQGlu dGVsLmNvbT4gIyB2NwpSZXZpZXdlZC1ieTogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxz b24uY28udWs+ICMgdjcKLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9lbmdpbmVf Y3MuYyAgICB8IDQxICsrKysrKysrKysrKysrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2lu dGVsX2VuZ2luZV90eXBlcy5oIHwgIDIgKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9xdWVy eS5jICAgICAgICAgICAgfCA0OSArKysrKysrKysrKysrKysrKysrKwogaW5jbHVkZS91YXBpL2Ry bS9pOTE1X2RybS5oICAgICAgICAgICAgICAgICAgfCA0MiArKysrKysrKysrKysrKysrKwogNCBm aWxlcyBjaGFuZ2VkLCAxMzQgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2d0L2ludGVsX2VuZ2luZV9jcy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Qv aW50ZWxfZW5naW5lX2NzLmMKaW5kZXggZjczMDg0NzlkNTExLi5kYzFkZjFlMGE5YzcgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2VuZ2luZV9jcy5jCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2VuZ2luZV9jcy5jCkBAIC0zNDMsNiArMzQzLDQ1 IEBAIGludGVsX2VuZ2luZV9zZXR1cChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYs CiAJcmV0dXJuIDA7CiB9CiAKK3N0YXRpYyB2b2lkIF9fc2V0dXBfZW5naW5lX2NhcGFiaWxpdGll cyhzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUpCit7CisJc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmk5MTUgPSBlbmdpbmUtPmk5MTU7CisKKwlpZiAoZW5naW5lLT5jbGFzcyA9PSBWSURF T19ERUNPREVfQ0xBU1MpIHsKKwkJLyoKKwkJICogSEVWQyBzdXBwb3J0IGlzIHByZXNlbnQgb24g Zmlyc3QgZW5naW5lIGluc3RhbmNlCisJCSAqIGJlZm9yZSBHZW4xMSBhbmQgb24gYWxsIGluc3Rh bmNlcyBhZnRlcndhcmRzLgorCQkgKi8KKwkJaWYgKElOVEVMX0dFTihpOTE1KSA+PSAxMSB8fAor CQkgICAgKElOVEVMX0dFTihpOTE1KSA+PSA5ICYmIGVuZ2luZS0+aW5zdGFuY2UgPT0gMCkpCisJ CQllbmdpbmUtPnVhYmlfY2FwYWJpbGl0aWVzIHw9CisJCQkJSTkxNV9WSURFT19DTEFTU19DQVBB QklMSVRZX0hFVkM7CisKKwkJLyoKKwkJICogU0ZDIGJsb2NrIGlzIHByZXNlbnQgb25seSBvbiBl dmVuIGxvZ2ljYWwgZW5naW5lCisJCSAqIGluc3RhbmNlcy4KKwkJICovCisJCWlmICgoSU5URUxf R0VOKGk5MTUpID49IDExICYmCisJCSAgICAgUlVOVElNRV9JTkZPKGk5MTUpLT52ZGJveF9zZmNf YWNjZXNzICYgZW5naW5lLT5tYXNrKSB8fAorCQkgICAgKElOVEVMX0dFTihpOTE1KSA+PSA5ICYm IGVuZ2luZS0+aW5zdGFuY2UgPT0gMCkpCisJCQllbmdpbmUtPnVhYmlfY2FwYWJpbGl0aWVzIHw9 CisJCQkJSTkxNV9WSURFT19BTkRfRU5IQU5DRV9DTEFTU19DQVBBQklMSVRZX1NGQzsKKwl9IGVs c2UgaWYgKGVuZ2luZS0+Y2xhc3MgPT0gVklERU9fRU5IQU5DRU1FTlRfQ0xBU1MpIHsKKwkJaWYg KElOVEVMX0dFTihpOTE1KSA+PSA5KQorCQkJZW5naW5lLT51YWJpX2NhcGFiaWxpdGllcyB8PQor CQkJCUk5MTVfVklERU9fQU5EX0VOSEFOQ0VfQ0xBU1NfQ0FQQUJJTElUWV9TRkM7CisJfQorfQor CitzdGF0aWMgdm9pZCBpbnRlbF9zZXR1cF9lbmdpbmVfY2FwYWJpbGl0aWVzKHN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICppOTE1KQoreworCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZTsK KwllbnVtIGludGVsX2VuZ2luZV9pZCBpZDsKKworCWZvcl9lYWNoX2VuZ2luZShlbmdpbmUsIGk5 MTUsIGlkKQorCQlfX3NldHVwX2VuZ2luZV9jYXBhYmlsaXRpZXMoZW5naW5lKTsKK30KKwogLyoq CiAgKiBpbnRlbF9lbmdpbmVzX2luaXRfbW1pbygpIC0gYWxsb2NhdGUgYW5kIHByZXBhcmUgdGhl IEVuZ2luZSBDb21tYW5kIFN0cmVhbWVycwogICogQGRldl9wcml2OiBpOTE1IGRldmljZSBwcml2 YXRlCkBAIC0zOTUsNiArNDM0LDggQEAgaW50IGludGVsX2VuZ2luZXNfaW5pdF9tbWlvKHN0cnVj dCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIAogCWk5MTVfY2hlY2tfYW5kX2NsZWFyX2Zh dWx0cyhkZXZfcHJpdik7CiAKKwlpbnRlbF9zZXR1cF9lbmdpbmVfY2FwYWJpbGl0aWVzKGk5MTUp OworCiAJcmV0dXJuIDA7CiAKIGNsZWFudXA6CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9ndC9pbnRlbF9lbmdpbmVfdHlwZXMuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2lu dGVsX2VuZ2luZV90eXBlcy5oCmluZGV4IGQ5NzJjMzM5MzA5Yy4uMjExYjNmZDc2ZDU4IDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9lbmdpbmVfdHlwZXMuaAorKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9lbmdpbmVfdHlwZXMuaApAQCAtMjc5LDYg KzI3OSw4IEBAIHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgewogCXUzMiBjb250ZXh0X3NpemU7CiAJ dTMyIG1taW9fYmFzZTsKIAorCXUzMiB1YWJpX2NhcGFiaWxpdGllczsKKwogCXN0cnVjdCBpbnRl bF9zc2V1IHNzZXU7CiAKIAlzdHJ1Y3QgaW50ZWxfcmluZyAqYnVmZmVyOwpkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9xdWVyeS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9xdWVyeS5jCmluZGV4IDc4MjE4M2I3OGY0OS4uNDE0ZDBhNmQxZjcwIDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3F1ZXJ5LmMKKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9xdWVyeS5jCkBAIC05Niw5ICs5Niw1OCBAQCBzdGF0aWMgaW50IHF1ZXJ5X3Rv cG9sb2d5X2luZm8oc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCXJldHVybiB0 b3RhbF9sZW5ndGg7CiB9CiAKK3N0YXRpYyBpbnQKK3F1ZXJ5X2VuZ2luZV9pbmZvKHN0cnVjdCBk cm1faTkxNV9wcml2YXRlICppOTE1LAorCQkgIHN0cnVjdCBkcm1faTkxNV9xdWVyeV9pdGVtICpx dWVyeV9pdGVtKQoreworCXN0cnVjdCBkcm1faTkxNV9xdWVyeV9lbmdpbmVfaW5mbyBfX3VzZXIg KnF1ZXJ5X3B0ciA9CisJCQkJdTY0X3RvX3VzZXJfcHRyKHF1ZXJ5X2l0ZW0tPmRhdGFfcHRyKTsK KwlzdHJ1Y3QgZHJtX2k5MTVfZW5naW5lX2luZm8gX191c2VyICppbmZvX3B0cjsKKwlzdHJ1Y3Qg ZHJtX2k5MTVfcXVlcnlfZW5naW5lX2luZm8gcXVlcnk7CisJc3RydWN0IGRybV9pOTE1X2VuZ2lu ZV9pbmZvIGluZm8gPSB7IH07CisJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lOworCWVu dW0gaW50ZWxfZW5naW5lX2lkIGlkOworCWludCBsZW4sIHJldDsKKworCWlmIChxdWVyeV9pdGVt LT5mbGFncykKKwkJcmV0dXJuIC1FSU5WQUw7CisKKwlsZW4gPSBzaXplb2Yoc3RydWN0IGRybV9p OTE1X3F1ZXJ5X2VuZ2luZV9pbmZvKSArCisJICAgICAgUlVOVElNRV9JTkZPKGk5MTUpLT5udW1f ZW5naW5lcyAqCisJICAgICAgc2l6ZW9mKHN0cnVjdCBkcm1faTkxNV9lbmdpbmVfaW5mbyk7CisK KwlyZXQgPSBjb3B5X3F1ZXJ5X2l0ZW0oJnF1ZXJ5LCBzaXplb2YocXVlcnkpLCBsZW4sIHF1ZXJ5 X2l0ZW0pOworCWlmIChyZXQgIT0gMCkKKwkJcmV0dXJuIHJldDsKKworCWlmIChxdWVyeS5udW1f ZW5naW5lcyB8fCBxdWVyeS5yc3ZkWzBdIHx8IHF1ZXJ5LnJzdmRbMV0gfHwKKwkgICAgcXVlcnku cnN2ZFsyXSkKKwkJcmV0dXJuIC1FSU5WQUw7CisKKwlpbmZvX3B0ciA9ICZxdWVyeV9wdHItPmVu Z2luZXNbMF07CisKKwlmb3JfZWFjaF9lbmdpbmUoZW5naW5lLCBpOTE1LCBpZCkgeworCQlpbmZv LmVuZ2luZS5lbmdpbmVfY2xhc3MgPSBlbmdpbmUtPnVhYmlfY2xhc3M7CisJCWluZm8uZW5naW5l LmVuZ2luZV9pbnN0YW5jZSA9IGVuZ2luZS0+aW5zdGFuY2U7CisJCWluZm8uY2FwYWJpbGl0aWVz ID0gZW5naW5lLT51YWJpX2NhcGFiaWxpdGllczsKKworCQlpZiAoX19jb3B5X3RvX3VzZXIoaW5m b19wdHIsICZpbmZvLCBzaXplb2YoaW5mbykpKQorCQkJcmV0dXJuIC1FRkFVTFQ7CisKKwkJcXVl cnkubnVtX2VuZ2luZXMrKzsKKwkJaW5mb19wdHIrKzsKKwl9CisKKwlpZiAoX19jb3B5X3RvX3Vz ZXIocXVlcnlfcHRyLCAmcXVlcnksIHNpemVvZihxdWVyeSkpKQorCQlyZXR1cm4gLUVGQVVMVDsK KworCXJldHVybiBsZW47Cit9CisKIHN0YXRpYyBpbnQgKCogY29uc3QgaTkxNV9xdWVyeV9mdW5j c1tdKShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJCQkJCXN0cnVjdCBkcm1f aTkxNV9xdWVyeV9pdGVtICpxdWVyeV9pdGVtKSA9IHsKIAlxdWVyeV90b3BvbG9neV9pbmZvLAor CXF1ZXJ5X2VuZ2luZV9pbmZvLAogfTsKIAogaW50IGk5MTVfcXVlcnlfaW9jdGwoc3RydWN0IGRy bV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwgc3RydWN0IGRybV9maWxlICpmaWxlKQpkaWZmIC0t Z2l0IGEvaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oIGIvaW5jbHVkZS91YXBpL2RybS9pOTE1 X2RybS5oCmluZGV4IDNhNzNmNTMxNjc2Ni4uOGM1NGI3NjZlOWExIDEwMDY0NAotLS0gYS9pbmNs dWRlL3VhcGkvZHJtL2k5MTVfZHJtLmgKKysrIGIvaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5o CkBAIC0xODIxLDYgKzE4MjEsNyBAQCBzdHJ1Y3QgZHJtX2k5MTVfcGVyZl9vYV9jb25maWcgewog c3RydWN0IGRybV9pOTE1X3F1ZXJ5X2l0ZW0gewogCV9fdTY0IHF1ZXJ5X2lkOwogI2RlZmluZSBE Uk1fSTkxNV9RVUVSWV9UT1BPTE9HWV9JTkZPICAgIDEKKyNkZWZpbmUgRFJNX0k5MTVfUVVFUllf RU5HSU5FX0lORk8JMgogLyogTXVzdCBiZSBrZXB0IGNvbXBhY3QgLS0gbm8gaG9sZXMgYW5kIHdl bGwgZG9jdW1lbnRlZCAqLwogCiAJLyoKQEAgLTE5MTksNiArMTkyMCw0NyBAQCBzdHJ1Y3QgZHJt X2k5MTVfcXVlcnlfdG9wb2xvZ3lfaW5mbyB7CiAJX191OCBkYXRhW107CiB9OwogCisvKioKKyAq IHN0cnVjdCBkcm1faTkxNV9lbmdpbmVfaW5mbworICoKKyAqIERlc2NyaWJlcyBvbmUgZW5naW5l IGFuZCBpdCdzIGNhcGFiaWxpdGllcyBhcyBrbm93biB0byB0aGUgZHJpdmVyLgorICovCitzdHJ1 Y3QgZHJtX2k5MTVfZW5naW5lX2luZm8geworCS8qKiBFbmdpbmUgY2xhc3MgYW5kIGluc3RhbmNl LiAqLworCXN0cnVjdCBpOTE1X2VuZ2luZV9jbGFzc19pbnN0YW5jZSBlbmdpbmU7CisKKwkvKiog UmVzZXJ2ZWQgZmllbGQuICovCisJX191MzIgcnN2ZDA7CisKKwkvKiogRW5naW5lIGZsYWdzLiAq LworCV9fdTY0IGZsYWdzOworCisJLyoqIENhcGFiaWxpdGllcyBvZiB0aGlzIGVuZ2luZS4gKi8K KwlfX3U2NCBjYXBhYmlsaXRpZXM7CisjZGVmaW5lIEk5MTVfVklERU9fQ0xBU1NfQ0FQQUJJTElU WV9IRVZDCQkoMSA8PCAwKQorI2RlZmluZSBJOTE1X1ZJREVPX0FORF9FTkhBTkNFX0NMQVNTX0NB UEFCSUxJVFlfU0ZDCSgxIDw8IDEpCisKKwkvKiogUmVzZXJ2ZWQgZmllbGRzLiAqLworCV9fdTY0 IHJzdmQxWzRdOworfTsKKworLyoqCisgKiBzdHJ1Y3QgZHJtX2k5MTVfcXVlcnlfZW5naW5lX2lu Zm8KKyAqCisgKiBFbmdpbmUgaW5mbyBxdWVyeSBlbnVtZXJhdGVzIGFsbCBlbmdpbmVzIGtub3du IHRvIHRoZSBkcml2ZXIgYnkgZmlsbGluZyBpbgorICogYW4gYXJyYXkgb2Ygc3RydWN0IGRybV9p OTE1X2VuZ2luZV9pbmZvIHN0cnVjdHVyZXMuCisgKi8KK3N0cnVjdCBkcm1faTkxNV9xdWVyeV9l bmdpbmVfaW5mbyB7CisJLyoqIE51bWJlciBvZiBzdHJ1Y3QgZHJtX2k5MTVfZW5naW5lX2luZm8g c3RydWN0cyBmb2xsb3dpbmcuICovCisJX191MzIgbnVtX2VuZ2luZXM7CisKKwkvKiogTUJaICov CisJX191MzIgcnN2ZFszXTsKKworCS8qKiBNYXJrZXIgZm9yIGRybV9pOTE1X2VuZ2luZV9pbmZv IHN0cnVjdHVyZXMuICovCisJc3RydWN0IGRybV9pOTE1X2VuZ2luZV9pbmZvIGVuZ2luZXNbXTsK K307CisKICNpZiBkZWZpbmVkKF9fY3BsdXNwbHVzKQogfQogI2VuZGlmCi0tIAoyLjE5LjEKCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBt YWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA==