From mboxrd@z Thu Jan 1 00:00:00 1970 From: Boris Brezillon Subject: Re: [PATCH RFC 12/19] drm/bridge: Add an ->atomic_check() hook Date: Thu, 22 Aug 2019 09:58:19 +0200 Message-ID: <20190822095819.08fc43c2@collabora.com> References: <20190808151150.16336-1-boris.brezillon@collabora.com> <20190808151150.16336-13-boris.brezillon@collabora.com> <20190822001207.GC16985@pendragon.ideasonboard.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from bhuna.collabora.co.uk (bhuna.collabora.co.uk [IPv6:2a00:1098:0:82:1000:25:2eeb:e3e3]) by gabe.freedesktop.org (Postfix) with ESMTPS id 79DA36EA7A for ; Thu, 22 Aug 2019 07:58:25 +0000 (UTC) In-Reply-To: <20190822001207.GC16985@pendragon.ideasonboard.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Laurent Pinchart , Andrzej Hajda Cc: Jernej Skrabec , Neil Armstrong , Jonas Karlman , Seung-Woo Kim , dri-devel@lists.freedesktop.org, Kyungmin Park , Thierry Reding , Chris Healy , kernel@collabora.com, Sam Ravnborg List-Id: dri-devel@lists.freedesktop.org T24gVGh1LCAyMiBBdWcgMjAxOSAwMzoxMjowNyArMDMwMApMYXVyZW50IFBpbmNoYXJ0IDxsYXVy ZW50LnBpbmNoYXJ0QGlkZWFzb25ib2FyZC5jb20+IHdyb3RlOgoKPiBIaSBCb3JpcywKPiAKPiBU aGFuayB5b3UgZm9yIHRoZSBwYXRjaC4KPiAKPiBPbiBUaHUsIEF1ZyAwOCwgMjAxOSBhdCAwNTox MTo0M1BNICswMjAwLCBCb3JpcyBCcmV6aWxsb24gd3JvdGU6Cj4gPiBTbyB0aGF0IGJyaWRnZSBk cml2ZXJzIGhhdmUgYSB3YXkgdG8gY2hlY2svcmVqZWN0IGFuIGF0b21pYyBvcGVyYXRpb24uCj4g PiBUaGUgZHJtX2F0b21pY19icmlkZ2VfY2hhaW5fY2hlY2soKSAod2hpY2ggaXMganVzdCBhIHdy YXBwZXIgYXJvdW5kCj4gPiB0aGUgLT5hdG9taWNfY2hlY2soKSBob29rKSBpcyBjYWxsZWQgaW4g cGxhY2Ugb2YKPiA+IGRybV9icmlkZ2VfY2hhaW5fbW9kZV9maXh1cCgpICh3aGVuIC0+YXRvbWlj X2NoZWNrKCkgaXMgbm90IGltcGxlbWVudGVkLAo+ID4gdGhlIGNvcmUgZmFsbHMgYmFjayB0byAt Pm1vZGVfZml4dXAoKSwgc28gdGhlIGJlaGF2aW9yIHNob3VsZCBzdGF5Cj4gPiB0aGUgc2FtZSBm b3IgZXhpc3RpbmcgYnJpZGdlIGRyaXZlcnMpLgo+ID4gCj4gPiBTaWduZWQtb2ZmLWJ5OiBCb3Jp cyBCcmV6aWxsb24gPGJvcmlzLmJyZXppbGxvbkBjb2xsYWJvcmEuY29tPgo+ID4gLS0tCj4gPiAg ZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMgfCAxMSArKystLS0KPiA+ICBkcml2 ZXJzL2dwdS9kcm0vZHJtX2JyaWRnZS5jICAgICAgICB8IDU5ICsrKysrKysrKysrKysrKysrKysr KysrKysrKysrCj4gPiAgaW5jbHVkZS9kcm0vZHJtX2JyaWRnZS5oICAgICAgICAgICAgfCAyMyAr KysrKysrKysrKwo+ID4gIDMgZmlsZXMgY2hhbmdlZCwgODcgaW5zZXJ0aW9ucygrKSwgNiBkZWxl dGlvbnMoLSkKPiA+IAo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWlj X2hlbHBlci5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMKPiA+IGluZGV4 IGU3NmVjOTY0OGI2Zi4uM2ZhZGRlMzhlYWQ3IDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2RybV9hdG9taWNfaGVscGVyLmMKPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRv bWljX2hlbHBlci5jCj4gPiBAQCAtNDQ1LDEyICs0NDUsMTEgQEAgbW9kZV9maXh1cChzdHJ1Y3Qg ZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCj4gPiAgCQllbmNvZGVyID0gbmV3X2Nvbm5fc3RhdGUt PmJlc3RfZW5jb2RlcjsKPiA+ICAJCWZ1bmNzID0gZW5jb2Rlci0+aGVscGVyX3ByaXZhdGU7Cj4g PiAgCj4gPiAtCQlyZXQgPSBkcm1fYnJpZGdlX2NoYWluX21vZGVfZml4dXAoZW5jb2RlciwKPiA+ IC0JCQkJCSZuZXdfY3J0Y19zdGF0ZS0+bW9kZSwKPiA+IC0JCQkJCSZuZXdfY3J0Y19zdGF0ZS0+ YWRqdXN0ZWRfbW9kZSk7Cj4gPiAtCQlpZiAoIXJldCkgewo+ID4gLQkJCURSTV9ERUJVR19BVE9N SUMoIkJyaWRnZSBmaXh1cCBmYWlsZWRcbiIpOwo+ID4gLQkJCXJldHVybiAtRUlOVkFMOwo+ID4g KwkJcmV0ID0gZHJtX2F0b21pY19icmlkZ2VfY2hhaW5fY2hlY2soZW5jb2RlciwgbmV3X2NydGNf c3RhdGUsCj4gPiArCQkJCQkJICAgIG5ld19jb25uX3N0YXRlKTsKPiA+ICsJCWlmIChyZXQpIHsK PiA+ICsJCQlEUk1fREVCVUdfQVRPTUlDKCJCcmlkZ2UgYXRvbWljIGNoZWNrIGZhaWxlZFxuIik7 Cj4gPiArCQkJcmV0dXJuIHJldDsKPiA+ICAJCX0KPiA+ICAKPiA+ICAJCWlmIChmdW5jcyAmJiBm dW5jcy0+YXRvbWljX2NoZWNrKSB7Cj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2Ry bV9icmlkZ2UuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fYnJpZGdlLmMKPiA+IGluZGV4IDA1Mjhj YTk0MTg1NS4uZGNhZDY2MWRhYTc0IDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2Ry bV9icmlkZ2UuYwo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9icmlkZ2UuYwo+ID4gQEAg LTU4Myw2ICs1ODMsNjUgQEAgdm9pZCBkcm1fYXRvbWljX2JyaWRnZV9jaGFpbl9lbmFibGUoc3Ry dWN0IGRybV9lbmNvZGVyICplbmNvZGVyLAo+ID4gIH0KPiA+ICBFWFBPUlRfU1lNQk9MKGRybV9h dG9taWNfYnJpZGdlX2NoYWluX2VuYWJsZSk7Cj4gPiAgCj4gPiArc3RhdGljIGludCBkcm1fYXRv bWljX2JyaWRnZV9jaGVjayhzdHJ1Y3QgZHJtX2JyaWRnZSAqYnJpZGdlLAo+ID4gKwkJCQkgICBz dHJ1Y3QgZHJtX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsCj4gPiArCQkJCSAgIHN0cnVjdCBkcm1f Y29ubmVjdG9yX3N0YXRlICpjb25uX3N0YXRlKQo+ID4gK3sKPiA+ICsJaWYgKGJyaWRnZS0+ZnVu Y3MtPmF0b21pY19jaGVjaykgewo+ID4gKwkJc3RydWN0IGRybV9icmlkZ2Vfc3RhdGUgKmJyaWRn ZV9zdGF0ZTsKPiA+ICsJCWludCByZXQ7Cj4gPiArCj4gPiArCQlicmlkZ2Vfc3RhdGUgPSBkcm1f YXRvbWljX2dldF9uZXdfYnJpZGdlX3N0YXRlKGNydGNfc3RhdGUtPnN0YXRlLAo+ID4gKwkJCQkJ CQkgICAgICAgYnJpZGdlKTsKPiA+ICsJCWlmIChXQVJOX09OKCFicmlkZ2Vfc3RhdGUpKQo+ID4g KwkJCXJldHVybiAtRUlOVkFMOwo+ID4gKwo+ID4gKwkJcmV0ID0gYnJpZGdlLT5mdW5jcy0+YXRv bWljX2NoZWNrKGJyaWRnZSwgYnJpZGdlX3N0YXRlLAo+ID4gKwkJCQkJCSAgY3J0Y19zdGF0ZSwg Y29ubl9zdGF0ZSk7Cj4gPiArCQlpZiAocmV0KQo+ID4gKwkJCXJldHVybiByZXQ7Cj4gPiArCX0g ZWxzZSBpZiAoYnJpZGdlLT5mdW5jcy0+bW9kZV9maXh1cCkgewo+ID4gKwkJaWYgKCFicmlkZ2Ut PmZ1bmNzLT5tb2RlX2ZpeHVwKGJyaWRnZSwgJmNydGNfc3RhdGUtPm1vZGUsCj4gPiArCQkJCQkg ICAgICAgJmNydGNfc3RhdGUtPmFkanVzdGVkX21vZGUpKQo+ID4gKwkJCXJldHVybiAtRUlOVkFM Owo+ID4gKwl9Cj4gPiArCj4gPiArCXJldHVybiAwOwo+ID4gK30KPiA+ICsKPiA+ICsvKioKPiA+ ICsgKiBkcm1fYXRvbWljX2JyaWRnZV9jaGFpbl9jaGVjaygpIC0gRG8gYW4gYXRvbWljIGNoZWNr IG9uIHRoZSBicmlkZ2UgY2hhaW4KPiA+ICsgKiBAZW5jb2RlcjogZW5jb2RlciBvYmplY3QKPiA+ ICsgKiBAY3J0Y19zdGF0ZTogbmV3IENSVEMgc3RhdGUKPiA+ICsgKiBAY29ubl9zdGF0ZTogbmV3 IGNvbm5lY3RvciBzdGF0ZQo+ID4gKyAqCj4gPiArICogQ2FsbHMgJmRybV9icmlkZ2VfZnVuY3Mu YXRvbWljX2NoZWNrKCkgKGZhbGxzIGJhY2sgb24KPiA+ICsgKiAmZHJtX2JyaWRnZV9mdW5jcy5t b2RlX2ZpeHVwKCkpIG9wIGZvciBhbGwgdGhlIGJyaWRnZXMgaW4gdGhlIGVuY29kZXIgY2hhaW4s Cj4gPiArICogc3RhcnRpbmcgZnJvbSB0aGUgbGFzdCBicmlkZ2UgdG8gdGhlIGZpcnN0LiBUaGVz ZSBhcmUgY2FsbGVkIGJlZm9yZSBjYWxsaW5nCj4gPiArICogJmRybV9lbmNvZGVyX2hlbHBlcl9m dW5jcy5hdG9taWNfY2hlY2soKQo+ID4gKyAqCj4gPiArICogUkVUVVJOUzoKPiA+ICsgKiAwIG9u IHN1Y2Nlc3MsIGEgbmVnYXRpdmUgZXJyb3IgY29kZSBvbiBmYWlsdXJlCj4gPiArICovCj4gPiAr aW50IGRybV9hdG9taWNfYnJpZGdlX2NoYWluX2NoZWNrKHN0cnVjdCBkcm1fZW5jb2RlciAqZW5j b2RlciwKPiA+ICsJCQkJICBzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsCj4gPiAr CQkJCSAgc3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgKmNvbm5fc3RhdGUpCj4gPiArewo+ID4g KwlzdHJ1Y3QgZHJtX2JyaWRnZSAqYnJpZGdlOwo+ID4gKwo+ID4gKwlsaXN0X2Zvcl9lYWNoX2Vu dHJ5X3JldmVyc2UoYnJpZGdlLCAmZW5jb2Rlci0+YnJpZGdlX2NoYWluLAo+ID4gKwkJCQkgICAg Y2hhaW5fbm9kZSkgewo+ID4gKwkJaW50IHJldDsKPiA+ICsKPiA+ICsJCXJldCA9IGRybV9hdG9t aWNfYnJpZGdlX2NoZWNrKGJyaWRnZSwgY3J0Y19zdGF0ZSwgY29ubl9zdGF0ZSk7Cj4gPiArCQlp ZiAocmV0KQo+ID4gKwkJCXJldHVybiByZXQ7Cj4gPiArCX0KPiA+ICsKPiA+ICsJcmV0dXJuIDA7 Cj4gPiArfQo+ID4gK0VYUE9SVF9TWU1CT0woZHJtX2F0b21pY19icmlkZ2VfY2hhaW5fY2hlY2sp Owo+ID4gKwo+ID4gIC8qKgo+ID4gICAqIGRybV9hdG9taWNfaGVscGVyX2luaXRfYnJpZGdlX3N0 YXRlKCkgLSBJbml0aWFsaXplcyBhIGJyaWRnZSBzdGF0ZQo+ID4gICAqIEBicmlkZ2UgdGhpcyBz dGF0ZSBpcyByZWZlcnJpbmcgdG8KPiA+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fYnJp ZGdlLmggYi9pbmNsdWRlL2RybS9kcm1fYnJpZGdlLmgKPiA+IGluZGV4IDkzODNiNGU0Yjg1My4u NWQ4ZmUzNzA5YmRlIDEwMDY0NAo+ID4gLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2JyaWRnZS5oCj4g PiArKysgYi9pbmNsdWRlL2RybS9kcm1fYnJpZGdlLmgKPiA+IEBAIC0zNzksNiArMzc5LDI2IEBA IHN0cnVjdCBkcm1fYnJpZGdlX2Z1bmNzIHsKPiA+ICAJICovCj4gPiAgCXZvaWQgKCphdG9taWNf ZGVzdHJveV9zdGF0ZSkoc3RydWN0IGRybV9icmlkZ2UgKmJyaWRnZSwKPiA+ICAJCQkJICAgICBz dHJ1Y3QgZHJtX2JyaWRnZV9zdGF0ZSAqc3RhdGUpOwo+ID4gKwo+ID4gKwkvKioKPiA+ICsJICog QGF0b21pY19jaGVjazoKPiA+ICsJICoKPiA+ICsJICogVGhpcyBtZXRob2QgaXMgcmVzcG9uc2li bGUgZm9yIGNoZWNraW5nIGJyaWRnZSBzdGF0ZSBjb3JyZWN0bmVzcy4KPiA+ICsJICogSXQgY2Fu IGFsc28gY2hlY2sgdGhlIHN0YXRlIG9mIHRoZSBzdXJyb3VuZGluZyBjb21wb25lbnRzIGluIGNo YWluCj4gPiArCSAqIHRvIG1ha2Ugc3VyZSB0aGUgd2hvbGUgcGlwZWxpbmUgY2FuIHdvcmsgcHJv cGVybHkuICAKPiAKPiBBcyB0aGlzIGlzIG1lYW50IHRvIHJlcGxhY2UgLm1vZGVfZml4dXAoKSB5 b3Ugc2hvdWxkIGRvY3VtZW50IHRoYXQgaGVyZQo+IGFuZCBpbiB0aGUgLm1vZGVfZml4dXAoKSBv cGVyYXRpb24uCj4gCj4gVGhlcmUncyBhbHNvIHRoZSBhZGRpdGlvbmFsIHF1ZXN0aW9uIG9mIHdo YXQgcGFyYW1ldGVycyBjYW4gYmUgbW9kaWZpZWQuCj4gSXMgYSBicmlkZ2UgLmF0b21pY19jaGVj aygpIGFsbG93ZWQgdG8gbW9kaWZ5IHRoZSBDUlRDIG9yIGNvbm5lY3Rvcgo+IHN0YXRlID8gT2Yg c28sIHdoYXQgYXJlIHRoZSByZXN0cmljdGlvbnMgb24gaG93IHRob3NlIGNhbiBiZSBtb2RpZmll ZCA/Cj4gRm9yIGluc3RhbmNlIC5tb2RlX2ZpeHVwKCkgY2FuIGNoYW5nZSB0aGUgcGl4ZWwgY2xv Y2sgYnV0IGlzbid0IGFsbG93ZWQKPiB0byBtb2RpZnkgdGhlIGgvdiBhY3RpdmUgdmFsdWVzLiBU aG9zZSByZXN0cmljdGlvbnMgd2VyZSBub3QgY2xlYXJseQo+IGRvY3VtZW50ZWQgZm9yIC5tb2Rl X2ZpeHVwKCkgYW5kIGhhdmUgbGVkIHRvIGdyZXkgYXJlYXMuIEkgZG9uJ3Qgd2FudCB0bwo+IHJl cGVhdCB0aGUgc2FtZSBtaXN0YWtlIGZvciBicmlkZ2VzLCB3ZSBuZWVkIHRvIGJlIHZlcnkgZXhw bGljaXQgaGVyZS4KCkFueSByZWNvbW1lbmRhdGlvbj8gSSBkaWRuJ3QgZmFjZSB0aGlzIHByb2Js ZW0gbXlzZWxmLCBzbyBJJ2QgbmVlZAppbnB1dHMgZnJvbSB0aG9zZSB3aG8gZGlkIHRvIHRha2Ug YSBkZWNpc2lvbi4KCj4gCj4gSW4gdGhlIGxpc3Qgb2Ygb3BlbiBxdWVzdGlvbnMsIHdoYXQgaWYg YSBicmlkZ2UgY2hhbmdlcyB0aGUgcGl4ZWwgY2xvY2sKPiB0byBhIHZhbHVlIGl0IHN1cHBvcnRz IChhcyAubW9kZV9maXh1cCgpIGRvZXMpLCBhbmQgdGhlbiB0aGUgcHJldmlvdXMKPiBicmlkZ2Ug aW4gdGhlIGNoYWluICh0aGUgbmV4dCBvbmUgaW4gdHJhdmVyc2FsIG9yZGVyIGZvciB0aGUKPiBk cm1fYXRvbWljX2JyaWRnZV9jaGFpbl9jaGVjaygpIGZ1bmN0aW9uKSBhbHNvIGNoYW5nZXMgdGhl IHBpeGVsIGNsb2NrLAo+IHRvIGEgdmFsdWUgdGhhdCB0aGUgY3VycmVudCBicmlkZ2UgZG9lc24n dCBzdXBwb3J0ID8gSSB0aGluayB3ZSByZWFsbHkKPiBuZWVkIHRvIHRoaW5rIGFib3V0IHRoZSBz ZW1hbnRpYyBvZiB0aGlzIG9wZXJhdGlvbi4KCkRvbid0IHdlIGhhdmUgdGhlIGV4YWN0IHNhbWUg cHJvYmxlbSByaWdodCBub3cgd2l0aCB0aGUgLT5tb2RlX2ZpeHVwKCkKaG9vayB3aGVuIGJyaWRn ZXMgYXJlIGNoYWluZWQ/IE5vdCBzdXJlIHdoeSBpdCBzdWRkZW5seSBiZWNvbWVzIGEKcHJpb3Jp dHkgdG8gY2xhcmlmeSB0aGF0LCBidXQgaWYgd2UgcXVpY2tseSBzZXR0bGUgb24gdGhpcyBuZXcg c2VtYW50aWMsCkknbSBmaW5lIGludGVncmF0aW5nIHRob3NlIGNoYW5nZXMgaW4gbXkgcGF0Y2hz ZXQuCgo+IAo+IEFzIHRoZSBnb2FsIG9mIHlvdXIgc2VyaWVzIGlzIHRvIGltcGxlbWVudCBjb25m aWd1cmF0aW9uIG9mIGJ1cyBmb3JtYXRzCj4gYmV0d2VlbiBicmlkZ2VzLCBzaG91bGRuJ3QgYSBi cmlkZ2UgLmF0b21pY19jaGVjaygpIGFsc28gcmVjZWl2ZSB0aGUKPiBzdGF0ZSBvZiB0aGUgbmV4 dCBicmlkZ2UgaW4gdGhlIGNoYWluID8KCkkgdGhvdWdodCB3ZSBoYWQgZW5vdWdoIGFyZ3VtZW50 cyBwYXNzZWQgdG8gdGhlIGF0b21pY19jaGVjaygpIGhvb2sgYW5kCmRlY2lkZWQgdG8gbGV0IHRo ZSBkcml2ZXIgcmV0cmlldmUgdGhlIG5leHQgc3RhdGUuIEkgY2FuIHBhc3MgdGhlIG5leHQKYnJp ZGdlIHN0YXRlIGlmIHlvdSBwcmVmZXIuCgo+IAo+ID4gKwkgKgo+ID4gKwkgKiAmZHJtX2JyaWRn ZV9mdW5jcy5hdG9taWNfY2hlY2soKSBob29rcyBhcmUgY2FsbGVkIGluIHJldmVyc2UKPiA+ICsJ ICogb3JkZXIgKGZyb20gdGhlIGxhc3QgdG8gdGhlIGZpcnN0IGJyaWRnZSkuCj4gPiArCSAqCj4g PiArCSAqIFRoaXMgbWV0aG9kIGlzIG9wdGlvbmFsLgo+ID4gKwkgKgo+ID4gKwkgKiBSRVRVUk5T Ogo+ID4gKwkgKiB6ZXJvIGlmIHRoZSBjaGVjayBwYXNzZWQsIGEgbmVnYXRpdmUgZXJyb3IgY29k ZSBvdGhlcndpc2UuCj4gPiArCSAqLwo+ID4gKwlpbnQgKCphdG9taWNfY2hlY2spKHN0cnVjdCBk cm1fYnJpZGdlICpicmlkZ2UsCj4gPiArCQkJICAgIHN0cnVjdCBkcm1fYnJpZGdlX3N0YXRlICpi cmlkZ2Vfc3RhdGUsCj4gPiArCQkJICAgIHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqY3J0Y19zdGF0 ZSwKPiA+ICsJCQkgICAgc3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgKmNvbm5fc3RhdGUpOwo+ ID4gIH07Cj4gPiAgCj4gPiAgLyoqCj4gPiBAQCAtNDc5LDYgKzQ5OSw5IEBAIHZvaWQgZHJtX2Jy aWRnZV9jaGFpbl9tb2RlX3NldChzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIsCj4gPiAgdm9p ZCBkcm1fYnJpZGdlX2NoYWluX3ByZV9lbmFibGUoc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVy KTsKPiA+ICB2b2lkIGRybV9icmlkZ2VfY2hhaW5fZW5hYmxlKHN0cnVjdCBkcm1fZW5jb2RlciAq ZW5jb2Rlcik7Cj4gPiAgCj4gPiAraW50IGRybV9hdG9taWNfYnJpZGdlX2NoYWluX2NoZWNrKHN0 cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlciwKPiA+ICsJCQkJICBzdHJ1Y3QgZHJtX2NydGNfc3Rh dGUgKmNydGNfc3RhdGUsCj4gPiArCQkJCSAgc3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgKmNv bm5fc3RhdGUpOwo+ID4gIHZvaWQgZHJtX2F0b21pY19icmlkZ2VfY2hhaW5fZGlzYWJsZShzdHJ1 Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIsCj4gPiAgCQkJCSAgICAgc3RydWN0IGRybV9hdG9taWNf c3RhdGUgKnN0YXRlKTsKPiA+ICB2b2lkIGRybV9hdG9taWNfYnJpZGdlX2NoYWluX3Bvc3RfZGlz YWJsZShzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIsICAKPiAKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJp LWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbA==