From mboxrd@z Thu Jan 1 00:00:00 1970 From: Laurent Pinchart Subject: Re: [PATCH RFC 3/9] drm/omap: Add ovl_name() and mgr_name() to dispc_ops Date: Tue, 27 Feb 2018 16:35:42 +0200 Message-ID: <1952497.C2LRMoVbBQ@avalon> References: Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from galahad.ideasonboard.com (galahad.ideasonboard.com [185.26.127.97]) by gabe.freedesktop.org (Postfix) with ESMTPS id C08BD6E6CD for ; Tue, 27 Feb 2018 14:34:53 +0000 (UTC) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Jyri Sarha Cc: tomi.valkeinen@ti.com, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org SGkgSnlyaSwKClRoYW5rIHlvdSBmb3IgdGhlIHBhdGNoLgoKT24gRnJpZGF5LCAxNiBGZWJydWFy eSAyMDE4IDEzOjI1OjA0IEVFVCBKeXJpIFNhcmhhIHdyb3RlOgo+IEFkZCBvdmxfbmFtZSgpIGFu ZCBtZ3JfbmFtZSgpIHRvIGRpc3BjX29wcyBhbmQgZ2V0IHJpZCBvZiBhZGhvYyBuYW1lcwo+IGhl cmUgYW5kIHRoZXJlIGluIHRoZSBvbWFwZHJtIGNvZGUuIFRoaXMgbW92ZXMgdGhlIG5hbWVzIG9m IGhhcmR3YXJlCj4gZW50aXRpZXMgdG8gb21hcGRzcyBzaWRlIHdoZXJlIHRoZXkgaGF2ZSB0byBi ZSB3aGVuIG5ldyBvbWFwZHNzCj4gYmFja2VuZCBkcml2ZXJzIGFyZSBpbnRyb2R1Y2VkLgo+IAo+ IFNpZ25lZC1vZmYtYnk6IEp5cmkgU2FyaGEgPGpzYXJoYUB0aS5jb20+Cj4gUmV2aWV3ZWQtYnk6 IFRvbWkgVmFsa2VpbmVuIDx0b21pLnZhbGtlaW5lbkB0aS5jb20+Cj4gLS0tCj4gIGRyaXZlcnMv Z3B1L2RybS9vbWFwZHJtL2Rzcy9kaXNwYy5jICAgfCAyMyArKysrKysrKysrKysrKysrKysrKysr Kwo+ICBkcml2ZXJzL2dwdS9kcm0vb21hcGRybS9kc3Mvb21hcGRzcy5oIHwgIDUgKysrKysKPiAg ZHJpdmVycy9ncHUvZHJtL29tYXBkcm0vb21hcF9jcnRjLmMgICB8IDExICsrLS0tLS0tLS0tCj4g IGRyaXZlcnMvZ3B1L2RybS9vbWFwZHJtL29tYXBfaXJxLmMgICAgfCAxOSArKysrKysrLS0tLS0t LS0tLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9vbWFwZHJtL29tYXBfcGxhbmUuYyAgfCAxMyArKyst LS0tLS0tLS0tCj4gIDUgZmlsZXMgY2hhbmdlZCwgNDAgaW5zZXJ0aW9ucygrKSwgMzEgZGVsZXRp b25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9vbWFwZHJtL2Rzcy9kaXNw Yy5jCj4gYi9kcml2ZXJzL2dwdS9kcm0vb21hcGRybS9kc3MvZGlzcGMuYyBpbmRleCAzMzg0OTBk Li42ZjgzYjNlIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9vbWFwZHJtL2Rzcy9kaXNw Yy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL29tYXBkcm0vZHNzL2Rpc3BjLmMKPiBAQCAtNjk0 LDYgKzY5NCwyNiBAQCB2b2lkIGRpc3BjX3J1bnRpbWVfcHV0KHN0cnVjdCBkaXNwY19kZXZpY2Ug KmRpc3BjKQo+ICAJV0FSTl9PTihyIDwgMCAmJiByICE9IC1FTk9TWVMpOwo+ICB9Cj4gCj4gK3N0 YXRpYyBjb25zdCBjaGFyICpkaXNwY19vdmxfbmFtZShzdHJ1Y3QgZGlzcGNfZGV2aWNlICpkaXNw YywKPiArCQkJCSAgZW51bSBvbWFwX3BsYW5lX2lkIHBsYW5lKQo+ICt7Cj4gKwlzdGF0aWMgY29u c3QgY2hhciAqIGNvbnN0IG92bF9uYW1lc1tdID0gewo+ICsJCVtPTUFQX0RTU19HRlhdCQk9ICJH RlgiLAo+ICsJCVtPTUFQX0RTU19WSURFTzFdCT0gIlZJRDEiLAo+ICsJCVtPTUFQX0RTU19WSURF TzJdCT0gIlZJRDIiLAo+ICsJCVtPTUFQX0RTU19WSURFTzNdCT0gIlZJRDMiLAo+ICsJCVtPTUFQ X0RTU19XQl0JCT0gIldCIiwKPiArCX07Cj4gKwo+ICsJcmV0dXJuIG92bF9uYW1lc1twbGFuZV07 Cj4gK30KPiArCj4gK3N0YXRpYyBjb25zdCBjaGFyICpkaXNwY19tZ3JfbmFtZShzdHJ1Y3QgZGlz cGNfZGV2aWNlICpkaXNwYywKPiArCQkJCSAgZW51bSBvbWFwX2NoYW5uZWwgY2hhbm5lbCkKPiAr ewo+ICsJcmV0dXJuIG1ncl9kZXNjW2NoYW5uZWxdLm5hbWU7Cj4gK30KPiArCj4gIHN0YXRpYyB1 MzIgZGlzcGNfbWdyX2dldF92c3luY19pcnEoc3RydWN0IGRpc3BjX2RldmljZSAqZGlzcGMsCj4g IAkJCQkgICBlbnVtIG9tYXBfY2hhbm5lbCBjaGFubmVsKQo+ICB7Cj4gQEAgLTQ2NjIsNiArNDY4 Miw5IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZGlzcGNfb3BzIGRpc3BjX29wcyA9IHsKPiAgCS5n ZXRfbnVtX292bHMgPSBkaXNwY19nZXRfbnVtX292bHMsCj4gIAkuZ2V0X251bV9tZ3JzID0gZGlz cGNfZ2V0X251bV9tZ3JzLAo+IAo+ICsJLm92bF9uYW1lID0gZGlzcGNfb3ZsX25hbWUsCj4gKwku bWdyX25hbWUgPSBkaXNwY19tZ3JfbmFtZSwKPiArCj4gIAkuZ2V0X21lbW9yeV9iYW5kd2lkdGhf bGltaXQgPSBkaXNwY19nZXRfbWVtb3J5X2JhbmR3aWR0aF9saW1pdCwKPiAKPiAgCS5tZ3JfZW5h YmxlID0gZGlzcGNfbWdyX2VuYWJsZSwKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL29t YXBkcm0vZHNzL29tYXBkc3MuaAo+IGIvZHJpdmVycy9ncHUvZHJtL29tYXBkcm0vZHNzL29tYXBk c3MuaCBpbmRleCAxMjk5ZGQ2Li5iODRjZmQ4IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9vbWFwZHJtL2Rzcy9vbWFwZHNzLmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vb21hcGRybS9k c3Mvb21hcGRzcy5oCj4gQEAgLTcxMSw2ICs3MTEsMTEgQEAgc3RydWN0IGRpc3BjX29wcyB7Cj4g IAlpbnQgKCpnZXRfbnVtX292bHMpKHN0cnVjdCBkaXNwY19kZXZpY2UgKmRpc3BjKTsKPiAgCWlu dCAoKmdldF9udW1fbWdycykoc3RydWN0IGRpc3BjX2RldmljZSAqZGlzcGMpOwo+IAo+ICsJY29u c3QgY2hhciAqKCpvdmxfbmFtZSkoc3RydWN0IGRpc3BjX2RldmljZSAqZGlzcGMsCj4gKwkJCQll bnVtIG9tYXBfcGxhbmVfaWQgcGxhbmUpOwo+ICsJY29uc3QgY2hhciAqKCptZ3JfbmFtZSkoc3Ry dWN0IGRpc3BjX2RldmljZSAqZGlzcGMsCj4gKwkJCQllbnVtIG9tYXBfY2hhbm5lbCBjaGFubmVs KTsKPiArCj4gIAl1MzIgKCpnZXRfbWVtb3J5X2JhbmR3aWR0aF9saW1pdCkoc3RydWN0IGRpc3Bj X2RldmljZSAqZGlzcGMpOwo+IAo+ICAJdm9pZCAoKm1ncl9lbmFibGUpKHN0cnVjdCBkaXNwY19k ZXZpY2UgKmRpc3BjLAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vb21hcGRybS9vbWFw X2NydGMuYwo+IGIvZHJpdmVycy9ncHUvZHJtL29tYXBkcm0vb21hcF9jcnRjLmMgaW5kZXggNmM0 ZDQwYi4uMDBlYzk1OSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vb21hcGRybS9vbWFw X2NydGMuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9vbWFwZHJtL29tYXBfY3J0Yy5jCj4gQEAg LTY3MiwxMyArNjcyLDYgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fY3J0Y19oZWxwZXJfZnVu Y3MKPiBvbWFwX2NydGNfaGVscGVyX2Z1bmNzID0geyAqIEluaXQgYW5kIENsZWFudXAKPiAgICov Cj4gCj4gLXN0YXRpYyBjb25zdCBjaGFyICpjaGFubmVsX25hbWVzW10gPSB7Cj4gLQlbT01BUF9E U1NfQ0hBTk5FTF9MQ0RdID0gImxjZCIsCj4gLQlbT01BUF9EU1NfQ0hBTk5FTF9ESUdJVF0gPSAi dHYiLAo+IC0JW09NQVBfRFNTX0NIQU5ORUxfTENEMl0gPSAibGNkMiIsCj4gLQlbT01BUF9EU1Nf Q0hBTk5FTF9MQ0QzXSA9ICJsY2QzIiwKPiAtfTsKPiAtCj4gIHZvaWQgb21hcF9jcnRjX3ByZV9p bml0KHN0cnVjdCBvbWFwX2RybV9wcml2YXRlICpwcml2KQo+ICB7Cj4gIAltZW1zZXQob21hcF9j cnRjcywgMCwgc2l6ZW9mKG9tYXBfY3J0Y3MpKTsKPiBAQCAtNzA2LDcgKzY5OSw3IEBAIHN0cnVj dCBkcm1fY3J0YyAqb21hcF9jcnRjX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiAgCWNo YW5uZWwgPSBvdXQtPmRpc3BjX2NoYW5uZWw7Cj4gIAlvbWFwX2Rzc19wdXRfZGV2aWNlKG91dCk7 Cj4gCj4gLQlEQkcoIiVzIiwgY2hhbm5lbF9uYW1lc1tjaGFubmVsXSk7Cj4gKwlEQkcoIiVzIiwg cHJpdi0+ZGlzcGNfb3BzLT5tZ3JfbmFtZShwcml2LT5kaXNwYywgY2hhbm5lbCkpOwo+IAo+ICAJ LyogTXVsdGlwbGUgZGlzcGxheXMgb24gc2FtZSBjaGFubmVsIGlzIG5vdCBhbGxvd2VkICovCj4g IAlpZiAoV0FSTl9PTihvbWFwX2NydGNzW2NoYW5uZWxdICE9IE5VTEwpKQo+IEBAIC03MjEsNyAr NzE0LDcgQEAgc3RydWN0IGRybV9jcnRjICpvbWFwX2NydGNfaW5pdChzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2LAo+ICAJaW5pdF93YWl0cXVldWVfaGVhZCgmb21hcF9jcnRjLT5wZW5kaW5nX3dhaXQp Owo+IAo+ICAJb21hcF9jcnRjLT5jaGFubmVsID0gY2hhbm5lbDsKPiAtCW9tYXBfY3J0Yy0+bmFt ZSA9IGNoYW5uZWxfbmFtZXNbY2hhbm5lbF07Cj4gKwlvbWFwX2NydGMtPm5hbWUgPSBwcml2LT5k aXNwY19vcHMtPm1ncl9uYW1lKHByaXYtPmRpc3BjLCBjaGFubmVsKTsKClBvc3NpYmx5IGEgc21h bGwgaW1wcm92ZW1lbnQgaGVyZSwgeW91IGNvdWxkIGNhY2hlIHRoZSBuYW1lIGluIGEgbG9jYWwg CnZhcmlhYmxlIGluc3RlYWQgb2YgY2FsbGluZyB0aGUgbWdyX25hbWUgb3BlcmF0aW9uIHR3aWNl LgoKPiAKPiAgCXJldCA9IGRybV9jcnRjX2luaXRfd2l0aF9wbGFuZXMoZGV2LCBjcnRjLCBwbGFu ZSwgTlVMTCwKPiAgCQkJCQkmb21hcF9jcnRjX2Z1bmNzLCBOVUxMKTsKPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL29tYXBkcm0vb21hcF9pcnEuYwo+IGIvZHJpdmVycy9ncHUvZHJtL29t YXBkcm0vb21hcF9pcnEuYyBpbmRleCBjODUxMTUwNC4uNWNjODhiNiAxMDA2NDQKPiAtLS0gYS9k cml2ZXJzL2dwdS9kcm0vb21hcGRybS9vbWFwX2lycS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJt L29tYXBkcm0vb21hcF9pcnEuYwo+IEBAIC0xNDYsMTUgKzE0NiwxMCBAQCBzdGF0aWMgdm9pZCBv bWFwX2lycV9maWZvX3VuZGVyZmxvdyhzdHJ1Y3QKPiBvbWFwX2RybV9wcml2YXRlICpwcml2LCB7 Cj4gIAlzdGF0aWMgREVGSU5FX1JBVEVMSU1JVF9TVEFURShfcnMsIERFRkFVTFRfUkFURUxJTUlU X0lOVEVSVkFMLAo+ICAJCQkJICAgICAgREVGQVVMVF9SQVRFTElNSVRfQlVSU1QpOwo+IC0Jc3Rh dGljIGNvbnN0IHN0cnVjdCB7Cj4gLQkJY29uc3QgY2hhciAqbmFtZTsKPiAtCQl1MzIgbWFzazsK PiAtCX0gc291cmNlc1tdID0gewo+IC0JCXsgImdmeCIsIERJU1BDX0lSUV9HRlhfRklGT19VTkRF UkZMT1cgfSwKPiAtCQl7ICJ2aWQxIiwgRElTUENfSVJRX1ZJRDFfRklGT19VTkRFUkZMT1cgfSwK PiAtCQl7ICJ2aWQyIiwgRElTUENfSVJRX1ZJRDJfRklGT19VTkRFUkZMT1cgfSwKPiAtCQl7ICJ2 aWQzIiwgRElTUENfSVJRX1ZJRDNfRklGT19VTkRFUkZMT1cgfSwKPiAtCX07Cj4gKwlzdGF0aWMg Y29uc3QgdTMyIGlycWJpdHNbXSA9IHsgRElTUENfSVJRX0dGWF9GSUZPX1VOREVSRkxPVywKPiAr CQkJCSAgICAgICBESVNQQ19JUlFfVklEMV9GSUZPX1VOREVSRkxPVywKPiArCQkJCSAgICAgICBE SVNQQ19JUlFfVklEMl9GSUZPX1VOREVSRkxPVywKPiArCQkJCSAgICAgICBESVNQQ19JUlFfVklE M19GSUZPX1VOREVSRkxPVyB9OwoKVGhlIGluZGVudGF0aW9uIGxvb2tzIHdlaXJkLCBJJ2Qgd3Jp dGUgaXQKCglzdGF0aWMgY29uc3QgdTMyIGlycWJpdHNbXSA9IHsKCQlESVNQQ19JUlFfR0ZYX0ZJ Rk9fVU5ERVJGTE9XLAoJCURJU1BDX0lSUV9WSUQxX0ZJRk9fVU5ERVJGTE9XLAoJCURJU1BDX0lS UV9WSUQyX0ZJRk9fVU5ERVJGTE9XLAoJCURJU1BDX0lSUV9WSUQzX0ZJRk9fVU5ERVJGTE9XLAoJ fTsKCj4gIAljb25zdCB1MzIgbWFzayA9IERJU1BDX0lSUV9HRlhfRklGT19VTkRFUkZMT1cKPiAg CQkgICAgICAgfCBESVNQQ19JUlFfVklEMV9GSUZPX1VOREVSRkxPVwo+IAo+IEBAIC0xNzQsOSAr MTY5LDkgQEAgc3RhdGljIHZvaWQgb21hcF9pcnFfZmlmb191bmRlcmZsb3coc3RydWN0Cj4gb21h cF9kcm1fcHJpdmF0ZSAqcHJpdiwKPiAKPiAgCURSTV9FUlJPUigiRklGTyB1bmRlcmZsb3cgb24g Iik7Cj4gCj4gLQlmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRShzb3VyY2VzKTsgKytpKSB7Cj4g LQkJaWYgKHNvdXJjZXNbaV0ubWFzayAmIGlycXN0YXR1cykKPiAtCQkJcHJfY29udCgiJXMgIiwg c291cmNlc1tpXS5uYW1lKTsKPiArCWZvciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKGlycWJpdHMp OyArK2kpIHsKPiArCQlpZiAoaXJxYml0c1tpXSAmIGlycXN0YXR1cykKPiArCQkJcHJfY29udCgi JXMgIiwgcHJpdi0+ZGlzcGNfb3BzLT5vdmxfbmFtZShwcml2LT5kaXNwYywgaSkpOwoKSSB3b25k ZXIgaWYgaXQncyB3b3J0aCBpdCBoZXJlLCBpbiB0aGUgc2Vuc2UgdGhhdCB5b3UncmUgc3BsaXR0 aW5nIHRoZSBuYW1lIAphbmQgbWFzaywgd2hpY2ggYXJlIGJvdGggRElTUEMtc3BlY2lmaWMsIGlu IHR3by4gV291bGQgaXQgbWFrZSBzZW5zZSB0byBtb3ZlIAp0aGUgd2hvbGUgb21hcF9pcnFfZmlm b191bmRlcmZsb3coKSBhbmQgb21hcF9pcnFfb2NwX2Vycm9yX2hhbmRsZXIoKSBJUlEgCmhhbmRs aW5nIHRvIHRoZSBEU1Mgc2lkZSwgYXMgdGhleSdyZSBub3QgRFJNL0tNUy1yZWxhdGVkID8KCj4g IAl9Cj4gCj4gIAlwcl9jb250KCIoMHglMDh4KVxuIiwgaXJxc3RhdHVzKTsKPiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL29tYXBkcm0vb21hcF9wbGFuZS5jCj4gYi9kcml2ZXJzL2dwdS9k cm0vb21hcGRybS9vbWFwX3BsYW5lLmMgaW5kZXggMjg5OTQzNS4uNjFiMDc1MyAxMDA2NDQKPiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vb21hcGRybS9vbWFwX3BsYW5lLmMKPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vb21hcGRybS9vbWFwX3BsYW5lLmMKPiBAQCAtMjM5LDEzICsyMzksNiBAQCBzdGF0 aWMgY29uc3Qgc3RydWN0IGRybV9wbGFuZV9mdW5jcyBvbWFwX3BsYW5lX2Z1bmNzID0KPiB7IC5h dG9taWNfZ2V0X3Byb3BlcnR5ID0gb21hcF9wbGFuZV9hdG9taWNfZ2V0X3Byb3BlcnR5LAo+ICB9 Owo+IAo+IC1zdGF0aWMgY29uc3QgY2hhciAqcGxhbmVfaWRfdG9fbmFtZVtdID0gewo+IC0JW09N QVBfRFNTX0dGWF0gPSAiZ2Z4IiwKPiAtCVtPTUFQX0RTU19WSURFTzFdID0gInZpZDEiLAo+IC0J W09NQVBfRFNTX1ZJREVPMl0gPSAidmlkMiIsCj4gLQlbT01BUF9EU1NfVklERU8zXSA9ICJ2aWQz IiwKPiAtfTsKPiAtCj4gIHN0YXRpYyBjb25zdCBlbnVtIG9tYXBfcGxhbmVfaWQgcGxhbmVfaWR4 X3RvX2lkW10gPSB7Cj4gIAlPTUFQX0RTU19HRlgsCj4gIAlPTUFQX0RTU19WSURFTzEsCj4gQEAg LTI3Miw3ICsyNjUsNyBAQCBzdHJ1Y3QgZHJtX3BsYW5lICpvbWFwX3BsYW5lX2luaXQoc3RydWN0 IGRybV9kZXZpY2UKPiAqZGV2LAo+IAo+ICAJaWQgPSBwbGFuZV9pZHhfdG9faWRbaWR4XTsKPiAK PiAtCURCRygiJXM6IHR5cGU9JWQiLCBwbGFuZV9pZF90b19uYW1lW2lkXSwgdHlwZSk7Cj4gKwlE QkcoIiVzOiB0eXBlPSVkIiwgcHJpdi0+ZGlzcGNfb3BzLT5vdmxfbmFtZShwcml2LT5kaXNwYywg aWQpLCB0eXBlKTsKPiAKPiAgCW9tYXBfcGxhbmUgPSBremFsbG9jKHNpemVvZigqb21hcF9wbGFu ZSksIEdGUF9LRVJORUwpOwo+ICAJaWYgKCFvbWFwX3BsYW5lKQo+IEBAIC0yODIsNyArMjc1LDcg QEAgc3RydWN0IGRybV9wbGFuZSAqb21hcF9wbGFuZV9pbml0KHN0cnVjdCBkcm1fZGV2aWNlCj4g KmRldiwgZm9yIChuZm9ybWF0cyA9IDA7IGZvcm1hdHNbbmZvcm1hdHNdOyArK25mb3JtYXRzKQo+ ICAJCTsKPiAgCW9tYXBfcGxhbmUtPmlkID0gaWQ7Cj4gLQlvbWFwX3BsYW5lLT5uYW1lID0gcGxh bmVfaWRfdG9fbmFtZVtpZF07Cj4gKwlvbWFwX3BsYW5lLT5uYW1lID0gcHJpdi0+ZGlzcGNfb3Bz LT5vdmxfbmFtZShwcml2LT5kaXNwYywgaWQpOwoKU2FtZSBoZXJlLCB3ZSBjb3VsZCBjYWNoZSB0 aGUgbmFtZS4KCj4gCj4gIAlwbGFuZSA9ICZvbWFwX3BsYW5lLT5iYXNlOwo+IAo+IEBAIC0zMDEs NyArMjk0LDcgQEAgc3RydWN0IGRybV9wbGFuZSAqb21hcF9wbGFuZV9pbml0KHN0cnVjdCBkcm1f ZGV2aWNlCj4gKmRldiwKPiAKPiAgZXJyb3I6Cj4gIAlkZXZfZXJyKGRldi0+ZGV2LCAiJXMoKTog Y291bGQgbm90IGNyZWF0ZSBwbGFuZTogJXNcbiIsCj4gLQkJX19mdW5jX18sIHBsYW5lX2lkX3Rv X25hbWVbaWRdKTsKPiArCQlfX2Z1bmNfXywgcHJpdi0+ZGlzcGNfb3BzLT5vdmxfbmFtZShwcml2 LT5kaXNwYywgaWQpKTsKCllvdSBjb3VsZCB1c2Ugb21hcF9wbGFuZS0+bmFtZSBoZXJlLgoKPiAK PiAgCWtmcmVlKG9tYXBfcGxhbmUpOwo+ICAJcmV0dXJuIE5VTEw7CgotLSAKUmVnYXJkcywKCkxh dXJlbnQgUGluY2hhcnQKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9w Lm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1k ZXZlbAo=