From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH 05/18] drm: Add helper to implement legacy dirtyfb Date: Wed, 3 Oct 2018 10:45:02 +0200 Message-ID: <20181003084502.GQ11082@phenom.ffwll.local> References: <20180928003020.1737-1-drawat@vmware.com> <20180928003020.1737-5-drawat@vmware.com> <20181001080826.GT11082@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-ed1-x543.google.com (mail-ed1-x543.google.com [IPv6:2a00:1450:4864:20::543]) by gabe.freedesktop.org (Postfix) with ESMTPS id 0DE656E1F1 for ; Wed, 3 Oct 2018 08:45:09 +0000 (UTC) Received: by mail-ed1-x543.google.com with SMTP id z21-v6so147105edb.11 for ; Wed, 03 Oct 2018 01:45:08 -0700 (PDT) Content-Disposition: inline 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: Deepak Singh Rawat Cc: Thomas Hellstrom , Daniel Vetter , "dri-devel@lists.freedesktop.org" , linux-graphics-maintainer List-Id: dri-devel@lists.freedesktop.org T24gVHVlLCBPY3QgMDIsIDIwMTggYXQgMDQ6MzA6MzBQTSArMDAwMCwgRGVlcGFrIFNpbmdoIFJh d2F0IHdyb3RlOgo+ID4gT24gVGh1LCBTZXAgMjcsIDIwMTggYXQgMDU6MzA6MDdQTSAtMDcwMCwg RGVlcGFrIFJhd2F0IHdyb3RlOgo+ID4gPiBGcm9tOiBSb2IgQ2xhcmsgPHJvYmRjbGFya0BnbWFp bC5jb20+Cj4gPiA+Cj4gPiA+IEFkZCBhbiBhdG9taWMgaGVscGVyIHRvIGltcGxlbWVudCBkaXJ0 eWZiIHN1cHBvcnQuICBUaGlzIGlzIG5lZWRlZCB0bwo+ID4gPiBzdXBwb3J0IERTSSBjb21tYW5k LW1vZGUgcGFuZWxzIHdpdGggeDExIHVzZXJzcGFjZSAoaWUuIHdoZW4gd2UgY2FuJ3QKPiA+ID4g cmVseSBvbiBwYWdlZmxpcHMgdG8gdHJpZ2dlciBhIGZsdXNoIHRvIHRoZSBwYW5lbCkuCj4gPiA+ Cj4gPiA+IHYyOiBNb2RpZmllZCB0aGUgaGVscGVyIHRvIHVzZSBwbGFuZSBmYl9kYW1hZ2VfY2xp cHMgcHJvcGVydHkgYW5kCj4gPiA+IHJlbW92ZWQgcGxhbmVfc3RhdGU6OmRpcnR5IGZsYWcuCj4g PiA+Cj4gPiA+IHYzOgo+ID4gPiAtIFVzZSB1YXBpIGRybV9tb2RlX3JlY3QuCj4gPiA+IC0gU3Vw cG9ydCBhbm5vdGF0ZSBmbGFncy4KPiA+ID4KPiA+ID4gQ2M6IHZpbGxlLnN5cmphbGFAbGludXgu aW50ZWwuY29tCj4gPiA+IENjOiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGZmd2xsLmNo Pgo+ID4gPiBDYzogUGVra2EgUGFhbGFuZW4gPHBwYWFsYW5lbkBnbWFpbC5jb20+Cj4gPiA+IFNp Z25lZC1vZmYtYnk6IFJvYiBDbGFyayA8cm9iZGNsYXJrQGdtYWlsLmNvbT4KPiA+ID4gU2lnbmVk LW9mZi1ieTogRGVlcGFrIFJhd2F0IDxkcmF3YXRAdm13YXJlLmNvbT4KPiA+ID4gLS0tCj4gPiA+ ICBkcml2ZXJzL2dwdS9kcm0vZHJtX2RhbWFnZV9oZWxwZXIuYyB8IDEyMQo+ID4gKysrKysrKysr KysrKysrKysrKysrKysrKysrKwo+ID4gPiAgaW5jbHVkZS9kcm0vZHJtX2RhbWFnZV9oZWxwZXIu aCAgICAgfCAgIDQgKwo+ID4gPiAgMiBmaWxlcyBjaGFuZ2VkLCAxMjUgaW5zZXJ0aW9ucygrKQo+ ID4gPgo+ID4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9kYW1hZ2VfaGVscGVy LmMKPiA+IGIvZHJpdmVycy9ncHUvZHJtL2RybV9kYW1hZ2VfaGVscGVyLmMKPiA+ID4gaW5kZXgg YmM3MzRkZGFmMTgwLi5lY2YyNjI3NTU0M2YgMTAwNjQ0Cj4gPiA+IC0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9kcm1fZGFtYWdlX2hlbHBlci5jCj4gPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1f ZGFtYWdlX2hlbHBlci5jCj4gPiA+IEBAIC0yNiw2ICsyNiw3IEBACj4gPiA+ICAgKgo+ID4gPiAg ICogQXV0aG9yczoKPiA+ID4gICAqIERlZXBhayBSYXdhdCA8ZHJhd2F0QHZtd2FyZS5jb20+Cj4g PiA+ICsgKiBSb2IgQ2xhcmsgPHJvYmRjbGFya0BnbWFpbC5jb20+Cj4gPiA+ICAgKgo+ID4gPgo+ ID4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKgo+ID4gKioqKioqKioqKioqKioqKi8KPiA+ID4KPiA+ID4gQEAgLTcwLDYgKzcxLDIxIEBA Cj4gPiA+ICAgKiByZWN0YW5nbGVzIGNsaXBwZWQgdG8gJmRybV9wbGFuZV9zdGF0ZS5zcmMuCj4g PiA+ICAgKi8KPiA+ID4KPiA+ID4gK3N0YXRpYyB2b2lkIGNvbnZlcnRfY2xpcF9yZWN0X3RvX3Jl Y3QoY29uc3Qgc3RydWN0IGRybV9jbGlwX3JlY3QgKnNyYywKPiA+ID4gKwkJCQkgICAgICBzdHJ1 Y3QgZHJtX21vZGVfcmVjdCAqZGVzdCwKPiA+ID4gKwkJCQkgICAgICB1aW50MzJfdCBudW1fY2xp cHMsIHVpbnQzMl90IHNyY19pbmMpCj4gPiA+ICt7Cj4gPiA+ICsJd2hpbGUgKG51bV9jbGlwcyA+ IDApIHsKPiA+ID4gKwkJZGVzdC0+eDEgPSBzcmMtPngxOwo+ID4gPiArCQlkZXN0LT55MSA9IHNy Yy0+eTE7Cj4gPiA+ICsJCWRlc3QtPngyID0gc3JjLT54MjsKPiA+ID4gKwkJZGVzdC0+eTIgPSBz cmMtPnkyOwo+ID4gPiArCQlzcmMgKz0gc3JjX2luYzsKPiA+ID4gKwkJZGVzdCsrOwo+ID4gPiAr CQludW1fY2xpcHMtLTsKPiA+ID4gKwl9Cj4gPiA+ICt9Cj4gPiA+ICsKPiA+ID4gIC8qKgo+ID4g PiAgICogZHJtX3BsYW5lX2VuYWJsZV9mYl9kYW1hZ2VfY2xpcHMgLSBFbmFibGVzIHBsYW5lIGZi IGRhbWFnZSBjbGlwcwo+ID4gcHJvcGVydHkuCj4gPiA+ICAgKiBAcGxhbmU6IFBsYW5lIG9uIHdo aWNoIHRvIGVuYWJsZSBkYW1hZ2UgY2xpcHMgcHJvcGVydHkuCj4gPiA+IEBAIC0xMjMsNiArMTM5 LDExMSBAQCB2b2lkCj4gPiBkcm1fYXRvbWljX2hlbHBlcl9jaGVja19wbGFuZV9kYW1hZ2Uoc3Ry dWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlLAo+ID4gPiAgfQo+ID4gPiAgRVhQT1JUX1NZTUJP TChkcm1fYXRvbWljX2hlbHBlcl9jaGVja19wbGFuZV9kYW1hZ2UpOwo+ID4gPgo+ID4gPiArLyoq Cj4gPiA+ICsgKiBkcm1fYXRvbWljX2hlbHBlcl9kaXJ0eWZiIC0gSGVscGVyIGZvciBkaXJ0eWZi Lgo+ID4gPiArICogQGZiOiBEUk0gZnJhbWVidWZmZXIuCj4gPiA+ICsgKiBAZmlsZV9wcml2OiBE cm0gZmlsZSBmb3IgdGhlIGlvY3RsIGNhbGwuCj4gPiA+ICsgKiBAZmxhZ3M6IERpcnR5IGZiIGFu bm90YXRlIGZsYWdzLgo+ID4gPiArICogQGNvbG9yOiBDb2xvciBmb3IgYW5ub3RhdGUgZmlsbC4K PiA+ID4gKyAqIEBjbGlwczogRGlydHkgcmVnaW9uLgo+ID4gPiArICogQG51bV9jbGlwczogQ291 bnQgb2YgY2xpcCBpbiBjbGlwcy4KPiA+ID4gKyAqCj4gPiA+ICsgKiBBIGhlbHBlciB0byBpbXBs ZW1lbnQgJmRybV9mcmFtZWJ1ZmZlcl9mdW5jczo6ZGlydHkgdXNpbmcgZGFtYWdlCj4gPiBpbnRl cmZhY2UKPiA+ID4gKyAqIGR1cmluZyBwbGFuZSB1cGRhdGUuIFNpbWlsYXIgdG8gaW9jdGwsIHRo aXMgaGVscGVyIGRvIGEgZnVsbCBwbGFuZSB1cGRhdGUKPiA+ID4gKyAqIHdoZW4gbm8gY2xpcHMg YXJlIHByb3ZpZGVkLgo+ID4gCj4gPiBUaGUgYWJvdmUga2VybmVsZG9jIGRvZXNuJ3QgbWFrZSBz ZW5zZSB0byBtZSAuLi4gd2UgZG8gaGF2ZSBjbGlwcyBwcm92aWRlZAo+ID4gaGVyZSwgaXQncyBq dXN0IGEgZGlmZmVyZW50IGxheW91dC4KPiAKPiBUaGFua3MgRGFuaWVsIGZvciB0aGUgcmV2aWV3 LiBJIG1lYW50IGlmIGNsaXBzIGFyZSBOVUxMLCB3aGljaCBpcyBwb3NzaWJsZS4KCkFoIHJpZ2h0 LCBJJ3ZlIGZvcmdvdHRlbiB0aGF0IHRoZSBkaXJ0eSBpb2N0bCBhbGxvd3MgbnVtX2NsaXBzID09 IDAgaWZmCmNsaXBzID09IE5VTEwuIE1pZ2h0IGJlIGdvb2QgdG8gZG9jdW1lbnQgdGhhdCwgZm9y IHBlb3BsZSBsaWtlIG1lIDotKQoKPiA+ID4gKyAqCj4gPiA+ICsgKiBSZXR1cm5zOiBaZXJvIG9u IHN1Y2Nlc3MsIG5lZ2F0aXZlIGVycm5vIG9uIGZhaWx1cmUuCj4gPiA+ICsgKi8KPiA+ID4gK2lu dCBkcm1fYXRvbWljX2hlbHBlcl9kaXJ0eWZiKHN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKmZiLAo+ ID4gPiArCQkJICAgICAgc3RydWN0IGRybV9maWxlICpmaWxlX3ByaXYsIHVuc2lnbmVkIGZsYWdz LAo+ID4gPiArCQkJICAgICAgdW5zaWduZWQgY29sb3IsIHN0cnVjdCBkcm1fY2xpcF9yZWN0ICpj bGlwcywKPiA+ID4gKwkJCSAgICAgIHVuc2lnbmVkIG51bV9jbGlwcykKPiA+ID4gK3sKPiA+ID4g KwlzdHJ1Y3QgZHJtX21vZGVzZXRfYWNxdWlyZV9jdHggY3R4Owo+ID4gPiArCXN0cnVjdCBkcm1f cHJvcGVydHlfYmxvYiAqZGFtYWdlID0gTlVMTDsKPiA+ID4gKwlzdHJ1Y3QgZHJtX21vZGVfcmVj dCAqcmVjdHMgPSBOVUxMOwo+ID4gPiArCXN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZTsK PiA+ID4gKwlzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZTsKPiA+ID4gKwlpbnQgcmV0ID0gMDsKPiA+ ID4gKwo+ID4gPiArCS8qCj4gPiA+ICsJICogV2hlbiBjYWxsZWQgZnJvbSBpb2N0bCwgd2UgYXJl IGludGVycnVwdGFibGUsIGJ1dCBub3Qgd2hlbiBjYWxsZWQKPiA+ID4gKwkgKiBpbnRlcm5hbGx5 IChpZS4gZGVmaW8gd29ya2VyKQo+ID4gPiArCSAqLwo+ID4gPiArCWRybV9tb2Rlc2V0X2FjcXVp cmVfaW5pdCgmY3R4LAo+ID4gPiArCQlmaWxlX3ByaXYgPyBEUk1fTU9ERVNFVF9BQ1FVSVJFX0lO VEVSUlVQVElCTEUgOiAwKTsKPiA+ID4gKwo+ID4gPiArCXN0YXRlID0gZHJtX2F0b21pY19zdGF0 ZV9hbGxvYyhmYi0+ZGV2KTsKPiA+ID4gKwlpZiAoIXN0YXRlKSB7Cj4gPiA+ICsJCXJldCA9IC1F Tk9NRU07Cj4gPiA+ICsJCWdvdG8gb3V0Owo+ID4gPiArCX0KPiA+ID4gKwlzdGF0ZS0+YWNxdWly ZV9jdHggPSAmY3R4Owo+ID4gPiArCj4gPiA+ICsJaWYgKGNsaXBzKSB7Cj4gPiA+ICsJCXVpbnQz Ml90IGluYyA9IDE7Cj4gPiA+ICsKPiA+ID4gKwkJaWYgKGZsYWdzICYgRFJNX01PREVfRkJfRElS VFlfQU5OT1RBVEVfQ09QWSkgewo+ID4gPiArCQkJaW5jID0gMjsKPiA+ID4gKwkJCW51bV9jbGlw cyAvPSAyOwo+ID4gPiArCQl9Cj4gPiA+ICsKPiA+ID4gKwkJcmVjdHMgPSBrY2FsbG9jKG51bV9j bGlwcywgc2l6ZW9mKCpyZWN0cyksIEdGUF9LRVJORUwpOwo+ID4gPiArCQlpZiAoIXJlY3RzKSB7 Cj4gPiA+ICsJCQlyZXQgPSAtRU5PTUVNOwo+ID4gPiArCQkJZ290byBvdXQ7Cj4gPiA+ICsJCX0K PiA+ID4gKwo+ID4gPiArCQljb252ZXJ0X2NsaXBfcmVjdF90b19yZWN0KGNsaXBzLCByZWN0cywg bnVtX2NsaXBzLCBpbmMpOwo+ID4gPiArCQlkYW1hZ2UgPSBkcm1fcHJvcGVydHlfY3JlYXRlX2Js b2IoZmItPmRldiwKPiA+ID4gKwkJCQkJCSAgbnVtX2NsaXBzICogc2l6ZW9mKCpyZWN0cyksCj4g PiA+ICsJCQkJCQkgIHJlY3RzKTsKPiA+ID4gKwkJaWYgKElTX0VSUihkYW1hZ2UpKSB7Cj4gPiA+ ICsJCQlyZXQgPSBQVFJfRVJSKGRhbWFnZSk7Cj4gPiA+ICsJCQlkYW1hZ2UgPSBOVUxMOwo+ID4g PiArCQkJZ290byBvdXQ7Cj4gPiA+ICsJCX0KPiA+ID4gKwl9Cj4gPiA+ICsKPiA+ID4gK3JldHJ5 Ogo+ID4gPiArCWRybV9mb3JfZWFjaF9wbGFuZShwbGFuZSwgZmItPmRldikgewo+ID4gPiArCQlz dHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpwbGFuZV9zdGF0ZTsKPiA+ID4gKwo+ID4gPiArCQlpZiAo cGxhbmUtPnN0YXRlLT5mYiAhPSBmYikKPiA+ID4gKwkJCWNvbnRpbnVlOwo+ID4gPiArCj4gPiA+ ICsJCXBsYW5lX3N0YXRlID0gZHJtX2F0b21pY19nZXRfcGxhbmVfc3RhdGUoc3RhdGUsIHBsYW5l KTsKPiA+ID4gKwkJaWYgKElTX0VSUihwbGFuZV9zdGF0ZSkpIHsKPiA+ID4gKwkJCXJldCA9IFBU Ul9FUlIocGxhbmVfc3RhdGUpOwo+ID4gPiArCQkJZ290byBvdXQ7Cj4gPiA+ICsJCX0KPiA+ID4g Kwo+ID4gPiArCQlkcm1fcHJvcGVydHlfcmVwbGFjZV9ibG9iKCZwbGFuZV9zdGF0ZS0KPiA+ID5m Yl9kYW1hZ2VfY2xpcHMsCj4gPiA+ICsJCQkJCSAgZGFtYWdlKTsKPiA+ID4gKwl9Cj4gPiA+ICsK PiA+ID4gKwlyZXQgPSBkcm1fYXRvbWljX2NvbW1pdChzdGF0ZSk7Cj4gPiAKPiA+IFRoaXMgYmxv Y2tzLCB3aGljaCBtYXRjaGVzIHdoYXQgdWRsIGRvZXMgKG9uZSBvZiB0aGUgdmVyeSBmaXJzdAo+ ID4gaW1wbGVtZW50YXRpb25zIG9mIHRoZSBmYi0+ZGlydHkgY2FsbGJhY2spLiBJIGdvdCBsb3N0 IGEgYml0IGluIHRoZSB2bXdnZngKPiA+IGRpcnR5IGltcGxlbWVudGF0aW9uLCBzbyBubyBpZGVh IHdoZXRoZXIgdGhhdCBvbmUgYmxvY2tlZCBvciBub3QuCj4gPiAKPiA+IElmIHRoZSBibG9ja2lu ZyBoZXJlIGlzIGEgcHJvYmxlbSwgdGhlbiB3ZSBuZWVkIGEgc2VwYXJhdGUgd29ya2VyCj4gPiBz aW1pbGFybHkgdG8gd2hhdCB0aGUgZmJkZXYgd29ya2VyIGRvZXMgKHNpbmNlIHVzaW5nIHRoZSBh dG9taWMKPiA+IG5vbmJsb2NraW5nIHN0dWZmIGhhcyB1YXBpIHNpZGUtZWZmZWN0cykuCj4gPiAK PiA+IEVpdGhlciB3YXksIHByb2JhYmx5IHNvbWV0aGluZyB3ZSBuZWVkIHRvIGRvY3VtZW50IGlu IHRoZSBrZXJuZWwtZG9jLgo+ID4gLURhbmllbAo+IAo+IElJVUMgdm13Z2Z4IGRpcnR5IGltcGxl bWVudGF0aW9uIGFsc28gYmxvY2suIHZtd2dmeCBkaXJ0eSBpbXBsZW1lbnRhdGlvbgo+IHdpbGwg bWFrZSBzdXJlIHRoYXQgY29tbWFuZHMgYXJlIGZsdXNoZWQgdG8gdmlydHVhbCBkZXZpY2UgYW5k IGFsbCB0aGUgbXV0ZXgKPiBsb2NrIGFyZSBoZWxkIHVudGlsIHRoZW4uCj4gCj4gV2l0aCBteSB0 ZXN0aW5nIG9uIHZtd2dmeCBzb2Z0d2FyZSBvbmx5IFZNIEkgc2VlIHRoYXQgbm9uLWJsb2NraW5n IHdpbGwgY2F1c2UKPiByZW5kZXJpbmcgaXNzdWVzIHdpdGggc28gbWFueSBkaXJ0eV9mYiBpb2N0 bCgpJ3MgYW5kIGtlcm5lbCByZXR1cm5zIEVCVVNZKD8pLgoKWXVwLCBkcm1fYXRvbWljX2NvbW1p dF9ub25ibG9ja2luZyB3aWxsIG5vdCB3b3JrIGhlcmUsIHdyb25nIHNlbWFudGljcy4gQXMKSSBt ZW50aW9uZWQsIHdlJ2QgbmVlZCBhIHNlcGFyYXRlIHN0cnVjdF93b3JrIGFuZCBzaW1pbGFyIGxv Z2ljIGxpa2UgaW4KdGhlIGZiZGV2IGRlZmlvIHN1cHBvcnQgaW4gZHJtX2ZiX2hlbHBlci5jLgoK PiBZZXMgSSBhZ3JlZSBJIGNhbiB1cGRhdGUgdGhlIGtlcm5lbC1kb2MgdG8gc3BlY2lmeSBibG9j a2luZyBhbmQgaWYgc29tZW9uZQo+IG5lZWQgbm9uLWJsb2NraW5nIHZlcnNpb24gaW4gZnV0dXJl IHRoYXQgY2FuIGJlIGVhc2lseSBkb25lLgoKU291bmRzIGdvb2QsIGFuZCBtdWNoIGxlc3Mgd29y ayA6LSkKLURhbmllbAoKPiAKPiBUaGFua3MsCj4gRGVlcGFrCj4gPiAKPiA+ID4gKwo+ID4gPiAr b3V0Ogo+ID4gPiArCWlmIChyZXQgPT0gLUVERUFETEspIHsKPiA+ID4gKwkJZHJtX2F0b21pY19z dGF0ZV9jbGVhcihzdGF0ZSk7Cj4gPiA+ICsJCXJldCA9IGRybV9tb2Rlc2V0X2JhY2tvZmYoJmN0 eCk7Cj4gPiA+ICsJCWlmICghcmV0KQo+ID4gPiArCQkJZ290byByZXRyeTsKPiA+ID4gKwl9Cj4g PiA+ICsKPiA+ID4gKwlkcm1fcHJvcGVydHlfYmxvYl9wdXQoZGFtYWdlKTsKPiA+ID4gKwlrZnJl ZShyZWN0cyk7Cj4gPiA+ICsJZHJtX2F0b21pY19zdGF0ZV9wdXQoc3RhdGUpOwo+ID4gPiArCj4g PiA+ICsJZHJtX21vZGVzZXRfZHJvcF9sb2NrcygmY3R4KTsKPiA+ID4gKwlkcm1fbW9kZXNldF9h Y3F1aXJlX2ZpbmkoJmN0eCk7Cj4gPiA+ICsKPiA+ID4gKwlyZXR1cm4gcmV0Owo+ID4gPiArCj4g PiA+ICt9Cj4gPiA+ICtFWFBPUlRfU1lNQk9MKGRybV9hdG9taWNfaGVscGVyX2RpcnR5ZmIpOwo+ ID4gPiArCj4gPiA+ICAvKioKPiA+ID4gICAqIGRybV9hdG9taWNfaGVscGVyX2RhbWFnZV9pdGVy X2luaXQgLSBJbml0aWFsaXplIHRoZSBkYW1hZ2UgaXRlcmF0b3IuCj4gPiA+ICAgKiBAaXRlcjog VGhlIGl0ZXJhdG9yIHRvIGluaXRpYWxpemUuCj4gPiA+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2Ry bS9kcm1fZGFtYWdlX2hlbHBlci5oCj4gPiBiL2luY2x1ZGUvZHJtL2RybV9kYW1hZ2VfaGVscGVy LmgKPiA+ID4gaW5kZXggYWYxODg3OTk4MjBmLi5lNGZlNzAzNmNhYjIgMTAwNjQ0Cj4gPiA+IC0t LSBhL2luY2x1ZGUvZHJtL2RybV9kYW1hZ2VfaGVscGVyLmgKPiA+ID4gKysrIGIvaW5jbHVkZS9k cm0vZHJtX2RhbWFnZV9oZWxwZXIuaAo+ID4gPiBAQCAtNjcsNiArNjcsMTAgQEAgc3RydWN0IGRy bV9hdG9taWNfaGVscGVyX2RhbWFnZV9pdGVyIHsKPiA+ID4gIHZvaWQgZHJtX3BsYW5lX2VuYWJs ZV9mYl9kYW1hZ2VfY2xpcHMoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUpOwo+ID4gPiAgdm9pZCBk cm1fYXRvbWljX2hlbHBlcl9jaGVja19wbGFuZV9kYW1hZ2Uoc3RydWN0IGRybV9hdG9taWNfc3Rh dGUKPiA+ICpzdGF0ZSwKPiA+ID4gIAkJCQkJICBzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlCj4gPiAq cGxhbmVfc3RhdGUpOwo+ID4gPiAraW50IGRybV9hdG9taWNfaGVscGVyX2RpcnR5ZmIoc3RydWN0 IGRybV9mcmFtZWJ1ZmZlciAqZmIsCj4gPiA+ICsJCQkgICAgICBzdHJ1Y3QgZHJtX2ZpbGUgKmZp bGVfcHJpdiwgdW5zaWduZWQgZmxhZ3MsCj4gPiA+ICsJCQkgICAgICB1bnNpZ25lZCBjb2xvciwg c3RydWN0IGRybV9jbGlwX3JlY3QgKmNsaXBzLAo+ID4gPiArCQkJICAgICAgdW5zaWduZWQgbnVt X2NsaXBzKTsKPiA+ID4gIHZvaWQKPiA+ID4gIGRybV9hdG9taWNfaGVscGVyX2RhbWFnZV9pdGVy X2luaXQoc3RydWN0Cj4gPiBkcm1fYXRvbWljX2hlbHBlcl9kYW1hZ2VfaXRlciAqaXRlciwKPiA+ ID4gIAkJCQkgICBjb25zdCBzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpvbGRfc3RhdGUsCj4gPiA+ IC0tCj4gPiA+IDIuMTcuMQo+ID4gPgo+ID4gCj4gPiAtLQo+ID4gRGFuaWVsIFZldHRlcgo+ID4g U29mdHdhcmUgRW5naW5lZXIsIEludGVsIENvcnBvcmF0aW9uCj4gPiBodHRwczovL25hMDEuc2Fm ZWxpbmtzLnByb3RlY3Rpb24ub3V0bG9vay5jb20vP3VybD1odHRwJTNBJTJGJTJGYmxvZy5mZgo+ ID4gd2xsLmNoJmFtcDtkYXRhPTAyJTdDMDElN0NkcmF3YXQlNDB2bXdhcmUuY29tJTdDMDgzNWUw NTA5ZDg4NDkKPiA+IDg5YzZjMjA4ZDYyNzc1MTNhZSU3Q2IzOTEzOGNhM2NlZTRiNGFhNGQ2Y2Q4 M2Q5ZGQ2MmYwJTdDMSU3QzAlNwo+ID4gQzYzNjczOTc4MTEzNTI3MDEwMiZhbXA7c2RhdGE9NiUy RnIlMkZTJTJCM2s3bkpEWktOZDl0Um5tb2ZDR2YKPiA+IENHMlRLcUR5NHRHNmxvanNBJTNEJmFt cDtyZXNlcnZlZD0wCgotLSAKRGFuaWVsIFZldHRlcgpTb2Z0d2FyZSBFbmdpbmVlciwgSW50ZWwg Q29ycG9yYXRpb24KaHR0cDovL2Jsb2cuZmZ3bGwuY2gKX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxA bGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxt YW4vbGlzdGluZm8vZHJpLWRldmVsCg==