From mboxrd@z Thu Jan 1 00:00:00 1970 From: Inki Dae Subject: Re: [PATCH] drm/exynos: use a new anon file for exynos gem mmaper Date: Thu, 11 Sep 2014 11:16:53 +0900 Message-ID: <54110615.7020608@samsung.com> References: <1387535815-31880-1-git-send-email-inki.dae@samsung.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mailout3.samsung.com (mailout3.samsung.com [203.254.224.33]) by gabe.freedesktop.org (Postfix) with ESMTP id 3D9806E07C for ; Wed, 10 Sep 2014 19:17:17 -0700 (PDT) Received: from epcpsbgr4.samsung.com (u144.gpu120.samsung.co.kr [203.254.230.144]) by mailout3.samsung.com (Oracle Communications Messaging Server 7u4-24.01 (7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTP id <0NBP001CFT062ID0@mailout3.samsung.com> for dri-devel@lists.freedesktop.org; Thu, 11 Sep 2014 11:16:54 +0900 (KST) 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: Daniel Vetter Cc: Kyungmin Park , Al Viro , dri-devel List-Id: dri-devel@lists.freedesktop.org T24gMjAxNOuFhCAwOeyblCAxMOydvCAxODowMSwgRGFuaWVsIFZldHRlciB3cm90ZToKPiBPayBJ J3ZlIHN0dW1ibGVkIG92ZXIgdGhlIGV4eW5vcyBtbWFwIHN0dWZmIGFnYWluIHdoaWxlIGNsZWFu aW5nIHVwCj4gZHJtIGxlZ2FjeSBjcnVmdCBhbmQgSSBqdXN0IGRvbid0IGdldCB3aGF0IHlvdSdy ZSBkb2luZyBhbmQgd2h5Cj4gZXhhY3RseSBleHlub3MgbmVlZHMgdG8gYmUgc3BlY2lhbC4KPiAK PiBfQWxsXyBvdGhlciBkcm0gZHJpdmVycyBoYXBwaWx5IGdldCBhbG9uZyB3aXRoIHRoZSB2bWEg b2Zmc2V0IG1hbmdlcgo+IHN0dWZmIHRvIGhhbmRsZSBtbWFwcywgYnV0IHNvbWVob3cgZXh5bm9z IGRvZXMgc29tZXRoaW5nIHJlYWxseSBjcmF6eS4KCldlIGFyZSBhbHNvIHVzaW5nIHRoZSB2bWEg b2Zmc2V0IG1hbmFnZXIgc3R1ZmYuIFdlIGp1c3QgYWRkZWQgZGlyZWN0Cm1hcHBpbmcgaW50ZXJm YWNlIHNwZWNpZmljIHRvIEV4eW5vcyBhZGRpdGlvbmFsbHkuCgo+IAo+IENhbiB5b3UgcGxlYXNl IGV4cGxhaW4gdGhlIGRlc2lnbiBqdXN0aWZpY2F0aW9uIGZvciB0aGlzIGFuZCB3aHkKPiBzd2l0 Y2hpbmcgdG8gdGhlIHN0YW5kYXJkIGdlbSBtbWFwIHN1cHBvcnQgaXNuJ3QgcG9zc2libGU/CgpB cyBJIG1lbnRpb25lZCBhYm92ZSwgd2UgYXJlIHVzaW5nIHRoZSBzdGFuZGFyZCBnZW0gbW1hcCBz dXBwb3J0LgpIb3dldmVyLCB0aGUgc3RhbmRhcmQgZ2VtIG1tYXAgaXMgcmVxdWlyZWQgZm9yIG9u LWRlbWFuZCBwYWdpbmcgbW9zdGx5CnN1aXRhYmxlIGZvciBEZXNrdG9wLiBJbiBjYXNlIG9mIEFS TSBTb0MsIHdob2xlIG1lbW9yeSByZWdpb24gcmVxdWVzdGVkCmJ5IHVzZXJzcGFjZSB3b3VsZCBi ZSBhbGxvY2F0ZWQgb25jZSB0aGUgZ2VtIGNyZWF0aW9uIGludGVyZmFjZSBpcwpjYWxsZWQuIElu IHRoaXMgY2FzZSwgaXQgd291bGRuJ3QgbmVlZCB0byBtYXAgdXNlcnNwYWNlIHdpdGggcGh5c2lj YWwKcGFnZSBpbiBwYWdlIGZhdWx0IGhhbmRsZXIsIGFuZCB0aGUgdXNlIG9mIHRoZSB2bWEgb2Zm c2V0IG1hbmFnZXIgc3R1ZmYKd291bGQgYmUgdW5uZWNlc3Nhcnkgc3RlcC4KCkZvciB0aGUgc2Ft ZSBxdWVzdGlvbiwgQWwgVmlybyBkaWQsCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvYXJj aGl2ZXMvZHJpLWRldmVsLzIwMTMtU2VwdGVtYmVyLzA0NjIwNy5odG1sCgpJcyB0aGVyZSBhbnkg aXNzdWUgSSBhbSBtaXNzaW5nICwgdGhhdCBjb3VsZCBiZSBpbmN1cnJlZCBieSBFeHlub3MgY29k ZXM/CgpUaGFua3MsCklua2kgRGFlCgo+IAo+IFRoYW5rcywgRGFuaWVsCj4gCj4gCj4gT24gRnJp LCBEZWMgMjAsIDIwMTMgYXQgMTE6MzYgQU0sIElua2kgRGFlIDxpbmtpLmRhZUBzYW1zdW5nLmNv bT4gd3JvdGU6Cj4+IFRoaXMgcGF0Y2ggcmVzb2x2ZXMgcG90ZW50aWFsIGRlYWRsb2NrIGlzc3Vl IHRoYXQgY2FuIGJlIGluY3VycmVkCj4+IGJ5IGNoYW5naW5nIGZpbGUtPmZfb3AgYW5kIGZpbHAt PnByaXZhdGVfZGF0YSB0byBleHlub3Mgc3BlY2lmaWMKPj4gbWFwcGVyIG9wcyBhbmQgZ2VtIG9i amVjdCB0ZW1wb3JhcmlseS4KPj4KPj4gVG8gcmVzb2x2ZSB0aGlzIGlzc3VlLCB0aGlzIHBhdGNo IGNyZWF0ZXMgYSBuZXcgYW5vbiBmaWxlIGRlZGljYXRlZAo+PiB0byBleHlub3Mgc3BlY2lmaWMg bW1hcGVyLCBhbmQgbWFraW5nIGl0IHVzZWQgaW5zdGVhZCBvZiBleGlzdGluZyBvbmUuCj4+Cj4+ IFNpZ25lZC1vZmYtYnk6IElua2kgRGFlIDxpbmtpLmRhZUBzYW1zdW5nLmNvbT4KPj4gU2lnbmVk LW9mZi1ieTogS3l1bmdtaW4gUGFyayA8a3l1bmdtaW4ucGFya0BzYW1zdW5nLmNvbT4KPj4gLS0t Cj4+ICBkcml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5vc19kcm1fZHJ2LmMgfCAgIDIxICsrKysr KysrKwo+PiAgZHJpdmVycy9ncHUvZHJtL2V4eW5vcy9leHlub3NfZHJtX2Rydi5oIHwgICAgMSAr Cj4+ICBkcml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5vc19kcm1fZ2VtLmMgfCAgIDc0ICsrKysr Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPj4gIGRyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5 bm9zX2RybV9nZW0uaCB8ICAgIDMgKysKPj4gIDQgZmlsZXMgY2hhbmdlZCwgMzggaW5zZXJ0aW9u cygrKSwgNjEgZGVsZXRpb25zKC0pCj4+Cj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v ZXh5bm9zL2V4eW5vc19kcm1fZHJ2LmMgYi9kcml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5vc19k cm1fZHJ2LmMKPj4gaW5kZXggMjJiOGY1ZS4uYjVlNTk1NyAxMDA2NDQKPj4gLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2V4eW5vcy9leHlub3NfZHJtX2Rydi5jCj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9leHlub3MvZXh5bm9zX2RybV9kcnYuYwo+PiBAQCAtMTQsNiArMTQsOCBAQAo+PiAgI2luY2x1 ZGUgPGRybS9kcm1QLmg+Cj4+ICAjaW5jbHVkZSA8ZHJtL2RybV9jcnRjX2hlbHBlci5oPgo+Pgo+ PiArI2luY2x1ZGUgPGxpbnV4L2Fub25faW5vZGVzLmg+Cj4+ICsKPj4gICNpbmNsdWRlIDxkcm0v ZXh5bm9zX2RybS5oPgo+Pgo+PiAgI2luY2x1ZGUgImV4eW5vc19kcm1fZHJ2LmgiCj4+IEBAIC0x NTAsOSArMTUyLDE0IEBAIHN0YXRpYyBpbnQgZXh5bm9zX2RybV91bmxvYWQoc3RydWN0IGRybV9k ZXZpY2UgKmRldikKPj4gICAgICAgICByZXR1cm4gMDsKPj4gIH0KPj4KPj4gK3N0YXRpYyBjb25z dCBzdHJ1Y3QgZmlsZV9vcGVyYXRpb25zIGV4eW5vc19kcm1fZ2VtX2ZvcHMgPSB7Cj4+ICsgICAg ICAgLm1tYXAgPSBleHlub3NfZHJtX2dlbV9tbWFwX2J1ZmZlciwKPj4gK307Cj4+ICsKPj4gIHN0 YXRpYyBpbnQgZXh5bm9zX2RybV9vcGVuKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBk cm1fZmlsZSAqZmlsZSkKPj4gIHsKPj4gICAgICAgICBzdHJ1Y3QgZHJtX2V4eW5vc19maWxlX3By aXZhdGUgKmZpbGVfcHJpdjsKPj4gKyAgICAgICBzdHJ1Y3QgZmlsZSAqYW5vbl9maWxwOwo+PiAg ICAgICAgIGludCByZXQ7Cj4+Cj4+ICAgICAgICAgZmlsZV9wcml2ID0ga3phbGxvYyhzaXplb2Yo KmZpbGVfcHJpdiksIEdGUF9LRVJORUwpOwo+PiBAQCAtMTY3LDYgKzE3NCwxNiBAQCBzdGF0aWMg aW50IGV4eW5vc19kcm1fb3BlbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJtX2Zp bGUgKmZpbGUpCj4+ICAgICAgICAgICAgICAgICBmaWxlLT5kcml2ZXJfcHJpdiA9IE5VTEw7Cj4+ ICAgICAgICAgfQo+Pgo+PiArICAgICAgIGFub25fZmlscCA9IGFub25faW5vZGVfZ2V0ZmlsZSgi ZXh5bm9zX2dlbSIsICZleHlub3NfZHJtX2dlbV9mb3BzLAo+PiArICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTlVMTCwgMCk7Cj4+ICsgICAgICAgaWYgKElTX0VSUihhbm9u X2ZpbHApKSB7Cj4+ICsgICAgICAgICAgICAgICBrZnJlZShmaWxlX3ByaXYpOwo+PiArICAgICAg ICAgICAgICAgcmV0dXJuIFBUUl9FUlIoYW5vbl9maWxwKTsKPj4gKyAgICAgICB9Cj4+ICsKPj4g KyAgICAgICBhbm9uX2ZpbHAtPmZfbW9kZSA9IEZNT0RFX1JFQUQgfCBGTU9ERV9XUklURTsKPj4g KyAgICAgICBmaWxlX3ByaXYtPmFub25fZmlscCA9IGFub25fZmlscDsKPj4gKwo+PiAgICAgICAg IHJldHVybiByZXQ7Cj4+ICB9Cj4+Cj4+IEBAIC0xNzksNiArMTk2LDcgQEAgc3RhdGljIHZvaWQg ZXh5bm9zX2RybV9wcmVjbG9zZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+PiAgc3RhdGljIHZv aWQgZXh5bm9zX2RybV9wb3N0Y2xvc2Uoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGRy bV9maWxlICpmaWxlKQo+PiAgewo+PiAgICAgICAgIHN0cnVjdCBleHlub3NfZHJtX3ByaXZhdGUg KnByaXZhdGUgPSBkZXYtPmRldl9wcml2YXRlOwo+PiArICAgICAgIHN0cnVjdCBkcm1fZXh5bm9z X2ZpbGVfcHJpdmF0ZSAqZmlsZV9wcml2Owo+PiAgICAgICAgIHN0cnVjdCBkcm1fcGVuZGluZ192 YmxhbmtfZXZlbnQgKnYsICp2dDsKPj4gICAgICAgICBzdHJ1Y3QgZHJtX3BlbmRpbmdfZXZlbnQg KmUsICpldDsKPj4gICAgICAgICB1bnNpZ25lZCBsb25nIGZsYWdzOwo+PiBAQCAtMjA0LDYgKzIy Miw5IEBAIHN0YXRpYyB2b2lkIGV4eW5vc19kcm1fcG9zdGNsb3NlKHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYsIHN0cnVjdCBkcm1fZmlsZSAqZmlsZSkKPj4gICAgICAgICB9Cj4+ICAgICAgICAgc3Bp bl91bmxvY2tfaXJxcmVzdG9yZSgmZGV2LT5ldmVudF9sb2NrLCBmbGFncyk7Cj4+Cj4+ICsgICAg ICAgZmlsZV9wcml2ID0gZmlsZS0+ZHJpdmVyX3ByaXY7Cj4+ICsgICAgICAgaWYgKGZpbGVfcHJp di0+YW5vbl9maWxwKQo+PiArICAgICAgICAgICAgICAgZnB1dChmaWxlX3ByaXYtPmFub25fZmls cCk7Cj4+Cj4+ICAgICAgICAga2ZyZWUoZmlsZS0+ZHJpdmVyX3ByaXYpOwo+PiAgICAgICAgIGZp bGUtPmRyaXZlcl9wcml2ID0gTlVMTDsKPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9l eHlub3MvZXh5bm9zX2RybV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX2Ry bV9kcnYuaAo+PiBpbmRleCBlYWExOTY2Li4wZWFmNWEyIDEwMDY0NAo+PiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vZXh5bm9zL2V4eW5vc19kcm1fZHJ2LmgKPj4gKysrIGIvZHJpdmVycy9ncHUvZHJt L2V4eW5vcy9leHlub3NfZHJtX2Rydi5oCj4+IEBAIC0yMjYsNiArMjI2LDcgQEAgc3RydWN0IGV4 eW5vc19kcm1faXBwX3ByaXZhdGUgewo+PiAgc3RydWN0IGRybV9leHlub3NfZmlsZV9wcml2YXRl IHsKPj4gICAgICAgICBzdHJ1Y3QgZXh5bm9zX2RybV9nMmRfcHJpdmF0ZSAgICpnMmRfcHJpdjsK Pj4gICAgICAgICBzdHJ1Y3QgZXh5bm9zX2RybV9pcHBfcHJpdmF0ZSAgICppcHBfcHJpdjsKPj4g KyAgICAgICBzdHJ1Y3QgZmlsZSAgICAgICAgICAgICAgICAgICAgICphbm9uX2ZpbHA7Cj4+ICB9 Owo+Pgo+PiAgLyoKPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9z X2RybV9nZW0uYyBiL2RyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX2RybV9nZW0uYwo+PiBp bmRleCAxYWRlMTkxLi40OWI4YzliIDEwMDY0NAo+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZXh5 bm9zL2V4eW5vc19kcm1fZ2VtLmMKPj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2V4eW5vcy9leHlu b3NfZHJtX2dlbS5jCj4+IEBAIC0zMzgsNDYgKzMzOCwyMiBAQCBpbnQgZXh5bm9zX2RybV9nZW1f bWFwX29mZnNldF9pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAo+PiAg ICAgICAgICAgICAgICAgICAgICAgICAmYXJncy0+b2Zmc2V0KTsKPj4gIH0KPj4KPj4gLXN0YXRp YyBzdHJ1Y3QgZHJtX2ZpbGUgKmV4eW5vc19kcm1fZmluZF9kcm1fZmlsZShzdHJ1Y3QgZHJtX2Rl dmljZSAqZHJtX2RldiwKPj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBzdHJ1Y3QgZmlsZSAqZmlscCkKPj4gLXsKPj4gLSAgICAgICBzdHJ1 Y3QgZHJtX2ZpbGUgKmZpbGVfcHJpdjsKPj4gLQo+PiAtICAgICAgIC8qIGZpbmQgY3VycmVudCBw cm9jZXNzJ3MgZHJtX2ZpbGUgZnJvbSBmaWxlbGlzdC4gKi8KPj4gLSAgICAgICBsaXN0X2Zvcl9l YWNoX2VudHJ5KGZpbGVfcHJpdiwgJmRybV9kZXYtPmZpbGVsaXN0LCBsaGVhZCkKPj4gLSAgICAg ICAgICAgICAgIGlmIChmaWxlX3ByaXYtPmZpbHAgPT0gZmlscCkKPj4gLSAgICAgICAgICAgICAg ICAgICAgICAgcmV0dXJuIGZpbGVfcHJpdjsKPj4gLQo+PiAtICAgICAgIFdBUk5fT04oMSk7Cj4+ IC0KPj4gLSAgICAgICByZXR1cm4gRVJSX1BUUigtRUZBVUxUKTsKPj4gLX0KPj4gLQo+PiAtc3Rh dGljIGludCBleHlub3NfZHJtX2dlbV9tbWFwX2J1ZmZlcihzdHJ1Y3QgZmlsZSAqZmlscCwKPj4g K2ludCBleHlub3NfZHJtX2dlbV9tbWFwX2J1ZmZlcihzdHJ1Y3QgZmlsZSAqZmlscCwKPj4gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3Qg KnZtYSkKPj4gIHsKPj4gICAgICAgICBzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKm9iaiA9IGZpbHAt PnByaXZhdGVfZGF0YTsKPj4gICAgICAgICBzdHJ1Y3QgZXh5bm9zX2RybV9nZW1fb2JqICpleHlu b3NfZ2VtX29iaiA9IHRvX2V4eW5vc19nZW1fb2JqKG9iaik7Cj4+ICAgICAgICAgc3RydWN0IGRy bV9kZXZpY2UgKmRybV9kZXYgPSBvYmotPmRldjsKPj4gICAgICAgICBzdHJ1Y3QgZXh5bm9zX2Ry bV9nZW1fYnVmICpidWZmZXI7Cj4+IC0gICAgICAgc3RydWN0IGRybV9maWxlICpmaWxlX3ByaXY7 Cj4+ICAgICAgICAgdW5zaWduZWQgbG9uZyB2bV9zaXplOwo+PiAgICAgICAgIGludCByZXQ7Cj4+ Cj4+ICsgICAgICAgV0FSTl9PTighbXV0ZXhfaXNfbG9ja2VkKCZvYmotPmRldi0+c3RydWN0X211 dGV4KSk7Cj4+ICsKPj4gICAgICAgICB2bWEtPnZtX2ZsYWdzIHw9IFZNX0lPIHwgVk1fRE9OVEVY UEFORCB8IFZNX0RPTlREVU1QOwo+PiAgICAgICAgIHZtYS0+dm1fcHJpdmF0ZV9kYXRhID0gb2Jq Owo+PiAgICAgICAgIHZtYS0+dm1fb3BzID0gZHJtX2Rldi0+ZHJpdmVyLT5nZW1fdm1fb3BzOwo+ Pgo+PiAtICAgICAgIC8qIHJlc3RvcmUgaXQgdG8gZHJpdmVyJ3MgZm9wcy4gKi8KPj4gLSAgICAg ICBmaWxwLT5mX29wID0gZm9wc19nZXQoZHJtX2Rldi0+ZHJpdmVyLT5mb3BzKTsKPj4gLQo+PiAt ICAgICAgIGZpbGVfcHJpdiA9IGV4eW5vc19kcm1fZmluZF9kcm1fZmlsZShkcm1fZGV2LCBmaWxw KTsKPj4gLSAgICAgICBpZiAoSVNfRVJSKGZpbGVfcHJpdikpCj4+IC0gICAgICAgICAgICAgICBy ZXR1cm4gUFRSX0VSUihmaWxlX3ByaXYpOwo+PiAtCj4+IC0gICAgICAgLyogcmVzdG9yZSBpdCB0 byBkcm1fZmlsZS4gKi8KPj4gLSAgICAgICBmaWxwLT5wcml2YXRlX2RhdGEgPSBmaWxlX3ByaXY7 Cj4+IC0KPj4gICAgICAgICB1cGRhdGVfdm1fY2FjaGVfYXR0cihleHlub3NfZ2VtX29iaiwgdm1h KTsKPj4KPj4gICAgICAgICB2bV9zaXplID0gdm1hLT52bV9lbmQgLSB2bWEtPnZtX3N0YXJ0Owo+ PiBAQCAtNDExLDE1ICszODcsMTMgQEAgc3RhdGljIGludCBleHlub3NfZHJtX2dlbV9tbWFwX2J1 ZmZlcihzdHJ1Y3QgZmlsZSAqZmlscCwKPj4gICAgICAgICByZXR1cm4gMDsKPj4gIH0KPj4KPj4g LXN0YXRpYyBjb25zdCBzdHJ1Y3QgZmlsZV9vcGVyYXRpb25zIGV4eW5vc19kcm1fZ2VtX2ZvcHMg PSB7Cj4+IC0gICAgICAgLm1tYXAgPSBleHlub3NfZHJtX2dlbV9tbWFwX2J1ZmZlciwKPj4gLX07 Cj4+IC0KPj4gIGludCBleHlub3NfZHJtX2dlbV9tbWFwX2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYsIHZvaWQgKmRhdGEsCj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVj dCBkcm1fZmlsZSAqZmlsZV9wcml2KQo+PiAgewo+PiArICAgICAgIHN0cnVjdCBkcm1fZXh5bm9z X2ZpbGVfcHJpdmF0ZSAqZXh5bm9zX2ZpbGVfcHJpdjsKPj4gICAgICAgICBzdHJ1Y3QgZHJtX2V4 eW5vc19nZW1fbW1hcCAqYXJncyA9IGRhdGE7Cj4+ICAgICAgICAgc3RydWN0IGRybV9nZW1fb2Jq ZWN0ICpvYmo7Cj4+ICsgICAgICAgc3RydWN0IGZpbGUgKmFub25fZmlscDsKPj4gICAgICAgICB1 bnNpZ25lZCBsb25nIGFkZHI7Cj4+Cj4+ICAgICAgICAgaWYgKCEoZGV2LT5kcml2ZXItPmRyaXZl cl9mZWF0dXJlcyAmIERSSVZFUl9HRU0pKSB7Cj4+IEBAIC00MjcsNDcgKzQwMSwyNSBAQCBpbnQg ZXh5bm9zX2RybV9nZW1fbW1hcF9pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpk YXRhLAo+PiAgICAgICAgICAgICAgICAgcmV0dXJuIC1FTk9ERVY7Cj4+ICAgICAgICAgfQo+Pgo+ PiArICAgICAgIG11dGV4X2xvY2soJmRldi0+c3RydWN0X211dGV4KTsKPj4gKwo+PiAgICAgICAg IG9iaiA9IGRybV9nZW1fb2JqZWN0X2xvb2t1cChkZXYsIGZpbGVfcHJpdiwgYXJncy0+aGFuZGxl KTsKPj4gICAgICAgICBpZiAoIW9iaikgewo+PiAgICAgICAgICAgICAgICAgRFJNX0VSUk9SKCJm YWlsZWQgdG8gbG9va3VwIGdlbSBvYmplY3QuXG4iKTsKPj4gKyAgICAgICAgICAgICAgIG11dGV4 X3VubG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwo+PiAgICAgICAgICAgICAgICAgcmV0dXJuIC1F SU5WQUw7Cj4+ICAgICAgICAgfQo+Pgo+PiAtICAgICAgIC8qCj4+IC0gICAgICAgICogV2UgaGF2 ZSB0byB1c2UgZ2VtIG9iamVjdCBhbmQgaXRzIGZvcHMgZm9yIHNwZWNpZmljIG1tYXBlciwKPj4g LSAgICAgICAgKiBidXQgdm1fbW1hcCgpIGNhbiBkZWxpdmVyIG9ubHkgZmlscC4gU28gd2UgaGF2 ZSB0byBjaGFuZ2UKPj4gLSAgICAgICAgKiBmaWxwLT5mX29wIGFuZCBmaWxwLT5wcml2YXRlX2Rh dGEgdGVtcG9yYXJpbHksIHRoZW4gcmVzdG9yZQo+PiAtICAgICAgICAqIGFnYWluLiBTbyBpdCBp cyBpbXBvcnRhbnQgdG8ga2VlcCBsb2NrIHVudGlsIHJlc3RvcmF0aW9uIHRoZQo+PiAtICAgICAg ICAqIHNldHRpbmdzIHRvIHByZXZlbnQgb3RoZXJzIGZyb20gbWlzdXNlIG9mIGZpbHAtPmZfb3Ag b3IKPj4gLSAgICAgICAgKiBmaWxwLT5wcml2YXRlX2RhdGEuCj4+IC0gICAgICAgICovCj4+IC0g ICAgICAgbXV0ZXhfbG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwo+PiAtCj4+IC0gICAgICAgLyoK Pj4gLSAgICAgICAgKiBTZXQgc3BlY2lmaWMgbW1wZXIncyBmb3BzLiBBbmQgaXQgd2lsbCBiZSBy ZXN0b3JlZCBieQo+PiAtICAgICAgICAqIGV4eW5vc19kcm1fZ2VtX21tYXBfYnVmZmVyIHRvIGRl di0+ZHJpdmVyLT5mb3BzLgo+PiAtICAgICAgICAqIFRoaXMgaXMgdXNlZCB0byBjYWxsIHNwZWNp ZmljIG1hcHBlciB0ZW1wb3JhcmlseS4KPj4gLSAgICAgICAgKi8KPj4gLSAgICAgICBmaWxlX3By aXYtPmZpbHAtPmZfb3AgPSAmZXh5bm9zX2RybV9nZW1fZm9wczsKPj4gLQo+PiAtICAgICAgIC8q Cj4+IC0gICAgICAgICogU2V0IGdlbSBvYmplY3QgdG8gcHJpdmF0ZV9kYXRhIHNvIHRoYXQgc3Bl Y2lmaWMgbW1hcGVyCj4+IC0gICAgICAgICogY2FuIGdldCB0aGUgZ2VtIG9iamVjdC4gQW5kIGl0 IHdpbGwgYmUgcmVzdG9yZWQgYnkKPj4gLSAgICAgICAgKiBleHlub3NfZHJtX2dlbV9tbWFwX2J1 ZmZlciB0byBkcm1fZmlsZS4KPj4gLSAgICAgICAgKi8KPj4gLSAgICAgICBmaWxlX3ByaXYtPmZp bHAtPnByaXZhdGVfZGF0YSA9IG9iajsKPj4gKyAgICAgICBleHlub3NfZmlsZV9wcml2ID0gZmls ZV9wcml2LT5kcml2ZXJfcHJpdjsKPj4gKyAgICAgICBhbm9uX2ZpbHAgPSBleHlub3NfZmlsZV9w cml2LT5hbm9uX2ZpbHA7Cj4+ICsgICAgICAgYW5vbl9maWxwLT5wcml2YXRlX2RhdGEgPSBvYmo7 Cj4+Cj4+IC0gICAgICAgYWRkciA9IHZtX21tYXAoZmlsZV9wcml2LT5maWxwLCAwLCBhcmdzLT5z aXplLAo+PiAtICAgICAgICAgICAgICAgICAgICAgICBQUk9UX1JFQUQgfCBQUk9UX1dSSVRFLCBN QVBfU0hBUkVELCAwKTsKPj4gKyAgICAgICBhZGRyID0gdm1fbW1hcChhbm9uX2ZpbHAsIDAsIGFy Z3MtPnNpemUsIFBST1RfUkVBRCB8IFBST1RfV1JJVEUsCj4+ICsgICAgICAgICAgICAgICAgICAg ICAgIE1BUF9TSEFSRUQsIDApOwo+Pgo+PiAgICAgICAgIGRybV9nZW1fb2JqZWN0X3VucmVmZXJl bmNlKG9iaik7Cj4+Cj4+ICAgICAgICAgaWYgKElTX0VSUl9WQUxVRShhZGRyKSkgewo+PiAtICAg ICAgICAgICAgICAgLyogY2hlY2sgZmlscC0+Zl9vcCwgZmlscC0+cHJpdmF0ZV9kYXRhIGFyZSBy ZXN0b3JlZCAqLwo+PiAtICAgICAgICAgICAgICAgaWYgKGZpbGVfcHJpdi0+ZmlscC0+Zl9vcCA9 PSAmZXh5bm9zX2RybV9nZW1fZm9wcykgewo+PiAtICAgICAgICAgICAgICAgICAgICAgICBmaWxl X3ByaXYtPmZpbHAtPmZfb3AgPSBmb3BzX2dldChkZXYtPmRyaXZlci0+Zm9wcyk7Cj4+IC0gICAg ICAgICAgICAgICAgICAgICAgIGZpbGVfcHJpdi0+ZmlscC0+cHJpdmF0ZV9kYXRhID0gZmlsZV9w cml2Owo+PiAtICAgICAgICAgICAgICAgfQo+PiAgICAgICAgICAgICAgICAgbXV0ZXhfdW5sb2Nr KCZkZXYtPnN0cnVjdF9tdXRleCk7Cj4+ICAgICAgICAgICAgICAgICByZXR1cm4gKGludClhZGRy Owo+PiAgICAgICAgIH0KPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5 bm9zX2RybV9nZW0uaCBiL2RyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX2RybV9nZW0uaAo+ PiBpbmRleCA3MDJlYzNhLi5mZGU4NjBjIDEwMDY0NAo+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0v ZXh5bm9zL2V4eW5vc19kcm1fZ2VtLmgKPj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2V4eW5vcy9l eHlub3NfZHJtX2dlbS5oCj4+IEBAIC0xMjIsNiArMTIyLDkgQEAgaW50IGV4eW5vc19kcm1fZ2Vt X21hcF9vZmZzZXRfaW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKPj4g IGludCBleHlub3NfZHJtX2dlbV9tbWFwX2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZv aWQgKmRhdGEsCj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBkcm1fZmls ZSAqZmlsZV9wcml2KTsKPj4KPj4gK2ludCBleHlub3NfZHJtX2dlbV9tbWFwX2J1ZmZlcihzdHJ1 Y3QgZmlsZSAqZmlscCwKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBz dHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYSk7Cj4+ICsKPj4gIC8qIG1hcCB1c2VyIHNwYWNlIGFs bG9jYXRlZCBieSBtYWxsb2MgdG8gcGFnZXMuICovCj4+ICBpbnQgZXh5bm9zX2RybV9nZW1fdXNl cnB0cl9pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAo+PiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBkcm1fZmlsZSAqZmlsZV9wcml2 KTsKPj4gLS0KPj4gMS43LjkuNQo+Pgo+PiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwo+PiBkcmktZGV2ZWwgbWFpbGluZyBsaXN0Cj4+IGRyaS1kZXZlbEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKPj4gaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWls bWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo+IAo+IAo+IAoKX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxA bGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1h bi9saXN0aW5mby9kcmktZGV2ZWwK