From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michal Wajdeczko Subject: [CI v4 3/8] drm/i915/guc: Introduce USES_GUC_xxx helper macros Date: Wed, 6 Dec 2017 14:51:30 +0000 Message-ID: <20171206145135.52016-3-michal.wajdeczko@intel.com> References: <20171206145135.52016-1-michal.wajdeczko@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTPS id 335936E202 for ; Wed, 6 Dec 2017 14:51:43 +0000 (UTC) In-Reply-To: <20171206145135.52016-1-michal.wajdeczko@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 List-Id: intel-gfx@lists.freedesktop.org SW4gdGhlIHVwY29taW5nIHBhdGNoIHdlIHdpbGwgY2hhbmdlIHRoZSB3YXkgaG93IHRvIHJlY29n bml6ZQp3aGVuIEd1QyBpcyBpbiB1c2UuIFVzaW5nIGhlbHBlciBtYWNyb3Mgd2lsbCBtaW5pbWl6 ZSBzY29wZQpvZiB0aGF0IGNoYW5nZXMuIFdoaWxlIGhlcmUsIHVwZGF0ZSBkZXZfaW5mbyBtZXNz YWdlLgoKU2lnbmVkLW9mZi1ieTogTWljaGFsIFdhamRlY3prbyA8bWljaGFsLndhamRlY3prb0Bp bnRlbC5jb20+CkNjOiBDaHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KQ2M6 IEpvb25hcyBMYWh0aW5lbiA8am9vbmFzLmxhaHRpbmVuQGxpbnV4LmludGVsLmNvbT4KQ2M6IFNh Z2FyIEFydW4gS2FtYmxlIDxzYWdhci5hLmthbWJsZUBpbnRlbC5jb20+ClJldmlld2VkLWJ5OiBD aHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KLS0tCiBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2Rydi5oICAgICAgICAgICAgfCAgNCArKysrCiBkcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2dlbV9jb250ZXh0LmMgICAgfCAgNCArKy0tCiBkcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2dlbV9ndHQuYyAgICAgICAgfCAgMiArLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9pcnEuYyAgICAgICAgICAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2d1 Yy5jICAgICAgICAgICB8ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ndWNfbG9n LmMgICAgICAgfCAgNiArKystLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2d2dC5jICAg ICAgICAgICB8ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF91Yy5jICAgICAgICAg ICAgfCAyMyArKysrKysrKysrKy0tLS0tLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvc2Vs ZnRlc3RzL2ludGVsX2d1Yy5jIHwgIDIgKy0KIDkgZmlsZXMgY2hhbmdlZCwgMjUgaW5zZXJ0aW9u cygrKSwgMjIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXggYmQ0ZWVh NS4uOTM3ZmEwMiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAor KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCkBAIC0zMjM5LDYgKzMyMzksMTAg QEAgaW50ZWxfaW5mbyhjb25zdCBzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAj ZGVmaW5lIEhBU19IVUMoZGV2X3ByaXYpCShIQVNfR1VDKGRldl9wcml2KSkKICNkZWZpbmUgSEFT X0hVQ19VQ09ERShkZXZfcHJpdikJKEhBU19HVUMoZGV2X3ByaXYpKQogCisvKiBIYXZpbmcgYSBH dUMgaXMgbm90IHRoZSBzYW1lIGFzIHVzaW5nIGEgR3VDICovCisjZGVmaW5lIFVTRVNfR1VDKGRl dl9wcml2KQkJKGk5MTVfbW9kcGFyYW1zLmVuYWJsZV9ndWNfbG9hZGluZykKKyNkZWZpbmUgVVNF U19HVUNfU1VCTUlTU0lPTihkZXZfcHJpdikJKGk5MTVfbW9kcGFyYW1zLmVuYWJsZV9ndWNfc3Vi bWlzc2lvbikKKwogI2RlZmluZSBIQVNfUkVTT1VSQ0VfU1RSRUFNRVIoZGV2X3ByaXYpICgoZGV2 X3ByaXYpLT5pbmZvLmhhc19yZXNvdXJjZV9zdHJlYW1lcikKIAogI2RlZmluZSBIQVNfUE9PTEVE X0VVKGRldl9wcml2KQkoKGRldl9wcml2KS0+aW5mby5oYXNfcG9vbGVkX2V1KQpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fY29udGV4dC5jIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9nZW1fY29udGV4dC5jCmluZGV4IGNlMzEzOWUuLjIxY2UzNzQgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2NvbnRleHQuYworKysgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9jb250ZXh0LmMKQEAgLTMxNiw3ICszMTYsNyBAQCBf X2NyZWF0ZV9od19jb250ZXh0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAkg KiBwcmVzZW50IG9yIG5vdCBpbiB1c2Ugd2Ugc3RpbGwgbmVlZCBhIHNtYWxsIGJpYXMgYXMgcmlu ZyB3cmFwYXJvdW5kCiAJICogYXQgb2Zmc2V0IDAgc29tZXRpbWVzIGhhbmdzLiBObyBpZGVhIHdo eS4KIAkgKi8KLQlpZiAoSEFTX0dVQyhkZXZfcHJpdikgJiYgaTkxNV9tb2RwYXJhbXMuZW5hYmxl X2d1Y19sb2FkaW5nKQorCWlmIChVU0VTX0dVQyhkZXZfcHJpdikpCiAJCWN0eC0+Z2d0dF9vZmZz ZXRfYmlhcyA9IEdVQ19XT1BDTV9UT1A7CiAJZWxzZQogCQljdHgtPmdndHRfb2Zmc2V0X2JpYXMg PSBJOTE1X0dUVF9QQUdFX1NJWkU7CkBAIC00MDksNyArNDA5LDcgQEAgaTkxNV9nZW1fY29udGV4 dF9jcmVhdGVfZ3Z0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJaTkxNV9nZW1fY29udGV4dF9z ZXRfY2xvc2VkKGN0eCk7IC8qIG5vdCB1c2VyIGFjY2Vzc2libGUgKi8KIAlpOTE1X2dlbV9jb250 ZXh0X2NsZWFyX2Jhbm5hYmxlKGN0eCk7CiAJaTkxNV9nZW1fY29udGV4dF9zZXRfZm9yY2Vfc2lu Z2xlX3N1Ym1pc3Npb24oY3R4KTsKLQlpZiAoIWk5MTVfbW9kcGFyYW1zLmVuYWJsZV9ndWNfc3Vi bWlzc2lvbikKKwlpZiAoIVVTRVNfR1VDX1NVQk1JU1NJT04odG9faTkxNShkZXYpKSkKIAkJY3R4 LT5yaW5nX3NpemUgPSA1MTIgKiBQQUdFX1NJWkU7IC8qIE1heCByaW5nIGJ1ZmZlciBzaXplICov CiAKIAlHRU1fQlVHX09OKGk5MTVfZ2VtX2NvbnRleHRfaXNfa2VybmVsKGN0eCkpOwpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dlbV9ndHQuYwppbmRleCBmM2MzNWU4Li4yMDliYjExIDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYworKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dlbV9ndHQuYwpAQCAtMzUwMyw3ICszNTAzLDcgQEAgaW50IGk5MTVfZ2d0 dF9wcm9iZV9odyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAJICogY3VycmVu dGx5IGRvbid0IGhhdmUgYW55IGJpdHMgc3BhcmUgdG8gcGFzcyBpbiB0aGlzIHVwcGVyCiAJICog cmVzdHJpY3Rpb24hCiAJICovCi0JaWYgKEhBU19HVUMoZGV2X3ByaXYpICYmIGk5MTVfbW9kcGFy YW1zLmVuYWJsZV9ndWNfbG9hZGluZykgeworCWlmIChVU0VTX0dVQyhkZXZfcHJpdikpIHsKIAkJ Z2d0dC0+YmFzZS50b3RhbCA9IG1pbl90KHU2NCwgZ2d0dC0+YmFzZS50b3RhbCwgR1VDX0dHVFRf VE9QKTsKIAkJZ2d0dC0+bWFwcGFibGVfZW5kID0gbWluKGdndHQtPm1hcHBhYmxlX2VuZCwgZ2d0 dC0+YmFzZS50b3RhbCk7CiAJfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9pcnEuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfaXJxLmMKaW5kZXggN2NhYzA3ZC4u MzUxN2M2NSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9pcnEuYworKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2lycS5jCkBAIC0xNDAwLDcgKzE0MDAsNyBAQCBn ZW44X2NzX2lycV9oYW5kbGVyKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSwgdTMyIGlp ciwgaW50IHRlc3Rfc2hpZnQpCiAKIAlpZiAoaWlyICYgKEdUX1JFTkRFUl9VU0VSX0lOVEVSUlVQ VCA8PCB0ZXN0X3NoaWZ0KSkgewogCQlub3RpZnlfcmluZyhlbmdpbmUpOwotCQl0YXNrbGV0IHw9 IGk5MTVfbW9kcGFyYW1zLmVuYWJsZV9ndWNfc3VibWlzc2lvbjsKKwkJdGFza2xldCB8PSBVU0VT X0dVQ19TVUJNSVNTSU9OKGVuZ2luZS0+aTkxNSk7CiAJfQogCiAJaWYgKHRhc2tsZXQpCmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ndWMuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2d1Yy5jCmluZGV4IGRmODY5MDcuLjE3N2VlNjkgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2d1Yy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2d1Yy5jCkBAIC0xMjksNyArMTI5LDcgQEAgdm9pZCBpbnRlbF9ndWNfaW5pdF9wYXJh bXMoc3RydWN0IGludGVsX2d1YyAqZ3VjKQogCX0KIAogCS8qIElmIEd1QyBzdWJtaXNzaW9uIGlz IGVuYWJsZWQsIHNldCB1cCBhZGRpdGlvbmFsIHBhcmFtZXRlcnMgaGVyZSAqLwotCWlmIChpOTE1 X21vZHBhcmFtcy5lbmFibGVfZ3VjX3N1Ym1pc3Npb24pIHsKKwlpZiAoVVNFU19HVUNfU1VCTUlT U0lPTihkZXZfcHJpdikpIHsKIAkJdTMyIGFkcyA9IGd1Y19nZ3R0X29mZnNldChndWMtPmFkc192 bWEpID4+IFBBR0VfU0hJRlQ7CiAJCXUzMiBwZ3MgPSBndWNfZ2d0dF9vZmZzZXQoZGV2X3ByaXYt Pmd1Yy5zdGFnZV9kZXNjX3Bvb2wpOwogCQl1MzIgY3R4X2luXzE2ID0gR1VDX01BWF9TVEFHRV9E RVNDUklQVE9SUyAvIDE2OwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf Z3VjX2xvZy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZ3VjX2xvZy5jCmluZGV4IDc2 ZDNlYjEuLjFhMmM1ZWUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2d1 Y19sb2cuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ndWNfbG9nLmMKQEAgLTUw NSw3ICs1MDUsNyBAQCBzdGF0aWMgdm9pZCBndWNfZmx1c2hfbG9ncyhzdHJ1Y3QgaW50ZWxfZ3Vj ICpndWMpCiB7CiAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZ3VjX3RvX2k5 MTUoZ3VjKTsKIAotCWlmICghaTkxNV9tb2RwYXJhbXMuZW5hYmxlX2d1Y19zdWJtaXNzaW9uIHx8 CisJaWYgKCFVU0VTX0dVQ19TVUJNSVNTSU9OKGRldl9wcml2KSB8fAogCSAgICAoaTkxNV9tb2Rw YXJhbXMuZ3VjX2xvZ19sZXZlbCA8IDApKQogCQlyZXR1cm47CiAKQEAgLTY0Niw3ICs2NDYsNyBA QCBpbnQgaTkxNV9ndWNfbG9nX2NvbnRyb2woc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2LCB1NjQgY29udHJvbF92YWwpCiAKIHZvaWQgaTkxNV9ndWNfbG9nX3JlZ2lzdGVyKHN0cnVj dCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIHsKLQlpZiAoIWk5MTVfbW9kcGFyYW1zLmVu YWJsZV9ndWNfc3VibWlzc2lvbiB8fAorCWlmICghVVNFU19HVUNfU1VCTUlTU0lPTihkZXZfcHJp dikgfHwKIAkgICAgKGk5MTVfbW9kcGFyYW1zLmd1Y19sb2dfbGV2ZWwgPCAwKSkKIAkJcmV0dXJu OwogCkBAIC02NTcsNyArNjU3LDcgQEAgdm9pZCBpOTE1X2d1Y19sb2dfcmVnaXN0ZXIoc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCiB2b2lkIGk5MTVfZ3VjX2xvZ191bnJlZ2lz dGVyKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIHsKLQlpZiAoIWk5MTVfbW9k cGFyYW1zLmVuYWJsZV9ndWNfc3VibWlzc2lvbikKKwlpZiAoIVVTRVNfR1VDX1NVQk1JU1NJT04o ZGV2X3ByaXYpKQogCQlyZXR1cm47CiAKIAltdXRleF9sb2NrKCZkZXZfcHJpdi0+ZHJtLnN0cnVj dF9tdXRleCk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ndnQuYyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2d2dC5jCmluZGV4IDEyNmY3YzcuLmEyZmU3Yzgg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2d2dC5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2d2dC5jCkBAIC05NSw3ICs5NSw3IEBAIGludCBpbnRlbF9n dnRfaW5pdChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAJCXJldHVybiAwOwog CX0KIAotCWlmIChpOTE1X21vZHBhcmFtcy5lbmFibGVfZ3VjX3N1Ym1pc3Npb24pIHsKKwlpZiAo VVNFU19HVUNfU1VCTUlTU0lPTihkZXZfcHJpdikpIHsKIAkJRFJNX0VSUk9SKCJpOTE1IEdWVC1n IGxvYWRpbmcgZmFpbGVkIGR1ZSB0byBHcmFwaGljcyB2aXJ0dWFsaXphdGlvbiBpcyBub3QgeWV0 IHN1cHBvcnRlZCB3aXRoIEd1QyBzdWJtaXNzaW9uXG4iKTsKIAkJcmV0dXJuIC1FSU87CiAJfQpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfdWMuYyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX3VjLmMKaW5kZXggNGI3ZjJhNy4uZWQyZGQ3NiAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfdWMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF91Yy5jCkBAIC0xNTIsNyArMTUyLDcgQEAgaW50IGludGVsX3VjX2luaXRfaHcoc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCXN0cnVjdCBpbnRlbF9ndWMgKmd1YyA9 ICZkZXZfcHJpdi0+Z3VjOwogCWludCByZXQsIGF0dGVtcHRzOwogCi0JaWYgKCFpOTE1X21vZHBh cmFtcy5lbmFibGVfZ3VjX2xvYWRpbmcpCisJaWYgKCFVU0VTX0dVQyhkZXZfcHJpdikpCiAJCXJl dHVybiAwOwogCiAJZ3VjX2Rpc2FibGVfY29tbXVuaWNhdGlvbihndWMpOwpAQCAtMTYxLDcgKzE2 MSw3IEBAIGludCBpbnRlbF91Y19pbml0X2h3KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdikKIAkvKiBXZSBuZWVkIHRvIG5vdGlmeSB0aGUgZ3VjIHdoZW5ldmVyIHdlIGNoYW5nZSB0 aGUgR0dUVCAqLwogCWk5MTVfZ2d0dF9lbmFibGVfZ3VjKGRldl9wcml2KTsKIAotCWlmIChpOTE1 X21vZHBhcmFtcy5lbmFibGVfZ3VjX3N1Ym1pc3Npb24pIHsKKwlpZiAoVVNFU19HVUNfU1VCTUlT U0lPTihkZXZfcHJpdikpIHsKIAkJLyoKIAkJICogVGhpcyBpcyBzdHVmZiB3ZSBuZWVkIHRvIGhh dmUgYXZhaWxhYmxlIGF0IGZ3IGxvYWQgdGltZQogCQkgKiBpZiB3ZSBhcmUgcGxhbm5pbmcgdG8g ZW5hYmxlIHN1Ym1pc3Npb24gbGF0ZXIKQEAgLTIxMSw3ICsyMTEsNyBAQCBpbnQgaW50ZWxfdWNf aW5pdF9odyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAJCWdvdG8gZXJyX2xv Z19jYXB0dXJlOwogCiAJaW50ZWxfaHVjX2F1dGgoJmRldl9wcml2LT5odWMpOwotCWlmIChpOTE1 X21vZHBhcmFtcy5lbmFibGVfZ3VjX3N1Ym1pc3Npb24pIHsKKwlpZiAoVVNFU19HVUNfU1VCTUlT U0lPTihkZXZfcHJpdikpIHsKIAkJaWYgKGk5MTVfbW9kcGFyYW1zLmd1Y19sb2dfbGV2ZWwgPj0g MCkKIAkJCWdlbjlfZW5hYmxlX2d1Y19pbnRlcnJ1cHRzKGRldl9wcml2KTsKIApAQCAtMjIwLDEx ICsyMjAsMTAgQEAgaW50IGludGVsX3VjX2luaXRfaHcoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2KQogCQkJZ290byBlcnJfaW50ZXJydXB0czsKIAl9CiAKLQlkZXZfaW5mbyhkZXZf cHJpdi0+ZHJtLmRldiwgIkd1QyAlcyAoZmlybXdhcmUgJXMgW3ZlcnNpb24gJXUuJXVdKVxuIiwK LQkJIGk5MTVfbW9kcGFyYW1zLmVuYWJsZV9ndWNfc3VibWlzc2lvbiA/ICJzdWJtaXNzaW9uIGVu YWJsZWQiIDoKLQkJCQkJCQkibG9hZGVkIiwKLQkJIGd1Yy0+ZncucGF0aCwKKwlkZXZfaW5mbyhk ZXZfcHJpdi0+ZHJtLmRldiwgIkd1QyBmaXJtd2FyZSB2ZXJzaW9uICV1LiV1XG4iLAogCQkgZ3Vj LT5mdy5tYWpvcl92ZXJfZm91bmQsIGd1Yy0+ZncubWlub3JfdmVyX2ZvdW5kKTsKKwlkZXZfaW5m byhkZXZfcHJpdi0+ZHJtLmRldiwgIkd1QyBzdWJtaXNzaW9uICVzXG4iLAorCQkgZW5hYmxlZGRp c2FibGVkKFVTRVNfR1VDX1NVQk1JU1NJT04oZGV2X3ByaXYpKSk7CiAKIAlyZXR1cm4gMDsKIApA QCAtMjQzLDcgKzI0Miw3IEBAIGludCBpbnRlbF91Y19pbml0X2h3KHN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdikKIGVycl9sb2dfY2FwdHVyZToKIAlndWNfY2FwdHVyZV9sb2FkX2Vy cl9sb2coZ3VjKTsKIGVycl9zdWJtaXNzaW9uOgotCWlmIChpOTE1X21vZHBhcmFtcy5lbmFibGVf Z3VjX3N1Ym1pc3Npb24pCisJaWYgKFVTRVNfR1VDX1NVQk1JU1NJT04oZGV2X3ByaXYpKQogCQlp bnRlbF9ndWNfc3VibWlzc2lvbl9maW5pKGd1Yyk7CiBlcnJfZ3VjOgogCWk5MTVfZ2d0dF9kaXNh YmxlX2d1YyhkZXZfcHJpdik7CkBAIC0yNTcsNyArMjU2LDcgQEAgaW50IGludGVsX3VjX2luaXRf aHcoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCQlyZXQgPSAwOwogCX0KIAot CWlmIChpOTE1X21vZHBhcmFtcy5lbmFibGVfZ3VjX3N1Ym1pc3Npb24pIHsKKwlpZiAoVVNFU19H VUNfU1VCTUlTU0lPTihkZXZfcHJpdikpIHsKIAkJaTkxNV9tb2RwYXJhbXMuZW5hYmxlX2d1Y19z dWJtaXNzaW9uID0gMDsKIAkJRFJNX05PVEUoIkZhbGxpbmcgYmFjayBmcm9tIEd1QyBzdWJtaXNz aW9uIHRvIGV4ZWNsaXN0IG1vZGVcbiIpOwogCX0KQEAgLTI3MywxNSArMjcyLDE1IEBAIHZvaWQg aW50ZWxfdWNfZmluaV9odyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAKIAln dWNfZnJlZV9sb2FkX2Vycl9sb2coZ3VjKTsKIAotCWlmICghaTkxNV9tb2RwYXJhbXMuZW5hYmxl X2d1Y19sb2FkaW5nKQorCWlmICghVVNFU19HVUMoZGV2X3ByaXYpKQogCQlyZXR1cm47CiAKLQlp ZiAoaTkxNV9tb2RwYXJhbXMuZW5hYmxlX2d1Y19zdWJtaXNzaW9uKQorCWlmIChVU0VTX0dVQ19T VUJNSVNTSU9OKGRldl9wcml2KSkKIAkJaW50ZWxfZ3VjX3N1Ym1pc3Npb25fZGlzYWJsZShndWMp OwogCiAJZ3VjX2Rpc2FibGVfY29tbXVuaWNhdGlvbihndWMpOwogCi0JaWYgKGk5MTVfbW9kcGFy YW1zLmVuYWJsZV9ndWNfc3VibWlzc2lvbikgeworCWlmIChVU0VTX0dVQ19TVUJNSVNTSU9OKGRl dl9wcml2KSkgewogCQlnZW45X2Rpc2FibGVfZ3VjX2ludGVycnVwdHMoZGV2X3ByaXYpOwogCQlp bnRlbF9ndWNfc3VibWlzc2lvbl9maW5pKGd1Yyk7CiAJfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvc2VsZnRlc3RzL2ludGVsX2d1Yy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv c2VsZnRlc3RzL2ludGVsX2d1Yy5jCmluZGV4IDdiMjM1OTcuLjY4ZDZhNjkgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L3NlbGZ0ZXN0cy9pbnRlbF9ndWMuYworKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9zZWxmdGVzdHMvaW50ZWxfZ3VjLmMKQEAgLTM2Miw3ICszNjIsNyBAQCBp bnQgaW50ZWxfZ3VjX2xpdmVfc2VsZnRlc3Qoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2KQogCQlTVUJURVNUKGlndF9ndWNfZG9vcmJlbGxzKSwKIAl9OwogCi0JaWYgKCFpOTE1X21v ZHBhcmFtcy5lbmFibGVfZ3VjX3N1Ym1pc3Npb24pCisJaWYgKCFVU0VTX0dVQ19TVUJNSVNTSU9O KGRldl9wcml2KSkKIAkJcmV0dXJuIDA7CiAKIAlyZXR1cm4gaTkxNV9zdWJ0ZXN0cyh0ZXN0cywg ZGV2X3ByaXYpOwotLSAKMi43LjQKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2ludGVsLWdmeAo=