From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eric Engestrom Subject: Re: [PATCH v4] drm: Introduce DRM_DEV_* log messages Date: Tue, 16 Aug 2016 13:28:00 +0100 Message-ID: <20160816122800.GL10429@imgtec.com> References: <20160815125452.GB10429@imgtec.com> <1471303084-3757-1-git-send-email-seanpaul@chromium.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <1471303084-3757-1-git-send-email-seanpaul@chromium.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Sean Paul Cc: linux-rockchip@lists.infradead.org, dri-devel@lists.freedesktop.org List-Id: linux-rockchip.vger.kernel.org T24gTW9uLCBBdWcgMTUsIDIwMTYgYXQgMDQ6MTg6MDRQTSAtMDcwMCwgU2VhbiBQYXVsIHdyb3Rl Ogo+IFRoaXMgcGF0Y2ggY29uc29saWRhdGVzIGFsbCB0aGUgdmFyaW91cyBsb2cgZnVuY3Rpb25z L21hY3JvcyBpbnRvCj4gb25lIHViZXIgZnVuY3Rpb24sIGRybV9sb2cuIEl0IGFsc28gaW50cm9k dWNlcyBzb21lIG5ldyBEUk1fREVWXyoKPiB2YXJpYW50cyB0aGF0IHByaW50IHRoZSBkZXZpY2Ug bmFtZSB0byBkZWxpbmVhdGUgbXVsdGlwbGUgZGV2aWNlcwo+IG9mIHRoZSBzYW1lIHR5cGUuCj4g Cj4gU2lnbmVkLW9mZi1ieTogU2VhbiBQYXVsIDxzZWFucGF1bEBjaHJvbWl1bS5vcmc+Cj4gLS0t Cj4gCj4gQ2hhbmdlcyBpbiB2MjoKPiAgICAgICAgIC0gVXNlIGRldl9wcmludGsgZm9yIHRoZSBk ZXYgdmFyaWFudCAoQ2hyaXMgV2lsc29uKQo+IAo+IENoYW5nZXMgaW4gdjM6Cj4gICAgICAgICAt IFJlbmFtZSBkcm1fbG9nIHRvIGRybV9kZXZfcHJpbnRrIChDaHJpcyBXaWxzb24pCj4gICAgICAg ICAtIEJyZWFrIG91dCBkcm1fcHJpbnRrIGZyb20gZHJtX2Rldl9wcmludGsgdG8gcmVkdWNlCj4g ICAgICAgICAgIGltYWdlIGdyb3d0aCBkdWUgdG8gcGFzc2luZyBOVUxMIGFyb3VuZCAoQ2hyaXMg V2lsc29uKQo+IAo+IENoYW5nZXMgaW4gdjQ6Cj4gCS0gUHVsbCBmb3JtYXQgc3RyaW5nIG91dCBp bnRvICNkZWZpbmUgKEVyaWMgRW5nZXN0cm9tKQo+IAo+IAo+ICBkcml2ZXJzL2dwdS9kcm0vZHJt X2Rydi5jIHwgIDI3ICsrKysrKy0tLQo+ICBpbmNsdWRlL2RybS9kcm1QLmggICAgICAgIHwgMTQw ICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KPiAgMiBmaWxl cyBjaGFuZ2VkLCAxMDMgaW5zZXJ0aW9ucygrKSwgNjQgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZHJ2LmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2Ry di5jCj4gaW5kZXggNTdjZTk3My4uYTdmNjI4MiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9k cm0vZHJtX2Rydi5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9kcnYuYwo+IEBAIC02Mywz NyArNjMsNDggQEAgc3RhdGljIHN0cnVjdCBpZHIgZHJtX21pbm9yc19pZHI7Cj4gIAo+ICBzdGF0 aWMgc3RydWN0IGRlbnRyeSAqZHJtX2RlYnVnZnNfcm9vdDsKPiAgCj4gLXZvaWQgZHJtX2Vycihj b25zdCBjaGFyICpmb3JtYXQsIC4uLikKPiArI2RlZmluZSBEUk1fUFJJTlRLX0ZNVCAiWyIgRFJN X05BTUUgIjolc10lcyAlcFYiCj4gKwo+ICt2b2lkIGRybV9kZXZfcHJpbnRrKGNvbnN0IHN0cnVj dCBkZXZpY2UgKmRldiwgY29uc3QgY2hhciAqbGV2ZWwsCj4gKwkJICAgIHVuc2lnbmVkIGludCBj YXRlZ29yeSwgY29uc3QgY2hhciAqZnVuY3Rpb25fbmFtZSwKPiArCQkgICAgY29uc3QgY2hhciAq cHJlZml4LCBjb25zdCBjaGFyICpmb3JtYXQsIC4uLikKPiAgewo+ICAJc3RydWN0IHZhX2Zvcm1h dCB2YWY7Cj4gIAl2YV9saXN0IGFyZ3M7Cj4gIAo+IC0JdmFfc3RhcnQoYXJncywgZm9ybWF0KTsK PiArCWlmIChjYXRlZ29yeSAhPSBEUk1fVVRfTk9ORSAmJiAhKGRybV9kZWJ1ZyAmIGNhdGVnb3J5 KSkKPiArCQlyZXR1cm47Cj4gIAo+ICsJdmFfc3RhcnQoYXJncywgZm9ybWF0KTsKPiAgCXZhZi5m bXQgPSBmb3JtYXQ7Cj4gIAl2YWYudmEgPSAmYXJnczsKPiAgCj4gLQlwcmludGsoS0VSTl9FUlIg IlsiIERSTV9OQU1FICI6JXBzXSAqRVJST1IqICVwViIsCj4gLQkgICAgICAgX19idWlsdGluX3Jl dHVybl9hZGRyZXNzKDApLCAmdmFmKTsKPiArCWRldl9wcmludGsobGV2ZWwsIGRldiwgRFJNX1BS SU5US19GTVQsIGZ1bmN0aW9uX25hbWUsIHByZWZpeCwKPiArCQkgICAmdmFmKTsKPiAgCj4gIAl2 YV9lbmQoYXJncyk7Cj4gIH0KPiAtRVhQT1JUX1NZTUJPTChkcm1fZXJyKTsKPiArRVhQT1JUX1NZ TUJPTChkcm1fZGV2X3ByaW50ayk7Cj4gIAo+IC12b2lkIGRybV91dF9kZWJ1Z19wcmludGsoY29u c3QgY2hhciAqZnVuY3Rpb25fbmFtZSwgY29uc3QgY2hhciAqZm9ybWF0LCAuLi4pCj4gK3ZvaWQg ZHJtX3ByaW50ayhjb25zdCBjaGFyICpsZXZlbCwgdW5zaWduZWQgaW50IGNhdGVnb3J5LAo+ICsJ CWNvbnN0IGNoYXIgKmZ1bmN0aW9uX25hbWUsIGNvbnN0IGNoYXIgKnByZWZpeCwKPiArCQljb25z dCBjaGFyICpmb3JtYXQsIC4uLikKPiAgewo+ICAJc3RydWN0IHZhX2Zvcm1hdCB2YWY7Cj4gIAl2 YV9saXN0IGFyZ3M7Cj4gIAo+ICsJaWYgKGNhdGVnb3J5ICE9IERSTV9VVF9OT05FICYmICEoZHJt X2RlYnVnICYgY2F0ZWdvcnkpKQo+ICsJCXJldHVybjsKPiArCj4gIAl2YV9zdGFydChhcmdzLCBm b3JtYXQpOwo+ICAJdmFmLmZtdCA9IGZvcm1hdDsKPiAgCXZhZi52YSA9ICZhcmdzOwo+ICAKPiAt CXByaW50ayhLRVJOX0RFQlVHICJbIiBEUk1fTkFNRSAiOiVzXSAlcFYiLCBmdW5jdGlvbl9uYW1l LCAmdmFmKTsKPiArCXByaW50aygiJXMiIERSTV9QUklOVEtfRk1ULCBsZXZlbCwgZnVuY3Rpb25f bmFtZSwgcHJlZml4LCAmdmFmKTsKPiAgCj4gIAl2YV9lbmQoYXJncyk7Cj4gIH0KPiAtRVhQT1JU X1NZTUJPTChkcm1fdXRfZGVidWdfcHJpbnRrKTsKPiArRVhQT1JUX1NZTUJPTChkcm1fcHJpbnRr KTsKPiAgCj4gIC8qCj4gICAqIERSTSBNaW5vcnMKPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0v ZHJtUC5oIGIvaW5jbHVkZS9kcm0vZHJtUC5oCj4gaW5kZXggZjhlODdmZC4uOTRlYjEzOCAxMDA2 NDQKPiAtLS0gYS9pbmNsdWRlL2RybS9kcm1QLmgKPiArKysgYi9pbmNsdWRlL2RybS9kcm1QLmgK PiBAQCAtMTI3LDYgKzEyNyw3IEBAIHN0cnVjdCBkbWFfYnVmX2F0dGFjaG1lbnQ7Cj4gICAqIHJ1 bi10aW1lIGJ5IGVjaG9pbmcgdGhlIGRlYnVnIHZhbHVlIGluIGl0cyBzeXNmcyBub2RlOgo+ICAg KiAgICMgZWNobyAweGYgPiAvc3lzL21vZHVsZS9kcm0vcGFyYW1ldGVycy9kZWJ1Zwo+ICAgKi8K PiArI2RlZmluZSBEUk1fVVRfTk9ORQkJMHgwMAo+ICAjZGVmaW5lIERSTV9VVF9DT1JFIAkJMHgw MQo+ICAjZGVmaW5lIERSTV9VVF9EUklWRVIJCTB4MDIKPiAgI2RlZmluZSBEUk1fVVRfS01TCQkw eDA0Cj4gQEAgLTEzNCwxMSArMTM1LDE1IEBAIHN0cnVjdCBkbWFfYnVmX2F0dGFjaG1lbnQ7Cj4g ICNkZWZpbmUgRFJNX1VUX0FUT01JQwkJMHgxMAo+ICAjZGVmaW5lIERSTV9VVF9WQkwJCTB4MjAK PiAgCj4gLWV4dGVybiBfX3ByaW50ZigyLCAzKQo+IC12b2lkIGRybV91dF9kZWJ1Z19wcmludGso Y29uc3QgY2hhciAqZnVuY3Rpb25fbmFtZSwKPiAtCQkJIGNvbnN0IGNoYXIgKmZvcm1hdCwgLi4u KTsKPiAtZXh0ZXJuIF9fcHJpbnRmKDEsIDIpCj4gLXZvaWQgZHJtX2Vycihjb25zdCBjaGFyICpm b3JtYXQsIC4uLik7Cj4gK2V4dGVybiBfX3ByaW50Zig2LCA3KQo+ICt2b2lkIGRybV9kZXZfcHJp bnRrKGNvbnN0IHN0cnVjdCBkZXZpY2UgKmRldiwgY29uc3QgY2hhciAqbGV2ZWwsCj4gKwkJICAg IHVuc2lnbmVkIGludCBjYXRlZ29yeSwgY29uc3QgY2hhciAqZnVuY3Rpb25fbmFtZSwKPiArCQkg ICAgY29uc3QgY2hhciAqcHJlZml4LCBjb25zdCBjaGFyICpmb3JtYXQsIC4uLik7Cj4gKwo+ICtl eHRlcm4gX19wcmludGYoNSwgNikKPiArdm9pZCBkcm1fcHJpbnRrKGNvbnN0IGNoYXIgKmxldmVs LCB1bnNpZ25lZCBpbnQgY2F0ZWdvcnksCj4gKwkJY29uc3QgY2hhciAqZnVuY3Rpb25fbmFtZSwg Y29uc3QgY2hhciAqcHJlZml4LAo+ICsJCWNvbnN0IGNoYXIgKmZvcm1hdCwgLi4uKTsKPiAgCj4g IC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKi8KPiAgLyoqIFxuYW1lIERSTSB0ZW1wbGF0ZSBjdXN0b21pemF0aW9u IGRlZmF1bHRzICovCj4gQEAgLTE2OSw4ICsxNzQsMTIgQEAgdm9pZCBkcm1fZXJyKGNvbnN0IGNo YXIgKmZvcm1hdCwgLi4uKTsKPiAgICogXHBhcmFtIGZtdCBwcmludGYoKSBsaWtlIGZvcm1hdCBz dHJpbmcuCj4gICAqIFxwYXJhbSBhcmcgYXJndW1lbnRzCj4gICAqLwo+IC0jZGVmaW5lIERSTV9F UlJPUihmbXQsIC4uLikJCQkJXAo+IC0JZHJtX2VycihmbXQsICMjX19WQV9BUkdTX18pCj4gKyNk ZWZpbmUgRFJNX0RFVl9FUlJPUihkZXYsIGZtdCwgLi4uKQkJCQkJXAo+ICsJZHJtX2Rldl9wcmlu dGsoZGV2LCBLRVJOX0VSUiwgRFJNX1VUX05PTkUsIF9fZnVuY19fLCAiICpFUlJPUioiLFwKPiAr CQkgICAgICAgZm10LCAjI19fVkFfQVJHU19fKQo+ICsjZGVmaW5lIERSTV9FUlJPUihmbXQsIC4u LikJCQkJCQlcCj4gKwlkcm1fcHJpbnRrKEtFUk5fRVJSLCBEUk1fVVRfTk9ORSwgX19mdW5jX18s ICIgKkVSUk9SKiIsIGZtdCwJXAo+ICsJCSAgICMjX19WQV9BUkdTX18pCj4gIAo+ICAvKioKPiAg ICogUmF0ZSBsaW1pdGVkIGVycm9yIG91dHB1dC4gIExpa2UgRFJNX0VSUk9SKCkgYnV0IHdvbid0 IGZsb29kIHRoZSBsb2cuCj4gQEAgLTE3OCwyMSArMTg3LDMzIEBAIHZvaWQgZHJtX2Vycihjb25z dCBjaGFyICpmb3JtYXQsIC4uLik7Cj4gICAqIFxwYXJhbSBmbXQgcHJpbnRmKCkgbGlrZSBmb3Jt YXQgc3RyaW5nLgo+ICAgKiBccGFyYW0gYXJnIGFyZ3VtZW50cwo+ICAgKi8KPiAtI2RlZmluZSBE Uk1fRVJST1JfUkFURUxJTUlURUQoZm10LCAuLi4pCQkJCVwKPiArI2RlZmluZSBEUk1fREVWX0VS Uk9SX1JBVEVMSU1JVEVEKGRldiwgZm10LCAuLi4pCQkJXAo+ICAoewkJCQkJCQkJCVwKPiAgCXN0 YXRpYyBERUZJTkVfUkFURUxJTUlUX1NUQVRFKF9ycywJCQkJXAo+ICAJCQkJICAgICAgREVGQVVM VF9SQVRFTElNSVRfSU5URVJWQUwsCVwKPiAgCQkJCSAgICAgIERFRkFVTFRfUkFURUxJTUlUX0JV UlNUKTsJCVwKPiAgCQkJCQkJCQkJXAo+ICAJaWYgKF9fcmF0ZWxpbWl0KCZfcnMpKQkJCQkJCVwK PiAtCQlkcm1fZXJyKGZtdCwgIyNfX1ZBX0FSR1NfXyk7CQkJCVwKPiArCQlEUk1fREVWX0VSUk9S KGRldiwgZm10LCAjI19fVkFfQVJHU19fKTsJCQlcCj4gIH0pCj4gKyNkZWZpbmUgRFJNX0VSUk9S X1JBVEVMSU1JVEVEKGZtdCwgLi4uKQkJCQkJXAo+ICsJRFJNX0RFVl9FUlJPUl9SQVRFTElNSVRF RChOVUxMLCBmbXQsICMjX19WQV9BUkdTX18pCgpTaG91bGRuJ3QgdGhpcyBiZSBhbm90aGVyIGRl ZmluZSB0aGF0IGNhbGxzIERSTV9FUlJPUiguLi4pIGluc3RlYWQgb2YKRFJNX0RFVl9FUlJPUihO VUxMLCAuLi4pPyBTYW1lIGZvciB0aGUgb3RoZXIgb25lcy4KCldpdGggdGhhdCBjaGFuZ2VkLCB0 aGlzIGlzOgpSZXZpZXdlZC1ieTogRXJpYyBFbmdlc3Ryb20gPGVyaWMuZW5nZXN0cm9tQGltZ3Rl Yy5jb20+CgpDaGVlcnMsCiAgRXJpYwoKPiAgCj4gLSNkZWZpbmUgRFJNX0lORk8oZm10LCAuLi4p CQkJCVwKPiAtCXByaW50ayhLRVJOX0lORk8gIlsiIERSTV9OQU1FICJdICIgZm10LCAjI19fVkFf QVJHU19fKQo+ICsjZGVmaW5lIERSTV9ERVZfSU5GTyhkZXYsIGZtdCwgLi4uKQkJCQkJXAo+ICsJ ZHJtX2Rldl9wcmludGsoZGV2LCBLRVJOX0lORk8sIERSTV9VVF9OT05FLCBfX2Z1bmNfXywgIiIs IGZtdCwJXAo+ICsJCSAgICAgICAjI19fVkFfQVJHU19fKQo+ICsjZGVmaW5lIERSTV9JTkZPKGZt dCwgLi4uKQkJCQkJCVwKPiArCWRybV9wcmludGsoS0VSTl9JTkZPLCBEUk1fVVRfTk9ORSwgX19m dW5jX18sICIiLCBmbXQsICMjX19WQV9BUkdTX18pCj4gIAo+IC0jZGVmaW5lIERSTV9JTkZPX09O Q0UoZm10LCAuLi4pCQkJCVwKPiAtCXByaW50a19vbmNlKEtFUk5fSU5GTyAiWyIgRFJNX05BTUUg Il0gIiBmbXQsICMjX19WQV9BUkdTX18pCj4gKyNkZWZpbmUgRFJNX0RFVl9JTkZPX09OQ0UoZGV2 LCBmbXQsIC4uLikJCQkJXAo+ICsoewkJCQkJCQkJCVwKPiArCXN0YXRpYyBib29sIF9fcHJpbnRf b25jZSBfX3JlYWRfbW9zdGx5OwkJCQlcCj4gKwlpZiAoIV9fcHJpbnRfb25jZSkgewkJCQkJCVwK PiArCQlfX3ByaW50X29uY2UgPSB0cnVlOwkJCQkJXAo+ICsJCURSTV9ERVZfSU5GTyhkZXYsIGZt dCwgIyNfX1ZBX0FSR1NfXyk7CQkJXAo+ICsJfQkJCQkJCQkJXAo+ICt9KQo+ICsjZGVmaW5lIERS TV9JTkZPX09OQ0UoZm10LCAuLi4pIERSTV9ERVZfSU5GT19PTkNFKE5VTEwsIGZtdCwgIyNfX1ZB X0FSR1NfXykKPiAgCj4gIC8qKgo+ICAgKiBEZWJ1ZyBvdXRwdXQuCj4gQEAgLTIwMCw1MiArMjIx LDUxIEBAIHZvaWQgZHJtX2Vycihjb25zdCBjaGFyICpmb3JtYXQsIC4uLik7Cj4gICAqIFxwYXJh bSBmbXQgcHJpbnRmKCkgbGlrZSBmb3JtYXQgc3RyaW5nLgo+ICAgKiBccGFyYW0gYXJnIGFyZ3Vt ZW50cwo+ICAgKi8KPiArI2RlZmluZSBEUk1fREVWX0RFQlVHKGRldiwgZm10LCBhcmdzLi4uKQkJ CQlcCj4gKwlkcm1fZGV2X3ByaW50ayhkZXYsIEtFUk5fREVCVUcsIERSTV9VVF9DT1JFLCBfX2Z1 bmNfXywgIiIsIGZtdCwJXAo+ICsJCSAgICAgICAjI2FyZ3MpCj4gICNkZWZpbmUgRFJNX0RFQlVH KGZtdCwgYXJncy4uLikJCQkJCQlcCj4gLQlkbyB7CQkJCQkJCQlcCj4gLQkJaWYgKHVubGlrZWx5 KGRybV9kZWJ1ZyAmIERSTV9VVF9DT1JFKSkJCQlcCj4gLQkJCWRybV91dF9kZWJ1Z19wcmludGso X19mdW5jX18sIGZtdCwgIyNhcmdzKTsJXAo+IC0JfSB3aGlsZSAoMCkKPiArCWRybV9wcmludGso S0VSTl9ERUJVRywgRFJNX1VUX0NPUkUsIF9fZnVuY19fLCAiIiwgZm10LCAjI2FyZ3MpCj4gIAo+ ICsjZGVmaW5lIERSTV9ERVZfREVCVUdfRFJJVkVSKGRldiwgZm10LCBhcmdzLi4uKQkJCQlcCj4g Kwlkcm1fZGV2X3ByaW50ayhkZXYsIEtFUk5fREVCVUcsIERSTV9VVF9EUklWRVIsIF9fZnVuY19f LCAiIiwJXAo+ICsJCSAgICAgICBmbXQsICMjYXJncykKPiAgI2RlZmluZSBEUk1fREVCVUdfRFJJ VkVSKGZtdCwgYXJncy4uLikJCQkJCVwKPiAtCWRvIHsJCQkJCQkJCVwKPiAtCQlpZiAodW5saWtl bHkoZHJtX2RlYnVnICYgRFJNX1VUX0RSSVZFUikpCQlcCj4gLQkJCWRybV91dF9kZWJ1Z19wcmlu dGsoX19mdW5jX18sIGZtdCwgIyNhcmdzKTsJXAo+IC0JfSB3aGlsZSAoMCkKPiArCWRybV9wcmlu dGsoS0VSTl9ERUJVRywgRFJNX1VUX0RSSVZFUiwgX19mdW5jX18sICIiLCBmbXQsICMjYXJncykK PiArCj4gKyNkZWZpbmUgRFJNX0RFVl9ERUJVR19LTVMoZGV2LCBmbXQsIGFyZ3MuLi4pCQkJCVwK PiArCWRybV9kZXZfcHJpbnRrKGRldiwgS0VSTl9ERUJVRywgRFJNX1VUX0tNUywgX19mdW5jX18s ICIiLCBmbXQsCVwKPiArCQkgICAgICAgIyNhcmdzKQo+ICAjZGVmaW5lIERSTV9ERUJVR19LTVMo Zm10LCBhcmdzLi4uKQkJCQkJXAo+IC0JZG8gewkJCQkJCQkJXAo+IC0JCWlmICh1bmxpa2VseShk cm1fZGVidWcgJiBEUk1fVVRfS01TKSkJCQlcCj4gLQkJCWRybV91dF9kZWJ1Z19wcmludGsoX19m dW5jX18sIGZtdCwgIyNhcmdzKTsJXAo+IC0JfSB3aGlsZSAoMCkKPiArCWRybV9wcmludGsoS0VS Tl9ERUJVRywgRFJNX1VUX0tNUywgX19mdW5jX18sICIiLCBmbXQsICMjYXJncykKPiArCj4gKyNk ZWZpbmUgRFJNX0RFVl9ERUJVR19QUklNRShkZXYsIGZtdCwgYXJncy4uLikJCQkJXAo+ICsJZHJt X2Rldl9wcmludGsoZGV2LCBLRVJOX0RFQlVHLCBEUk1fVVRfUFJJTUUsIF9fZnVuY19fLCAiIiwJ XAo+ICsJCSAgICAgICBmbXQsICMjYXJncykKPiAgI2RlZmluZSBEUk1fREVCVUdfUFJJTUUoZm10 LCBhcmdzLi4uKQkJCQkJXAo+IC0JZG8gewkJCQkJCQkJXAo+IC0JCWlmICh1bmxpa2VseShkcm1f ZGVidWcgJiBEUk1fVVRfUFJJTUUpKQkJCVwKPiAtCQkJZHJtX3V0X2RlYnVnX3ByaW50ayhfX2Z1 bmNfXywgZm10LCAjI2FyZ3MpOwlcCj4gLQl9IHdoaWxlICgwKQo+ICsJZHJtX3ByaW50ayhLRVJO X0RFQlVHLCBEUk1fVVRfUFJJTUUsIF9fZnVuY19fLCAiIiwgZm10LCAjI2FyZ3MpCj4gKwo+ICsj ZGVmaW5lIERSTV9ERVZfREVCVUdfQVRPTUlDKGRldiwgZm10LCBhcmdzLi4uKQkJCQlcCj4gKwlk cm1fZGV2X3ByaW50ayhkZXYsIEtFUk5fREVCVUcsIERSTV9VVF9BVE9NSUMsIF9fZnVuY19fLCAi IiwJXAo+ICsJCSAgICAgICBmbXQsICMjYXJncykKPiAgI2RlZmluZSBEUk1fREVCVUdfQVRPTUlD KGZtdCwgYXJncy4uLikJCQkJCVwKPiAtCWRvIHsJCQkJCQkJCVwKPiAtCQlpZiAodW5saWtlbHko ZHJtX2RlYnVnICYgRFJNX1VUX0FUT01JQykpCQlcCj4gLQkJCWRybV91dF9kZWJ1Z19wcmludGso X19mdW5jX18sIGZtdCwgIyNhcmdzKTsJXAo+IC0JfSB3aGlsZSAoMCkKPiArCWRybV9wcmludGso S0VSTl9ERUJVRywgRFJNX1VUX0FUT01JQywgX19mdW5jX18sICIiLCBmbXQsICMjYXJncykKPiAr Cj4gKyNkZWZpbmUgRFJNX0RFVl9ERUJVR19WQkwoZGV2LCBmbXQsIGFyZ3MuLi4pCQkJCVwKPiAr CWRybV9kZXZfcHJpbnRrKGRldiwgS0VSTl9ERUJVRywgRFJNX1VUX1ZCTCwgX19mdW5jX18sICIi LCBmbXQsCVwKPiArCQkgICAgICAgIyNhcmdzKQo+ICAjZGVmaW5lIERSTV9ERUJVR19WQkwoZm10 LCBhcmdzLi4uKQkJCQkJXAo+IC0JZG8gewkJCQkJCQkJXAo+IC0JCWlmICh1bmxpa2VseShkcm1f ZGVidWcgJiBEUk1fVVRfVkJMKSkJCQlcCj4gLQkJCWRybV91dF9kZWJ1Z19wcmludGsoX19mdW5j X18sIGZtdCwgIyNhcmdzKTsJXAo+IC0JfSB3aGlsZSAoMCkKPiAtCj4gLSNkZWZpbmUgX0RSTV9E RUZJTkVfREVCVUdfUkFURUxJTUlURUQobGV2ZWwsIGZtdCwgYXJncy4uLikJCVwKPiAtCWRvIHsJ CQkJCQkJCVwKPiAtCQlpZiAodW5saWtlbHkoZHJtX2RlYnVnICYgRFJNX1VUXyAjIyBsZXZlbCkp IHsJCVwKPiAtCQkJc3RhdGljIERFRklORV9SQVRFTElNSVRfU1RBVEUoCQkJXAo+IC0JCQkJX3Jz LAkJCQkJXAo+IC0JCQkJREVGQVVMVF9SQVRFTElNSVRfSU5URVJWQUwsCQlcCj4gLQkJCQlERUZB VUxUX1JBVEVMSU1JVF9CVVJTVCk7CQlcCj4gLQkJCQkJCQkJCVwKPiAtCQkJaWYgKF9fcmF0ZWxp bWl0KCZfcnMpKSB7CQkJXAo+IC0JCQkJZHJtX3V0X2RlYnVnX3ByaW50ayhfX2Z1bmNfXywgZm10 LAlcCj4gLQkJCQkJCSAgICAjI2FyZ3MpOwkJXAo+IC0JCQl9CQkJCQkJXAo+IC0JCX0JCQkJCQkJ XAo+IC0JfSB3aGlsZSAoMCkKPiArCWRybV9wcmludGsoS0VSTl9ERUJVRywgRFJNX1VUX1ZCTCwg X19mdW5jX18sICIiLCBmbXQsICMjYXJncykKPiArCj4gKyNkZWZpbmUgX0RSTV9ERVZfREVGSU5F X0RFQlVHX1JBVEVMSU1JVEVEKGRldiwgbGV2ZWwsIGZtdCwgYXJncy4uLikJXAo+ICsoewkJCQkJ CQkJCVwKPiArCXN0YXRpYyBERUZJTkVfUkFURUxJTUlUX1NUQVRFKF9ycywJCQkJXAo+ICsJCQkJ ICAgICAgREVGQVVMVF9SQVRFTElNSVRfSU5URVJWQUwsCVwKPiArCQkJCSAgICAgIERFRkFVTFRf UkFURUxJTUlUX0JVUlNUKTsJCVwKPiArCWlmIChfX3JhdGVsaW1pdCgmX3JzKSkJCQkJCQlcCj4g KwkJZHJtX2Rldl9wcmludGsoZGV2LCBLRVJOX0RFQlVHLCBEUk1fVVRfICMjIGxldmVsLAlcCj4g KwkJCSAgICAgICBfX2Z1bmNfXywgIiIsIGZtdCwgIyNhcmdzKTsJCVwKPiArfSkKPiAgCj4gIC8q Kgo+ICAgKiBSYXRlIGxpbWl0ZWQgZGVidWcgb3V0cHV0LiBMaWtlIERSTV9ERUJVRygpIGJ1dCB3 b24ndCBmbG9vZCB0aGUgbG9nLgo+IEBAIC0yNTMsMTQgKzI3MywyMiBAQCB2b2lkIGRybV9lcnIo Y29uc3QgY2hhciAqZm9ybWF0LCAuLi4pOwo+ICAgKiBccGFyYW0gZm10IHByaW50ZigpIGxpa2Ug Zm9ybWF0IHN0cmluZy4KPiAgICogXHBhcmFtIGFyZyBhcmd1bWVudHMKPiAgICovCj4gKyNkZWZp bmUgRFJNX0RFVl9ERUJVR19SQVRFTElNSVRFRChkZXYsIGZtdCwgYXJncy4uLikJCQlcCj4gKwlE RVZfX0RSTV9ERUZJTkVfREVCVUdfUkFURUxJTUlURUQoZGV2LCBDT1JFLCBmbXQsICMjYXJncykK PiAgI2RlZmluZSBEUk1fREVCVUdfUkFURUxJTUlURUQoZm10LCBhcmdzLi4uKQkJCQlcCj4gLQlf RFJNX0RFRklORV9ERUJVR19SQVRFTElNSVRFRChDT1JFLCBmbXQsICMjYXJncykKPiArCURSTV9E RVZfREVCVUdfUkFURUxJTUlURUQoTlVMTCwgZm10LCAjI2FyZ3MpCj4gKyNkZWZpbmUgRFJNX0RF Vl9ERUJVR19EUklWRVJfUkFURUxJTUlURUQoZGV2LCBmbXQsIGFyZ3MuLi4pCQlcCj4gKwlfRFJN X0RFVl9ERUZJTkVfREVCVUdfUkFURUxJTUlURUQoZGV2LCBEUklWRVIsIGZtdCwgIyNhcmdzKQo+ ICAjZGVmaW5lIERSTV9ERUJVR19EUklWRVJfUkFURUxJTUlURUQoZm10LCBhcmdzLi4uKQkJCVwK PiAtCV9EUk1fREVGSU5FX0RFQlVHX1JBVEVMSU1JVEVEKERSSVZFUiwgZm10LCAjI2FyZ3MpCj4g KwlEUk1fREVWX0RFQlVHX0RSSVZFUl9SQVRFTElNSVRFRChOVUxMLCBmbXQsICMjYXJncykKPiAr I2RlZmluZSBEUk1fREVWX0RFQlVHX0tNU19SQVRFTElNSVRFRChkZXYsIGZtdCwgYXJncy4uLikJ CVwKPiArCV9EUk1fREVWX0RFRklORV9ERUJVR19SQVRFTElNSVRFRChkZXYsIEtNUywgZm10LCAj I2FyZ3MpCj4gICNkZWZpbmUgRFJNX0RFQlVHX0tNU19SQVRFTElNSVRFRChmbXQsIGFyZ3MuLi4p CQkJCVwKPiAtCV9EUk1fREVGSU5FX0RFQlVHX1JBVEVMSU1JVEVEKEtNUywgZm10LCAjI2FyZ3Mp Cj4gKwlEUk1fREVWX0RFQlVHX0tNU19SQVRFTElNSVRFRChOVUxMLCBmbXQsICMjYXJncykKPiAr I2RlZmluZSBEUk1fREVWX0RFQlVHX1BSSU1FX1JBVEVMSU1JVEVEKGRldiwgZm10LCBhcmdzLi4u KQkJXAo+ICsJX0RSTV9ERVZfREVGSU5FX0RFQlVHX1JBVEVMSU1JVEVEKGRldiwgUFJJTUUsIGZt dCwgIyNhcmdzKQo+ICAjZGVmaW5lIERSTV9ERUJVR19QUklNRV9SQVRFTElNSVRFRChmbXQsIGFy Z3MuLi4pCQkJXAo+IC0JX0RSTV9ERUZJTkVfREVCVUdfUkFURUxJTUlURUQoUFJJTUUsIGZtdCwg IyNhcmdzKQo+ICsJRFJNX0RFVl9ERUJVR19QUklNRV9SQVRFTElNSVRFRChOVUxMLCBmbXQsICMj YXJncykKPiAgCj4gIC8qQH0qLwo+ICAKPiAtLSAKPiAyLjguMC5yYzMuMjI2LmczOWQ0MDIwCj4g Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZl bCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xp c3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=