From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sean Paul Subject: Re: [PATCH 12/14] drm/msm/dpu: remove topology name Date: Wed, 5 Sep 2018 09:33:34 -0400 Message-ID: <20180905133334.GV188300@art_vandelay> References: <1535503203-22054-1-git-send-email-jsanka@codeaurora.org> <1535503203-22054-13-git-send-email-jsanka@codeaurora.org> <20180831160846.GO188300@art_vandelay> <6e6b8dd4bbc3343c82b3e093db23b6f5@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <6e6b8dd4bbc3343c82b3e093db23b6f5-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: freedreno-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Freedreno" To: Jeykumar Sankaran Cc: Sean Paul , dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, robdclark-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org, seanpaul-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org, linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, hoegsberg-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org, freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: dri-devel@lists.freedesktop.org T24gVHVlLCBTZXAgMDQsIDIwMTggYXQgMDQ6MDM6MjVQTSAtMDcwMCwgSmV5a3VtYXIgU2Fua2Fy YW4gd3JvdGU6Cj4gT24gMjAxOC0wOC0zMSAwOTowOCwgU2VhbiBQYXVsIHdyb3RlOgo+ID4gT24g VHVlLCBBdWcgMjgsIDIwMTggYXQgMDU6NDA6MDFQTSAtMDcwMCwgSmV5a3VtYXIgU2Fua2FyYW4g d3JvdGU6Cj4gPiA+IFN0cmlwIGRvd24gdGhlIHN1cHBvcnQgZm9yIHRvcG9sb2d5IGVudW1zLiBJ dAo+ID4gPiBjYW4gYmUgcmVwbGFjZWQgd2l0aCBzaW1wbGUgaHcgY291bnQgY2hlY2tzLgo+ID4g PiAKPiA+IAo+ID4gQ2hhbmdlcyBpbiB2NDoKPiA+IC4uLgo+ID4gCj4gPiA+IFNpZ25lZC1vZmYt Ynk6IEpleWt1bWFyIFNhbmthcmFuIDxqc2Fua2FAY29kZWF1cm9yYS5vcmc+Cj4gPiA+IC0tLQo+ ID4gPiAgZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2VuY29kZXIuYyAgICAgICAg fCAgMyAtLQo+ID4gPiAgZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2VuY29kZXIu aCAgICAgICAgfCAgMSAtCj4gPiA+ICBkcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVf ZW5jb2Rlcl9waHlzLmggICB8ICA5ICsrKystLQo+ID4gPiAgLi4uL2dwdS9kcm0vbXNtL2Rpc3Av ZHB1MS9kcHVfZW5jb2Rlcl9waHlzX3ZpZC5jICAgfCAgNyArKystLQo+ID4gPiAgZHJpdmVycy9n cHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X3JtLmMgICAgICAgICAgICAgfCAzNgo+ID4gKysrKysr LS0tLS0tLS0tLS0tLS0tLQo+ID4gPiAgZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1 X3JtLmggICAgICAgICAgICAgfCAyNAo+ID4gPiAtLS0tLS0tLS0tLS0tLS0KPiA+ID4gIDYgZmls ZXMgY2hhbmdlZCwgMTkgaW5zZXJ0aW9ucygrKSwgNjEgZGVsZXRpb25zKC0pCj4gPiA+IAo+ID4g PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2VuY29kZXIu Ywo+ID4gYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfZW5jb2Rlci5jCj4gPiA+ IGluZGV4IGRiZjY2OWUuLjU2ZWYzNDkgMTAwNjQ0Cj4gPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9tc20vZGlzcC9kcHUxL2RwdV9lbmNvZGVyLmMKPiA+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJt L21zbS9kaXNwL2RwdTEvZHB1X2VuY29kZXIuYwo+ID4gPiBAQCAtMTAxMyw3ICsxMDEzLDYgQEAg c3RhdGljIHZvaWQgZHB1X2VuY29kZXJfdmlydF9tb2RlX3NldChzdHJ1Y3QKPiA+IGRybV9lbmNv ZGVyICpkcm1fZW5jLAo+ID4gPiAgCXN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uID0gTlVMTCwg KmNvbm5faXRlcjsKPiA+ID4gIAlzdHJ1Y3QgZHB1X3JtX2h3X2l0ZXIgcHBfaXRlciwgY3RsX2l0 ZXI7Cj4gPiA+ICAJc3RydWN0IG1zbV9kaXNwbGF5X3RvcG9sb2d5IHRvcG9sb2d5Owo+ID4gPiAt CWVudW0gZHB1X3JtX3RvcG9sb2d5X25hbWUgdG9wb2xvZ3lfbmFtZTsKPiA+ID4gIAlzdHJ1Y3Qg ZHB1X2h3X2N0bCAqaHdfY3RsW01BWF9DSEFOTkVMU19QRVJfRU5DXSA9IHsgTlVMTCB9Owo+ID4g PiAgCWludCBpID0gMCwgcmV0Owo+ID4gPiAKPiA+ID4gQEAgLTEwNjksNyArMTA2OCw2IEBAIHN0 YXRpYyB2b2lkIGRwdV9lbmNvZGVyX3ZpcnRfbW9kZV9zZXQoc3RydWN0Cj4gPiBkcm1fZW5jb2Rl ciAqZHJtX2VuYywKPiA+ID4gIAkJaHdfY3RsW2ldID0gKHN0cnVjdCBkcHVfaHdfY3RsICopY3Rs X2l0ZXIuaHc7Cj4gPiA+ICAJfQo+ID4gPiAKPiA+ID4gLQl0b3BvbG9neV9uYW1lID0gZHB1X3Jt X2dldF90b3BvbG9neV9uYW1lKHRvcG9sb2d5KTsKPiA+ID4gIAlmb3IgKGkgPSAwOyBpIDwgZHB1 X2VuYy0+bnVtX3BoeXNfZW5jczsgaSsrKSB7Cj4gPiA+ICAJCXN0cnVjdCBkcHVfZW5jb2Rlcl9w aHlzICpwaHlzID0gZHB1X2VuYy0+cGh5c19lbmNzW2ldOwo+ID4gPiAKPiA+ID4gQEAgLTEwODks NyArMTA4Nyw2IEBAIHN0YXRpYyB2b2lkIGRwdV9lbmNvZGVyX3ZpcnRfbW9kZV9zZXQoc3RydWN0 Cj4gPiBkcm1fZW5jb2RlciAqZHJtX2VuYywKPiA+ID4gIAkJCXBoeXMtPmh3X2N0bCA9IGh3X2N0 bFtpXTsKPiA+ID4gCj4gPiA+ICAJCQlwaHlzLT5jb25uZWN0b3IgPSBjb25uLT5zdGF0ZS0+Y29u bmVjdG9yOwo+ID4gPiAtCQkJcGh5cy0+dG9wb2xvZ3lfbmFtZSA9IHRvcG9sb2d5X25hbWU7Cj4g PiA+ICAJCQlpZiAocGh5cy0+b3BzLm1vZGVfc2V0KQo+ID4gPiAgCQkJCXBoeXMtPm9wcy5tb2Rl X3NldChwaHlzLCBtb2RlLCBhZGpfbW9kZSk7Cj4gPiA+ICAJCX0KPiA+ID4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9lbmNvZGVyLmgKPiA+IGIvZHJpdmVy cy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2VuY29kZXIuaAo+ID4gPiBpbmRleCA2MGY4MDlm Li5jNTYwMGU2IDEwMDY0NAo+ID4gPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1 MS9kcHVfZW5jb2Rlci5oCj4gPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUx L2RwdV9lbmNvZGVyLmgKPiA+ID4gQEAgLTM1LDcgKzM1LDYgQEAKPiA+ID4gICAqIEBuZWVkc19j ZG06CUVuY29kZXIgcmVxdWVzdHMgYSBDRE0gYmFzZWQgb24gcGl4ZWwgZm9ybWF0Cj4gPiBjb252 ZXJzaW9uIG5lZWRzCj4gPiA+ICAgKiBAZGlzcGxheV9udW1fb2ZfaF90aWxlczogTnVtYmVyIG9m IGhvcml6b250YWwgdGlsZXMgaW4gY2FzZSBvZgo+ID4gPiBzcGxpdAo+ID4gPiAgICogICAgICAg ICAgICAgICAgICAgICAgICAgIGludGVyZmFjZQo+ID4gPiAtICogQHRvcG9sb2d5OiAgIFRvcG9s b2d5IG9mIHRoZSBkaXNwbGF5Cj4gPiA+ICAgKi8KPiA+ID4gIHN0cnVjdCBkcHVfZW5jb2Rlcl9o d19yZXNvdXJjZXMgewo+ID4gPiAgCWVudW0gZHB1X2ludGZfbW9kZSBpbnRmc1tJTlRGX01BWF07 Cj4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfZW5j b2Rlcl9waHlzLmgKPiA+IGIvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2VuY29k ZXJfcGh5cy5oCj4gPiA+IGluZGV4IGIzOTE3ZTAuLmI1ZmM2NWMgMTAwNjQ0Cj4gPiA+IC0tLSBh L2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9lbmNvZGVyX3BoeXMuaAo+ID4gPiAr KysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfZW5jb2Rlcl9waHlzLmgKPiA+ ID4gQEAgLTI0LDYgKzI0LDcgQEAKPiA+ID4gICNpbmNsdWRlICJkcHVfaHdfdG9wLmgiCj4gPiA+ ICAjaW5jbHVkZSAiZHB1X2h3X2NkbS5oIgo+ID4gPiAgI2luY2x1ZGUgImRwdV9lbmNvZGVyLmgi Cj4gPiA+ICsjaW5jbHVkZSAiZHB1X2NydGMuaCIKPiA+ID4gCj4gPiA+ICAjZGVmaW5lIERQVV9F TkNPREVSX05BTUVfTUFYCTE2Cj4gPiA+IAo+ID4gPiBAQCAtMjEzLDcgKzIxNCw2IEBAIHN0cnVj dCBkcHVfZW5jb2Rlcl9pcnEgewo+ID4gPiAgICogQHNwbGl0X3JvbGU6CQlSb2xlIHRvIHBsYXkg aW4gYSBzcGxpdC1wYW5lbAo+ID4gY29uZmlndXJhdGlvbgo+ID4gPiAgICogQGludGZfbW9kZToJ CUludGVyZmFjZSBtb2RlCj4gPiA+ICAgKiBAaW50Zl9pZHg6CQlJbnRlcmZhY2UgaW5kZXggb24g ZHB1IGhhcmR3YXJlCj4gPiA+IC0gKiBAdG9wb2xvZ3lfbmFtZToJdG9wb2xvZ3kgc2VsZWN0ZWQg Zm9yIHRoZSBkaXNwbGF5Cj4gPiA+ICAgKiBAZW5jX3NwaW5sb2NrOglWaXJ0dWFsLUVuY29kZXIt V2lkZSBTcGluIExvY2sgZm9yIElSUSBwdXJwb3Nlcwo+ID4gPiAgICogQGVuYWJsZV9zdGF0ZToJ RW5hYmxlIHN0YXRlIHRyYWNraW5nCj4gPiA+ICAgKiBAdmJsYW5rX3JlZmNvdW50OglSZWZlcmVu Y2UgY291bnQgb2YgdmJsYW5rIHJlcXVlc3QKPiA+ID4gQEAgLTI0Myw3ICsyNDMsNiBAQCBzdHJ1 Y3QgZHB1X2VuY29kZXJfcGh5cyB7Cj4gPiA+ICAJZW51bSBkcHVfZW5jX3NwbGl0X3JvbGUgc3Bs aXRfcm9sZTsKPiA+ID4gIAllbnVtIGRwdV9pbnRmX21vZGUgaW50Zl9tb2RlOwo+ID4gPiAgCWVu dW0gZHB1X2ludGYgaW50Zl9pZHg7Cj4gPiA+IC0JZW51bSBkcHVfcm1fdG9wb2xvZ3lfbmFtZSB0 b3BvbG9neV9uYW1lOwo+ID4gPiAgCXNwaW5sb2NrX3QgKmVuY19zcGlubG9jazsKPiA+ID4gIAll bnVtIGRwdV9lbmNfZW5hYmxlX3N0YXRlIGVuYWJsZV9zdGF0ZTsKPiA+ID4gIAlhdG9taWNfdCB2 YmxhbmtfcmVmY291bnQ7Cj4gPiA+IEBAIC0zNjEsMTEgKzM2MCwxNSBAQCBzdHJ1Y3QgZHB1X2Vu Y29kZXJfcGh5cwo+ID4gKmRwdV9lbmNvZGVyX3BoeXNfY21kX2luaXQoCj4gPiA+ICBzdGF0aWMg aW5saW5lIGVudW0gZHB1XzNkX2JsZW5kX21vZGUKPiA+IGRwdV9lbmNvZGVyX2hlbHBlcl9nZXRf M2RfYmxlbmRfbW9kZSgKPiA+ID4gIAkJc3RydWN0IGRwdV9lbmNvZGVyX3BoeXMgKnBoeXNfZW5j KQo+ID4gPiAgewo+ID4gPiArCXN0cnVjdCBkcHVfY3J0Y19zdGF0ZSAqZHB1X2NzdGF0ZTsKPiA+ ID4gKwo+ID4gPiAgCWlmICghcGh5c19lbmMgfHwgcGh5c19lbmMtPmVuYWJsZV9zdGF0ZSA9PSBE UFVfRU5DX0RJU0FCTElORykKPiA+ID4gIAkJcmV0dXJuIEJMRU5EXzNEX05PTkU7Cj4gPiA+IAo+ ID4gPiArCWRwdV9jc3RhdGUgPSB0b19kcHVfY3J0Y19zdGF0ZShwaHlzX2VuYy0+cGFyZW50LT5j cnRjLT5zdGF0ZSk7Cj4gPiA+ICsKPiA+ID4gIAlpZiAocGh5c19lbmMtPnNwbGl0X3JvbGUgPT0g RU5DX1JPTEVfU09MTyAmJgo+ID4gPiAtCSAgICBwaHlzX2VuYy0+dG9wb2xvZ3lfbmFtZSA9PSBE UFVfUk1fVE9QT0xPR1lfRFVBTFBJUEVfM0RNRVJHRSkKPiA+ID4gKwkgICAgKGRwdV9jc3RhdGUt Pm51bV9taXhlcnMgPT0gMikpCj4gPiAKPiA+IEkgZ3Vlc3MgdGhpcyBzaG91bGQgYmUgQ1JUQ19E VUFMX01JWEVSUz8gUGVyaGFwcyB5b3Ugc2hvdWxkIGFkZCBhIGhlbHBlcgo+ID4gY2FsbGVkCj4g PiBkcHVfY3J0Y19zdGF0ZV9pc19zdGVyZW8oKSBpbnN0ZWFkIG9mIGxpdHRlcmluZyB0aGVzZSBj aGVja3MgZXZlcnl3aGVyZS4KPiA+IAo+ID4gPiAgCQlyZXR1cm4gQkxFTkRfM0RfSF9ST1dfSU5U Owo+ID4gPiAKPiA+ID4gIAlyZXR1cm4gQkxFTkRfM0RfTk9ORTsKPiA+ID4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9lbmNvZGVyX3BoeXNfdmlkLmMKPiA+ IGIvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2VuY29kZXJfcGh5c192aWQuYwo+ ID4gPiBpbmRleCA2ZGUxM2Y0Li4xNjQzZTJmIDEwMDY0NAo+ID4gPiAtLS0gYS9kcml2ZXJzL2dw dS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfZW5jb2Rlcl9waHlzX3ZpZC5jCj4gPiA+ICsrKyBiL2Ry aXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9lbmNvZGVyX3BoeXNfdmlkLmMKPiA+ID4g QEAgLTM1NSwxMyArMzU1LDE0IEBAIHN0YXRpYyB2b2lkCj4gPiA+IGRwdV9lbmNvZGVyX3BoeXNf dmlkX3VuZGVycnVuX2lycSh2b2lkCj4gPiAqYXJnLCBpbnQgaXJxX2lkeCkKPiA+ID4gCj4gPiA+ ICBzdGF0aWMgYm9vbCBfZHB1X2VuY29kZXJfcGh5c19pc19kdWFsX2N0bChzdHJ1Y3QgZHB1X2Vu Y29kZXJfcGh5cwo+ID4gKnBoeXNfZW5jKQo+ID4gPiAgewo+ID4gPiArCXN0cnVjdCBkcHVfY3J0 Y19zdGF0ZSAqZHB1X2NzdGF0ZTsKPiA+ID4gKwo+ID4gPiAgCWlmICghcGh5c19lbmMpCj4gPiA+ ICAJCXJldHVybiBmYWxzZTsKPiA+ID4gCj4gPiA+IC0JaWYgKHBoeXNfZW5jLT50b3BvbG9neV9u YW1lID09IERQVV9STV9UT1BPTE9HWV9EVUFMUElQRSkKPiA+ID4gLQkJcmV0dXJuIHRydWU7Cj4g PiA+ICsJZHB1X2NzdGF0ZSA9IHRvX2RwdV9jcnRjX3N0YXRlKHBoeXNfZW5jLT5wYXJlbnQtPmNy dGMtPnN0YXRlKTsKPiA+ID4gCj4gPiA+IC0JcmV0dXJuIGZhbHNlOwo+ID4gPiArCXJldHVybiAo ZHB1X2NzdGF0ZS0+bnVtX2N0bHMgPiAxKTsKPiA+IAo+ID4gVW5uZWNlc3NhcnkgcGFyZW5zCj4g PiAKPiA+ID4gIH0KPiA+ID4gCj4gPiA+ICBzdGF0aWMgYm9vbCBkcHVfZW5jb2Rlcl9waHlzX3Zp ZF9uZWVkc19zaW5nbGVfZmx1c2goCj4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v bXNtL2Rpc3AvZHB1MS9kcHVfcm0uYwo+ID4gYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1 MS9kcHVfcm0uYwo+ID4gPiBpbmRleCAxM2MwYTM2Li5mYmQ0ODlmIDEwMDY0NAo+ID4gPiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfcm0uYwo+ID4gPiArKysgYi9kcml2 ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfcm0uYwo+ID4gPiBAQCAtMzMsNyArMzMsNiBA QAo+ID4gPiAgCQkJCSh0KS5udW1faW50ZiA9PSAocikubnVtX2ludGYpCj4gPiA+IAo+ID4gPiAg c3RydWN0IGRwdV9ybV90b3BvbG9neV9kZWYgewo+ID4gPiAtCWVudW0gZHB1X3JtX3RvcG9sb2d5 X25hbWUgdG9wX25hbWU7Cj4gPiA+ICAJaW50IG51bV9sbTsKPiA+ID4gIAlpbnQgbnVtX2NvbXBf ZW5jOwo+ID4gPiAgCWludCBudW1faW50ZjsKPiA+ID4gQEAgLTQyLDEwICs0MSwxMCBAQCBzdHJ1 Y3QgZHB1X3JtX3RvcG9sb2d5X2RlZiB7Cj4gPiA+ICB9Owo+ID4gPiAKPiA+ID4gIHN0YXRpYyBj b25zdCBzdHJ1Y3QgZHB1X3JtX3RvcG9sb2d5X2RlZiBnX3RvcF90YWJsZVtdID0gewo+ID4gPiAt CXsgICBEUFVfUk1fVE9QT0xPR1lfTk9ORSwgICAgICAgICAgICAgICAgIDAsIDAsIDAsIDAsIGZh bHNlIH0sCj4gPiA+IC0JeyAgIERQVV9STV9UT1BPTE9HWV9TSU5HTEVQSVBFLCAgICAgICAgICAg MSwgMCwgMSwgMSwgZmFsc2UgfSwKPiA+ID4gLQl7ICAgRFBVX1JNX1RPUE9MT0dZX0RVQUxQSVBF LCAgICAgICAgICAgICAyLCAwLCAyLCAyLCB0cnVlICB9LAo+ID4gPiAtCXsgICBEUFVfUk1fVE9Q T0xPR1lfRFVBTFBJUEVfM0RNRVJHRSwgICAgIDIsIDAsIDEsIDEsIGZhbHNlIH0sCj4gPiA+ICsJ eyAgIDAsIDAsIDAsIDAsIGZhbHNlIH0sCj4gPiA+ICsJeyAgIDEsIDAsIDEsIDEsIGZhbHNlIH0s Cj4gPiA+ICsJeyAgIDIsIDAsIDIsIDIsIHRydWUgIH0sCj4gPiA+ICsJeyAgIDIsIDAsIDEsIDEs IGZhbHNlIH0sCj4gPiAKPiA+IFlvdSBkb24ndCBuZWVkIHRoaXMuIFRoZSBkYXRhIGl0IHByb3Zp ZGVzIGNhbiBiZSBkZWR1Y2VkIGFscmVhZHk6Cj4gPiBudW1fY3RsID09IG51bV9pbnRmCj4gPiBu ZWVkc19zcGxpdF9kaXNwbGF5ID09IChudW1faW50ZiA+IDEpCj4gPiAKPiA+ID4gIH07Cj4gPiA+ IAo+ID4gPiAgLyoqCj4gPiA+IEBAIC03MiwxMyArNzEsMTEgQEAgc3RydWN0IGRwdV9ybV9yZXF1 aXJlbWVudHMgewo+ID4gPiAgICogQGVuY19pZDoJUmVzZXJ2YXRpb25zIGFyZSB0cmFja2VkIGJ5 IEVuY29kZXIgRFJNIG9iamVjdCBJRC4KPiA+ID4gICAqCQlDUlRDcyBtYXkgYmUgY29ubmVjdGVk IHRvIG11bHRpcGxlIEVuY29kZXJzLgo+ID4gPiAgICoJCUFuIGVuY29kZXIgb3IgY29ubmVjdG9y IGlkIGlkZW50aWZpZXMgdGhlIGRpc3BsYXkgcGF0aC4KPiA+ID4gLSAqIEB0b3BvbG9neQlEUk08 LT5IVyB0b3BvbG9neSB1c2UgY2FzZQo+ID4gPiAgICovCj4gPiA+ICBzdHJ1Y3QgZHB1X3JtX3Jz dnAgewo+ID4gPiAgCXN0cnVjdCBsaXN0X2hlYWQgbGlzdDsKPiA+ID4gIAl1aW50MzJfdCBzZXE7 Cj4gPiA+ICAJdWludDMyX3QgZW5jX2lkOwo+ID4gPiAtCWVudW0gZHB1X3JtX3RvcG9sb2d5X25h bWUgdG9wb2xvZ3k7Cj4gPiA+ICB9Owo+ID4gPiAKPiA+ID4gIC8qKgo+ID4gPiBAQCAtMTIyLDgg KzExOSw4IEBAIHN0YXRpYyB2b2lkIF9kcHVfcm1fcHJpbnRfcnN2cHMoCj4gPiA+ICAJRFBVX0RF QlVHKCIlZFxuIiwgc3RhZ2UpOwo+ID4gPiAKPiA+ID4gIAlsaXN0X2Zvcl9lYWNoX2VudHJ5KHJz dnAsICZybS0+cnN2cHMsIGxpc3QpIHsKPiA+ID4gLQkJRFJNX0RFQlVHX0tNUygiJWQgcnN2cFtz JXVlJXVdIHRvcG9sb2d5ICVkXG4iLCBzdGFnZSwKPiA+IHJzdnAtPnNlcSwKPiA+ID4gLQkJCSAg ICAgIHJzdnAtPmVuY19pZCwgcnN2cC0+dG9wb2xvZ3kpOwo+ID4gPiArCQlEUk1fREVCVUdfS01T KCIlZCByc3ZwW3MldWUldV1cbiIsIHN0YWdlLCByc3ZwLT5zZXEsCj4gPiA+ICsJCQkgICAgICBy c3ZwLT5lbmNfaWQpOwo+ID4gPiAgCX0KPiA+ID4gCj4gPiA+ICAJZm9yICh0eXBlID0gMDsgdHlw ZSA8IERQVV9IV19CTEtfTUFYOyB0eXBlKyspIHsKPiA+ID4gQEAgLTE0NiwxOCArMTQzLDYgQEAg c3RydWN0IGRwdV9od19tZHAgKmRwdV9ybV9nZXRfbWRwKHN0cnVjdCBkcHVfcm0KPiA+ICpybSkK PiA+ID4gIAlyZXR1cm4gcm0tPmh3X21kcDsKPiA+ID4gIH0KPiA+ID4gCj4gPiA+IC1lbnVtIGRw dV9ybV90b3BvbG9neV9uYW1lCj4gPiA+IC1kcHVfcm1fZ2V0X3RvcG9sb2d5X25hbWUoc3RydWN0 IG1zbV9kaXNwbGF5X3RvcG9sb2d5IHRvcG9sb2d5KQo+ID4gPiAtewo+ID4gPiAtCWludCBpOwo+ ID4gPiAtCj4gPiA+IC0JZm9yIChpID0gMDsgaSA8IERQVV9STV9UT1BPTE9HWV9NQVg7IGkrKykK PiA+ID4gLQkJaWYgKFJNX0lTX1RPUE9MT0dZX01BVENIKGdfdG9wX3RhYmxlW2ldLCB0b3BvbG9n eSkpCj4gPiA+IC0JCQlyZXR1cm4gZ190b3BfdGFibGVbaV0udG9wX25hbWU7Cj4gPiA+IC0KPiA+ ID4gLQlyZXR1cm4gRFBVX1JNX1RPUE9MT0dZX05PTkU7Cj4gPiA+IC19Cj4gPiA+IC0KPiA+ID4g IHZvaWQgZHB1X3JtX2luaXRfaHdfaXRlcigKPiA+ID4gIAkJc3RydWN0IGRwdV9ybV9od19pdGVy ICppdGVyLAo+ID4gPiAgCQl1aW50MzJfdCBlbmNfaWQsCj4gPiA+IEBAIC03NjAsNyArNzQ1LDYg QEAgc3RhdGljIGludCBfZHB1X3JtX21ha2VfbmV4dF9yc3ZwKAo+ID4gPiAgCS8qIENyZWF0ZSBy ZXNlcnZhdGlvbiBpbmZvLCB0YWcgcmVzZXJ2ZWQgYmxvY2tzIHdpdGggaXQgYXMgd2UgZ28KPiA+ ICovCj4gPiA+ICAJcnN2cC0+c2VxID0gKytybS0+cnN2cF9uZXh0X3NlcTsKPiA+ID4gIAlyc3Zw LT5lbmNfaWQgPSBlbmMtPmJhc2UuaWQ7Cj4gPiA+IC0JcnN2cC0+dG9wb2xvZ3kgPSByZXFzLT50 b3BvbG9neS0+dG9wX25hbWU7Cj4gPiA+ICAJbGlzdF9hZGRfdGFpbCgmcnN2cC0+bGlzdCwgJnJt LT5yc3Zwcyk7Cj4gPiA+IAo+ID4gPiAgCXJldCA9IF9kcHVfcm1fcmVzZXJ2ZV9sbXMocm0sIHJz dnAsIHJlcXMpOwo+ID4gPiBAQCAtODA3LDcgKzc5MSw3IEBAIHN0YXRpYyBpbnQgX2RwdV9ybV9w b3B1bGF0ZV9yZXF1aXJlbWVudHMoCj4gPiA+IAo+ID4gPiAgCWRwdV9lbmNvZGVyX2dldF9od19y ZXNvdXJjZXMoZW5jLCAmcmVxcy0+aHdfcmVzLCBjb25uX3N0YXRlKTsKPiA+ID4gCj4gPiA+IC0J Zm9yIChpID0gMDsgaSA8IERQVV9STV9UT1BPTE9HWV9NQVg7IGkrKykgewo+ID4gPiArCWZvciAo aSA9IDA7IGkgPCBBUlJBWV9TSVpFKGdfdG9wX3RhYmxlKTsgaSsrKSB7Cj4gPiA+ICAJCWlmIChS TV9JU19UT1BPTE9HWV9NQVRDSChnX3RvcF90YWJsZVtpXSwKPiA+ID4gIAkJCQkJcmVxX3RvcG9s b2d5KSkgewo+ID4gPiAgCQkJcmVxcy0+dG9wb2xvZ3kgPSAmZ190b3BfdGFibGVbaV07Cj4gPiAK PiA+IFNpbmNlIHlvdSBjYW4gZ2V0IHJpZCBvZiBnX3RvcF90YWJsZSwgeW91IGNhbiBnZXQgcmlk IG9mIHJlcXMtPnRvcG9sb2d5Cj4gPiB0b28uCj4gPiAKPiBEUFUgUk0gaXMgdXNpbmcgcmVxcy0+ dG9wb2xvZ3kgKGllLiBzdHJ1Y3QgZHB1X3JtX3RvcG9sb2d5X2RlZikgdG8gcmVwcmVzZW50Cj4g dGhlIGh3X2Jsb2NrIHJlcXVpcmVtZW50cyBmb3IgYSBkaXNwbGF5LiBSZW1vdmluZyB0aGUgc3Ry dWN0dXJlCj4gbWlnaHQgcmVxdWlyZSBjaGFuZ2VzIGluIHJlc3Qgb2YgUk0gYWxsb2MgZnVuY3Rp b25zLgo+IAo+IElmIHlvdSBjYW4gaG9sZCBvZmYgb24gdGhpcywgSSBhbSBwbGFubmluZyB0byBh ZGRyZXNzIHlvdXIgY29tbWVudCBpbiB0aGUKPiBSTSByZWZhY3RvciBzZXJpZXMuCgpJJ2QgcmF0 aGVyIGl0IGJlIGludHJvZHVjZWQgd2hlbiBpdCdzIHVzZWQuIFRoYXQgd2F5IGl0IGNhbiBldmFs dXRhdGVkIG9uIGl0cwpvd24gbWVyaXRzIHdoZW4gd2UgaGF2ZSB0aGUgZnVsbCBwaWN0dXJlLiBU aGVyZSdzIGEgYnVuY2ggb2YgdW51c2VkIG9yCmR1cGxpY2F0ZWQgY29kZSBzdXJyb3VuZGluZyB0 aGUgUk0sIGFuZCBJIHRoaW5rIGl0J2QgYmUgYmVzdCB0byBjbGVhbiBpdCB1cAp3aGlsZSB3ZSBh bGwgaGF2ZSBmdWxsIGNvbnRleHQgaW4gb3VyIGhlYWRzLgoKU2VhbgoKPiAKPiBKZXlrdW1hciBT Lgo+IAo+ID4gPiBAQCAtODMxLDkgKzgxNSw4IEBAIHN0YXRpYyBpbnQgX2RwdV9ybV9wb3B1bGF0 ZV9yZXF1aXJlbWVudHMoCj4gPiA+IAo+ID4gPiAgCURSTV9ERUJVR19LTVMoInRvcF9jdHJsOiAw eCVsbFggbnVtX2hfdGlsZXM6ICVkXG4iLAo+ID4gcmVxcy0+dG9wX2N0cmwsCj4gPiA+ICAJCSAg ICAgIHJlcXMtPmh3X3Jlcy5kaXNwbGF5X251bV9vZl9oX3RpbGVzKTsKPiA+ID4gLQlEUk1fREVC VUdfS01TKCJudW1fbG06ICVkIG51bV9jdGw6ICVkIHRvcG9sb2d5OiAlZCBzcGxpdF9kaXNwbGF5 Ogo+ID4gJWRcbiIsCj4gPiA+ICsJRFJNX0RFQlVHX0tNUygibnVtX2xtOiAlZCBudW1fY3RsOiAl ZCBzcGxpdF9kaXNwbGF5OiAlZFxuIiwKPiA+ID4gIAkJICAgICAgcmVxcy0+dG9wb2xvZ3ktPm51 bV9sbSwgcmVxcy0+dG9wb2xvZ3ktPm51bV9jdGwsCj4gPiA+IC0JCSAgICAgIHJlcXMtPnRvcG9s b2d5LT50b3BfbmFtZSwKPiA+ID4gIAkJICAgICAgcmVxcy0+dG9wb2xvZ3ktPm5lZWRzX3NwbGl0 X2Rpc3BsYXkpOwo+ID4gPiAKPiA+ID4gIAlyZXR1cm4gMDsKPiA+ID4gQEAgLTk2OSw4ICs5NTIs NyBAQCBzdGF0aWMgaW50IF9kcHVfcm1fY29tbWl0X3JzdnAoCj4gPiA+ICAJfQo+ID4gPiAKPiA+ ID4gIAlpZiAoIXJldCkKPiA+ID4gLQkJRFJNX0RFQlVHX0tNUygicnNydiBlbmMgJWQgdG9wb2xv Z3kgJWRcbiIsIHJzdnAtPmVuY19pZCwKPiA+ID4gLQkJCSAgICAgIHJzdnAtPnRvcG9sb2d5KTsK PiA+ID4gKwkJRFJNX0RFQlVHX0tNUygicnNydiBlbmMgJWRcbiIsIHJzdnAtPmVuY19pZCk7Cj4g PiAKPiA+IFRoaXMgZGVidWcgbWVzc2FnZSBkb2Vzbid0IHByb3ZpZGUgYW55IHZhbHVlIGFueSBs b25nZXIuCj4gPiAKPiA+ID4gCj4gPiA+ICAJcmV0dXJuIHJldDsKPiA+ID4gIH0KPiA+ID4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9ybS5oCj4gPiBiL2Ry aXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9ybS5oCj4gPiA+IGluZGV4IGZmZDE4NDEu LjZmZDllN2IgMTAwNjQ0Cj4gPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUx L2RwdV9ybS5oCj4gPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9y bS5oCj4gPiA+IEBAIC0yMSwyMSArMjEsNiBAQAo+ID4gPiAgI2luY2x1ZGUgImRwdV9od190b3Au aCIKPiA+ID4gCj4gPiA+ICAvKioKPiA+ID4gLSAqIGVudW0gZHB1X3JtX3RvcG9sb2d5X25hbWUg LSBIVyByZXNvdXJjZSB1c2UgY2FzZSBpbiB1c2UgYnkKPiA+ID4gY29ubmVjdG9yCj4gPiA+IC0g KiBARFBVX1JNX1RPUE9MT0dZX05PTkU6ICAgICAgICAgICAgICAgICBObyB0b3BvbG9neSBpbiB1 c2UKPiA+ID4gY3VycmVudGx5Cj4gPiA+IC0gKiBARFBVX1JNX1RPUE9MT0dZX1NJTkdMRVBJUEU6 ICAgICAgICAgICAxIExNLCAxIFBQLCAxIElOVEYvV0IKPiA+ID4gLSAqIEBEUFVfUk1fVE9QT0xP R1lfRFVBTFBJUEU6ICAgICAgICAgICAgIDIgTE0sIDIgUFAsIDIgSU5URi9XQgo+ID4gPiAtICog QERQVV9STV9UT1BPTE9HWV9EVUFMUElQRV8zRE1FUkdFOiAgICAgMiBMTSwgMiBQUCwgM0RNdXgs IDEKPiA+ID4gSU5URi9XQgo+ID4gPiAtICovCj4gPiA+IC1lbnVtIGRwdV9ybV90b3BvbG9neV9u YW1lIHsKPiA+ID4gLQlEUFVfUk1fVE9QT0xPR1lfTk9ORSA9IDAsCj4gPiA+IC0JRFBVX1JNX1RP UE9MT0dZX1NJTkdMRVBJUEUsCj4gPiA+IC0JRFBVX1JNX1RPUE9MT0dZX0RVQUxQSVBFLAo+ID4g PiAtCURQVV9STV9UT1BPTE9HWV9EVUFMUElQRV8zRE1FUkdFLAo+ID4gPiAtCURQVV9STV9UT1BP TE9HWV9NQVgsCj4gPiA+IC19Owo+ID4gPiAtCj4gPiA+IC0vKioKPiA+ID4gICAqIGVudW0gZHB1 X3JtX3RvcG9sb2d5X2NvbnRyb2wgLSBIVyByZXNvdXJjZSB1c2UgY2FzZSBpbiB1c2UgYnkKPiA+ IGNvbm5lY3Rvcgo+ID4gPiAgICogQERQVV9STV9UT1BDVExfUkVTRVJWRV9MT0NLOiBJZiBzZXQs IGluIEF0b21pY1Rlc3QgcGhhc2UsIGFmdGVyIGEKPiA+IHN1Y2Nlc3NmdWwKPiA+ID4gICAqICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdCwgcmVzZXJ2ZSB0aGUgcmVzb3VyY2VzIGZv ciB0aGlzCj4gPiBkaXNwbGF5Lgo+ID4gPiBAQCAtMTg3LDEzICsxNzIsNCBAQCB2b2lkIGRwdV9y bV9pbml0X2h3X2l0ZXIoCj4gPiA+ICAgKi8KPiA+ID4gIGludCBkcHVfcm1fY2hlY2tfcHJvcGVy dHlfdG9wY3RsKHVpbnQ2NF90IHZhbCk7Cj4gPiA+IAo+ID4gPiAtLyoqCj4gPiA+IC0gKiBkcHVf cm1fZ2V0X3RvcG9sb2d5X25hbWUgLSByZXR1cm5zIHRoZSBuYW1lIG9mIHRoZSB0aGUgZ2l2ZW4K PiA+IHRvcG9sb2d5Cj4gPiA+IC0gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZpbml0 aW9uCj4gPiA+IC0gKiBAdG9wb2xvZ3k6IHRvcG9sb2d5IGRlZmluaXRpb24KPiA+ID4gLSAqIEBS ZXR1cm46IG5hbWUgb2YgdGhlIHRvcG9sb2d5Cj4gPiA+IC0gKi8KPiA+ID4gLWVudW0gZHB1X3Jt X3RvcG9sb2d5X25hbWUKPiA+ID4gLWRwdV9ybV9nZXRfdG9wb2xvZ3lfbmFtZShzdHJ1Y3QgbXNt X2Rpc3BsYXlfdG9wb2xvZ3kgdG9wb2xvZ3kpOwo+ID4gPiAtCj4gPiA+ICAjZW5kaWYgLyogX19E UFVfUk1fSF9fICovCj4gPiA+IC0tCj4gPiA+IFRoZSBRdWFsY29tbSBJbm5vdmF0aW9uIENlbnRl ciwgSW5jLiBpcyBhIG1lbWJlciBvZiB0aGUgQ29kZSBBdXJvcmEKPiA+IEZvcnVtLAo+ID4gPiBh IExpbnV4IEZvdW5kYXRpb24gQ29sbGFib3JhdGl2ZSBQcm9qZWN0Cj4gPiA+IAo+IAo+IC0tIAo+ IEpleWt1bWFyIFMKCi0tIApTZWFuIFBhdWwsIFNvZnR3YXJlIEVuZ2luZWVyLCBHb29nbGUgLyBD aHJvbWl1bSBPUwpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpGcmVlZHJlbm8gbWFpbGluZyBsaXN0CkZyZWVkcmVub0BsaXN0cy5mcmVlZGVza3RvcC5vcmcK aHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9mcmVlZHJlbm8K