Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756880AbeAINBp (ORCPT + 1 other); Tue, 9 Jan 2018 08:01:45 -0500 Received: from mx07-00178001.pphosted.com ([62.209.51.94]:61766 "EHLO mx07-00178001.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754790AbeAINBn (ORCPT ); Tue, 9 Jan 2018 08:01:43 -0500 From: Philippe CORNU To: Brian Norris , Archit Taneja , Andrzej Hajda , "Laurent Pinchart" CC: David Airlie , Yannick FERTRE , Benjamin Gaignard , Vincent ABRIOU , "dri-devel@lists.freedesktop.org" , "linux-kernel@vger.kernel.org" , Sean Paul , "Nickey Yang" , "hl@rock-chips.com" , "linux-rockchip@lists.infradead.org" , "mka@chromium.org" , Nickey Yang Subject: Re: [PATCH] drm/bridge/synopsis: stop clobbering drvdata Thread-Topic: [PATCH] drm/bridge/synopsis: stop clobbering drvdata Thread-Index: AQHTZ+U+D0o5pXmGNkmTFIzN40kJg6Mpd3wAgEI7woA= Date: Tue, 9 Jan 2018 13:01:02 +0000 Message-ID: References: <20171128010538.119114-1-briannorris@chromium.org> <348421ad-a6f5-0943-f38d-d9a6de60e32e@st.com> In-Reply-To: <348421ad-a6f5-0943-f38d-d9a6de60e32e@st.com> Accept-Language: fr-FR, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.5.0 x-ms-exchange-messagesentrepresentingtype: 1 x-ms-exchange-transport-fromentityheader: Hosted x-originating-ip: [10.75.127.44] Content-Type: text/plain; charset="utf-8" Content-ID: <351BB002729E1640B00A86132A4EFC5C@st.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2018-01-09_07:,, signatures=0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Return-Path: SGkgQXJjaGl0LCBBbmRyemVqICYgTGF1cmVudCwNCg0KUmVnYXJkaW5nIHRoaXMgcGF0Y2ggZnJv bSBCcmlhbiwgSSB0aGluayBpdCBjb3VsZCBiZSBuaWNlIHRvIG1lcmdlIGl0IA0KKDF4QWNrZWQt YnksIDJ4UmV2aWV3ZWQtYnkpLg0KDQpDb3VsZCB5b3UgcGxlYXNlIGhhdmUgYSBsb29rPw0KDQpP bmx5IHRoZSBzbWFsbCAidHlwbyIgaW4gdGhlIGhlYWRsaW5lIG5lZWRzIHRvIGJlIGNoYW5nZWQu DQoNCk1hbnkgdGhhbmtzLA0KUGhpbGlwcGUgOi0pDQoNCk9uIDExLzI4LzIwMTcgMTA6MzQgQU0s IFBoaWxpcHBlIENPUk5VIHdyb3RlOg0KPiBIaSBCcmlhbiwNCj4gDQo+IE9uIDExLzI4LzIwMTcg MDI6MDUgQU0sIEJyaWFuIE5vcnJpcyB3cm90ZToNCj4+IEJyaWRnZSBkcml2ZXJzL2hlbHBlcnMg c2hvdWxkbid0IGJlIGNsb2JiZXJpbmcgdGhlIGRydmRhdGEsIHNpbmNlIGENCj4+IHBhcmVudCBk cml2ZXIgbWlnaHQgbmVlZCB0byBvd24gdGhpcy4gSW5zdGVhZCwgbGV0J3MgcmV0dXJuIG91cg0K Pj4gJ2R3X21pcGlfZHNpJyBvYmplY3QgYW5kIGhhdmUgY2FsbGVycyBwYXNzIHRoYXQgYmFjayB0 byB1cyBmb3IgcmVtb3ZhbC4NCj4gDQo+IEFuZCBtYW55IHRoYW5rcyBmb3IgdGhpcyBjbGVhbnVw Lg0KPiAocGxlYXNlIHVwZGF0ZSB0aGUgaGVhZGxpbmUgd2l0aCAic3lub3BzeXMiKQ0KPiANCj4g U3VjY2Vzc2Z1bGx5IHRlc3RlZCBvbiBzdG0uDQo+IA0KPiBBY2tlZC1ieTogUGhpbGlwcGUgQ29y bnUgPHBoaWxpcHBlLmNvcm51QHN0LmNvbT4NCj4gDQo+IE1hbnkgdGhhbmtzLA0KPiBQaGlsaXBw ZSA6LSkNCj4+DQo+PiBTaWduZWQtb2ZmLWJ5OiBCcmlhbiBOb3JyaXMgPGJyaWFubm9ycmlzQGNo cm9taXVtLm9yZz4NCj4+IC0tLQ0KPj4gwqAgZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9zeW5vcHN5 cy9kdy1taXBpLWRzaS5jIHwgMzYgDQo+PiArKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0NCj4+ IMKgIGRyaXZlcnMvZ3B1L2RybS9zdG0vZHdfbWlwaV9kc2ktc3RtLmPCoMKgwqDCoMKgwqDCoMKg IHwgMTQgKysrKysrKy0tLS0NCj4+IMKgIGluY2x1ZGUvZHJtL2JyaWRnZS9kd19taXBpX2RzaS5o wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfCAxNyArKysrKysrKy0tLS0tDQo+PiDCoCAzIGZp bGVzIGNoYW5nZWQsIDMzIGluc2VydGlvbnMoKyksIDM0IGRlbGV0aW9ucygtKQ0KPj4NCj4+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL3N5bm9wc3lzL2R3LW1pcGktZHNpLmMg DQo+PiBiL2RyaXZlcnMvZ3B1L2RybS9icmlkZ2Uvc3lub3BzeXMvZHctbWlwaS1kc2kuYw0KPj4g aW5kZXggZDljY2E0ZmQ2NmVjLi5jMzljN2RjZTIwZWQgMTAwNjQ0DQo+PiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vYnJpZGdlL3N5bm9wc3lzL2R3LW1pcGktZHNpLmMNCj4+ICsrKyBiL2RyaXZlcnMv Z3B1L2RybS9icmlkZ2Uvc3lub3BzeXMvZHctbWlwaS1kc2kuYw0KPj4gQEAgLTkyMiw4ICs5MjIs NiBAQCBfX2R3X21pcGlfZHNpX3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsDQo+ PiDCoMKgwqDCoMKgIGRzaS0+YnJpZGdlLm9mX25vZGUgPSBwZGV2LT5kZXYub2Zfbm9kZTsNCj4+ IMKgICNlbmRpZg0KPj4gLcKgwqDCoCBkZXZfc2V0X2RydmRhdGEoZGV2LCBkc2kpOw0KPj4gLQ0K Pj4gwqDCoMKgwqDCoCByZXR1cm4gZHNpOw0KPj4gwqAgfQ0KPj4gQEAgLTkzNSwyMyArOTMzLDE2 IEBAIHN0YXRpYyB2b2lkIF9fZHdfbWlwaV9kc2lfcmVtb3ZlKHN0cnVjdCANCj4+IGR3X21pcGlf ZHNpICpkc2kpDQo+PiDCoCAvKg0KPj4gwqDCoCAqIFByb2JlL3JlbW92ZSBBUEksIHVzZWQgZnJv bSBwbGF0Zm9ybXMgYmFzZWQgb24gdGhlIERSTSBicmlkZ2UgQVBJLg0KPj4gwqDCoCAqLw0KPj4g LWludCBkd19taXBpX2RzaV9wcm9iZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LA0KPj4g LcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGNvbnN0IHN0cnVjdCBkd19taXBpX2RzaV9wbGF0 X2RhdGEgKnBsYXRfZGF0YSkNCj4+ICtzdHJ1Y3QgZHdfbWlwaV9kc2kgKg0KPj4gK2R3X21pcGlf ZHNpX3Byb2JlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsDQo+PiArwqDCoMKgwqDCoMKg wqDCoMKgIGNvbnN0IHN0cnVjdCBkd19taXBpX2RzaV9wbGF0X2RhdGEgKnBsYXRfZGF0YSkNCj4+ IMKgIHsNCj4+IC3CoMKgwqAgc3RydWN0IGR3X21pcGlfZHNpICpkc2k7DQo+PiAtDQo+PiAtwqDC oMKgIGRzaSA9IF9fZHdfbWlwaV9kc2lfcHJvYmUocGRldiwgcGxhdF9kYXRhKTsNCj4+IC3CoMKg wqAgaWYgKElTX0VSUihkc2kpKQ0KPj4gLcKgwqDCoMKgwqDCoMKgIHJldHVybiBQVFJfRVJSKGRz aSk7DQo+PiAtDQo+PiAtwqDCoMKgIHJldHVybiAwOw0KPj4gK8KgwqDCoCByZXR1cm4gX19kd19t aXBpX2RzaV9wcm9iZShwZGV2LCBwbGF0X2RhdGEpOw0KPj4gwqAgfQ0KPj4gwqAgRVhQT1JUX1NZ TUJPTF9HUEwoZHdfbWlwaV9kc2lfcHJvYmUpOw0KPj4gLXZvaWQgZHdfbWlwaV9kc2lfcmVtb3Zl KHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpDQo+PiArdm9pZCBkd19taXBpX2RzaV9yZW1v dmUoc3RydWN0IGR3X21pcGlfZHNpICpkc2kpDQo+PiDCoCB7DQo+PiAtwqDCoMKgIHN0cnVjdCBk d19taXBpX2RzaSAqZHNpID0gcGxhdGZvcm1fZ2V0X2RydmRhdGEocGRldik7DQo+PiAtDQo+PiDC oMKgwqDCoMKgIG1pcGlfZHNpX2hvc3RfdW5yZWdpc3RlcigmZHNpLT5kc2lfaG9zdCk7DQo+PiDC oMKgwqDCoMKgIF9fZHdfbWlwaV9kc2lfcmVtb3ZlKGRzaSk7DQo+PiBAQCAtOTYxLDMxICs5NTIs MzAgQEAgRVhQT1JUX1NZTUJPTF9HUEwoZHdfbWlwaV9kc2lfcmVtb3ZlKTsNCj4+IMKgIC8qDQo+ PiDCoMKgICogQmluZC91bmJpbmQgQVBJLCB1c2VkIGZyb20gcGxhdGZvcm1zIGJhc2VkIG9uIHRo ZSBjb21wb25lbnQgDQo+PiBmcmFtZXdvcmsuDQo+PiDCoMKgICovDQo+PiAtaW50IGR3X21pcGlf ZHNpX2JpbmQoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwgc3RydWN0IGRybV9lbmNvZGVy IA0KPj4gKmVuY29kZXIsDQo+PiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGNvbnN0IHN0cnVj dCBkd19taXBpX2RzaV9wbGF0X2RhdGEgKnBsYXRfZGF0YSkNCj4+ICtzdHJ1Y3QgZHdfbWlwaV9k c2kgKg0KPj4gK2R3X21pcGlfZHNpX2JpbmQoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwg c3RydWN0IGRybV9lbmNvZGVyIA0KPj4gKmVuY29kZXIsDQo+PiArwqDCoMKgwqDCoMKgwqDCoCBj b25zdCBzdHJ1Y3QgZHdfbWlwaV9kc2lfcGxhdF9kYXRhICpwbGF0X2RhdGEpDQo+PiDCoCB7DQo+ PiDCoMKgwqDCoMKgIHN0cnVjdCBkd19taXBpX2RzaSAqZHNpOw0KPj4gwqDCoMKgwqDCoCBpbnQg cmV0Ow0KPj4gwqDCoMKgwqDCoCBkc2kgPSBfX2R3X21pcGlfZHNpX3Byb2JlKHBkZXYsIHBsYXRf ZGF0YSk7DQo+PiDCoMKgwqDCoMKgIGlmIChJU19FUlIoZHNpKSkNCj4+IC3CoMKgwqDCoMKgwqDC oCByZXR1cm4gUFRSX0VSUihkc2kpOw0KPj4gK8KgwqDCoMKgwqDCoMKgIHJldHVybiBkc2k7DQo+ PiDCoMKgwqDCoMKgIHJldCA9IGRybV9icmlkZ2VfYXR0YWNoKGVuY29kZXIsICZkc2ktPmJyaWRn ZSwgTlVMTCk7DQo+PiDCoMKgwqDCoMKgIGlmIChyZXQpIHsNCj4+IC3CoMKgwqDCoMKgwqDCoCBk d19taXBpX2RzaV9yZW1vdmUocGRldik7DQo+PiArwqDCoMKgwqDCoMKgwqAgZHdfbWlwaV9kc2lf cmVtb3ZlKGRzaSk7DQo+PiDCoMKgwqDCoMKgwqDCoMKgwqAgRFJNX0VSUk9SKCJGYWlsZWQgdG8g aW5pdGlhbGl6ZSBicmlkZ2Ugd2l0aCBkcm1cbiIpOw0KPj4gLcKgwqDCoMKgwqDCoMKgIHJldHVy biByZXQ7DQo+PiArwqDCoMKgwqDCoMKgwqAgcmV0dXJuIEVSUl9QVFIocmV0KTsNCj4+IMKgwqDC oMKgwqAgfQ0KPj4gLcKgwqDCoCByZXR1cm4gMDsNCj4+ICvCoMKgwqAgcmV0dXJuIGRzaTsNCj4+ IMKgIH0NCj4+IMKgIEVYUE9SVF9TWU1CT0xfR1BMKGR3X21pcGlfZHNpX2JpbmQpOw0KPj4gLXZv aWQgZHdfbWlwaV9kc2lfdW5iaW5kKHN0cnVjdCBkZXZpY2UgKmRldikNCj4+ICt2b2lkIGR3X21p cGlfZHNpX3VuYmluZChzdHJ1Y3QgZHdfbWlwaV9kc2kgKmRzaSkNCj4+IMKgIHsNCj4+IC3CoMKg wqAgc3RydWN0IGR3X21pcGlfZHNpICpkc2kgPSBkZXZfZ2V0X2RydmRhdGEoZGV2KTsNCj4+IC0N Cj4+IMKgwqDCoMKgwqAgX19kd19taXBpX2RzaV9yZW1vdmUoZHNpKTsNCj4+IMKgIH0NCj4+IMKg IEVYUE9SVF9TWU1CT0xfR1BMKGR3X21pcGlfZHNpX3VuYmluZCk7DQo+PiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL3N0bS9kd19taXBpX2RzaS1zdG0uYyANCj4+IGIvZHJpdmVycy9ncHUv ZHJtL3N0bS9kd19taXBpX2RzaS1zdG0uYw0KPj4gaW5kZXggZTViNjMxMDI0MGZlLi43ZWQwZWY3 ZjZlYzIgMTAwNjQ0DQo+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vc3RtL2R3X21pcGlfZHNpLXN0 bS5jDQo+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vc3RtL2R3X21pcGlfZHNpLXN0bS5jDQo+PiBA QCAtNjYsNiArNjYsNyBAQCBlbnVtIGRzaV9jb2xvciB7DQo+PiDCoCBzdHJ1Y3QgZHdfbWlwaV9k c2lfc3RtIHsNCj4+IMKgwqDCoMKgwqAgdm9pZCBfX2lvbWVtICpiYXNlOw0KPj4gwqDCoMKgwqDC oCBzdHJ1Y3QgY2xrICpwbGxyZWZfY2xrOw0KPj4gK8KgwqDCoCBzdHJ1Y3QgZHdfbWlwaV9kc2kg KmRzaTsNCj4+IMKgIH07DQo+PiDCoCBzdGF0aWMgaW5saW5lIHZvaWQgZHNpX3dyaXRlKHN0cnVj dCBkd19taXBpX2RzaV9zdG0gKmRzaSwgdTMyIHJlZywgDQo+PiB1MzIgdmFsKQ0KPj4gQEAgLTMx OCwyMSArMzE5LDI0IEBAIHN0YXRpYyBpbnQgZHdfbWlwaV9kc2lfc3RtX3Byb2JlKHN0cnVjdCAN Cj4+IHBsYXRmb3JtX2RldmljZSAqcGRldikNCj4+IMKgwqDCoMKgwqAgZHdfbWlwaV9kc2lfc3Rt X3BsYXRfZGF0YS5iYXNlID0gZHNpLT5iYXNlOw0KPj4gwqDCoMKgwqDCoCBkd19taXBpX2RzaV9z dG1fcGxhdF9kYXRhLnByaXZfZGF0YSA9IGRzaTsNCj4+IC3CoMKgwqAgcmV0ID0gZHdfbWlwaV9k c2lfcHJvYmUocGRldiwgJmR3X21pcGlfZHNpX3N0bV9wbGF0X2RhdGEpOw0KPj4gLcKgwqDCoCBp ZiAocmV0KSB7DQo+PiArwqDCoMKgIHBsYXRmb3JtX3NldF9kcnZkYXRhKHBkZXYsIGRzaSk7DQo+ PiArDQo+PiArwqDCoMKgIGRzaS0+ZHNpID0gZHdfbWlwaV9kc2lfcHJvYmUocGRldiwgJmR3X21p cGlfZHNpX3N0bV9wbGF0X2RhdGEpOw0KPj4gK8KgwqDCoCBpZiAoSVNfRVJSKGRzaS0+ZHNpKSkg ew0KPj4gwqDCoMKgwqDCoMKgwqDCoMKgIERSTV9FUlJPUigiRmFpbGVkIHRvIGluaXRpYWxpemUg bWlwaSBkc2kgaG9zdFxuIik7DQo+PiDCoMKgwqDCoMKgwqDCoMKgwqAgY2xrX2Rpc2FibGVfdW5w cmVwYXJlKGRzaS0+cGxscmVmX2Nsayk7DQo+PiArwqDCoMKgwqDCoMKgwqAgcmV0dXJuIFBUUl9F UlIoZHNpLT5kc2kpOw0KPj4gwqDCoMKgwqDCoCB9DQo+PiAtwqDCoMKgIHJldHVybiByZXQ7DQo+ PiArwqDCoMKgIHJldHVybiAwOw0KPj4gwqAgfQ0KPj4gwqAgc3RhdGljIGludCBkd19taXBpX2Rz aV9zdG1fcmVtb3ZlKHN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpDQo+PiDCoCB7DQo+PiAt wqDCoMKgIHN0cnVjdCBkd19taXBpX2RzaV9zdG0gKmRzaSA9IGR3X21pcGlfZHNpX3N0bV9wbGF0 X2RhdGEucHJpdl9kYXRhOw0KPj4gK8KgwqDCoCBzdHJ1Y3QgZHdfbWlwaV9kc2lfc3RtICpkc2kg PSBwbGF0Zm9ybV9nZXRfZHJ2ZGF0YShwZGV2KTsNCj4+IMKgwqDCoMKgwqAgY2xrX2Rpc2FibGVf dW5wcmVwYXJlKGRzaS0+cGxscmVmX2Nsayk7DQo+PiAtwqDCoMKgIGR3X21pcGlfZHNpX3JlbW92 ZShwZGV2KTsNCj4+ICvCoMKgwqAgZHdfbWlwaV9kc2lfcmVtb3ZlKGRzaS0+ZHNpKTsNCj4+IMKg wqDCoMKgwqAgcmV0dXJuIDA7DQo+PiDCoCB9DQo+PiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0v YnJpZGdlL2R3X21pcGlfZHNpLmggDQo+PiBiL2luY2x1ZGUvZHJtL2JyaWRnZS9kd19taXBpX2Rz aS5oDQo+PiBpbmRleCA5YjMwZmVjMzAyYzguLmQ5YzZkNTQ5Zjk3MSAxMDA2NDQNCj4+IC0tLSBh L2luY2x1ZGUvZHJtL2JyaWRnZS9kd19taXBpX2RzaS5oDQo+PiArKysgYi9pbmNsdWRlL2RybS9i cmlkZ2UvZHdfbWlwaV9kc2kuaA0KPj4gQEAgLTEwLDYgKzEwLDggQEANCj4+IMKgICNpZm5kZWYg X19EV19NSVBJX0RTSV9fDQo+PiDCoCAjZGVmaW5lIF9fRFdfTUlQSV9EU0lfXw0KPj4gK3N0cnVj dCBkd19taXBpX2RzaTsNCj4+ICsNCj4+IMKgIHN0cnVjdCBkd19taXBpX2RzaV9waHlfb3BzIHsN Cj4+IMKgwqDCoMKgwqAgaW50ICgqaW5pdCkodm9pZCAqcHJpdl9kYXRhKTsNCj4+IMKgwqDCoMKg wqAgaW50ICgqZ2V0X2xhbmVfbWJwcykodm9pZCAqcHJpdl9kYXRhLCBzdHJ1Y3QgZHJtX2Rpc3Bs YXlfbW9kZSANCj4+ICptb2RlLA0KPj4gQEAgLTI5LDExICszMSwxNCBAQCBzdHJ1Y3QgZHdfbWlw aV9kc2lfcGxhdF9kYXRhIHsNCj4+IMKgwqDCoMKgwqAgdm9pZCAqcHJpdl9kYXRhOw0KPj4gwqAg fTsNCj4+IC1pbnQgZHdfbWlwaV9kc2lfcHJvYmUoc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRl diwNCj4+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBjb25zdCBzdHJ1Y3QgZHdfbWlwaV9k c2lfcGxhdF9kYXRhICpwbGF0X2RhdGEpOw0KPj4gLXZvaWQgZHdfbWlwaV9kc2lfcmVtb3ZlKHN0 cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYpOw0KPj4gLWludCBkd19taXBpX2RzaV9iaW5kKHN0 cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBkZXYsIHN0cnVjdCBkcm1fZW5jb2RlciANCj4+ICplbmNv ZGVyLA0KPj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBjb25zdCBzdHJ1Y3QgZHdfbWlwaV9k c2lfcGxhdF9kYXRhICpwbGF0X2RhdGEpOw0KPj4gLXZvaWQgZHdfbWlwaV9kc2lfdW5iaW5kKHN0 cnVjdCBkZXZpY2UgKmRldik7DQo+PiArc3RydWN0IGR3X21pcGlfZHNpICpkd19taXBpX2RzaV9w cm9iZShzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2LA0KPj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBjb25zdCBzdHJ1Y3QgZHdfbWlwaV9kc2lfcGxhdF9k YXRhDQo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICpwbGF0 X2RhdGEpOw0KPj4gK3ZvaWQgZHdfbWlwaV9kc2lfcmVtb3ZlKHN0cnVjdCBkd19taXBpX2RzaSAq ZHNpKTsNCj4+ICtzdHJ1Y3QgZHdfbWlwaV9kc2kgKmR3X21pcGlfZHNpX2JpbmQoc3RydWN0IHBs YXRmb3JtX2RldmljZSAqcGRldiwNCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlciwNCj4+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGNvbnN0IHN0cnVjdCBkd19taXBpX2RzaV9wbGF0 X2RhdGENCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICpwbGF0 X2RhdGEpOw0KPj4gK3ZvaWQgZHdfbWlwaV9kc2lfdW5iaW5kKHN0cnVjdCBkd19taXBpX2RzaSAq ZHNpKTsNCj4+IMKgICNlbmRpZiAvKiBfX0RXX01JUElfRFNJX18gKi8NCj4+