From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mario Kleiner Subject: Re: [PATCH 4/6] drm/radeon: Provide page_flip_target hook Date: Tue, 16 Aug 2016 02:35:44 +0200 Message-ID: References: <1470281981-18172-1-git-send-email-michel@daenzer.net> <1470281981-18172-5-git-send-email-michel@daenzer.net> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1470281981-18172-5-git-send-email-michel@daenzer.net> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: =?UTF-8?Q?Michel_D=c3=a4nzer?= , amd-gfx@lists.freedesktop.org Cc: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org SGkgTWljaGVsLAoKc29ycnkgZm9yIHRoZSBzdXBlci1sYXRlIHJlcGx5LCBpIHdhcyBqdXN0IGNh dGNoaW5nIHVwIHdpdGggYWxsIHRoZSAKbWFpbHMgYW5kIGRpc2N1c3Npb25zLCBzdGFydGluZyBp biBKdW5lLCBsZWFkaW5nIHRvIHRoaXMgcGF0Y2ggc2V0LgoKTG9va3MgYWxsIHByZXR0eSBnb29k LgoKSSdsbCBsb29rIGF0IHRoaXMgcmFkZW9uIHBhdGNoIGFuZCAyLzYgZm9yIGFtZGdwdSBsYXRl ciB0aGlzIHdlZWsgd2hlbiBpIApoYXZlIGEgZnJlc2ggYnJhaW4gYW5kIGVub3VnaCAib2JzZXNz aXZlIGNvbXB1bHNpdmUgdGltZSIsIHRvIG1ha2Ugc3VyZSAKYWxsIHRoZSBtYWdpYyB3cnQuICJ2 aXJ0dWFsbHkgZXh0ZW5kZWQgdmJsYW5rIiBhbmQgdGhlIGZ1ZGdpbmcgbG9naWMgaXMgCmZpbmUu CgpJJ2xsIHRoZW4gYWxzbyBydW4gaXQgdGhyb3VnaCBteSB0aW1pbmcgdGVzdHMuIEkgYXNzdW1l IHRoZSAKYXRpL2FtZGdwdS1kZHggcGF0Y2hlcyBhbmQgbGliZHJtIHBhdGNoZXMgaW4geW91ciBm cmVlZGVza3RvcCBob21lIGFyZSAKYWxsIGkgbmVlZCBmb3IgdGVzdGluZz8KCi1tYXJpbwoKCk9u IDA4LzA0LzIwMTYgMDU6MzkgQU0sIE1pY2hlbCBEw6RuemVyIHdyb3RlOgo+IEZyb206IE1pY2hl bCBEw6RuemVyIDxtaWNoZWwuZGFlbnplckBhbWQuY29tPgo+Cj4gTm93IHdlIGNhbiBwcm9ncmFt IGEgZmxpcCBkdXJpbmcgYSB2ZXJ0aWNhbCBibGFuayBwZXJpb2QsIGlmIGl0J3MgdGhlCj4gb25l IHRhcmdldGVkIGJ5IHRoZSBmbGlwIChvciBhIGxhdGVyIG9uZSkuIFRoaXMgYWxsb3dzIHNpbXBs aWZ5aW5nCj4gcmFkZW9uX2ZsaXBfd29ya19mdW5jIGNvbnNpZGVyYWJseS4KPgo+IFNpZ25lZC1v ZmYtYnk6IE1pY2hlbCBEw6RuemVyIDxtaWNoZWwuZGFlbnplckBhbWQuY29tPgo+IC0tLQo+ICBk cml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbi5oICAgICAgICAgfCAgMSArCj4gIGRyaXZlcnMv Z3B1L2RybS9yYWRlb24vcmFkZW9uX2Rpc3BsYXkuYyB8IDg5ICsrKysrKysrKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLQo+ICAyIGZpbGVzIGNoYW5nZWQsIDI1IGluc2VydGlvbnMoKyksIDY1IGRl bGV0aW9ucygtKQo+Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9u LmggYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbi5oCj4gaW5kZXggNTYzM2VlMy4uMWIw ZGNhZCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbi5oCj4gKysr IGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb24uaAo+IEBAIC03NDIsNiArNzQyLDcgQEAg c3RydWN0IHJhZGVvbl9mbGlwX3dvcmsgewo+ICAJc3RydWN0IHdvcmtfc3RydWN0CQl1bnBpbl93 b3JrOwo+ICAJc3RydWN0IHJhZGVvbl9kZXZpY2UJCSpyZGV2Owo+ICAJaW50CQkJCWNydGNfaWQ7 Cj4gKwl1MzIJCQkJdGFyZ2V0X3ZibGFuazsKPiAgCXVpbnQ2NF90CQkJYmFzZTsKPiAgCXN0cnVj dCBkcm1fcGVuZGluZ192YmxhbmtfZXZlbnQgKmV2ZW50Owo+ICAJc3RydWN0IHJhZGVvbl9ibwkJ Km9sZF9yYm87Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2Rp c3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2Rpc3BsYXkuYwo+IGluZGV4 IDVmMWNkNjkuLmJkOWQ5OTUgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9y YWRlb25fZGlzcGxheS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fZGlz cGxheS5jCj4gQEAgLTQwMCwxNCArNDAwLDEzIEBAIHN0YXRpYyB2b2lkIHJhZGVvbl9mbGlwX3dv cmtfZnVuYyhzdHJ1Y3Qgd29ya19zdHJ1Y3QgKl9fd29yaykKPiAgCXN0cnVjdCByYWRlb25fZmxp cF93b3JrICp3b3JrID0KPiAgCQljb250YWluZXJfb2YoX193b3JrLCBzdHJ1Y3QgcmFkZW9uX2Zs aXBfd29yaywgZmxpcF93b3JrKTsKPiAgCXN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2ID0gd29y ay0+cmRldjsKPiArCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSByZGV2LT5kZGV2Owo+ICAJc3Ry dWN0IHJhZGVvbl9jcnRjICpyYWRlb25fY3J0YyA9IHJkZXYtPm1vZGVfaW5mby5jcnRjc1t3b3Jr LT5jcnRjX2lkXTsKPgo+ICAJc3RydWN0IGRybV9jcnRjICpjcnRjID0gJnJhZGVvbl9jcnRjLT5i YXNlOwo+ICAJdW5zaWduZWQgbG9uZyBmbGFnczsKPiAgCWludCByOwo+IC0JaW50IHZwb3MsIGhw b3MsIHN0YXQsIG1pbl91ZGVsYXkgPSAwOwo+IC0JdW5zaWduZWQgcmVwY250ID0gNDsKPiAtCXN0 cnVjdCBkcm1fdmJsYW5rX2NydGMgKnZibGFuayA9ICZjcnRjLT5kZXYtPnZibGFua1t3b3JrLT5j cnRjX2lkXTsKPiArCWludCB2cG9zLCBocG9zOwo+Cj4gIAlkb3duX3JlYWQoJnJkZXYtPmV4Y2x1 c2l2ZV9sb2NrKTsKPiAgCWlmICh3b3JrLT5mZW5jZSkgewo+IEBAIC00MzgsNTkgKzQzNywyNSBA QCBzdGF0aWMgdm9pZCByYWRlb25fZmxpcF93b3JrX2Z1bmMoc3RydWN0IHdvcmtfc3RydWN0ICpf X3dvcmspCj4gIAkJd29yay0+ZmVuY2UgPSBOVUxMOwo+ICAJfQo+Cj4gKwkvKiBXYWl0IHVudGls IHdlJ3JlIG91dCBvZiB0aGUgdmVydGljYWwgYmxhbmsgcGVyaW9kIGJlZm9yZSB0aGUgb25lCj4g KwkgKiB0YXJnZXRlZCBieSB0aGUgZmxpcAo+ICsJICovCj4gKwl3aGlsZSAocmFkZW9uX2NydGMt PmVuYWJsZWQgJiYKPiArCSAgICAgICAocmFkZW9uX2dldF9jcnRjX3NjYW5vdXRwb3MoZGV2LCB3 b3JrLT5jcnRjX2lkLCAwLAo+ICsJCQkJCSAgICZ2cG9zLCAmaHBvcywgTlVMTCwgTlVMTCwKPiAr CQkJCQkgICAmY3J0Yy0+aHdtb2RlKQo+ICsJCSYgKERSTV9TQ0FOT1VUUE9TX1ZBTElEIHwgRFJN X1NDQU5PVVRQT1NfSU5fVkJMQU5LKSkgPT0KPiArCSAgICAgICAoRFJNX1NDQU5PVVRQT1NfVkFM SUQgfCBEUk1fU0NBTk9VVFBPU19JTl9WQkxBTkspICYmCj4gKwkgICAgICAgKGludCkod29yay0+ dGFyZ2V0X3ZibGFuayAtCj4gKwkJICAgICBkZXYtPmRyaXZlci0+Z2V0X3ZibGFua19jb3VudGVy KGRldiwgd29yay0+Y3J0Y19pZCkpID4gMCkKPiArCQl1c2xlZXBfcmFuZ2UoMTAwMCwgMjAwMCk7 Cj4gKwo+ICAJLyogV2UgYm9ycm93IHRoZSBldmVudCBzcGluIGxvY2sgZm9yIHByb3RlY3Rpbmcg ZmxpcF9zdGF0dXMgKi8KPiAgCXNwaW5fbG9ja19pcnFzYXZlKCZjcnRjLT5kZXYtPmV2ZW50X2xv Y2ssIGZsYWdzKTsKPgo+ICAJLyogc2V0IHRoZSBwcm9wZXIgaW50ZXJydXB0ICovCj4gIAlyYWRl b25faXJxX2ttc19wZmxpcF9pcnFfZ2V0KHJkZXYsIHJhZGVvbl9jcnRjLT5jcnRjX2lkKTsKPgo+ IC0JLyogSWYgdGhpcyBoYXBwZW5zIHRvIGV4ZWN1dGUgd2l0aGluIHRoZSAidmlydHVhbGx5IGV4 dGVuZGVkIiB2YmxhbmsKPiAtCSAqIGludGVydmFsIGJlZm9yZSB0aGUgc3RhcnQgb2YgdGhlIHJl YWwgdmJsYW5rIGludGVydmFsIHRoZW4gaXQgbmVlZHMKPiAtCSAqIHRvIGRlbGF5IHByb2dyYW1t aW5nIHRoZSBtbWlvIGZsaXAgdW50aWwgdGhlIHJlYWwgdmJsYW5rIGlzIGVudGVyZWQuCj4gLQkg KiBUaGlzIHByZXZlbnRzIGNvbXBsZXRpbmcgYSBmbGlwIHRvbyBlYXJseSBkdWUgdG8gdGhlIHdh eSB3ZSBmdWRnZQo+IC0JICogb3VyIHZibGFuayBjb3VudGVyIGFuZCB2YmxhbmsgdGltZXN0YW1w cyBpbiBvcmRlciB0byB3b3JrIGFyb3VuZCB0aGUKPiAtCSAqIHByb2JsZW0gdGhhdCB0aGUgaHcg ZmlyZXMgdmJsYW5rIGludGVycnVwdHMgYmVmb3JlIGFjdHVhbCBzdGFydCBvZgo+IC0JICogdmJs YW5rICh3aGVuIGxpbmUgYnVmZmVyIHJlZmlsbGluZyBpcyBkb25lIGZvciBhIGZyYW1lKS4gSXQK PiAtCSAqIGNvbXBsZW1lbnRzIHRoZSBmdWRnaW5nIGxvZ2ljIGluIHJhZGVvbl9nZXRfY3J0Y19z Y2Fub3V0cG9zKCkgZm9yCj4gLQkgKiB0aW1lc3RhbXBpbmcgYW5kIHJhZGVvbl9nZXRfdmJsYW5r X2NvdW50ZXJfa21zKCkgZm9yIHZibGFuayBjb3VudHMuCj4gLQkgKgo+IC0JICogSW4gcHJhY3Rp Y2UgdGhpcyB3b24ndCBleGVjdXRlIHZlcnkgb2Z0ZW4gdW5sZXNzIG9uIHZlcnkgZmFzdAo+IC0J ICogbWFjaGluZXMgYmVjYXVzZSB0aGUgdGltZSB3aW5kb3cgZm9yIHRoaXMgdG8gaGFwcGVuIGlz IHZlcnkgc21hbGwuCj4gLQkgKi8KPiAtCXdoaWxlIChyYWRlb25fY3J0Yy0+ZW5hYmxlZCAmJiAt LXJlcGNudCkgewo+IC0JCS8qIEdFVF9ESVNUQU5DRV9UT19WQkxBTktTVEFSVCByZXR1cm5zIGRp c3RhbmNlIHRvIHJlYWwgdmJsYW5rCj4gLQkJICogc3RhcnQgaW4gaHBvcywgYW5kIHRvIHRoZSAi ZnVkZ2VkIGVhcmxpZXIiIHZibGFuayBzdGFydCBpbgo+IC0JCSAqIHZwb3MuCj4gLQkJICovCj4g LQkJc3RhdCA9IHJhZGVvbl9nZXRfY3J0Y19zY2Fub3V0cG9zKHJkZXYtPmRkZXYsIHdvcmstPmNy dGNfaWQsCj4gLQkJCQkJCSAgR0VUX0RJU1RBTkNFX1RPX1ZCTEFOS1NUQVJULAo+IC0JCQkJCQkg ICZ2cG9zLCAmaHBvcywgTlVMTCwgTlVMTCwKPiAtCQkJCQkJICAmY3J0Yy0+aHdtb2RlKTsKPiAt Cj4gLQkJaWYgKChzdGF0ICYgKERSTV9TQ0FOT1VUUE9TX1ZBTElEIHwgRFJNX1NDQU5PVVRQT1Nf QUNDVVJBVEUpKSAhPQo+IC0JCSAgICAoRFJNX1NDQU5PVVRQT1NfVkFMSUQgfCBEUk1fU0NBTk9V VFBPU19BQ0NVUkFURSkgfHwKPiAtCQkgICAgISh2cG9zID49IDAgJiYgaHBvcyA8PSAwKSkKPiAt CQkJYnJlYWs7Cj4gLQo+IC0JCS8qIFNsZWVwIGF0IGxlYXN0IHVudGlsIGVzdGltYXRlZCByZWFs IHN0YXJ0IG9mIGh3IHZibGFuayAqLwo+IC0JCW1pbl91ZGVsYXkgPSAoLWhwb3MgKyAxKSAqIG1h eCh2YmxhbmstPmxpbmVkdXJfbnMgLyAxMDAwLCA1KTsKPiAtCQlpZiAobWluX3VkZWxheSA+IHZi bGFuay0+ZnJhbWVkdXJfbnMgLyAyMDAwKSB7Cj4gLQkJCS8qIERvbid0IHdhaXQgcmlkaWN1bG91 c2x5IGxvbmcgLSBzb21ldGhpbmcgaXMgd3JvbmcgKi8KPiAtCQkJcmVwY250ID0gMDsKPiAtCQkJ YnJlYWs7Cj4gLQkJfQo+IC0JCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJmNydGMtPmRldi0+ZXZl bnRfbG9jaywgZmxhZ3MpOwo+IC0JCXVzbGVlcF9yYW5nZShtaW5fdWRlbGF5LCAyICogbWluX3Vk ZWxheSk7Cj4gLQkJc3Bpbl9sb2NrX2lycXNhdmUoJmNydGMtPmRldi0+ZXZlbnRfbG9jaywgZmxh Z3MpOwo+IC0JfTsKPiAtCj4gLQlpZiAoIXJlcGNudCkKPiAtCQlEUk1fREVCVUdfRFJJVkVSKCJE ZWxheSBwcm9ibGVtIG9uIGNydGMgJWQ6IG1pbl91ZGVsYXkgJWQsICIKPiAtCQkJCSAiZnJhbWVk dXIgJWQsIGxpbmVkdXIgJWQsIHN0YXQgJWQsIHZwb3MgJWQsICIKPiAtCQkJCSAiaHBvcyAlZFxu Iiwgd29yay0+Y3J0Y19pZCwgbWluX3VkZWxheSwKPiAtCQkJCSB2YmxhbmstPmZyYW1lZHVyX25z IC8gMTAwMCwKPiAtCQkJCSB2YmxhbmstPmxpbmVkdXJfbnMgLyAxMDAwLCBzdGF0LCB2cG9zLCBo cG9zKTsKPiAtCj4gIAkvKiBkbyB0aGUgZmxpcCAobW1pbykgKi8KPiAgCXJhZGVvbl9wYWdlX2Zs aXAocmRldiwgcmFkZW9uX2NydGMtPmNydGNfaWQsIHdvcmstPmJhc2UsIHdvcmstPmFzeW5jKTsK Pgo+IEBAIC00OTksMTAgKzQ2NCwxMSBAQCBzdGF0aWMgdm9pZCByYWRlb25fZmxpcF93b3JrX2Z1 bmMoc3RydWN0IHdvcmtfc3RydWN0ICpfX3dvcmspCj4gIAl1cF9yZWFkKCZyZGV2LT5leGNsdXNp dmVfbG9jayk7Cj4gIH0KPgo+IC1zdGF0aWMgaW50IHJhZGVvbl9jcnRjX3BhZ2VfZmxpcChzdHJ1 Y3QgZHJtX2NydGMgKmNydGMsCj4gLQkJCQkgc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIsCj4g LQkJCQkgc3RydWN0IGRybV9wZW5kaW5nX3ZibGFua19ldmVudCAqZXZlbnQsCj4gLQkJCQkgdWlu dDMyX3QgcGFnZV9mbGlwX2ZsYWdzKQo+ICtzdGF0aWMgaW50IHJhZGVvbl9jcnRjX3BhZ2VfZmxp cF90YXJnZXQoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+ICsJCQkJCXN0cnVjdCBkcm1fZnJhbWVi dWZmZXIgKmZiLAo+ICsJCQkJCXN0cnVjdCBkcm1fcGVuZGluZ192YmxhbmtfZXZlbnQgKmV2ZW50 LAo+ICsJCQkJCXVpbnQzMl90IHBhZ2VfZmxpcF9mbGFncywKPiArCQkJCQl1aW50MzJfdCB0YXJn ZXQpCj4gIHsKPiAgCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjcnRjLT5kZXY7Cj4gIAlzdHJ1 Y3QgcmFkZW9uX2RldmljZSAqcmRldiA9IGRldi0+ZGV2X3ByaXZhdGU7Cj4gQEAgLTU5OSwxMiAr NTY1LDggQEAgc3RhdGljIGludCByYWRlb25fY3J0Y19wYWdlX2ZsaXAoc3RydWN0IGRybV9jcnRj ICpjcnRjLAo+ICAJCWJhc2UgJj0gfjc7Cj4gIAl9Cj4gIAl3b3JrLT5iYXNlID0gYmFzZTsKPiAt Cj4gLQlyID0gZHJtX2NydGNfdmJsYW5rX2dldChjcnRjKTsKPiAtCWlmIChyKSB7Cj4gLQkJRFJN X0VSUk9SKCJmYWlsZWQgdG8gZ2V0IHZibGFuayBiZWZvcmUgZmxpcFxuIik7Cj4gLQkJZ290byBw ZmxpcF9jbGVhbnVwOwo+IC0JfQo+ICsJd29yay0+dGFyZ2V0X3ZibGFuayA9IHRhcmdldCAtIGRy bV9jcnRjX3ZibGFua19jb3VudChjcnRjKSArCj4gKwkJZGV2LT5kcml2ZXItPmdldF92Ymxhbmtf Y291bnRlcihkZXYsIHdvcmstPmNydGNfaWQpOwo+Cj4gIAkvKiBXZSBib3Jyb3cgdGhlIGV2ZW50 IHNwaW4gbG9jayBmb3IgcHJvdGVjdGluZyBmbGlwX3dvcmsgKi8KPiAgCXNwaW5fbG9ja19pcnFz YXZlKCZjcnRjLT5kZXYtPmV2ZW50X2xvY2ssIGZsYWdzKTsKPiBAQCAtNjEzLDcgKzU3NSw3IEBA IHN0YXRpYyBpbnQgcmFkZW9uX2NydGNfcGFnZV9mbGlwKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywK PiAgCQlEUk1fREVCVUdfRFJJVkVSKCJmbGlwIHF1ZXVlOiBjcnRjIGFscmVhZHkgYnVzeVxuIik7 Cj4gIAkJc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmY3J0Yy0+ZGV2LT5ldmVudF9sb2NrLCBmbGFn cyk7Cj4gIAkJciA9IC1FQlVTWTsKPiAtCQlnb3RvIHZibGFua19jbGVhbnVwOwo+ICsJCWdvdG8g cGZsaXBfY2xlYW51cDsKPiAgCX0KPiAgCXJhZGVvbl9jcnRjLT5mbGlwX3N0YXR1cyA9IFJBREVP Tl9GTElQX1BFTkRJTkc7Cj4gIAlyYWRlb25fY3J0Yy0+ZmxpcF93b3JrID0gd29yazsKPiBAQCAt NjI2LDkgKzU4OCw2IEBAIHN0YXRpYyBpbnQgcmFkZW9uX2NydGNfcGFnZV9mbGlwKHN0cnVjdCBk cm1fY3J0YyAqY3J0YywKPiAgCXF1ZXVlX3dvcmsocmFkZW9uX2NydGMtPmZsaXBfcXVldWUsICZ3 b3JrLT5mbGlwX3dvcmspOwo+ICAJcmV0dXJuIDA7Cj4KPiAtdmJsYW5rX2NsZWFudXA6Cj4gLQlk cm1fY3J0Y192YmxhbmtfcHV0KGNydGMpOwo+IC0KPiAgcGZsaXBfY2xlYW51cDoKPiAgCWlmICh1 bmxpa2VseShyYWRlb25fYm9fcmVzZXJ2ZShuZXdfcmJvLCBmYWxzZSkgIT0gMCkpIHsKPiAgCQlE Uk1fRVJST1IoImZhaWxlZCB0byByZXNlcnZlIG5ldyByYm8gaW4gZXJyb3IgcGF0aFxuIik7Cj4g QEAgLTY5Nyw3ICs2NTYsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9jcnRjX2Z1bmNzIHJh ZGVvbl9jcnRjX2Z1bmNzID0gewo+ICAJLmdhbW1hX3NldCA9IHJhZGVvbl9jcnRjX2dhbW1hX3Nl dCwKPiAgCS5zZXRfY29uZmlnID0gcmFkZW9uX2NydGNfc2V0X2NvbmZpZywKPiAgCS5kZXN0cm95 ID0gcmFkZW9uX2NydGNfZGVzdHJveSwKPiAtCS5wYWdlX2ZsaXAgPSByYWRlb25fY3J0Y19wYWdl X2ZsaXAsCj4gKwkucGFnZV9mbGlwX3RhcmdldCA9IHJhZGVvbl9jcnRjX3BhZ2VfZmxpcF90YXJn ZXQsCj4gIH07Cj4KPiAgc3RhdGljIHZvaWQgcmFkZW9uX2NydGNfaW5pdChzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2LCBpbnQgaW5kZXgpCj4KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJl ZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGlu Zm8vZHJpLWRldmVsCg==