From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH] drm/rockchip: fix fbdev crash when not use DRM_FBDEV_EMULATION Date: Wed, 3 Aug 2016 10:46:27 +0200 Message-ID: <20160803084627.GK6232@phenom.ffwll.local> References: <1470212025-30336-1-git-send-email-mark.yao@rock-chips.com> <20160803084321.GJ6232@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <20160803084321.GJ6232@phenom.ffwll.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Mark Yao Cc: linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-rockchip@lists.infradead.org, linux-arm-kernel@lists.infradead.org List-Id: linux-rockchip.vger.kernel.org T24gV2VkLCBBdWcgMDMsIDIwMTYgYXQgMTA6NDM6MjFBTSArMDIwMCwgRGFuaWVsIFZldHRlciB3 cm90ZToKPiBPbiBXZWQsIEF1ZyAwMywgMjAxNiBhdCAwNDoxMzo0NVBNICswODAwLCBNYXJrIFlh byB3cm90ZToKPiA+IFsgICAgMS4xNjI1NzFdIFVuYWJsZSB0byBoYW5kbGUga2VybmVsIE5VTEwg cG9pbnRlciBkZXJlZmVyZW5jZSBhdCB2aXJ0dWFsIGFkZHJlc3MgMDAwMDAyMDAKPiA+IFsgICAg MS4xNjU2NTZdIE1vZHVsZXMgbGlua2VkIGluOgo+ID4gWyAgICAxLjE2NTk0MV0gQ1BVOiA1IFBJ RDogMTQzIENvbW06IGt3b3JrZXIvNToyIE5vdCB0YWludGVkIDQuNC4xNSAjMjM3Cj4gPiBbICAg IDEuMTY2NTA2XSBIYXJkd2FyZSBuYW1lOiBSb2NrY2hpcCBSSzMzOTkgRXZhbHVhdGlvbiBCb2Fy ZCB2MSAoQW5kcm9pZCkgKERUKQo+ID4gWyAgICAxLjE2NzE1M10gV29ya3F1ZXVlOiBldmVudHMg b3V0cHV0X3BvbGxfZXhlY3V0ZQo+ID4gWyAgICAxLjE2ODIzMV0gUEMgaXMgYXQgbXV0ZXhfbG9j aysweDE0LzB4NDQKPiA+IFsgICAgMS4xNjg1ODZdIExSIGlzIGF0IGRybV9mYl9oZWxwZXJfaG90 cGx1Z19ldmVudCsweDI4LzB4Y2MKPiA+IFsgICAgMS4xNzIxOTJdIFs8ZmZmZmZmODAwODk4MjEx MD5dIG11dGV4X2xvY2srMHgxNC8weDQ0Cj4gPiBbICAgIDEuMTcyMTk2XSBbPGZmZmZmZjgwMDg0 MDI1YTQ+XSBkcm1fZmJfaGVscGVyX2hvdHBsdWdfZXZlbnQrMHgyOC8weGNjCj4gPiBbICAgIDEu MTcyMjAxXSBbPGZmZmZmZjgwMDg0MjdhZTQ+XSByb2NrY2hpcF9kcm1fb3V0cHV0X3BvbGxfY2hh bmdlZCsweDE0LzB4MWMKPiA+IFsgICAgMS4xNzIyMDRdIFs8ZmZmZmZmODAwODNmN2M0Yz5dIGRy bV9rbXNfaGVscGVyX2hvdHBsdWdfZXZlbnQrMHgyOC8weDM0Cj4gPiBbICAgIDEuMTcyMjA3XSBb PGZmZmZmZjgwMDgzZjdkZGM+XSBvdXRwdXRfcG9sbF9leGVjdXRlKzB4MTUwLzB4MTk4Cj4gPiBb ICAgIDEuMTcyMjEyXSBbPGZmZmZmZjgwMDgwYjBlYTg+XSBwcm9jZXNzX29uZV93b3JrKzB4MjE4 LzB4M2RjCj4gPiBbICAgIDEuMTcyMjE1XSBbPGZmZmZmZjgwMDgwYjE1Nzg+XSB3b3JrZXJfdGhy ZWFkKzB4MjRjLzB4Mzc0Cj4gPiBbICAgIDEuMTcyMjE3XSBbPGZmZmZmZjgwMDgwYjViY2M+XSBr dGhyZWFkKzB4ZGMvMHhlNAo+ID4gWyAgICAxLjE3MjIyMl0gWzxmZmZmZmY4MDA4MDg0Y2QwPl0g cmV0X2Zyb21fZm9yaysweDEwLzB4NDAKPiA+IAo+ID4gU2lnbmVkLW9mZi1ieTogTWFyayBZYW8g PG1hcmsueWFvQHJvY2stY2hpcHMuY29tPgo+IAo+IEVyaG0sIGhvdyBleGFjdGx5IGRpZCB5b3Ug bWFuYWdlIHRvIGJsb3cgdXAgaW4gdGhlcmU/IFdpdGhvdXQgZmJkZXYKPiBzdXBwb3J0IGVuYWJs ZSBkcm1fZmJfaGVscGVyX2hvdHBsdWdfZXZlbnQoKSBkb2VzIG5vdGhpbmcgYXQgYWxsLgo+IAo+ IFRoZSBmYmRldiBoZWxwZXIgaXMgZGVzaWduZWQgc3VjaCB0aGF0IHlvdSBfZG9uJ3RfIGhhdmUg dG8gY2hlY2sgZm9yIE5VTEwKPiBldmVyeXdoZXJlIGluIHRoZSBkcml2ZXIsIHRoYXQgd291bGQg YmUgcHJldHR5IGJhZCBjb2RlLgoKQW5kIGluZGVlZCB0aGlzIGlzc3VlIHNlZW1zIHByZWV4aXN0 aW5nLCBhbmQgd2FzIGFscmVhZHkgYXR0ZW1wdCB0byBmaXggaW4KCmNvbW1pdCA3NjVjMzViYmQy NjdlOTNlYWJlMTVhOTQ1MzQ2ODhkZGFhMGI5ZGM3CkF1dGhvcjogSGVpa28gU3TDvGJuZXIgPGhl aWtvQHNudGVjaC5kZT4KRGF0ZTogICBUdWUgSnVuIDIgMTY6NDE6NDUgMjAxNSArMDIwMAoKICAg IGRybS9yb2NrY2hpcDogb25seSBjYWxsIGRybV9mYl9oZWxwZXJfaG90cGx1Z19ldmVudCBpZiBm Yl9oZWxwZXIgcHJlc2VudAoKZXhjZXB0IHRoYXQgcGF0Y2ggaXMgY29tcGxldGUgbm9uc2Vuc2Ug LSB0aGUgYWRkZWQgY2hlY2sgaXMgYWx3YXlzIHRydWUuCk9oIGFuZCBpdCdzIG1pc3NpbmcgeW91 ciBzLW8tYiwgd2hpY2ggaXMgbm90IGdvb2QgYXQgYWxsLgoKVGhlIHByb3BlciBmaXggaXMgdG8g bWFrZSBkZWxheWVkIGZiZGV2IGxvYWRpbmcgd29yayBjb3JyZWN0bHksIFRoaWVycnkKaGFzIHBh dGNoZXMgZm9yIHRoYXQgb24gdGhlIG1haWxpbmcgbGlzdC4gTm90IGFkZCBldmVuIG1vcmUgaGFj a3MgbGlrZSB0aGUKYWJvdmUgKGFuZCB0aGVuIHNsYXAgYSBtaXNsZWFkaW5nIHN1YmplY3Qgb250 byB5b3VyIHBhdGNoKS4KLURhbmllbAoKPiAtRGFuaWVsCj4gCj4gPiAtLS0KPiA+ICBkcml2ZXJz L2dwdS9kcm0vcm9ja2NoaXAvcm9ja2NoaXBfZHJtX2Rydi5jICAgfCAxMyArKysrKysrKysrLS0t Cj4gPiAgZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL3JvY2tjaGlwX2RybV9kcnYuaCAgIHwgIDgg KysrKysrLS0KPiA+ICBkcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvcm9ja2NoaXBfZHJtX2ZiLmMg ICAgfCAgNiArKystLS0KPiA+ICBkcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvcm9ja2NoaXBfZHJt X2ZiZGV2LmMgfCAyNiArKysrKysrKysrKysrKysrKy0tLS0tLS0tLQo+ID4gIDQgZmlsZXMgY2hh bmdlZCwgMzYgaW5zZXJ0aW9ucygrKSwgMTcgZGVsZXRpb25zKC0pCj4gPiAKPiA+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvcm9ja2NoaXBfZHJtX2Rydi5jIGIvZHJpdmVy cy9ncHUvZHJtL3JvY2tjaGlwL3JvY2tjaGlwX2RybV9kcnYuYwo+ID4gaW5kZXggYTgyMmQ0OS4u MWE0ZGFkNiAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9yb2NrY2hp cF9kcm1fZHJ2LmMKPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9yb2NrY2hpcF9k cm1fZHJ2LmMKPiA+IEBAIC0yNjEsNyArMjYxLDEwIEBAIHN0YXRpYyB2b2lkIHJvY2tjaGlwX2Ry bV9sYXN0Y2xvc2Uoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiA+ICB7Cj4gPiAgCXN0cnVjdCBy b2NrY2hpcF9kcm1fcHJpdmF0ZSAqcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7Cj4gPiAgCj4gPiAt CWRybV9mYl9oZWxwZXJfcmVzdG9yZV9mYmRldl9tb2RlX3VubG9ja2VkKCZwcml2LT5mYmRldl9o ZWxwZXIpOwo+ID4gKwlpZiAoIXByaXYtPmZiZGV2KQo+ID4gKwkJcmV0dXJuOwo+ID4gKwo+ID4g Kwlkcm1fZmJfaGVscGVyX3Jlc3RvcmVfZmJkZXZfbW9kZV91bmxvY2tlZCgmcHJpdi0+ZmJkZXYt PmZiZGV2X2hlbHBlcik7Cj4gPiAgfQo+ID4gIAo+ID4gIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZmls ZV9vcGVyYXRpb25zIHJvY2tjaGlwX2RybV9kcml2ZXJfZm9wcyA9IHsKPiA+IEBAIC0zMTAsOCAr MzEzLDEwIEBAIHZvaWQgcm9ja2NoaXBfZHJtX2ZiX3N1c3BlbmQoc3RydWN0IGRybV9kZXZpY2Ug KmRybSkKPiA+ICB7Cj4gPiAgCXN0cnVjdCByb2NrY2hpcF9kcm1fcHJpdmF0ZSAqcHJpdiA9IGRy bS0+ZGV2X3ByaXZhdGU7Cj4gPiAgCj4gPiArCWlmICghcHJpdi0+ZmJkZXYpCj4gPiArCQlyZXR1 cm47Cj4gPiAgCWNvbnNvbGVfbG9jaygpOwo+ID4gLQlkcm1fZmJfaGVscGVyX3NldF9zdXNwZW5k KCZwcml2LT5mYmRldl9oZWxwZXIsIDEpOwo+ID4gKwlkcm1fZmJfaGVscGVyX3NldF9zdXNwZW5k KCZwcml2LT5mYmRldi0+ZmJkZXZfaGVscGVyLCAxKTsKPiA+ICAJY29uc29sZV91bmxvY2soKTsK PiA+ICB9Cj4gPiAgCj4gPiBAQCAtMzE5LDggKzMyNCwxMCBAQCB2b2lkIHJvY2tjaGlwX2RybV9m Yl9yZXN1bWUoc3RydWN0IGRybV9kZXZpY2UgKmRybSkKPiA+ICB7Cj4gPiAgCXN0cnVjdCByb2Nr Y2hpcF9kcm1fcHJpdmF0ZSAqcHJpdiA9IGRybS0+ZGV2X3ByaXZhdGU7Cj4gPiAgCj4gPiArCWlm ICghcHJpdi0+ZmJkZXYpCj4gPiArCQlyZXR1cm47Cj4gPiAgCWNvbnNvbGVfbG9jaygpOwo+ID4g LQlkcm1fZmJfaGVscGVyX3NldF9zdXNwZW5kKCZwcml2LT5mYmRldl9oZWxwZXIsIDApOwo+ID4g Kwlkcm1fZmJfaGVscGVyX3NldF9zdXNwZW5kKCZwcml2LT5mYmRldi0+ZmJkZXZfaGVscGVyLCAw KTsKPiA+ICAJY29uc29sZV91bmxvY2soKTsKPiA+ICB9Cj4gPiAgCj4gPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL3JvY2tjaGlwX2RybV9kcnYuaCBiL2RyaXZlcnMvZ3B1 L2RybS9yb2NrY2hpcC9yb2NrY2hpcF9kcm1fZHJ2LmgKPiA+IGluZGV4IGVhMzkzMjkuLmMwNTRm YzIgMTAwNjQ0Cj4gPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvcm9ja2NoaXBfZHJt X2Rydi5oCj4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvcm9ja2NoaXBfZHJtX2Ry di5oCj4gPiBAQCAtNTAsNiArNTAsMTEgQEAgc3RydWN0IHJvY2tjaGlwX2NydGNfc3RhdGUgewo+ ID4gICNkZWZpbmUgdG9fcm9ja2NoaXBfY3J0Y19zdGF0ZShzKSBcCj4gPiAgCQljb250YWluZXJf b2Yocywgc3RydWN0IHJvY2tjaGlwX2NydGNfc3RhdGUsIGJhc2UpCj4gPiAgCj4gPiArc3RydWN0 IHJvY2tjaGlwX2RybV9mYmRldiB7Cj4gPiArCXN0cnVjdCBkcm1fZmJfaGVscGVyIGZiZGV2X2hl bHBlcjsKPiA+ICsJc3RydWN0IGRybV9nZW1fb2JqZWN0ICpmYmRldl9ibzsKPiA+ICt9Owo+ID4g Kwo+ID4gIC8qCj4gPiAgICogUm9ja2NoaXAgZHJtIHByaXZhdGUgc3RydWN0dXJlLgo+ID4gICAq Cj4gPiBAQCAtNTcsOCArNjIsNyBAQCBzdHJ1Y3Qgcm9ja2NoaXBfY3J0Y19zdGF0ZSB7Cj4gPiAg ICogQG51bV9waXBlOiBudW1iZXIgb2YgcGlwZXMgZm9yIHRoaXMgZGV2aWNlLgo+ID4gICAqLwo+ ID4gIHN0cnVjdCByb2NrY2hpcF9kcm1fcHJpdmF0ZSB7Cj4gPiAtCXN0cnVjdCBkcm1fZmJfaGVs cGVyIGZiZGV2X2hlbHBlcjsKPiA+IC0Jc3RydWN0IGRybV9nZW1fb2JqZWN0ICpmYmRldl9ibzsK PiA+ICsJc3RydWN0IHJvY2tjaGlwX2RybV9mYmRldiAqZmJkZXY7Cj4gPiAgCWNvbnN0IHN0cnVj dCByb2NrY2hpcF9jcnRjX2Z1bmNzICpjcnRjX2Z1bmNzW1JPQ0tDSElQX01BWF9DUlRDXTsKPiA+ ICAJc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlOwo+ID4gIH07Cj4gPiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL3JvY2tjaGlwX2RybV9mYi5jIGIvZHJpdmVycy9n cHUvZHJtL3JvY2tjaGlwL3JvY2tjaGlwX2RybV9mYi5jCj4gPiBpbmRleCA1NWM1MjczLi5mZWY2 ZjhkIDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL3JvY2tjaGlwX2Ry bV9mYi5jCj4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvcm9ja2NoaXBfZHJtX2Zi LmMKPiA+IEBAIC0xNTYsMTAgKzE1NiwxMCBAQCBlcnJfZ2VtX29iamVjdF91bnJlZmVyZW5jZToK PiA+ICBzdGF0aWMgdm9pZCByb2NrY2hpcF9kcm1fb3V0cHV0X3BvbGxfY2hhbmdlZChzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2KQo+ID4gIHsKPiA+ICAJc3RydWN0IHJvY2tjaGlwX2RybV9wcml2YXRl ICpwcml2YXRlID0gZGV2LT5kZXZfcHJpdmF0ZTsKPiA+IC0Jc3RydWN0IGRybV9mYl9oZWxwZXIg KmZiX2hlbHBlciA9ICZwcml2YXRlLT5mYmRldl9oZWxwZXI7Cj4gPiArCXN0cnVjdCByb2NrY2hp cF9kcm1fZmJkZXYgKmZiZGV2ID0gcHJpdmF0ZS0+ZmJkZXY7Cj4gPiAgCj4gPiAtCWlmIChmYl9o ZWxwZXIpCj4gPiAtCQlkcm1fZmJfaGVscGVyX2hvdHBsdWdfZXZlbnQoZmJfaGVscGVyKTsKPiA+ ICsJaWYgKGZiZGV2KQo+ID4gKwkJZHJtX2ZiX2hlbHBlcl9ob3RwbHVnX2V2ZW50KCZmYmRldi0+ ZmJkZXZfaGVscGVyKTsKPiA+ICB9Cj4gPiAgCj4gPiAgc3RhdGljIHZvaWQgcm9ja2NoaXBfY3J0 Y193YWl0X2Zvcl91cGRhdGUoc3RydWN0IGRybV9jcnRjICpjcnRjKQo+ID4gZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9yb2NrY2hpcF9kcm1fZmJkZXYuYyBiL2RyaXZlcnMv Z3B1L2RybS9yb2NrY2hpcC9yb2NrY2hpcF9kcm1fZmJkZXYuYwo+ID4gaW5kZXggMjA3ZTAxZC4u Y2M1NzgxYSAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9yb2NrY2hp cF9kcm1fZmJkZXYuYwo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL3JvY2tjaGlw X2RybV9mYmRldi5jCj4gPiBAQCAtMjIsMTYgKzIyLDE2IEBACj4gPiAgI2luY2x1ZGUgInJvY2tj aGlwX2RybV9mYi5oIgo+ID4gIAo+ID4gICNkZWZpbmUgUFJFRkVSUkVEX0JQUAkJMzIKPiA+IC0j ZGVmaW5lIHRvX2RybV9wcml2YXRlKHgpIFwKPiA+IC0JCWNvbnRhaW5lcl9vZih4LCBzdHJ1Y3Qg cm9ja2NoaXBfZHJtX3ByaXZhdGUsIGZiZGV2X2hlbHBlcikKPiA+ICsjZGVmaW5lIHRvX3JvY2tj aGlwX2ZiZGV2KHgpIFwKPiA+ICsJCWNvbnRhaW5lcl9vZih4LCBzdHJ1Y3Qgcm9ja2NoaXBfZHJt X2ZiZGV2LCBmYmRldl9oZWxwZXIpCj4gPiAgCj4gPiAgc3RhdGljIGludCByb2NrY2hpcF9mYmRl dl9tbWFwKHN0cnVjdCBmYl9pbmZvICppbmZvLAo+ID4gIAkJCSAgICAgICBzdHJ1Y3Qgdm1fYXJl YV9zdHJ1Y3QgKnZtYSkKPiA+ICB7Cj4gPiAgCXN0cnVjdCBkcm1fZmJfaGVscGVyICpoZWxwZXIg PSBpbmZvLT5wYXI7Cj4gPiAtCXN0cnVjdCByb2NrY2hpcF9kcm1fcHJpdmF0ZSAqcHJpdmF0ZSA9 IHRvX2RybV9wcml2YXRlKGhlbHBlcik7Cj4gPiArCXN0cnVjdCByb2NrY2hpcF9kcm1fZmJkZXYg KmZiZGV2ID0gdG9fcm9ja2NoaXBfZmJkZXYoaGVscGVyKTsKPiA+ICAKPiA+IC0JcmV0dXJuIHJv Y2tjaGlwX2dlbV9tbWFwX2J1Zihwcml2YXRlLT5mYmRldl9ibywgdm1hKTsKPiA+ICsJcmV0dXJu IHJvY2tjaGlwX2dlbV9tbWFwX2J1ZihmYmRldi0+ZmJkZXZfYm8sIHZtYSk7Cj4gPiAgfQo+ID4g IAo+ID4gIHN0YXRpYyBzdHJ1Y3QgZmJfb3BzIHJvY2tjaGlwX2RybV9mYmRldl9vcHMgPSB7Cj4g PiBAQCAtNTAsNyArNTAsNyBAQCBzdGF0aWMgc3RydWN0IGZiX29wcyByb2NrY2hpcF9kcm1fZmJk ZXZfb3BzID0gewo+ID4gIHN0YXRpYyBpbnQgcm9ja2NoaXBfZHJtX2ZiZGV2X2NyZWF0ZShzdHJ1 Y3QgZHJtX2ZiX2hlbHBlciAqaGVscGVyLAo+ID4gIAkJCQkgICAgIHN0cnVjdCBkcm1fZmJfaGVs cGVyX3N1cmZhY2Vfc2l6ZSAqc2l6ZXMpCj4gPiAgewo+ID4gLQlzdHJ1Y3Qgcm9ja2NoaXBfZHJt X3ByaXZhdGUgKnByaXZhdGUgPSB0b19kcm1fcHJpdmF0ZShoZWxwZXIpOwo+ID4gKwlzdHJ1Y3Qg cm9ja2NoaXBfZHJtX2ZiZGV2ICpmYmRldiA9IHRvX3JvY2tjaGlwX2ZiZGV2KGhlbHBlcik7Cj4g PiAgCXN0cnVjdCBkcm1fbW9kZV9mYl9jbWQyIG1vZGVfY21kID0geyAwIH07Cj4gPiAgCXN0cnVj dCBkcm1fZGV2aWNlICpkZXYgPSBoZWxwZXItPmRldjsKPiA+ICAJc3RydWN0IHJvY2tjaGlwX2dl bV9vYmplY3QgKnJrX29iajsKPiA+IEBAIC03NSw3ICs3NSw3IEBAIHN0YXRpYyBpbnQgcm9ja2No aXBfZHJtX2ZiZGV2X2NyZWF0ZShzdHJ1Y3QgZHJtX2ZiX2hlbHBlciAqaGVscGVyLAo+ID4gIAlp ZiAoSVNfRVJSKHJrX29iaikpCj4gPiAgCQlyZXR1cm4gLUVOT01FTTsKPiA+ICAKPiA+IC0JcHJp dmF0ZS0+ZmJkZXZfYm8gPSAmcmtfb2JqLT5iYXNlOwo+ID4gKwlmYmRldi0+ZmJkZXZfYm8gPSAm cmtfb2JqLT5iYXNlOwo+ID4gIAo+ID4gIAlmYmkgPSBkcm1fZmJfaGVscGVyX2FsbG9jX2ZiaSho ZWxwZXIpOwo+ID4gIAlpZiAoSVNfRVJSKGZiaSkpIHsKPiA+IEBAIC04NSw3ICs4NSw3IEBAIHN0 YXRpYyBpbnQgcm9ja2NoaXBfZHJtX2ZiZGV2X2NyZWF0ZShzdHJ1Y3QgZHJtX2ZiX2hlbHBlciAq aGVscGVyLAo+ID4gIAl9Cj4gPiAgCj4gPiAgCWhlbHBlci0+ZmIgPSByb2NrY2hpcF9kcm1fZnJh bWVidWZmZXJfaW5pdChkZXYsICZtb2RlX2NtZCwKPiA+IC0JCQkJCQkgICBwcml2YXRlLT5mYmRl dl9ibyk7Cj4gPiArCQkJCQkJICAgZmJkZXYtPmZiZGV2X2JvKTsKPiA+ICAJaWYgKElTX0VSUiho ZWxwZXItPmZiKSkgewo+ID4gIAkJZGV2X2VycihkZXYtPmRldiwgIkZhaWxlZCB0byBhbGxvY2F0 ZSBEUk0gZnJhbWVidWZmZXIuXG4iKTsKPiA+ICAJCXJldCA9IFBUUl9FUlIoaGVscGVyLT5mYik7 Cj4gPiBAQCAtMTMwLDYgKzEzMCw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2ZiX2hlbHBl cl9mdW5jcyByb2NrY2hpcF9kcm1fZmJfaGVscGVyX2Z1bmNzID0gewo+ID4gIGludCByb2NrY2hp cF9kcm1fZmJkZXZfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ID4gIHsKPiA+ICAJc3Ry dWN0IHJvY2tjaGlwX2RybV9wcml2YXRlICpwcml2YXRlID0gZGV2LT5kZXZfcHJpdmF0ZTsKPiA+ ICsJc3RydWN0IHJvY2tjaGlwX2RybV9mYmRldiAqZmJkZXY7Cj4gPiAgCXN0cnVjdCBkcm1fZmJf aGVscGVyICpoZWxwZXI7Cj4gPiAgCXVuc2lnbmVkIGludCBudW1fY3J0YzsKPiA+ICAJaW50IHJl dDsKPiA+IEBAIC0xMzksNyArMTQwLDEyIEBAIGludCByb2NrY2hpcF9kcm1fZmJkZXZfaW5pdChz dHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ID4gIAo+ID4gIAludW1fY3J0YyA9IGRldi0+bW9kZV9j b25maWcubnVtX2NydGM7Cj4gPiAgCj4gPiAtCWhlbHBlciA9ICZwcml2YXRlLT5mYmRldl9oZWxw ZXI7Cj4gPiArCWZiZGV2ID0gZGV2bV9remFsbG9jKGRldi0+ZGV2LCBzaXplb2YoKmZiZGV2KSwg R0ZQX0tFUk5FTCk7Cj4gPiArCWlmICghZmJkZXYpCj4gPiArCQlyZXR1cm4gLUVOT01FTTsKPiA+ ICsKPiA+ICsJcHJpdmF0ZS0+ZmJkZXYgPSBmYmRldjsKPiA+ICsJaGVscGVyID0gJmZiZGV2LT5m YmRldl9oZWxwZXI7Cj4gPiAgCj4gPiAgCWRybV9mYl9oZWxwZXJfcHJlcGFyZShkZXYsIGhlbHBl ciwgJnJvY2tjaGlwX2RybV9mYl9oZWxwZXJfZnVuY3MpOwo+ID4gIAo+ID4gQEAgLTE3NSw3ICsx ODEsOSBAQCB2b2lkIHJvY2tjaGlwX2RybV9mYmRldl9maW5pKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYpCj4gPiAgCXN0cnVjdCByb2NrY2hpcF9kcm1fcHJpdmF0ZSAqcHJpdmF0ZSA9IGRldi0+ZGV2 X3ByaXZhdGU7Cj4gPiAgCXN0cnVjdCBkcm1fZmJfaGVscGVyICpoZWxwZXI7Cj4gPiAgCj4gPiAt CWhlbHBlciA9ICZwcml2YXRlLT5mYmRldl9oZWxwZXI7Cj4gPiArCWlmICghcHJpdmF0ZSB8fCBw cml2YXRlLT5mYmRldikKPiA+ICsJCXJldHVybjsKPiA+ICsJaGVscGVyID0gJnByaXZhdGUtPmZi ZGV2LT5mYmRldl9oZWxwZXI7Cj4gPiAgCj4gPiAgCWRybV9mYl9oZWxwZXJfdW5yZWdpc3Rlcl9m YmkoaGVscGVyKTsKPiA+ICAJZHJtX2ZiX2hlbHBlcl9yZWxlYXNlX2ZiaShoZWxwZXIpOwo+ID4g LS0gCj4gPiAxLjkuMQo+ID4gCj4gPiAKPiA+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCj4gPiBkcmktZGV2ZWwgbWFpbGluZyBsaXN0Cj4gPiBkcmktZGV2 ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4gPiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo+IAo+IC0tIAo+IERhbmllbCBWZXR0ZXIKPiBT b2Z0d2FyZSBFbmdpbmVlciwgSW50ZWwgQ29ycG9yYXRpb24KPiBodHRwOi8vYmxvZy5mZndsbC5j aAoKLS0gCkRhbmllbCBWZXR0ZXIKU29mdHdhcmUgRW5naW5lZXIsIEludGVsIENvcnBvcmF0aW9u Cmh0dHA6Ly9ibG9nLmZmd2xsLmNoCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2RyaS1kZXZlbAo=