From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH v2] drm/atomic: Use DRM_DEBUG_KMS instead of DRM_DEBUG_ATOMIC in error paths Date: Fri, 24 Nov 2017 18:13:56 +0200 Message-ID: <20171124161356.GN10981@intel.com> References: <1463152419-16554-1-git-send-email-ville.syrjala@linux.intel.com> <20171115183841.23436-1-ville.syrjala@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 4B8C16E047 for ; Fri, 24 Nov 2017 16:13:59 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20171115183841.23436-1-ville.syrjala@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: Jani Nikula List-Id: dri-devel@lists.freedesktop.org T24gV2VkLCBOb3YgMTUsIDIwMTcgYXQgMDg6Mzg6NDFQTSArMDIwMCwgVmlsbGUgU3lyamFsYSB3 cm90ZToKPiBGcm9tOiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwu Y29tPgo+IAo+IERSTV9ERUJVR19BVE9NSUMgZ2VuZXJhdGVzIGEgbG90IG9mIG5vaXNlIHRoYXQg bm8gb25lIG5vcm1hbGx5IGNhcmVzCj4gYWJvdXQuIEhvd2V2ZXIgZXJyb3IgcGF0aHMgZXZlcnlv bmUgY2FyZXMgYWJvdXQsIHNvIGhpZGluZyB0aGVhIGVycm9yCj4gZGVidWdzIHVuZGVyIERSTV9E RUJVR19BVE9NSUMgaXMgYSBiYWQgaWRlYS4gTGV0J3MgdXNlIERSTV9ERUJVR19LTVMKPiBmb3Ig dGhvc2UgaW5zdGVhZC4KCkFjdHVhbGx5LCBvbmUgaWRlYSB0aGF0IGNhbWUgdG8gbXkgbWluZCBy aWdodCBub3cgaXMgdGhhdCBtYXliZSB3ZSB3YW50CnRvIGtlZXAgdXNpbmcgX0FUT01JQyB3aXRo IFRFU1RfT05MWSwgYW5kIG9ubHkgdXNlIF9LTVMgdy9vIFRFU1RfT05MWT8KCj4gCj4gdjI6IFJl YmFzZSBhbmQgaGFuZGxlIGEgZmV3IG5ldyBjYXNlcwo+IAo+IENjOiBKYW5pIE5pa3VsYSA8amFu aS5uaWt1bGFAaW50ZWwuY29tPgo+IFJldmlld2VkLWJ5OiBKYW5pIE5pa3VsYSA8amFuaS5uaWt1 bGFAaW50ZWwuY29tPiAjdjEKPiBTaWduZWQtb2ZmLWJ5OiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxl LnN5cmphbGFAbGludXguaW50ZWwuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vZHJtX2F0 b21pYy5jICAgICAgICB8IDY0ICsrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQo+ICBk cml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY19oZWxwZXIuYyB8IDcwICsrKysrKysrKysrKysrKysr Ky0tLS0tLS0tLS0tLS0tLS0tLS0KPiAgMiBmaWxlcyBjaGFuZ2VkLCA2NiBpbnNlcnRpb25zKCsp LCA2OCBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9h dG9taWMuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljLmMKPiBpbmRleCAzNzQ0NWQ1MDgx NmEuLjU5NGJkZDVjMzNjYiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21p Yy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWMuYwo+IEBAIC01NzIsOCArNTcy LDggQEAgc3RhdGljIGludCBkcm1fYXRvbWljX2NydGNfY2hlY2soc3RydWN0IGRybV9jcnRjICpj cnRjLAo+ICAJICovCj4gIAo+ICAJaWYgKHN0YXRlLT5hY3RpdmUgJiYgIXN0YXRlLT5lbmFibGUp IHsKPiAtCQlEUk1fREVCVUdfQVRPTUlDKCJbQ1JUQzolZDolc10gYWN0aXZlIHdpdGhvdXQgZW5h YmxlZFxuIiwKPiAtCQkJCSBjcnRjLT5iYXNlLmlkLCBjcnRjLT5uYW1lKTsKPiArCQlEUk1fREVC VUdfS01TKCJbQ1JUQzolZDolc10gYWN0aXZlIHdpdGhvdXQgZW5hYmxlZFxuIiwKPiArCQkJICAg ICAgY3J0Yy0+YmFzZS5pZCwgY3J0Yy0+bmFtZSk7Cj4gIAkJcmV0dXJuIC1FSU5WQUw7Cj4gIAl9 Cj4gIAo+IEBAIC01ODIsMTUgKzU4MiwxNSBAQCBzdGF0aWMgaW50IGRybV9hdG9taWNfY3J0Y19j aGVjayhzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4gIAkgKiBiZSBhYmxlIHRvIHRyaWdnZXIuICov Cj4gIAlpZiAoZHJtX2NvcmVfY2hlY2tfZmVhdHVyZShjcnRjLT5kZXYsIERSSVZFUl9BVE9NSUMp ICYmCj4gIAkgICAgV0FSTl9PTihzdGF0ZS0+ZW5hYmxlICYmICFzdGF0ZS0+bW9kZV9ibG9iKSkg ewo+IC0JCURSTV9ERUJVR19BVE9NSUMoIltDUlRDOiVkOiVzXSBlbmFibGVkIHdpdGhvdXQgbW9k ZSBibG9iXG4iLAo+IC0JCQkJIGNydGMtPmJhc2UuaWQsIGNydGMtPm5hbWUpOwo+ICsJCURSTV9E RUJVR19LTVMoIltDUlRDOiVkOiVzXSBlbmFibGVkIHdpdGhvdXQgbW9kZSBibG9iXG4iLAo+ICsJ CQkgICAgICBjcnRjLT5iYXNlLmlkLCBjcnRjLT5uYW1lKTsKPiAgCQlyZXR1cm4gLUVJTlZBTDsK PiAgCX0KPiAgCj4gIAlpZiAoZHJtX2NvcmVfY2hlY2tfZmVhdHVyZShjcnRjLT5kZXYsIERSSVZF Ul9BVE9NSUMpICYmCj4gIAkgICAgV0FSTl9PTighc3RhdGUtPmVuYWJsZSAmJiBzdGF0ZS0+bW9k ZV9ibG9iKSkgewo+IC0JCURSTV9ERUJVR19BVE9NSUMoIltDUlRDOiVkOiVzXSBkaXNhYmxlZCB3 aXRoIG1vZGUgYmxvYlxuIiwKPiAtCQkJCSBjcnRjLT5iYXNlLmlkLCBjcnRjLT5uYW1lKTsKPiAr CQlEUk1fREVCVUdfS01TKCJbQ1JUQzolZDolc10gZGlzYWJsZWQgd2l0aCBtb2RlIGJsb2JcbiIs Cj4gKwkJCSAgICAgIGNydGMtPmJhc2UuaWQsIGNydGMtPm5hbWUpOwo+ICAJCXJldHVybiAtRUlO VkFMOwo+ICAJfQo+ICAKPiBAQCAtNjA1LDggKzYwNSw4IEBAIHN0YXRpYyBpbnQgZHJtX2F0b21p Y19jcnRjX2NoZWNrKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKPiAgCSAqIHBpcGUuCj4gIAkgKi8K PiAgCWlmIChzdGF0ZS0+ZXZlbnQgJiYgIXN0YXRlLT5hY3RpdmUgJiYgIWNydGMtPnN0YXRlLT5h Y3RpdmUpIHsKPiAtCQlEUk1fREVCVUdfQVRPTUlDKCJbQ1JUQzolZDolc10gcmVxdWVzdGluZyBl dmVudCBidXQgb2ZmXG4iLAo+IC0JCQkJIGNydGMtPmJhc2UuaWQsIGNydGMtPm5hbWUpOwo+ICsJ CURSTV9ERUJVR19LTVMoIltDUlRDOiVkOiVzXSByZXF1ZXN0aW5nIGV2ZW50IGJ1dCBvZmZcbiIs Cj4gKwkJCSAgICAgIGNydGMtPmJhc2UuaWQsIGNydGMtPm5hbWUpOwo+ICAJCXJldHVybiAtRUlO VkFMOwo+ICAJfQo+ICAKPiBAQCAtODYxLDEwICs4NjEsMTAgQEAgc3RhdGljIGludCBkcm1fYXRv bWljX3BsYW5lX2NoZWNrKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLAo+ICAKPiAgCS8qIGVpdGhl ciAqYm90aCogQ1JUQyBhbmQgRkIgbXVzdCBiZSBzZXQsIG9yIG5laXRoZXIgKi8KPiAgCWlmIChX QVJOX09OKHN0YXRlLT5jcnRjICYmICFzdGF0ZS0+ZmIpKSB7Cj4gLQkJRFJNX0RFQlVHX0FUT01J QygiQ1JUQyBzZXQgYnV0IG5vIEZCXG4iKTsKPiArCQlEUk1fREVCVUdfS01TKCJDUlRDIHNldCBi dXQgbm8gRkJcbiIpOwo+ICAJCXJldHVybiAtRUlOVkFMOwo+ICAJfSBlbHNlIGlmIChXQVJOX09O KHN0YXRlLT5mYiAmJiAhc3RhdGUtPmNydGMpKSB7Cj4gLQkJRFJNX0RFQlVHX0FUT01JQygiRkIg c2V0IGJ1dCBubyBDUlRDXG4iKTsKPiArCQlEUk1fREVCVUdfS01TKCJGQiBzZXQgYnV0IG5vIENS VENcbiIpOwo+ICAJCXJldHVybiAtRUlOVkFMOwo+ICAJfQo+ICAKPiBAQCAtODc0LDcgKzg3NCw3 IEBAIHN0YXRpYyBpbnQgZHJtX2F0b21pY19wbGFuZV9jaGVjayhzdHJ1Y3QgZHJtX3BsYW5lICpw bGFuZSwKPiAgCj4gIAkvKiBDaGVjayB3aGV0aGVyIHRoaXMgcGxhbmUgaXMgdXNhYmxlIG9uIHRo aXMgQ1JUQyAqLwo+ICAJaWYgKCEocGxhbmUtPnBvc3NpYmxlX2NydGNzICYgZHJtX2NydGNfbWFz ayhzdGF0ZS0+Y3J0YykpKSB7Cj4gLQkJRFJNX0RFQlVHX0FUT01JQygiSW52YWxpZCBjcnRjIGZv ciBwbGFuZVxuIik7Cj4gKwkJRFJNX0RFQlVHX0tNUygiSW52YWxpZCBjcnRjIGZvciBwbGFuZVxu Iik7Cj4gIAkJcmV0dXJuIC1FSU5WQUw7Cj4gIAl9Cj4gIAo+IEBAIC04ODIsOSArODgyLDkgQEAg c3RhdGljIGludCBkcm1fYXRvbWljX3BsYW5lX2NoZWNrKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5l LAo+ICAJcmV0ID0gZHJtX3BsYW5lX2NoZWNrX3BpeGVsX2Zvcm1hdChwbGFuZSwgc3RhdGUtPmZi LT5mb3JtYXQtPmZvcm1hdCk7Cj4gIAlpZiAocmV0KSB7Cj4gIAkJc3RydWN0IGRybV9mb3JtYXRf bmFtZV9idWYgZm9ybWF0X25hbWU7Cj4gLQkJRFJNX0RFQlVHX0FUT01JQygiSW52YWxpZCBwaXhl bCBmb3JtYXQgJXNcbiIsCj4gLQkJICAgICAgICAgICAgICAgICBkcm1fZ2V0X2Zvcm1hdF9uYW1l KHN0YXRlLT5mYi0+Zm9ybWF0LT5mb3JtYXQsCj4gLQkJICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICZmb3JtYXRfbmFtZSkpOwo+ICsJCURSTV9ERUJVR19LTVMoIkludmFsaWQg cGl4ZWwgZm9ybWF0ICVzXG4iLAo+ICsJCQkgICAgICBkcm1fZ2V0X2Zvcm1hdF9uYW1lKHN0YXRl LT5mYi0+Zm9ybWF0LT5mb3JtYXQsCj4gKwkJCQkJCSAgJmZvcm1hdF9uYW1lKSk7Cj4gIAkJcmV0 dXJuIHJldDsKPiAgCX0KPiAgCj4gQEAgLTg5Myw5ICs4OTMsOSBAQCBzdGF0aWMgaW50IGRybV9h dG9taWNfcGxhbmVfY2hlY2soc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCj4gIAkgICAgc3RhdGUt PmNydGNfeCA+IElOVF9NQVggLSAoaW50MzJfdCkgc3RhdGUtPmNydGNfdyB8fAo+ICAJICAgIHN0 YXRlLT5jcnRjX2ggPiBJTlRfTUFYIHx8Cj4gIAkgICAgc3RhdGUtPmNydGNfeSA+IElOVF9NQVgg LSAoaW50MzJfdCkgc3RhdGUtPmNydGNfaCkgewo+IC0JCURSTV9ERUJVR19BVE9NSUMoIkludmFs aWQgQ1JUQyBjb29yZGluYXRlcyAldXgldSslZCslZFxuIiwKPiAtCQkJCSBzdGF0ZS0+Y3J0Y193 LCBzdGF0ZS0+Y3J0Y19oLAo+IC0JCQkJIHN0YXRlLT5jcnRjX3gsIHN0YXRlLT5jcnRjX3kpOwo+ ICsJCURSTV9ERUJVR19LTVMoIkludmFsaWQgQ1JUQyBjb29yZGluYXRlcyAldXgldSslZCslZFxu IiwKPiArCQkJICAgICAgc3RhdGUtPmNydGNfdywgc3RhdGUtPmNydGNfaCwKPiArCQkJICAgICAg c3RhdGUtPmNydGNfeCwgc3RhdGUtPmNydGNfeSk7Cj4gIAkJcmV0dXJuIC1FUkFOR0U7Cj4gIAl9 Cj4gIAo+IEBAIC05MDcsMTkgKzkwNywxOSBAQCBzdGF0aWMgaW50IGRybV9hdG9taWNfcGxhbmVf Y2hlY2soc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCj4gIAkgICAgc3RhdGUtPnNyY194ID4gZmJf d2lkdGggLSBzdGF0ZS0+c3JjX3cgfHwKPiAgCSAgICBzdGF0ZS0+c3JjX2ggPiBmYl9oZWlnaHQg fHwKPiAgCSAgICBzdGF0ZS0+c3JjX3kgPiBmYl9oZWlnaHQgLSBzdGF0ZS0+c3JjX2gpIHsKPiAt CQlEUk1fREVCVUdfQVRPTUlDKCJJbnZhbGlkIHNvdXJjZSBjb29yZGluYXRlcyAiCj4gLQkJCQkg IiV1LiUwNnV4JXUuJTA2dSsldS4lMDZ1KyV1LiUwNnUgKGZiICV1eCV1KVxuIiwKPiAtCQkJCSBz dGF0ZS0+c3JjX3cgPj4gMTYsICgoc3RhdGUtPnNyY193ICYgMHhmZmZmKSAqIDE1NjI1KSA+PiAx MCwKPiAtCQkJCSBzdGF0ZS0+c3JjX2ggPj4gMTYsICgoc3RhdGUtPnNyY19oICYgMHhmZmZmKSAq IDE1NjI1KSA+PiAxMCwKPiAtCQkJCSBzdGF0ZS0+c3JjX3ggPj4gMTYsICgoc3RhdGUtPnNyY194 ICYgMHhmZmZmKSAqIDE1NjI1KSA+PiAxMCwKPiAtCQkJCSBzdGF0ZS0+c3JjX3kgPj4gMTYsICgo c3RhdGUtPnNyY195ICYgMHhmZmZmKSAqIDE1NjI1KSA+PiAxMCwKPiAtCQkJCSBzdGF0ZS0+ZmIt PndpZHRoLCBzdGF0ZS0+ZmItPmhlaWdodCk7Cj4gKwkJRFJNX0RFQlVHX0tNUygiSW52YWxpZCBz b3VyY2UgY29vcmRpbmF0ZXMgIgo+ICsJCQkgICAgICAiJXUuJTA2dXgldS4lMDZ1KyV1LiUwNnUr JXUuJTA2dSAoZmIgJXV4JXUpXG4iLAo+ICsJCQkgICAgICBzdGF0ZS0+c3JjX3cgPj4gMTYsICgo c3RhdGUtPnNyY193ICYgMHhmZmZmKSAqIDE1NjI1KSA+PiAxMCwKPiArCQkJICAgICAgc3RhdGUt PnNyY19oID4+IDE2LCAoKHN0YXRlLT5zcmNfaCAmIDB4ZmZmZikgKiAxNTYyNSkgPj4gMTAsCj4g KwkJCSAgICAgIHN0YXRlLT5zcmNfeCA+PiAxNiwgKChzdGF0ZS0+c3JjX3ggJiAweGZmZmYpICog MTU2MjUpID4+IDEwLAo+ICsJCQkgICAgICBzdGF0ZS0+c3JjX3kgPj4gMTYsICgoc3RhdGUtPnNy Y195ICYgMHhmZmZmKSAqIDE1NjI1KSA+PiAxMCwKPiArCQkJICAgICAgc3RhdGUtPmZiLT53aWR0 aCwgc3RhdGUtPmZiLT5oZWlnaHQpOwo+ICAJCXJldHVybiAtRU5PU1BDOwo+ICAJfQo+ICAKPiAg CWlmIChwbGFuZV9zd2l0Y2hpbmdfY3J0YyhzdGF0ZS0+c3RhdGUsIHBsYW5lLCBzdGF0ZSkpIHsK PiAtCQlEUk1fREVCVUdfQVRPTUlDKCJbUExBTkU6JWQ6JXNdIHN3aXRjaGluZyBDUlRDIGRpcmVj dGx5XG4iLAo+IC0JCQkJIHBsYW5lLT5iYXNlLmlkLCBwbGFuZS0+bmFtZSk7Cj4gKwkJRFJNX0RF QlVHX0tNUygiW1BMQU5FOiVkOiVzXSBzd2l0Y2hpbmcgQ1JUQyBkaXJlY3RseVxuIiwKPiArCQkJ ICAgICAgcGxhbmUtPmJhc2UuaWQsIHBsYW5lLT5uYW1lKTsKPiAgCQlyZXR1cm4gLUVJTlZBTDsK PiAgCX0KPiAgCj4gQEAgLTE1OTYsOCArMTU5Niw4IEBAIGludCBkcm1fYXRvbWljX2NoZWNrX29u bHkoc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKQo+ICAJZm9yX2VhY2hfbmV3X3BsYW5l X2luX3N0YXRlKHN0YXRlLCBwbGFuZSwgcGxhbmVfc3RhdGUsIGkpIHsKPiAgCQlyZXQgPSBkcm1f YXRvbWljX3BsYW5lX2NoZWNrKHBsYW5lLCBwbGFuZV9zdGF0ZSk7Cj4gIAkJaWYgKHJldCkgewo+ IC0JCQlEUk1fREVCVUdfQVRPTUlDKCJbUExBTkU6JWQ6JXNdIGF0b21pYyBjb3JlIGNoZWNrIGZh aWxlZFxuIiwKPiAtCQkJCQkgcGxhbmUtPmJhc2UuaWQsIHBsYW5lLT5uYW1lKTsKPiArCQkJRFJN X0RFQlVHX0tNUygiW1BMQU5FOiVkOiVzXSBhdG9taWMgY29yZSBjaGVjayBmYWlsZWRcbiIsCj4g KwkJCQkgICAgICBwbGFuZS0+YmFzZS5pZCwgcGxhbmUtPm5hbWUpOwo+ICAJCQlyZXR1cm4gcmV0 Owo+ICAJCX0KPiAgCX0KPiBAQCAtMTYwNSw4ICsxNjA1LDggQEAgaW50IGRybV9hdG9taWNfY2hl Y2tfb25seShzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCj4gIAlmb3JfZWFjaF9uZXdf Y3J0Y19pbl9zdGF0ZShzdGF0ZSwgY3J0YywgY3J0Y19zdGF0ZSwgaSkgewo+ICAJCXJldCA9IGRy bV9hdG9taWNfY3J0Y19jaGVjayhjcnRjLCBjcnRjX3N0YXRlKTsKPiAgCQlpZiAocmV0KSB7Cj4g LQkJCURSTV9ERUJVR19BVE9NSUMoIltDUlRDOiVkOiVzXSBhdG9taWMgY29yZSBjaGVjayBmYWls ZWRcbiIsCj4gLQkJCQkJIGNydGMtPmJhc2UuaWQsIGNydGMtPm5hbWUpOwo+ICsJCQlEUk1fREVC VUdfS01TKCJbQ1JUQzolZDolc10gYXRvbWljIGNvcmUgY2hlY2sgZmFpbGVkXG4iLAo+ICsJCQkJ ICAgICAgY3J0Yy0+YmFzZS5pZCwgY3J0Yy0+bmFtZSk7Cj4gIAkJCXJldHVybiByZXQ7Cj4gIAkJ fQo+ICAJfQo+IEBAIC0xNjIwLDggKzE2MjAsOCBAQCBpbnQgZHJtX2F0b21pY19jaGVja19vbmx5 KHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKPiAgCWlmICghc3RhdGUtPmFsbG93X21v ZGVzZXQpIHsKPiAgCQlmb3JfZWFjaF9uZXdfY3J0Y19pbl9zdGF0ZShzdGF0ZSwgY3J0YywgY3J0 Y19zdGF0ZSwgaSkgewo+ICAJCQlpZiAoZHJtX2F0b21pY19jcnRjX25lZWRzX21vZGVzZXQoY3J0 Y19zdGF0ZSkpIHsKPiAtCQkJCURSTV9ERUJVR19BVE9NSUMoIltDUlRDOiVkOiVzXSByZXF1aXJl cyBmdWxsIG1vZGVzZXRcbiIsCj4gLQkJCQkJCSBjcnRjLT5iYXNlLmlkLCBjcnRjLT5uYW1lKTsK PiArCQkJCURSTV9ERUJVR19LTVMoIltDUlRDOiVkOiVzXSByZXF1aXJlcyBmdWxsIG1vZGVzZXRc biIsCj4gKwkJCQkJICAgICAgY3J0Yy0+YmFzZS5pZCwgY3J0Yy0+bmFtZSk7Cj4gIAkJCQlyZXR1 cm4gLUVJTlZBTDsKPiAgCQkJfQo+ICAJCX0KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2RybV9hdG9taWNfaGVscGVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY19oZWxwZXIu Ywo+IGluZGV4IGNlZDFhYzhlNjhhMC4uODYyNWIxODFmNmI2IDEwMDY0NAo+IC0tLSBhL2RyaXZl cnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2Ry bV9hdG9taWNfaGVscGVyLmMKPiBAQCAtMTIxLDkgKzEyMSw5IEBAIHN0YXRpYyBpbnQgaGFuZGxl X2NvbmZsaWN0aW5nX2VuY29kZXJzKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSwKPiAg Cj4gIAkJaWYgKG5ld19lbmNvZGVyKSB7Cj4gIAkJCWlmIChlbmNvZGVyX21hc2sgJiAoMSA8PCBk cm1fZW5jb2Rlcl9pbmRleChuZXdfZW5jb2RlcikpKSB7Cj4gLQkJCQlEUk1fREVCVUdfQVRPTUlD KCJbRU5DT0RFUjolZDolc10gb24gW0NPTk5FQ1RPUjolZDolc10gYWxyZWFkeSBhc3NpZ25lZFxu IiwKPiAtCQkJCQluZXdfZW5jb2Rlci0+YmFzZS5pZCwgbmV3X2VuY29kZXItPm5hbWUsCj4gLQkJ CQkJY29ubmVjdG9yLT5iYXNlLmlkLCBjb25uZWN0b3ItPm5hbWUpOwo+ICsJCQkJRFJNX0RFQlVH X0tNUygiW0VOQ09ERVI6JWQ6JXNdIG9uIFtDT05ORUNUT1I6JWQ6JXNdIGFscmVhZHkgYXNzaWdu ZWRcbiIsCj4gKwkJCQkJICAgICAgbmV3X2VuY29kZXItPmJhc2UuaWQsIG5ld19lbmNvZGVyLT5u YW1lLAo+ICsJCQkJCSAgICAgIGNvbm5lY3Rvci0+YmFzZS5pZCwgY29ubmVjdG9yLT5uYW1lKTsK PiAgCj4gIAkJCQlyZXR1cm4gLUVJTlZBTDsKPiAgCQkJfQo+IEBAIC0xNTgsMTEgKzE1OCwxMSBA QCBzdGF0aWMgaW50IGhhbmRsZV9jb25mbGljdGluZ19lbmNvZGVycyhzdHJ1Y3QgZHJtX2F0b21p Y19zdGF0ZSAqc3RhdGUsCj4gIAkJCWNvbnRpbnVlOwo+ICAKPiAgCQlpZiAoIWRpc2FibGVfY29u ZmxpY3RpbmdfZW5jb2RlcnMpIHsKPiAtCQkJRFJNX0RFQlVHX0FUT01JQygiW0VOQ09ERVI6JWQ6 JXNdIGluIHVzZSBvbiBbQ1JUQzolZDolc10gYnkgW0NPTk5FQ1RPUjolZDolc11cbiIsCj4gLQkJ CQkJIGVuY29kZXItPmJhc2UuaWQsIGVuY29kZXItPm5hbWUsCj4gLQkJCQkJIGNvbm5lY3Rvci0+ c3RhdGUtPmNydGMtPmJhc2UuaWQsCj4gLQkJCQkJIGNvbm5lY3Rvci0+c3RhdGUtPmNydGMtPm5h bWUsCj4gLQkJCQkJIGNvbm5lY3Rvci0+YmFzZS5pZCwgY29ubmVjdG9yLT5uYW1lKTsKPiArCQkJ RFJNX0RFQlVHX0tNUygiW0VOQ09ERVI6JWQ6JXNdIGluIHVzZSBvbiBbQ1JUQzolZDolc10gYnkg W0NPTk5FQ1RPUjolZDolc11cbiIsCj4gKwkJCQkgICAgICBlbmNvZGVyLT5iYXNlLmlkLCBlbmNv ZGVyLT5uYW1lLAo+ICsJCQkJICAgICAgY29ubmVjdG9yLT5zdGF0ZS0+Y3J0Yy0+YmFzZS5pZCwK PiArCQkJCSAgICAgIGNvbm5lY3Rvci0+c3RhdGUtPmNydGMtPm5hbWUsCj4gKwkJCQkgICAgICBj b25uZWN0b3ItPmJhc2UuaWQsIGNvbm5lY3Rvci0+bmFtZSk7Cj4gIAkJCXJldCA9IC1FSU5WQUw7 Cj4gIAkJCWdvdG8gb3V0Owo+ICAJCX0KPiBAQCAtMzE3LDE4ICszMTcsMTYgQEAgdXBkYXRlX2Nv bm5lY3Rvcl9yb3V0aW5nKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSwKPiAgCQluZXdf ZW5jb2RlciA9IGRybV9hdG9taWNfaGVscGVyX2Jlc3RfZW5jb2Rlcihjb25uZWN0b3IpOwo+ICAK PiAgCWlmICghbmV3X2VuY29kZXIpIHsKPiAtCQlEUk1fREVCVUdfQVRPTUlDKCJObyBzdWl0YWJs ZSBlbmNvZGVyIGZvdW5kIGZvciBbQ09OTkVDVE9SOiVkOiVzXVxuIiwKPiAtCQkJCSBjb25uZWN0 b3ItPmJhc2UuaWQsCj4gLQkJCQkgY29ubmVjdG9yLT5uYW1lKTsKPiArCQlEUk1fREVCVUdfS01T KCJObyBzdWl0YWJsZSBlbmNvZGVyIGZvdW5kIGZvciBbQ09OTkVDVE9SOiVkOiVzXVxuIiwKPiAr CQkJICAgICAgY29ubmVjdG9yLT5iYXNlLmlkLCBjb25uZWN0b3ItPm5hbWUpOwo+ICAJCXJldHVy biAtRUlOVkFMOwo+ICAJfQo+ICAKPiAgCWlmICghZHJtX2VuY29kZXJfY3J0Y19vayhuZXdfZW5j b2RlciwgbmV3X2Nvbm5lY3Rvcl9zdGF0ZS0+Y3J0YykpIHsKPiAtCQlEUk1fREVCVUdfQVRPTUlD KCJbRU5DT0RFUjolZDolc10gaW5jb21wYXRpYmxlIHdpdGggW0NSVEM6JWQ6JXNdXG4iLAo+IC0J CQkJIG5ld19lbmNvZGVyLT5iYXNlLmlkLAo+IC0JCQkJIG5ld19lbmNvZGVyLT5uYW1lLAo+IC0J CQkJIG5ld19jb25uZWN0b3Jfc3RhdGUtPmNydGMtPmJhc2UuaWQsCj4gLQkJCQkgbmV3X2Nvbm5l Y3Rvcl9zdGF0ZS0+Y3J0Yy0+bmFtZSk7Cj4gKwkJRFJNX0RFQlVHX0tNUygiW0VOQ09ERVI6JWQ6 JXNdIGluY29tcGF0aWJsZSB3aXRoIFtDUlRDOiVkOiVzXVxuIiwKPiArCQkJICAgICAgbmV3X2Vu Y29kZXItPmJhc2UuaWQsIG5ld19lbmNvZGVyLT5uYW1lLAo+ICsJCQkgICAgICBuZXdfY29ubmVj dG9yX3N0YXRlLT5jcnRjLT5iYXNlLmlkLAo+ICsJCQkgICAgICBuZXdfY29ubmVjdG9yX3N0YXRl LT5jcnRjLT5uYW1lKTsKPiAgCQlyZXR1cm4gLUVJTlZBTDsKPiAgCX0KPiAgCj4gQEAgLTQwNCw3 ICs0MDIsNyBAQCBtb2RlX2ZpeHVwKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKPiAg CQlyZXQgPSBkcm1fYnJpZGdlX21vZGVfZml4dXAoZW5jb2Rlci0+YnJpZGdlLCAmbmV3X2NydGNf c3RhdGUtPm1vZGUsCj4gIAkJCQkmbmV3X2NydGNfc3RhdGUtPmFkanVzdGVkX21vZGUpOwo+ICAJ CWlmICghcmV0KSB7Cj4gLQkJCURSTV9ERUJVR19BVE9NSUMoIkJyaWRnZSBmaXh1cCBmYWlsZWRc biIpOwo+ICsJCQlEUk1fREVCVUdfS01TKCJCcmlkZ2UgZml4dXAgZmFpbGVkXG4iKTsKPiAgCQkJ cmV0dXJuIC1FSU5WQUw7Cj4gIAkJfQo+ICAKPiBAQCAtNDEyLDE2ICs0MTAsMTYgQEAgbW9kZV9m aXh1cChzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCj4gIAkJCXJldCA9IGZ1bmNzLT5h dG9taWNfY2hlY2soZW5jb2RlciwgbmV3X2NydGNfc3RhdGUsCj4gIAkJCQkJCSAgbmV3X2Nvbm5f c3RhdGUpOwo+ICAJCQlpZiAocmV0KSB7Cj4gLQkJCQlEUk1fREVCVUdfQVRPTUlDKCJbRU5DT0RF UjolZDolc10gY2hlY2sgZmFpbGVkXG4iLAo+IC0JCQkJCQkgZW5jb2Rlci0+YmFzZS5pZCwgZW5j b2Rlci0+bmFtZSk7Cj4gKwkJCQlEUk1fREVCVUdfS01TKCJbRU5DT0RFUjolZDolc10gY2hlY2sg ZmFpbGVkXG4iLAo+ICsJCQkJCSAgICAgIGVuY29kZXItPmJhc2UuaWQsIGVuY29kZXItPm5hbWUp Owo+ICAJCQkJcmV0dXJuIHJldDsKPiAgCQkJfQo+ICAJCX0gZWxzZSBpZiAoZnVuY3MgJiYgZnVu Y3MtPm1vZGVfZml4dXApIHsKPiAgCQkJcmV0ID0gZnVuY3MtPm1vZGVfZml4dXAoZW5jb2Rlciwg Jm5ld19jcnRjX3N0YXRlLT5tb2RlLAo+ICAJCQkJCQkmbmV3X2NydGNfc3RhdGUtPmFkanVzdGVk X21vZGUpOwo+ICAJCQlpZiAoIXJldCkgewo+IC0JCQkJRFJNX0RFQlVHX0FUT01JQygiW0VOQ09E RVI6JWQ6JXNdIGZpeHVwIGZhaWxlZFxuIiwKPiAtCQkJCQkJIGVuY29kZXItPmJhc2UuaWQsIGVu Y29kZXItPm5hbWUpOwo+ICsJCQkJRFJNX0RFQlVHX0tNUygiW0VOQ09ERVI6JWQ6JXNdIGZpeHVw IGZhaWxlZFxuIiwKPiArCQkJCQkgICAgICBlbmNvZGVyLT5iYXNlLmlkLCBlbmNvZGVyLT5uYW1l KTsKPiAgCQkJCXJldHVybiAtRUlOVkFMOwo+ICAJCQl9Cj4gIAkJfQo+IEBAIC00NDQsOCArNDQy LDggQEAgbW9kZV9maXh1cChzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCj4gIAkJcmV0 ID0gZnVuY3MtPm1vZGVfZml4dXAoY3J0YywgJm5ld19jcnRjX3N0YXRlLT5tb2RlLAo+ICAJCQkJ CSZuZXdfY3J0Y19zdGF0ZS0+YWRqdXN0ZWRfbW9kZSk7Cj4gIAkJaWYgKCFyZXQpIHsKPiAtCQkJ RFJNX0RFQlVHX0FUT01JQygiW0NSVEM6JWQ6JXNdIGZpeHVwIGZhaWxlZFxuIiwKPiAtCQkJCQkg Y3J0Yy0+YmFzZS5pZCwgY3J0Yy0+bmFtZSk7Cj4gKwkJCURSTV9ERUJVR19LTVMoIltDUlRDOiVk OiVzXSBmaXh1cCBmYWlsZWRcbiIsCj4gKwkJCQkgICAgICBjcnRjLT5iYXNlLmlkLCBjcnRjLT5u YW1lKTsKPiAgCQkJcmV0dXJuIC1FSU5WQUw7Cj4gIAkJfQo+ICAJfQo+IEBAIC00NjIsMjEgKzQ2 MCwyMSBAQCBzdGF0aWMgZW51bSBkcm1fbW9kZV9zdGF0dXMgbW9kZV92YWxpZF9wYXRoKHN0cnVj dCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCj4gIAo+ICAJcmV0ID0gZHJtX2VuY29kZXJfbW9k ZV92YWxpZChlbmNvZGVyLCBtb2RlKTsKPiAgCWlmIChyZXQgIT0gTU9ERV9PSykgewo+IC0JCURS TV9ERUJVR19BVE9NSUMoIltFTkNPREVSOiVkOiVzXSBtb2RlX3ZhbGlkKCkgZmFpbGVkXG4iLAo+ IC0JCQkJZW5jb2Rlci0+YmFzZS5pZCwgZW5jb2Rlci0+bmFtZSk7Cj4gKwkJRFJNX0RFQlVHX0tN UygiW0VOQ09ERVI6JWQ6JXNdIG1vZGVfdmFsaWQoKSBmYWlsZWRcbiIsCj4gKwkJCSAgICAgIGVu Y29kZXItPmJhc2UuaWQsIGVuY29kZXItPm5hbWUpOwo+ICAJCXJldHVybiByZXQ7Cj4gIAl9Cj4g IAo+ICAJcmV0ID0gZHJtX2JyaWRnZV9tb2RlX3ZhbGlkKGVuY29kZXItPmJyaWRnZSwgbW9kZSk7 Cj4gIAlpZiAocmV0ICE9IE1PREVfT0spIHsKPiAtCQlEUk1fREVCVUdfQVRPTUlDKCJbQlJJREdF XSBtb2RlX3ZhbGlkKCkgZmFpbGVkXG4iKTsKPiArCQlEUk1fREVCVUdfS01TKCJbQlJJREdFXSBt b2RlX3ZhbGlkKCkgZmFpbGVkXG4iKTsKPiAgCQlyZXR1cm4gcmV0Owo+ICAJfQo+ICAKPiAgCXJl dCA9IGRybV9jcnRjX21vZGVfdmFsaWQoY3J0YywgbW9kZSk7Cj4gIAlpZiAocmV0ICE9IE1PREVf T0spIHsKPiAtCQlEUk1fREVCVUdfQVRPTUlDKCJbQ1JUQzolZDolc10gbW9kZV92YWxpZCgpIGZh aWxlZFxuIiwKPiAtCQkJCWNydGMtPmJhc2UuaWQsIGNydGMtPm5hbWUpOwo+ICsJCURSTV9ERUJV R19LTVMoIltDUlRDOiVkOiVzXSBtb2RlX3ZhbGlkKCkgZmFpbGVkXG4iLAo+ICsJCQkgICAgICBj cnRjLT5iYXNlLmlkLCBjcnRjLT5uYW1lKTsKPiAgCQlyZXR1cm4gcmV0Owo+ICAJfQo+ICAKPiBA QCAtNjA1LDggKzYwMyw4IEBAIGRybV9hdG9taWNfaGVscGVyX2NoZWNrX21vZGVzZXQoc3RydWN0 IGRybV9kZXZpY2UgKmRldiwKPiAgCQl9Cj4gIAo+ICAJCWlmIChuZXdfY3J0Y19zdGF0ZS0+ZW5h YmxlICE9IGhhc19jb25uZWN0b3JzKSB7Cj4gLQkJCURSTV9ERUJVR19BVE9NSUMoIltDUlRDOiVk OiVzXSBlbmFibGVkL2Nvbm5lY3RvcnMgbWlzbWF0Y2hcbiIsCj4gLQkJCQkJIGNydGMtPmJhc2Uu aWQsIGNydGMtPm5hbWUpOwo+ICsJCQlEUk1fREVCVUdfS01TKCJbQ1JUQzolZDolc10gZW5hYmxl ZC9jb25uZWN0b3JzIG1pc21hdGNoXG4iLAo+ICsJCQkJICAgICAgY3J0Yy0+YmFzZS5pZCwgY3J0 Yy0+bmFtZSk7Cj4gIAo+ICAJCQlyZXR1cm4gLUVJTlZBTDsKPiAgCQl9Cj4gQEAgLTczNSw4ICs3 MzMsOCBAQCBkcm1fYXRvbWljX2hlbHBlcl9jaGVja19wbGFuZXMoc3RydWN0IGRybV9kZXZpY2Ug KmRldiwKPiAgCj4gIAkJcmV0ID0gZnVuY3MtPmF0b21pY19jaGVjayhwbGFuZSwgbmV3X3BsYW5l X3N0YXRlKTsKPiAgCQlpZiAocmV0KSB7Cj4gLQkJCURSTV9ERUJVR19BVE9NSUMoIltQTEFORTol ZDolc10gYXRvbWljIGRyaXZlciBjaGVjayBmYWlsZWRcbiIsCj4gLQkJCQkJIHBsYW5lLT5iYXNl LmlkLCBwbGFuZS0+bmFtZSk7Cj4gKwkJCURSTV9ERUJVR19LTVMoIltQTEFORTolZDolc10gYXRv bWljIGRyaXZlciBjaGVjayBmYWlsZWRcbiIsCj4gKwkJCQkgICAgICBwbGFuZS0+YmFzZS5pZCwg cGxhbmUtPm5hbWUpOwo+ICAJCQlyZXR1cm4gcmV0Owo+ICAJCX0KPiAgCX0KPiBAQCAtNzUxLDgg Kzc0OSw4IEBAIGRybV9hdG9taWNfaGVscGVyX2NoZWNrX3BsYW5lcyhzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2LAo+ICAKPiAgCQlyZXQgPSBmdW5jcy0+YXRvbWljX2NoZWNrKGNydGMsIG5ld19jcnRj X3N0YXRlKTsKPiAgCQlpZiAocmV0KSB7Cj4gLQkJCURSTV9ERUJVR19BVE9NSUMoIltDUlRDOiVk OiVzXSBhdG9taWMgZHJpdmVyIGNoZWNrIGZhaWxlZFxuIiwKPiAtCQkJCQkgY3J0Yy0+YmFzZS5p ZCwgY3J0Yy0+bmFtZSk7Cj4gKwkJCURSTV9ERUJVR19LTVMoIltDUlRDOiVkOiVzXSBhdG9taWMg ZHJpdmVyIGNoZWNrIGZhaWxlZFxuIiwKPiArCQkJCSAgICAgIGNydGMtPmJhc2UuaWQsIGNydGMt Pm5hbWUpOwo+ICAJCQlyZXR1cm4gcmV0Owo+ICAJCX0KPiAgCX0KPiBAQCAtMzA5OCw4ICszMDk2 LDggQEAgc3RhdGljIGludCBwYWdlX2ZsaXBfY29tbW9uKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRl ICpzdGF0ZSwKPiAgCS8qIE1ha2Ugc3VyZSB3ZSBkb24ndCBhY2NpZGVudGFsbHkgZG8gYSBmdWxs IG1vZGVzZXQuICovCj4gIAlzdGF0ZS0+YWxsb3dfbW9kZXNldCA9IGZhbHNlOwo+ICAJaWYgKCFj cnRjX3N0YXRlLT5hY3RpdmUpIHsKPiAtCQlEUk1fREVCVUdfQVRPTUlDKCJbQ1JUQzolZDolc10g ZGlzYWJsZWQsIHJlamVjdGluZyBsZWdhY3kgZmxpcFxuIiwKPiAtCQkJCSBjcnRjLT5iYXNlLmlk LCBjcnRjLT5uYW1lKTsKPiArCQlEUk1fREVCVUdfS01TKCJbQ1JUQzolZDolc10gZGlzYWJsZWQs IHJlamVjdGluZyBsZWdhY3kgZmxpcFxuIiwKPiArCQkJICAgICAgY3J0Yy0+YmFzZS5pZCwgY3J0 Yy0+bmFtZSk7Cj4gIAkJcmV0dXJuIC1FSU5WQUw7Cj4gIAl9Cj4gIAo+IC0tIAo+IDIuMTMuNgoK LS0gClZpbGxlIFN5cmrDpGzDpApJbnRlbCBPVEMKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlz dHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4v bGlzdGluZm8vZHJpLWRldmVsCg==