From mboxrd@z Thu Jan 1 00:00:00 1970 From: Damien Lespiau Subject: Re: [PATCH 3/4] drm/i915: unify no_fbc_reason message printing Date: Fri, 12 Jun 2015 13:17:13 +0100 Message-ID: <20150612121713.GA28224@strange.ger.corp.intel.com> References: <1434049347-2100-1-git-send-email-przanoni@gmail.com> <1434049347-2100-4-git-send-email-przanoni@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTP id 3F8186EA9D for ; Fri, 12 Jun 2015 05:17:18 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1434049347-2100-4-git-send-email-przanoni@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Paulo Zanoni Cc: intel-gfx@lists.freedesktop.org, Paulo Zanoni List-Id: intel-gfx@lists.freedesktop.org T24gVGh1LCBKdW4gMTEsIDIwMTUgYXQgMDQ6MDI6MjZQTSAtMDMwMCwgUGF1bG8gWmFub25pIHdy b3RlOgo+IEZyb206IFBhdWxvIFphbm9uaSA8cGF1bG8uci56YW5vbmlAaW50ZWwuY29tPgo+IAo+ IFRoaXMgY29tbWl0IGhhcyB0d28gbWFpbiBhZHZhbnRhZ2VzOiBzaW1wbGlmeSBpbnRlbF9mYmNf dXBkYXRlKCkKPiBhbmQgZGVkdXBsaWNhdGUgdGhlIHN0cmluZ3MuCj4gCj4gU2lnbmVkLW9mZi1i eTogUGF1bG8gWmFub25pIDxwYXVsby5yLnphbm9uaUBpbnRlbC5jb20+CgpJIGhhZCBzb21lIHRo aW5ncyBhcm91bmQgdGhhdCB0b3BpYyBhcyB3ZWxsIGluIGZlYi4gTWF5IGJlIG9mIGludGVyZXN0 OgoKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9hcmNoaXZlcy9pbnRlbC1nZngvMjAxNS1G ZWJydWFyeS8wNjA4NTAuaHRtbAoKLS0gCkRhbWllbgoKPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9kZWJ1Z2ZzLmMgfCA0OSArKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAg ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggICAgfCAgMSArCj4gIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2ZiYy5jICAgIHwgNjYgKysrKysrKysrKysrKysrKysrKysrKysrKy0t LS0tLS0tLS0tLQo+ICAzIGZpbGVzIGNoYW5nZWQsIDUwIGluc2VydGlvbnMoKyksIDY2IGRlbGV0 aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVn ZnMuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5jCj4gaW5kZXggNDA1MDIy Yi4uZWFhNTY3YyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RlYnVn ZnMuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZGVidWdmcy5jCj4gQEAgLTE1 OTQsNTIgKzE1OTQsMTEgQEAgc3RhdGljIGludCBpOTE1X2ZiY19zdGF0dXMoc3RydWN0IHNlcV9m aWxlICptLCB2b2lkICp1bnVzZWQpCj4gIAo+ICAJaW50ZWxfcnVudGltZV9wbV9nZXQoZGV2X3By aXYpOwo+ICAKPiAtCWlmIChpbnRlbF9mYmNfZW5hYmxlZChkZXYpKSB7Cj4gKwlpZiAoaW50ZWxf ZmJjX2VuYWJsZWQoZGV2KSkKPiAgCQlzZXFfcHV0cyhtLCAiRkJDIGVuYWJsZWRcbiIpOwo+IC0J fSBlbHNlIHsKPiAtCQlzZXFfcHV0cyhtLCAiRkJDIGRpc2FibGVkOiAiKTsKPiAtCQlzd2l0Y2gg KGRldl9wcml2LT5mYmMubm9fZmJjX3JlYXNvbikgewo+IC0JCWNhc2UgRkJDX09LOgo+IC0JCQlz ZXFfcHV0cyhtLCAiRkJDIGFjdGl2ZWQsIGJ1dCBjdXJyZW50bHkgZGlzYWJsZWQgaW4gaGFyZHdh cmUiKTsKPiAtCQkJYnJlYWs7Cj4gLQkJY2FzZSBGQkNfVU5TVVBQT1JURUQ6Cj4gLQkJCXNlcV9w dXRzKG0sICJ1bnN1cHBvcnRlZCBieSB0aGlzIGNoaXBzZXQiKTsKPiAtCQkJYnJlYWs7Cj4gLQkJ Y2FzZSBGQkNfTk9fT1VUUFVUOgo+IC0JCQlzZXFfcHV0cyhtLCAibm8gb3V0cHV0cyIpOwo+IC0J CQlicmVhazsKPiAtCQljYXNlIEZCQ19TVE9MRU5fVE9PX1NNQUxMOgo+IC0JCQlzZXFfcHV0cyht LCAibm90IGVub3VnaCBzdG9sZW4gbWVtb3J5Iik7Cj4gLQkJCWJyZWFrOwo+IC0JCWNhc2UgRkJD X1VOU1VQUE9SVEVEX01PREU6Cj4gLQkJCXNlcV9wdXRzKG0sICJtb2RlIG5vdCBzdXBwb3J0ZWQi KTsKPiAtCQkJYnJlYWs7Cj4gLQkJY2FzZSBGQkNfTU9ERV9UT09fTEFSR0U6Cj4gLQkJCXNlcV9w dXRzKG0sICJtb2RlIHRvbyBsYXJnZSIpOwo+IC0JCQlicmVhazsKPiAtCQljYXNlIEZCQ19CQURf UExBTkU6Cj4gLQkJCXNlcV9wdXRzKG0sICJGQkMgdW5zdXBwb3J0ZWQgb24gcGxhbmUiKTsKPiAt CQkJYnJlYWs7Cj4gLQkJY2FzZSBGQkNfTk9UX1RJTEVEOgo+IC0JCQlzZXFfcHV0cyhtLCAic2Nh bm91dCBidWZmZXIgbm90IHRpbGVkIik7Cj4gLQkJCWJyZWFrOwo+IC0JCWNhc2UgRkJDX01VTFRJ UExFX1BJUEVTOgo+IC0JCQlzZXFfcHV0cyhtLCAibXVsdGlwbGUgcGlwZXMgYXJlIGVuYWJsZWQi KTsKPiAtCQkJYnJlYWs7Cj4gLQkJY2FzZSBGQkNfTU9EVUxFX1BBUkFNOgo+IC0JCQlzZXFfcHV0 cyhtLCAiZGlzYWJsZWQgcGVyIG1vZHVsZSBwYXJhbSAoZGVmYXVsdCBvZmYpIik7Cj4gLQkJCWJy ZWFrOwo+IC0JCWNhc2UgRkJDX0NISVBfREVGQVVMVDoKPiAtCQkJc2VxX3B1dHMobSwgImRpc2Fi bGVkIHBlciBjaGlwIGRlZmF1bHQiKTsKPiAtCQkJYnJlYWs7Cj4gLQkJY2FzZSBGQkNfUk9UQVRJ T046Cj4gLQkJCXNlcV9wdXRzKG0sICJyb3RhdGlvbiBub3Qgc3VwcG9ydGVkIik7Cj4gLQkJCWJy ZWFrOwo+IC0JCWRlZmF1bHQ6Cj4gLQkJCXNlcV9wdXRzKG0sICJ1bmtub3duIHJlYXNvbiIpOwo+ IC0JCX0KPiAtCQlzZXFfcHV0YyhtLCAnXG4nKTsKPiAtCX0KPiArCWVsc2UKPiArCQlzZXFfcHJp bnRmKG0sICJGQkMgZGlzYWJsZWQ6ICVzXG4iLAo+ICsJCQkgIGludGVsX25vX2ZiY19yZWFzb25f c3RyKGRldl9wcml2LT5mYmMubm9fZmJjX3JlYXNvbikpOwo+ICAKPiAgCWlmIChJTlRFTF9JTkZP KGRldl9wcml2KS0+Z2VuID49IDcgJiYgIUlTX1ZBTExFWVZJRVcoZGV2X3ByaXYpKQo+ICAJCXNl cV9wcmludGYobSwgIkNvbXByZXNzaW5nOiAlc1xuIiwKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYu aAo+IGluZGV4IGIyODAyOWEuLjc3ZjI0ZTAgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfZHJ2LmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYu aAo+IEBAIC0xMjU1LDYgKzEyNTUsNyBAQCB2b2lkIGludGVsX2ZiY19pbnZhbGlkYXRlKHN0cnVj dCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPiAgCQkJICBlbnVtIGZiX29wX29yaWdpbiBv cmlnaW4pOwo+ICB2b2lkIGludGVsX2ZiY19mbHVzaChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYsCj4gIAkJICAgICB1bnNpZ25lZCBpbnQgZnJvbnRidWZmZXJfYml0cyk7Cj4gK2Nv bnN0IGNoYXIgKmludGVsX25vX2ZiY19yZWFzb25fc3RyKGVudW0gbm9fZmJjX3JlYXNvbiByZWFz b24pOwo+ICAKPiAgLyogaW50ZWxfaGRtaS5jICovCj4gIHZvaWQgaW50ZWxfaGRtaV9pbml0KHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYsIGludCBoZG1pX3JlZywgZW51bSBwb3J0IHBvcnQpOwo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9mYmMuYyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2ZiYy5jCj4gaW5kZXggNDM3MDRhNC4uOWIzMDBiZCAxMDA2NDQKPiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9mYmMuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2ZiYy5jCj4gQEAgLTQzMiw2ICs0MzIsMzkgQEAgdm9pZCBpbnRlbF9m YmNfZGlzYWJsZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICAJZGV2X3ByaXYtPmZiYy5jcnRj ID0gTlVMTDsKPiAgfQo+ICAKPiArY29uc3QgY2hhciAqaW50ZWxfbm9fZmJjX3JlYXNvbl9zdHIo ZW51bSBub19mYmNfcmVhc29uIHJlYXNvbikKPiArewo+ICsJc3dpdGNoIChyZWFzb24pIHsKPiAr CWNhc2UgRkJDX09LOgo+ICsJCXJldHVybiAiRkJDIGVuYWJsZWQgYnV0IGN1cnJlbnRseSBkaXNh YmxlZCBpbiBoYXJkd2FyZSI7Cj4gKwljYXNlIEZCQ19VTlNVUFBPUlRFRDoKPiArCQlyZXR1cm4g InVuc3VwcG9ydGVkIGJ5IHRoaXMgY2hpcHNldCI7Cj4gKwljYXNlIEZCQ19OT19PVVRQVVQ6Cj4g KwkJcmV0dXJuICJubyBvdXRwdXQiOwo+ICsJY2FzZSBGQkNfU1RPTEVOX1RPT19TTUFMTDoKPiAr CQlyZXR1cm4gIm5vdCBlbm91Z2ggc3RvbGVuIG1lbW9yeSI7Cj4gKwljYXNlIEZCQ19VTlNVUFBP UlRFRF9NT0RFOgo+ICsJCXJldHVybiAibW9kZSBpbmNvbXBhdGlibGUgd2l0aCBjb21wcmVzc2lv biI7Cj4gKwljYXNlIEZCQ19NT0RFX1RPT19MQVJHRToKPiArCQlyZXR1cm4gIm1vZGUgdG9vIGxh cmdlIGZvciBjb21wcmVzc2lvbiI7Cj4gKwljYXNlIEZCQ19CQURfUExBTkU6Cj4gKwkJcmV0dXJu ICJGQkMgdW5zdXBwb3J0ZWQgb24gcGxhbmUiOwo+ICsJY2FzZSBGQkNfTk9UX1RJTEVEOgo+ICsJ CXJldHVybiAiZnJhbWVidWZmZXIgbm90IHRpbGVkIG9yIGZlbmNlZCI7Cj4gKwljYXNlIEZCQ19N VUxUSVBMRV9QSVBFUzoKPiArCQlyZXR1cm4gIm1vcmUgdGhhbiBvbmUgcGlwZSBhY3RpdmUiOwo+ ICsJY2FzZSBGQkNfTU9EVUxFX1BBUkFNOgo+ICsJCXJldHVybiAiZGlzYWJsZWQgcGVyIG1vZHVs ZSBwYXJhbSI7Cj4gKwljYXNlIEZCQ19DSElQX0RFRkFVTFQ6Cj4gKwkJcmV0dXJuICJkaXNhYmxl ZCBwZXIgY2hpcCBkZWZhdWx0IjsKPiArCWNhc2UgRkJDX1JPVEFUSU9OOgo+ICsJCXJldHVybiAi cm90YXRpb24gdW5zdXBwb3J0ZWQiOwo+ICsJZGVmYXVsdDoKPiArCQlNSVNTSU5HX0NBU0UocmVh c29uKTsKPiArCQlyZXR1cm4gInVua25vd24gcmVhc29uIjsKPiArCX0KPiArfQo+ICsKPiAgc3Rh dGljIGJvb2wgc2V0X25vX2ZiY19yZWFzb24oc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2LAo+ICAJCQkgICAgICBlbnVtIG5vX2ZiY19yZWFzb24gcmVhc29uKQo+ICB7Cj4gQEAgLTQz OSw2ICs0NzIsOCBAQCBzdGF0aWMgYm9vbCBzZXRfbm9fZmJjX3JlYXNvbihzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCj4gIAkJcmV0dXJuIGZhbHNlOwo+ICAKPiAgCWRldl9wcml2 LT5mYmMubm9fZmJjX3JlYXNvbiA9IHJlYXNvbjsKPiArCURSTV9ERUJVR19LTVMoIkRpc2FibGlu ZyBGQkM6ICVzXG4iLCBpbnRlbF9ub19mYmNfcmVhc29uX3N0cihyZWFzb24pKTsKPiArCj4gIAly ZXR1cm4gdHJ1ZTsKPiAgfQo+ICAKPiBAQCAtNDU5LDggKzQ5NCw3IEBAIHN0YXRpYyBzdHJ1Y3Qg ZHJtX2NydGMgKmludGVsX2ZiY19maW5kX2NydGMoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRl dl9wcml2KQo+ICAJCWlmIChpbnRlbF9jcnRjX2FjdGl2ZSh0bXBfY3J0YykgJiYKPiAgCQkgICAg dG9faW50ZWxfcGxhbmVfc3RhdGUodG1wX2NydGMtPnByaW1hcnktPnN0YXRlKS0+dmlzaWJsZSkg ewo+ICAJCQlpZiAob25lX3BpcGVfb25seSAmJiBjcnRjKSB7Cj4gLQkJCQlpZiAoc2V0X25vX2Zi Y19yZWFzb24oZGV2X3ByaXYsIEZCQ19NVUxUSVBMRV9QSVBFUykpCj4gLQkJCQkJRFJNX0RFQlVH X0tNUygibW9yZSB0aGFuIG9uZSBwaXBlIGFjdGl2ZSwgZGlzYWJsaW5nIGNvbXByZXNzaW9uXG4i KTsKPiArCQkJCXNldF9ub19mYmNfcmVhc29uKGRldl9wcml2LCBGQkNfTVVMVElQTEVfUElQRVMp Owo+ICAJCQkJcmV0dXJuIE5VTEw7Cj4gIAkJCX0KPiAgCQkJY3J0YyA9IHRtcF9jcnRjOwo+IEBA IC00NzEsOCArNTA1LDcgQEAgc3RhdGljIHN0cnVjdCBkcm1fY3J0YyAqaW50ZWxfZmJjX2ZpbmRf Y3J0YyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCj4gIAl9Cj4gIAo+ICAJaWYg KCFjcnRjIHx8IGNydGMtPnByaW1hcnktPmZiID09IE5VTEwpIHsKPiAtCQlpZiAoc2V0X25vX2Zi Y19yZWFzb24oZGV2X3ByaXYsIEZCQ19OT19PVVRQVVQpKQo+IC0JCQlEUk1fREVCVUdfS01TKCJu byBvdXRwdXQsIGRpc2FibGluZ1xuIik7Cj4gKwkJc2V0X25vX2ZiY19yZWFzb24oZGV2X3ByaXYs IEZCQ19OT19PVVRQVVQpOwo+ICAJCXJldHVybiBOVUxMOwo+ICAJfQo+ICAKPiBAQCAtNTE2LDE0 ICs1NDksMTIgQEAgdm9pZCBpbnRlbF9mYmNfdXBkYXRlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYp Cj4gIAkJaTkxNS5lbmFibGVfZmJjID0gMDsKPiAgCj4gIAlpZiAoaTkxNS5lbmFibGVfZmJjIDwg MCkgewo+IC0JCWlmIChzZXRfbm9fZmJjX3JlYXNvbihkZXZfcHJpdiwgRkJDX0NISVBfREVGQVVM VCkpCj4gLQkJCURSTV9ERUJVR19LTVMoImRpc2FibGVkIHBlciBjaGlwIGRlZmF1bHRcbiIpOwo+ ICsJCXNldF9ub19mYmNfcmVhc29uKGRldl9wcml2LCBGQkNfQ0hJUF9ERUZBVUxUKTsKPiAgCQln b3RvIG91dF9kaXNhYmxlOwo+ICAJfQo+ICAKPiAgCWlmICghaTkxNS5lbmFibGVfZmJjKSB7Cj4g LQkJaWYgKHNldF9ub19mYmNfcmVhc29uKGRldl9wcml2LCBGQkNfTU9EVUxFX1BBUkFNKSkKPiAt CQkJRFJNX0RFQlVHX0tNUygiZmJjIGRpc2FibGVkIHBlciBtb2R1bGUgcGFyYW1cbiIpOwo+ICsJ CXNldF9ub19mYmNfcmVhc29uKGRldl9wcml2LCBGQkNfTU9EVUxFX1BBUkFNKTsKPiAgCQlnb3Rv IG91dF9kaXNhYmxlOwo+ICAJfQo+ICAKPiBAQCAtNTQ3LDkgKzU3OCw3IEBAIHZvaWQgaW50ZWxf ZmJjX3VwZGF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICAKPiAgCWlmICgoYWRqdXN0ZWRf bW9kZS0+ZmxhZ3MgJiBEUk1fTU9ERV9GTEFHX0lOVEVSTEFDRSkgfHwKPiAgCSAgICAoYWRqdXN0 ZWRfbW9kZS0+ZmxhZ3MgJiBEUk1fTU9ERV9GTEFHX0RCTFNDQU4pKSB7Cj4gLQkJaWYgKHNldF9u b19mYmNfcmVhc29uKGRldl9wcml2LCBGQkNfVU5TVVBQT1JURURfTU9ERSkpCj4gLQkJCURSTV9E RUJVR19LTVMoIm1vZGUgaW5jb21wYXRpYmxlIHdpdGggY29tcHJlc3Npb24sICIKPiAtCQkJCSAg ICAgICJkaXNhYmxpbmdcbiIpOwo+ICsJCXNldF9ub19mYmNfcmVhc29uKGRldl9wcml2LCBGQkNf VU5TVVBQT1JURURfTU9ERSk7Cj4gIAkJZ290byBvdXRfZGlzYWJsZTsKPiAgCX0KPiAgCj4gQEAg LTU2NSwxNCArNTk0LDEyIEBAIHZvaWQgaW50ZWxfZmJjX3VwZGF0ZShzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2KQo+ICAJfQo+ICAJaWYgKGludGVsX2NydGMtPmNvbmZpZy0+cGlwZV9zcmNfdyA+IG1h eF93aWR0aCB8fAo+ICAJICAgIGludGVsX2NydGMtPmNvbmZpZy0+cGlwZV9zcmNfaCA+IG1heF9o ZWlnaHQpIHsKPiAtCQlpZiAoc2V0X25vX2ZiY19yZWFzb24oZGV2X3ByaXYsIEZCQ19NT0RFX1RP T19MQVJHRSkpCj4gLQkJCURSTV9ERUJVR19LTVMoIm1vZGUgdG9vIGxhcmdlIGZvciBjb21wcmVz c2lvbiwgZGlzYWJsaW5nXG4iKTsKPiArCQlzZXRfbm9fZmJjX3JlYXNvbihkZXZfcHJpdiwgRkJD X01PREVfVE9PX0xBUkdFKTsKPiAgCQlnb3RvIG91dF9kaXNhYmxlOwo+ICAJfQo+ICAJaWYgKChJ TlRFTF9JTkZPKGRldiktPmdlbiA8IDQgfHwgSEFTX0RESShkZXYpKSAmJgo+ICAJICAgIGludGVs X2NydGMtPnBsYW5lICE9IFBMQU5FX0EpIHsKPiAtCQlpZiAoc2V0X25vX2ZiY19yZWFzb24oZGV2 X3ByaXYsIEZCQ19CQURfUExBTkUpKQo+IC0JCQlEUk1fREVCVUdfS01TKCJwbGFuZSBub3QgQSwg ZGlzYWJsaW5nIGNvbXByZXNzaW9uXG4iKTsKPiArCQlzZXRfbm9fZmJjX3JlYXNvbihkZXZfcHJp diwgRkJDX0JBRF9QTEFORSk7Cj4gIAkJZ290byBvdXRfZGlzYWJsZTsKPiAgCX0KPiAgCj4gQEAg LTU4MSwxNCArNjA4LDEyIEBAIHZvaWQgaW50ZWxfZmJjX3VwZGF0ZShzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2KQo+ICAJICovCj4gIAlpZiAob2JqLT50aWxpbmdfbW9kZSAhPSBJOTE1X1RJTElOR19Y IHx8Cj4gIAkgICAgb2JqLT5mZW5jZV9yZWcgPT0gSTkxNV9GRU5DRV9SRUdfTk9ORSkgewo+IC0J CWlmIChzZXRfbm9fZmJjX3JlYXNvbihkZXZfcHJpdiwgRkJDX05PVF9USUxFRCkpCj4gLQkJCURS TV9ERUJVR19LTVMoImZyYW1lYnVmZmVyIG5vdCB0aWxlZCBvciBmZW5jZWQsIGRpc2FibGluZyBj b21wcmVzc2lvblxuIik7Cj4gKwkJc2V0X25vX2ZiY19yZWFzb24oZGV2X3ByaXYsIEZCQ19OT1Rf VElMRUQpOwo+ICAJCWdvdG8gb3V0X2Rpc2FibGU7Cj4gIAl9Cj4gIAlpZiAoSU5URUxfSU5GTyhk ZXYpLT5nZW4gPD0gNCAmJiAhSVNfRzRYKGRldikgJiYKPiAgCSAgICBjcnRjLT5wcmltYXJ5LT5z dGF0ZS0+cm90YXRpb24gIT0gQklUKERSTV9ST1RBVEVfMCkpIHsKPiAtCQlpZiAoc2V0X25vX2Zi Y19yZWFzb24oZGV2X3ByaXYsIEZCQ19ST1RBVElPTikpCj4gLQkJCURSTV9ERUJVR19LTVMoIlJv dGF0aW9uIHVuc3VwcG9ydGVkLCBkaXNhYmxpbmdcbiIpOwo+ICsJCXNldF9ub19mYmNfcmVhc29u KGRldl9wcml2LCBGQkNfUk9UQVRJT04pOwo+ICAJCWdvdG8gb3V0X2Rpc2FibGU7Cj4gIAl9Cj4g IAo+IEBAIC01OTgsOCArNjIzLDcgQEAgdm9pZCBpbnRlbF9mYmNfdXBkYXRlKHN0cnVjdCBkcm1f ZGV2aWNlICpkZXYpCj4gIAo+ICAJaWYgKGk5MTVfZ2VtX3N0b2xlbl9zZXR1cF9jb21wcmVzc2lv bihkZXYsIG9iai0+YmFzZS5zaXplLAo+ICAJCQkJCSAgICAgIGRybV9mb3JtYXRfcGxhbmVfY3Bw KGZiLT5waXhlbF9mb3JtYXQsIDApKSkgewo+IC0JCWlmIChzZXRfbm9fZmJjX3JlYXNvbihkZXZf cHJpdiwgRkJDX1NUT0xFTl9UT09fU01BTEwpKQo+IC0JCQlEUk1fREVCVUdfS01TKCJmcmFtZWJ1 ZmZlciB0b28gbGFyZ2UsIGRpc2FibGluZyBjb21wcmVzc2lvblxuIik7Cj4gKwkJc2V0X25vX2Zi Y19yZWFzb24oZGV2X3ByaXYsIEZCQ19TVE9MRU5fVE9PX1NNQUxMKTsKPiAgCQlnb3RvIG91dF9k aXNhYmxlOwo+ICAJfQo+ICAKPiAtLSAKPiAyLjEuNAo+IAo+IF9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+IElu dGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKPiBodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Au b3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxp c3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4v bGlzdGluZm8vaW50ZWwtZ2Z4Cg==