From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [Intel-gfx] [PATCH] drm: Fix up drm_atomic_state_helper.[hc] extraction Date: Fri, 30 Nov 2018 16:38:17 +0100 Message-ID: <20181130153817.GY21184@phenom.ffwll.local> References: <20181128100728.4674-1-daniel.vetter@ffwll.ch> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: 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: Sean Paul Cc: Daniel Vetter , Intel Graphics Development , dri-devel , Daniel Vetter List-Id: intel-gfx@lists.freedesktop.org T24gVGh1LCBOb3YgMjksIDIwMTggYXQgMTA6MzY6MTNBTSAtMDUwMCwgU2VhbiBQYXVsIHdyb3Rl Ogo+IE9uIFdlZCwgTm92IDI4LCAyMDE4IGF0IDU6MDcgQU0gRGFuaWVsIFZldHRlciA8ZGFuaWVs LnZldHRlckBmZndsbC5jaD4gd3JvdGU6Cj4gPgo+ID4gSSd2ZSBtaXNwbGFjZWQgdHdvIGZ1bmN0 aW9ucyBieSBhY2NpZGVudDoKPiA+IC0gZHJtX2F0b21pY19oZWxwZXJfZHVwbGljYXRlX3N0YXRl IGlzIHJlYWxseSBwYXJ0IG9mIHRoZQo+ID4gICByZXN1bWUvc3VzcGVuZC9zaHV0ZG93biBkZXZp Y2Utd2lkZSBoZWxwZXJzLgo+ID4gLSBkcm1fYXRvbWljX2hlbHBlcl9sZWdhY3lfZ2FtbWFfc2V0 IGlzIHBhcnQgb2YgdGhlIGxlZ2FjeSBpb2N0bAo+ID4gICBjb21wYXQgaGVscGVycy4KPiA+Cj4g PiBNb3ZlIHRoZW0gYm90aCBiYWNrLgo+ID4KPiA+IEZpeGVzOiA5ZWY4YTlkYzRiMjEgKCJkcm06 IEV4dHJhY3QgZHJtX2F0b21pY19zdGF0ZV9oZWxwZXIuW2hjXSIpCj4gPiBDYzogVmlsbGUgU3ly asOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KPiA+IFNpZ25lZC1vZmYtYnk6 IERhbmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0ZXJAaW50ZWwuY29tPgo+IAo+IFJldmlld2VkLWJ5 OiBTZWFuIFBhdWwgPHNlYW5AcG9vcmx5LnJ1bj4KCkFwcGxpZWQsIHRoYW5rcyBmb3IgcmV2aWV3 aW5nLgotRGFuaWVsCgo+IAo+ID4gLS0tCj4gPiAgZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNf aGVscGVyLmMgICAgICAgfCAxNTcgKysrKysrKysrKysrKysrKysrKysrKwo+ID4gIGRyaXZlcnMv Z3B1L2RybS9kcm1fYXRvbWljX3N0YXRlX2hlbHBlci5jIHwgMTU3IC0tLS0tLS0tLS0tLS0tLS0t LS0tLS0KPiA+ICBpbmNsdWRlL2RybS9kcm1fYXRvbWljX2hlbHBlci5oICAgICAgICAgICB8ICAg NyArCj4gPiAgaW5jbHVkZS9kcm0vZHJtX2F0b21pY19zdGF0ZV9oZWxwZXIuaCAgICAgfCAgIDcg LQo+ID4gIDQgZmlsZXMgY2hhbmdlZCwgMTY0IGluc2VydGlvbnMoKyksIDE2NCBkZWxldGlvbnMo LSkKPiA+Cj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVy LmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY19oZWxwZXIuYwo+ID4gaW5kZXggOWIyMjc3 NGE5ODY3Li5kZTdkODcyZjlmMWEgMTAwNjQ0Cj4gPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJt X2F0b21pY19oZWxwZXIuYwo+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVs cGVyLmMKPiA+IEBAIC0zMTM1LDYgKzMxMzUsOTMgQEAgdm9pZCBkcm1fYXRvbWljX2hlbHBlcl9z aHV0ZG93bihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ID4gIH0KPiA+ICBFWFBPUlRfU1lNQk9M KGRybV9hdG9taWNfaGVscGVyX3NodXRkb3duKTsKPiA+Cj4gPiArLyoqCj4gPiArICogZHJtX2F0 b21pY19oZWxwZXJfZHVwbGljYXRlX3N0YXRlIC0gZHVwbGljYXRlIGFuIGF0b21pYyBzdGF0ZSBv YmplY3QKPiA+ICsgKiBAZGV2OiBEUk0gZGV2aWNlCj4gPiArICogQGN0eDogbG9jayBhY3F1aXNp dGlvbiBjb250ZXh0Cj4gPiArICoKPiA+ICsgKiBNYWtlcyBhIGNvcHkgb2YgdGhlIGN1cnJlbnQg YXRvbWljIHN0YXRlIGJ5IGxvb3Bpbmcgb3ZlciBhbGwgb2JqZWN0cyBhbmQKPiA+ICsgKiBkdXBs aWNhdGluZyB0aGVpciByZXNwZWN0aXZlIHN0YXRlcy4gVGhpcyBpcyB1c2VkIGZvciBleGFtcGxl IGJ5IHN1c3BlbmQvCj4gPiArICogcmVzdW1lIHN1cHBvcnQgY29kZSB0byBzYXZlIHRoZSBzdGF0 ZSBwcmlvciB0byBzdXNwZW5kIHN1Y2ggdGhhdCBpdCBjYW4KPiA+ICsgKiBiZSByZXN0b3JlZCB1 cG9uIHJlc3VtZS4KPiA+ICsgKgo+ID4gKyAqIE5vdGUgdGhhdCB0aGlzIHRyZWF0cyBhdG9taWMg c3RhdGUgYXMgcGVyc2lzdGVudCBiZXR3ZWVuIHNhdmUgYW5kIHJlc3RvcmUuCj4gPiArICogRHJp dmVycyBtdXN0IG1ha2Ugc3VyZSB0aGF0IHRoaXMgaXMgcG9zc2libGUgYW5kIHdvbid0IHJlc3Vs dCBpbiBjb25mdXNpb24KPiA+ICsgKiBvciBlcnJvbmVvdXMgYmVoYXZpb3VyLgo+ID4gKyAqCj4g PiArICogTm90ZSB0aGF0IGlmIGNhbGxlcnMgaGF2ZW4ndCBhbHJlYWR5IGFjcXVpcmVkIGFsbCBt b2Rlc2V0IGxvY2tzIHRoaXMgbWlnaHQKPiA+ICsgKiByZXR1cm4gLUVERUFETEssIHdoaWNoIG11 c3QgYmUgaGFuZGxlZCBieSBjYWxsaW5nIGRybV9tb2Rlc2V0X2JhY2tvZmYoKS4KPiA+ICsgKgo+ ID4gKyAqIFJldHVybnM6Cj4gPiArICogQSBwb2ludGVyIHRvIHRoZSBjb3B5IG9mIHRoZSBhdG9t aWMgc3RhdGUgb2JqZWN0IG9uIHN1Y2Nlc3Mgb3IgYW4KPiA+ICsgKiBFUlJfUFRSKCktZW5jb2Rl ZCBlcnJvciBjb2RlIG9uIGZhaWx1cmUuCj4gPiArICoKPiA+ICsgKiBTZWUgYWxzbzoKPiA+ICsg KiBkcm1fYXRvbWljX2hlbHBlcl9zdXNwZW5kKCksIGRybV9hdG9taWNfaGVscGVyX3Jlc3VtZSgp Cj4gPiArICovCj4gPiArc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKgo+ID4gK2RybV9hdG9taWNf aGVscGVyX2R1cGxpY2F0ZV9zdGF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ID4gKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVjdCBkcm1fbW9kZXNldF9hY3F1aXJlX2N0 eCAqY3R4KQo+ID4gK3sKPiA+ICsgICAgICAgc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRl Owo+ID4gKyAgICAgICBzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubjsKPiA+ICsgICAgICAgc3Ry dWN0IGRybV9jb25uZWN0b3JfbGlzdF9pdGVyIGNvbm5faXRlcjsKPiA+ICsgICAgICAgc3RydWN0 IGRybV9wbGFuZSAqcGxhbmU7Cj4gPiArICAgICAgIHN0cnVjdCBkcm1fY3J0YyAqY3J0YzsKPiA+ ICsgICAgICAgaW50IGVyciA9IDA7Cj4gPiArCj4gPiArICAgICAgIHN0YXRlID0gZHJtX2F0b21p Y19zdGF0ZV9hbGxvYyhkZXYpOwo+ID4gKyAgICAgICBpZiAoIXN0YXRlKQo+ID4gKyAgICAgICAg ICAgICAgIHJldHVybiBFUlJfUFRSKC1FTk9NRU0pOwo+ID4gKwo+ID4gKyAgICAgICBzdGF0ZS0+ YWNxdWlyZV9jdHggPSBjdHg7Cj4gPiArCj4gPiArICAgICAgIGRybV9mb3JfZWFjaF9jcnRjKGNy dGMsIGRldikgewo+ID4gKyAgICAgICAgICAgICAgIHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqY3J0 Y19zdGF0ZTsKPiA+ICsKPiA+ICsgICAgICAgICAgICAgICBjcnRjX3N0YXRlID0gZHJtX2F0b21p Y19nZXRfY3J0Y19zdGF0ZShzdGF0ZSwgY3J0Yyk7Cj4gPiArICAgICAgICAgICAgICAgaWYgKElT X0VSUihjcnRjX3N0YXRlKSkgewo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgZXJyID0gUFRS X0VSUihjcnRjX3N0YXRlKTsKPiA+ICsgICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZnJlZTsK PiA+ICsgICAgICAgICAgICAgICB9Cj4gPiArICAgICAgIH0KPiA+ICsKPiA+ICsgICAgICAgZHJt X2Zvcl9lYWNoX3BsYW5lKHBsYW5lLCBkZXYpIHsKPiA+ICsgICAgICAgICAgICAgICBzdHJ1Y3Qg ZHJtX3BsYW5lX3N0YXRlICpwbGFuZV9zdGF0ZTsKPiA+ICsKPiA+ICsgICAgICAgICAgICAgICBw bGFuZV9zdGF0ZSA9IGRybV9hdG9taWNfZ2V0X3BsYW5lX3N0YXRlKHN0YXRlLCBwbGFuZSk7Cj4g PiArICAgICAgICAgICAgICAgaWYgKElTX0VSUihwbGFuZV9zdGF0ZSkpIHsKPiA+ICsgICAgICAg ICAgICAgICAgICAgICAgIGVyciA9IFBUUl9FUlIocGxhbmVfc3RhdGUpOwo+ID4gKyAgICAgICAg ICAgICAgICAgICAgICAgZ290byBmcmVlOwo+ID4gKyAgICAgICAgICAgICAgIH0KPiA+ICsgICAg ICAgfQo+ID4gKwo+ID4gKyAgICAgICBkcm1fY29ubmVjdG9yX2xpc3RfaXRlcl9iZWdpbihkZXYs ICZjb25uX2l0ZXIpOwo+ID4gKyAgICAgICBkcm1fZm9yX2VhY2hfY29ubmVjdG9yX2l0ZXIoY29u biwgJmNvbm5faXRlcikgewo+ID4gKyAgICAgICAgICAgICAgIHN0cnVjdCBkcm1fY29ubmVjdG9y X3N0YXRlICpjb25uX3N0YXRlOwo+ID4gKwo+ID4gKyAgICAgICAgICAgICAgIGNvbm5fc3RhdGUg PSBkcm1fYXRvbWljX2dldF9jb25uZWN0b3Jfc3RhdGUoc3RhdGUsIGNvbm4pOwo+ID4gKyAgICAg ICAgICAgICAgIGlmIChJU19FUlIoY29ubl9zdGF0ZSkpIHsKPiA+ICsgICAgICAgICAgICAgICAg ICAgICAgIGVyciA9IFBUUl9FUlIoY29ubl9zdGF0ZSk7Cj4gPiArICAgICAgICAgICAgICAgICAg ICAgICBkcm1fY29ubmVjdG9yX2xpc3RfaXRlcl9lbmQoJmNvbm5faXRlcik7Cj4gPiArICAgICAg ICAgICAgICAgICAgICAgICBnb3RvIGZyZWU7Cj4gPiArICAgICAgICAgICAgICAgfQo+ID4gKyAg ICAgICB9Cj4gPiArICAgICAgIGRybV9jb25uZWN0b3JfbGlzdF9pdGVyX2VuZCgmY29ubl9pdGVy KTsKPiA+ICsKPiA+ICsgICAgICAgLyogY2xlYXIgdGhlIGFjcXVpcmUgY29udGV4dCBzbyB0aGF0 IGl0IGlzbid0IGFjY2lkZW50YWxseSByZXVzZWQgKi8KPiA+ICsgICAgICAgc3RhdGUtPmFjcXVp cmVfY3R4ID0gTlVMTDsKPiA+ICsKPiA+ICtmcmVlOgo+ID4gKyAgICAgICBpZiAoZXJyIDwgMCkg ewo+ID4gKyAgICAgICAgICAgICAgIGRybV9hdG9taWNfc3RhdGVfcHV0KHN0YXRlKTsKPiA+ICsg ICAgICAgICAgICAgICBzdGF0ZSA9IEVSUl9QVFIoZXJyKTsKPiA+ICsgICAgICAgfQo+ID4gKwo+ ID4gKyAgICAgICByZXR1cm4gc3RhdGU7Cj4gPiArfQo+ID4gK0VYUE9SVF9TWU1CT0woZHJtX2F0 b21pY19oZWxwZXJfZHVwbGljYXRlX3N0YXRlKTsKPiA+ICsKPiA+ICAvKioKPiA+ICAgKiBkcm1f YXRvbWljX2hlbHBlcl9zdXNwZW5kIC0gc3Vic3lzdGVtLWxldmVsIHN1c3BlbmQgaGVscGVyCj4g PiAgICogQGRldjogRFJNIGRldmljZQo+ID4gQEAgLTM0MTgsMyArMzUwNSw3MyBAQCBpbnQgZHJt X2F0b21pY19oZWxwZXJfcGFnZV9mbGlwX3RhcmdldChzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCj4g PiAgICAgICAgIHJldHVybiByZXQ7Cj4gPiAgfQo+ID4gIEVYUE9SVF9TWU1CT0woZHJtX2F0b21p Y19oZWxwZXJfcGFnZV9mbGlwX3RhcmdldCk7Cj4gPiArCj4gPiArLyoqCj4gPiArICogZHJtX2F0 b21pY19oZWxwZXJfbGVnYWN5X2dhbW1hX3NldCAtIHNldCB0aGUgbGVnYWN5IGdhbW1hIGNvcnJl Y3Rpb24gdGFibGUKPiA+ICsgKiBAY3J0YzogQ1JUQyBvYmplY3QKPiA+ICsgKiBAcmVkOiByZWQg Y29ycmVjdGlvbiB0YWJsZQo+ID4gKyAqIEBncmVlbjogZ3JlZW4gY29ycmVjdGlvbiB0YWJsZQo+ ID4gKyAqIEBibHVlOiBncmVlbiBjb3JyZWN0aW9uIHRhYmxlCj4gPiArICogQHNpemU6IHNpemUg b2YgdGhlIHRhYmxlcwo+ID4gKyAqIEBjdHg6IGxvY2sgYWNxdWlyZSBjb250ZXh0Cj4gPiArICoK PiA+ICsgKiBJbXBsZW1lbnRzIHN1cHBvcnQgZm9yIGxlZ2FjeSBnYW1tYSBjb3JyZWN0aW9uIHRh YmxlIGZvciBkcml2ZXJzCj4gPiArICogdGhhdCBzdXBwb3J0IGNvbG9yIG1hbmFnZW1lbnQgdGhy b3VnaCB0aGUgREVHQU1NQV9MVVQvR0FNTUFfTFVUCj4gPiArICogcHJvcGVydGllcy4gU2VlIGRy bV9jcnRjX2VuYWJsZV9jb2xvcl9tZ210KCkgYW5kIHRoZSBjb250YWluaW5nIGNoYXB0ZXIgZm9y Cj4gPiArICogaG93IHRoZSBhdG9taWMgY29sb3IgbWFuYWdlbWVudCBhbmQgZ2FtbWEgdGFibGVz IHdvcmsuCj4gPiArICovCj4gPiAraW50IGRybV9hdG9taWNfaGVscGVyX2xlZ2FjeV9nYW1tYV9z ZXQoc3RydWN0IGRybV9jcnRjICpjcnRjLAo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgdTE2ICpyZWQsIHUxNiAqZ3JlZW4sIHUxNiAqYmx1ZSwKPiA+ICsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IHNpemUsCj4gPiArICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgZHJtX21vZGVzZXRfYWNxdWly ZV9jdHggKmN0eCkKPiA+ICt7Cj4gPiArICAgICAgIHN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBj cnRjLT5kZXY7Cj4gPiArICAgICAgIHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZTsKPiA+ ICsgICAgICAgc3RydWN0IGRybV9jcnRjX3N0YXRlICpjcnRjX3N0YXRlOwo+ID4gKyAgICAgICBz dHJ1Y3QgZHJtX3Byb3BlcnR5X2Jsb2IgKmJsb2IgPSBOVUxMOwo+ID4gKyAgICAgICBzdHJ1Y3Qg ZHJtX2NvbG9yX2x1dCAqYmxvYl9kYXRhOwo+ID4gKyAgICAgICBpbnQgaSwgcmV0ID0gMDsKPiA+ ICsgICAgICAgYm9vbCByZXBsYWNlZDsKPiA+ICsKPiA+ICsgICAgICAgc3RhdGUgPSBkcm1fYXRv bWljX3N0YXRlX2FsbG9jKGNydGMtPmRldik7Cj4gPiArICAgICAgIGlmICghc3RhdGUpCj4gPiAr ICAgICAgICAgICAgICAgcmV0dXJuIC1FTk9NRU07Cj4gPiArCj4gPiArICAgICAgIGJsb2IgPSBk cm1fcHJvcGVydHlfY3JlYXRlX2Jsb2IoZGV2LAo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHNpemVvZihzdHJ1Y3QgZHJtX2NvbG9yX2x1dCkgKiBzaXplLAo+ID4g KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpOwo+ID4gKyAgICAg ICBpZiAoSVNfRVJSKGJsb2IpKSB7Cj4gPiArICAgICAgICAgICAgICAgcmV0ID0gUFRSX0VSUihi bG9iKTsKPiA+ICsgICAgICAgICAgICAgICBibG9iID0gTlVMTDsKPiA+ICsgICAgICAgICAgICAg ICBnb3RvIGZhaWw7Cj4gPiArICAgICAgIH0KPiA+ICsKPiA+ICsgICAgICAgLyogUHJlcGFyZSBH QU1NQV9MVVQgd2l0aCB0aGUgbGVnYWN5IHZhbHVlcy4gKi8KPiA+ICsgICAgICAgYmxvYl9kYXRh ID0gYmxvYi0+ZGF0YTsKPiA+ICsgICAgICAgZm9yIChpID0gMDsgaSA8IHNpemU7IGkrKykgewo+ ID4gKyAgICAgICAgICAgICAgIGJsb2JfZGF0YVtpXS5yZWQgPSByZWRbaV07Cj4gPiArICAgICAg ICAgICAgICAgYmxvYl9kYXRhW2ldLmdyZWVuID0gZ3JlZW5baV07Cj4gPiArICAgICAgICAgICAg ICAgYmxvYl9kYXRhW2ldLmJsdWUgPSBibHVlW2ldOwo+ID4gKyAgICAgICB9Cj4gPiArCj4gPiAr ICAgICAgIHN0YXRlLT5hY3F1aXJlX2N0eCA9IGN0eDsKPiA+ICsgICAgICAgY3J0Y19zdGF0ZSA9 IGRybV9hdG9taWNfZ2V0X2NydGNfc3RhdGUoc3RhdGUsIGNydGMpOwo+ID4gKyAgICAgICBpZiAo SVNfRVJSKGNydGNfc3RhdGUpKSB7Cj4gPiArICAgICAgICAgICAgICAgcmV0ID0gUFRSX0VSUihj cnRjX3N0YXRlKTsKPiA+ICsgICAgICAgICAgICAgICBnb3RvIGZhaWw7Cj4gPiArICAgICAgIH0K PiA+ICsKPiA+ICsgICAgICAgLyogUmVzZXQgREVHQU1NQV9MVVQgYW5kIENUTSBwcm9wZXJ0aWVz LiAqLwo+ID4gKyAgICAgICByZXBsYWNlZCAgPSBkcm1fcHJvcGVydHlfcmVwbGFjZV9ibG9iKCZj cnRjX3N0YXRlLT5kZWdhbW1hX2x1dCwgTlVMTCk7Cj4gPiArICAgICAgIHJlcGxhY2VkIHw9IGRy bV9wcm9wZXJ0eV9yZXBsYWNlX2Jsb2IoJmNydGNfc3RhdGUtPmN0bSwgTlVMTCk7Cj4gPiArICAg ICAgIHJlcGxhY2VkIHw9IGRybV9wcm9wZXJ0eV9yZXBsYWNlX2Jsb2IoJmNydGNfc3RhdGUtPmdh bW1hX2x1dCwgYmxvYik7Cj4gPiArICAgICAgIGNydGNfc3RhdGUtPmNvbG9yX21nbXRfY2hhbmdl ZCB8PSByZXBsYWNlZDsKPiA+ICsKPiA+ICsgICAgICAgcmV0ID0gZHJtX2F0b21pY19jb21taXQo c3RhdGUpOwo+ID4gKwo+ID4gK2ZhaWw6Cj4gPiArICAgICAgIGRybV9hdG9taWNfc3RhdGVfcHV0 KHN0YXRlKTsKPiA+ICsgICAgICAgZHJtX3Byb3BlcnR5X2Jsb2JfcHV0KGJsb2IpOwo+ID4gKyAg ICAgICByZXR1cm4gcmV0Owo+ID4gK30KPiA+ICtFWFBPUlRfU1lNQk9MKGRybV9hdG9taWNfaGVs cGVyX2xlZ2FjeV9nYW1tYV9zZXQpOwo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9k cm1fYXRvbWljX3N0YXRlX2hlbHBlci5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfc3Rh dGVfaGVscGVyLmMKPiA+IGluZGV4IDNiYTk5NjA2OWQ2OS4uNjBiZDdkNzA4ZTM1IDEwMDY0NAo+ ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfc3RhdGVfaGVscGVyLmMKPiA+ICsr KyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX3N0YXRlX2hlbHBlci5jCj4gPiBAQCAtMzkz LDkzICszOTMsNiBAQCBkcm1fYXRvbWljX2hlbHBlcl9jb25uZWN0b3JfZHVwbGljYXRlX3N0YXRl KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCj4gPiAgfQo+ID4gIEVYUE9SVF9TWU1C T0woZHJtX2F0b21pY19oZWxwZXJfY29ubmVjdG9yX2R1cGxpY2F0ZV9zdGF0ZSk7Cj4gPgo+ID4g LS8qKgo+ID4gLSAqIGRybV9hdG9taWNfaGVscGVyX2R1cGxpY2F0ZV9zdGF0ZSAtIGR1cGxpY2F0 ZSBhbiBhdG9taWMgc3RhdGUgb2JqZWN0Cj4gPiAtICogQGRldjogRFJNIGRldmljZQo+ID4gLSAq IEBjdHg6IGxvY2sgYWNxdWlzaXRpb24gY29udGV4dAo+ID4gLSAqCj4gPiAtICogTWFrZXMgYSBj b3B5IG9mIHRoZSBjdXJyZW50IGF0b21pYyBzdGF0ZSBieSBsb29waW5nIG92ZXIgYWxsIG9iamVj dHMgYW5kCj4gPiAtICogZHVwbGljYXRpbmcgdGhlaXIgcmVzcGVjdGl2ZSBzdGF0ZXMuIFRoaXMg aXMgdXNlZCBmb3IgZXhhbXBsZSBieSBzdXNwZW5kLwo+ID4gLSAqIHJlc3VtZSBzdXBwb3J0IGNv ZGUgdG8gc2F2ZSB0aGUgc3RhdGUgcHJpb3IgdG8gc3VzcGVuZCBzdWNoIHRoYXQgaXQgY2FuCj4g PiAtICogYmUgcmVzdG9yZWQgdXBvbiByZXN1bWUuCj4gPiAtICoKPiA+IC0gKiBOb3RlIHRoYXQg dGhpcyB0cmVhdHMgYXRvbWljIHN0YXRlIGFzIHBlcnNpc3RlbnQgYmV0d2VlbiBzYXZlIGFuZCBy ZXN0b3JlLgo+ID4gLSAqIERyaXZlcnMgbXVzdCBtYWtlIHN1cmUgdGhhdCB0aGlzIGlzIHBvc3Np YmxlIGFuZCB3b24ndCByZXN1bHQgaW4gY29uZnVzaW9uCj4gPiAtICogb3IgZXJyb25lb3VzIGJl aGF2aW91ci4KPiA+IC0gKgo+ID4gLSAqIE5vdGUgdGhhdCBpZiBjYWxsZXJzIGhhdmVuJ3QgYWxy ZWFkeSBhY3F1aXJlZCBhbGwgbW9kZXNldCBsb2NrcyB0aGlzIG1pZ2h0Cj4gPiAtICogcmV0dXJu IC1FREVBRExLLCB3aGljaCBtdXN0IGJlIGhhbmRsZWQgYnkgY2FsbGluZyBkcm1fbW9kZXNldF9i YWNrb2ZmKCkuCj4gPiAtICoKPiA+IC0gKiBSZXR1cm5zOgo+ID4gLSAqIEEgcG9pbnRlciB0byB0 aGUgY29weSBvZiB0aGUgYXRvbWljIHN0YXRlIG9iamVjdCBvbiBzdWNjZXNzIG9yIGFuCj4gPiAt ICogRVJSX1BUUigpLWVuY29kZWQgZXJyb3IgY29kZSBvbiBmYWlsdXJlLgo+ID4gLSAqCj4gPiAt ICogU2VlIGFsc286Cj4gPiAtICogZHJtX2F0b21pY19oZWxwZXJfc3VzcGVuZCgpLCBkcm1fYXRv bWljX2hlbHBlcl9yZXN1bWUoKQo+ID4gLSAqLwo+ID4gLXN0cnVjdCBkcm1fYXRvbWljX3N0YXRl ICoKPiA+IC1kcm1fYXRvbWljX2hlbHBlcl9kdXBsaWNhdGVfc3RhdGUoc3RydWN0IGRybV9kZXZp Y2UgKmRldiwKPiA+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgZHJt X21vZGVzZXRfYWNxdWlyZV9jdHggKmN0eCkKPiA+IC17Cj4gPiAtICAgICAgIHN0cnVjdCBkcm1f YXRvbWljX3N0YXRlICpzdGF0ZTsKPiA+IC0gICAgICAgc3RydWN0IGRybV9jb25uZWN0b3IgKmNv bm47Cj4gPiAtICAgICAgIHN0cnVjdCBkcm1fY29ubmVjdG9yX2xpc3RfaXRlciBjb25uX2l0ZXI7 Cj4gPiAtICAgICAgIHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lOwo+ID4gLSAgICAgICBzdHJ1Y3Qg ZHJtX2NydGMgKmNydGM7Cj4gPiAtICAgICAgIGludCBlcnIgPSAwOwo+ID4gLQo+ID4gLSAgICAg ICBzdGF0ZSA9IGRybV9hdG9taWNfc3RhdGVfYWxsb2MoZGV2KTsKPiA+IC0gICAgICAgaWYgKCFz dGF0ZSkKPiA+IC0gICAgICAgICAgICAgICByZXR1cm4gRVJSX1BUUigtRU5PTUVNKTsKPiA+IC0K PiA+IC0gICAgICAgc3RhdGUtPmFjcXVpcmVfY3R4ID0gY3R4Owo+ID4gLQo+ID4gLSAgICAgICBk cm1fZm9yX2VhY2hfY3J0YyhjcnRjLCBkZXYpIHsKPiA+IC0gICAgICAgICAgICAgICBzdHJ1Y3Qg ZHJtX2NydGNfc3RhdGUgKmNydGNfc3RhdGU7Cj4gPiAtCj4gPiAtICAgICAgICAgICAgICAgY3J0 Y19zdGF0ZSA9IGRybV9hdG9taWNfZ2V0X2NydGNfc3RhdGUoc3RhdGUsIGNydGMpOwo+ID4gLSAg ICAgICAgICAgICAgIGlmIChJU19FUlIoY3J0Y19zdGF0ZSkpIHsKPiA+IC0gICAgICAgICAgICAg ICAgICAgICAgIGVyciA9IFBUUl9FUlIoY3J0Y19zdGF0ZSk7Cj4gPiAtICAgICAgICAgICAgICAg ICAgICAgICBnb3RvIGZyZWU7Cj4gPiAtICAgICAgICAgICAgICAgfQo+ID4gLSAgICAgICB9Cj4g PiAtCj4gPiAtICAgICAgIGRybV9mb3JfZWFjaF9wbGFuZShwbGFuZSwgZGV2KSB7Cj4gPiAtICAg ICAgICAgICAgICAgc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqcGxhbmVfc3RhdGU7Cj4gPiAtCj4g PiAtICAgICAgICAgICAgICAgcGxhbmVfc3RhdGUgPSBkcm1fYXRvbWljX2dldF9wbGFuZV9zdGF0 ZShzdGF0ZSwgcGxhbmUpOwo+ID4gLSAgICAgICAgICAgICAgIGlmIChJU19FUlIocGxhbmVfc3Rh dGUpKSB7Cj4gPiAtICAgICAgICAgICAgICAgICAgICAgICBlcnIgPSBQVFJfRVJSKHBsYW5lX3N0 YXRlKTsKPiA+IC0gICAgICAgICAgICAgICAgICAgICAgIGdvdG8gZnJlZTsKPiA+IC0gICAgICAg ICAgICAgICB9Cj4gPiAtICAgICAgIH0KPiA+IC0KPiA+IC0gICAgICAgZHJtX2Nvbm5lY3Rvcl9s aXN0X2l0ZXJfYmVnaW4oZGV2LCAmY29ubl9pdGVyKTsKPiA+IC0gICAgICAgZHJtX2Zvcl9lYWNo X2Nvbm5lY3Rvcl9pdGVyKGNvbm4sICZjb25uX2l0ZXIpIHsKPiA+IC0gICAgICAgICAgICAgICBz dHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9zdGF0ZSAqY29ubl9zdGF0ZTsKPiA+IC0KPiA+IC0gICAgICAg ICAgICAgICBjb25uX3N0YXRlID0gZHJtX2F0b21pY19nZXRfY29ubmVjdG9yX3N0YXRlKHN0YXRl LCBjb25uKTsKPiA+IC0gICAgICAgICAgICAgICBpZiAoSVNfRVJSKGNvbm5fc3RhdGUpKSB7Cj4g PiAtICAgICAgICAgICAgICAgICAgICAgICBlcnIgPSBQVFJfRVJSKGNvbm5fc3RhdGUpOwo+ID4g LSAgICAgICAgICAgICAgICAgICAgICAgZHJtX2Nvbm5lY3Rvcl9saXN0X2l0ZXJfZW5kKCZjb25u X2l0ZXIpOwo+ID4gLSAgICAgICAgICAgICAgICAgICAgICAgZ290byBmcmVlOwo+ID4gLSAgICAg ICAgICAgICAgIH0KPiA+IC0gICAgICAgfQo+ID4gLSAgICAgICBkcm1fY29ubmVjdG9yX2xpc3Rf aXRlcl9lbmQoJmNvbm5faXRlcik7Cj4gPiAtCj4gPiAtICAgICAgIC8qIGNsZWFyIHRoZSBhY3F1 aXJlIGNvbnRleHQgc28gdGhhdCBpdCBpc24ndCBhY2NpZGVudGFsbHkgcmV1c2VkICovCj4gPiAt ICAgICAgIHN0YXRlLT5hY3F1aXJlX2N0eCA9IE5VTEw7Cj4gPiAtCj4gPiAtZnJlZToKPiA+IC0g ICAgICAgaWYgKGVyciA8IDApIHsKPiA+IC0gICAgICAgICAgICAgICBkcm1fYXRvbWljX3N0YXRl X3B1dChzdGF0ZSk7Cj4gPiAtICAgICAgICAgICAgICAgc3RhdGUgPSBFUlJfUFRSKGVycik7Cj4g PiAtICAgICAgIH0KPiA+IC0KPiA+IC0gICAgICAgcmV0dXJuIHN0YXRlOwo+ID4gLX0KPiA+IC1F WFBPUlRfU1lNQk9MKGRybV9hdG9taWNfaGVscGVyX2R1cGxpY2F0ZV9zdGF0ZSk7Cj4gPiAtCj4g PiAgLyoqCj4gPiAgICogX19kcm1fYXRvbWljX2hlbHBlcl9jb25uZWN0b3JfZGVzdHJveV9zdGF0 ZSAtIHJlbGVhc2UgY29ubmVjdG9yIHN0YXRlCj4gPiAgICogQHN0YXRlOiBjb25uZWN0b3Igc3Rh dGUgb2JqZWN0IHRvIHJlbGVhc2UKPiA+IEBAIC01MTUsNzYgKzQyOCw2IEBAIHZvaWQgZHJtX2F0 b21pY19oZWxwZXJfY29ubmVjdG9yX2Rlc3Ryb3lfc3RhdGUoc3RydWN0IGRybV9jb25uZWN0b3Ig KmNvbm5lY3RvciwKPiA+ICB9Cj4gPiAgRVhQT1JUX1NZTUJPTChkcm1fYXRvbWljX2hlbHBlcl9j b25uZWN0b3JfZGVzdHJveV9zdGF0ZSk7Cj4gPgo+ID4gLS8qKgo+ID4gLSAqIGRybV9hdG9taWNf aGVscGVyX2xlZ2FjeV9nYW1tYV9zZXQgLSBzZXQgdGhlIGxlZ2FjeSBnYW1tYSBjb3JyZWN0aW9u IHRhYmxlCj4gPiAtICogQGNydGM6IENSVEMgb2JqZWN0Cj4gPiAtICogQHJlZDogcmVkIGNvcnJl Y3Rpb24gdGFibGUKPiA+IC0gKiBAZ3JlZW46IGdyZWVuIGNvcnJlY3Rpb24gdGFibGUKPiA+IC0g KiBAYmx1ZTogZ3JlZW4gY29ycmVjdGlvbiB0YWJsZQo+ID4gLSAqIEBzaXplOiBzaXplIG9mIHRo ZSB0YWJsZXMKPiA+IC0gKiBAY3R4OiBsb2NrIGFjcXVpcmUgY29udGV4dAo+ID4gLSAqCj4gPiAt ICogSW1wbGVtZW50cyBzdXBwb3J0IGZvciBsZWdhY3kgZ2FtbWEgY29ycmVjdGlvbiB0YWJsZSBm b3IgZHJpdmVycwo+ID4gLSAqIHRoYXQgc3VwcG9ydCBjb2xvciBtYW5hZ2VtZW50IHRocm91Z2gg dGhlIERFR0FNTUFfTFVUL0dBTU1BX0xVVAo+ID4gLSAqIHByb3BlcnRpZXMuIFNlZSBkcm1fY3J0 Y19lbmFibGVfY29sb3JfbWdtdCgpIGFuZCB0aGUgY29udGFpbmluZyBjaGFwdGVyIGZvcgo+ID4g LSAqIGhvdyB0aGUgYXRvbWljIGNvbG9yIG1hbmFnZW1lbnQgYW5kIGdhbW1hIHRhYmxlcyB3b3Jr Lgo+ID4gLSAqLwo+ID4gLWludCBkcm1fYXRvbWljX2hlbHBlcl9sZWdhY3lfZ2FtbWFfc2V0KHN0 cnVjdCBkcm1fY3J0YyAqY3J0YywKPiA+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHUxNiAqcmVkLCB1MTYgKmdyZWVuLCB1MTYgKmJsdWUsCj4gPiAtICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBzaXplLAo+ID4gLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IGRybV9tb2Rlc2V0X2FjcXVpcmVfY3R4 ICpjdHgpCj4gPiAtewo+ID4gLSAgICAgICBzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gY3J0Yy0+ ZGV2Owo+ID4gLSAgICAgICBzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGU7Cj4gPiAtICAg ICAgIHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZTsKPiA+IC0gICAgICAgc3RydWN0 IGRybV9wcm9wZXJ0eV9ibG9iICpibG9iID0gTlVMTDsKPiA+IC0gICAgICAgc3RydWN0IGRybV9j b2xvcl9sdXQgKmJsb2JfZGF0YTsKPiA+IC0gICAgICAgaW50IGksIHJldCA9IDA7Cj4gPiAtICAg ICAgIGJvb2wgcmVwbGFjZWQ7Cj4gPiAtCj4gPiAtICAgICAgIHN0YXRlID0gZHJtX2F0b21pY19z dGF0ZV9hbGxvYyhjcnRjLT5kZXYpOwo+ID4gLSAgICAgICBpZiAoIXN0YXRlKQo+ID4gLSAgICAg ICAgICAgICAgIHJldHVybiAtRU5PTUVNOwo+ID4gLQo+ID4gLSAgICAgICBibG9iID0gZHJtX3By b3BlcnR5X2NyZWF0ZV9ibG9iKGRldiwKPiA+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBzaXplb2Yoc3RydWN0IGRybV9jb2xvcl9sdXQpICogc2l6ZSwKPiA+IC0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKPiA+IC0gICAgICAgaWYg KElTX0VSUihibG9iKSkgewo+ID4gLSAgICAgICAgICAgICAgIHJldCA9IFBUUl9FUlIoYmxvYik7 Cj4gPiAtICAgICAgICAgICAgICAgYmxvYiA9IE5VTEw7Cj4gPiAtICAgICAgICAgICAgICAgZ290 byBmYWlsOwo+ID4gLSAgICAgICB9Cj4gPiAtCj4gPiAtICAgICAgIC8qIFByZXBhcmUgR0FNTUFf TFVUIHdpdGggdGhlIGxlZ2FjeSB2YWx1ZXMuICovCj4gPiAtICAgICAgIGJsb2JfZGF0YSA9IGJs b2ItPmRhdGE7Cj4gPiAtICAgICAgIGZvciAoaSA9IDA7IGkgPCBzaXplOyBpKyspIHsKPiA+IC0g ICAgICAgICAgICAgICBibG9iX2RhdGFbaV0ucmVkID0gcmVkW2ldOwo+ID4gLSAgICAgICAgICAg ICAgIGJsb2JfZGF0YVtpXS5ncmVlbiA9IGdyZWVuW2ldOwo+ID4gLSAgICAgICAgICAgICAgIGJs b2JfZGF0YVtpXS5ibHVlID0gYmx1ZVtpXTsKPiA+IC0gICAgICAgfQo+ID4gLQo+ID4gLSAgICAg ICBzdGF0ZS0+YWNxdWlyZV9jdHggPSBjdHg7Cj4gPiAtICAgICAgIGNydGNfc3RhdGUgPSBkcm1f YXRvbWljX2dldF9jcnRjX3N0YXRlKHN0YXRlLCBjcnRjKTsKPiA+IC0gICAgICAgaWYgKElTX0VS UihjcnRjX3N0YXRlKSkgewo+ID4gLSAgICAgICAgICAgICAgIHJldCA9IFBUUl9FUlIoY3J0Y19z dGF0ZSk7Cj4gPiAtICAgICAgICAgICAgICAgZ290byBmYWlsOwo+ID4gLSAgICAgICB9Cj4gPiAt Cj4gPiAtICAgICAgIC8qIFJlc2V0IERFR0FNTUFfTFVUIGFuZCBDVE0gcHJvcGVydGllcy4gKi8K PiA+IC0gICAgICAgcmVwbGFjZWQgID0gZHJtX3Byb3BlcnR5X3JlcGxhY2VfYmxvYigmY3J0Y19z dGF0ZS0+ZGVnYW1tYV9sdXQsIE5VTEwpOwo+ID4gLSAgICAgICByZXBsYWNlZCB8PSBkcm1fcHJv cGVydHlfcmVwbGFjZV9ibG9iKCZjcnRjX3N0YXRlLT5jdG0sIE5VTEwpOwo+ID4gLSAgICAgICBy ZXBsYWNlZCB8PSBkcm1fcHJvcGVydHlfcmVwbGFjZV9ibG9iKCZjcnRjX3N0YXRlLT5nYW1tYV9s dXQsIGJsb2IpOwo+ID4gLSAgICAgICBjcnRjX3N0YXRlLT5jb2xvcl9tZ210X2NoYW5nZWQgfD0g cmVwbGFjZWQ7Cj4gPiAtCj4gPiAtICAgICAgIHJldCA9IGRybV9hdG9taWNfY29tbWl0KHN0YXRl KTsKPiA+IC0KPiA+IC1mYWlsOgo+ID4gLSAgICAgICBkcm1fYXRvbWljX3N0YXRlX3B1dChzdGF0 ZSk7Cj4gPiAtICAgICAgIGRybV9wcm9wZXJ0eV9ibG9iX3B1dChibG9iKTsKPiA+IC0gICAgICAg cmV0dXJuIHJldDsKPiA+IC19Cj4gPiAtRVhQT1JUX1NZTUJPTChkcm1fYXRvbWljX2hlbHBlcl9s ZWdhY3lfZ2FtbWFfc2V0KTsKPiA+IC0KPiA+ICAvKioKPiA+ICAgKiBfX2RybV9hdG9taWNfaGVs cGVyX3ByaXZhdGVfZHVwbGljYXRlX3N0YXRlIC0gY29weSBhdG9taWMgcHJpdmF0ZSBzdGF0ZQo+ ID4gICAqIEBvYmo6IENSVEMgb2JqZWN0Cj4gPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJt X2F0b21pY19oZWxwZXIuaCBiL2luY2x1ZGUvZHJtL2RybV9hdG9taWNfaGVscGVyLmgKPiA+IGlu ZGV4IDI1Y2EwMDk3NTYzZS4uNTgyMTRiZTNiZjNkIDEwMDY0NAo+ID4gLS0tIGEvaW5jbHVkZS9k cm0vZHJtX2F0b21pY19oZWxwZXIuaAo+ID4gKysrIGIvaW5jbHVkZS9kcm0vZHJtX2F0b21pY19o ZWxwZXIuaAo+ID4gQEAgLTEyNyw2ICsxMjcsOSBAQCBpbnQgX19kcm1fYXRvbWljX2hlbHBlcl9z ZXRfY29uZmlnKHN0cnVjdCBkcm1fbW9kZV9zZXQgKnNldCwKPiA+ICBpbnQgZHJtX2F0b21pY19o ZWxwZXJfZGlzYWJsZV9hbGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiA+ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgZHJtX21vZGVzZXRfYWNxdWlyZV9jdHggKmN0 eCk7Cj4gPiAgdm9pZCBkcm1fYXRvbWljX2hlbHBlcl9zaHV0ZG93bihzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2KTsKPiA+ICtzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqCj4gPiArZHJtX2F0b21pY19o ZWxwZXJfZHVwbGljYXRlX3N0YXRlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gPiArICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IGRybV9tb2Rlc2V0X2FjcXVpcmVfY3R4 ICpjdHgpOwo+ID4gIHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpkcm1fYXRvbWljX2hlbHBlcl9z dXNwZW5kKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwo+ID4gIGludCBkcm1fYXRvbWljX2hlbHBl cl9jb21taXRfZHVwbGljYXRlZF9zdGF0ZShzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUs Cj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0 IGRybV9tb2Rlc2V0X2FjcXVpcmVfY3R4ICpjdHgpOwo+ID4gQEAgLTE0NSw2ICsxNDgsMTAgQEAg aW50IGRybV9hdG9taWNfaGVscGVyX3BhZ2VfZmxpcF90YXJnZXQoCj4gPiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGZsYWdzLAo+ID4gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB1aW50MzJfdCB0YXJnZXQsCj4gPiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHN0cnVjdCBkcm1fbW9kZXNldF9hY3F1aXJlX2N0eCAqY3R4KTsKPiA+ICtpbnQg ZHJtX2F0b21pY19oZWxwZXJfbGVnYWN5X2dhbW1hX3NldChzdHJ1Y3QgZHJtX2NydGMgKmNydGMs Cj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1MTYgKnJlZCwgdTE2 ICpncmVlbiwgdTE2ICpibHVlLAo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgdWludDMyX3Qgc2l6ZSwKPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHN0cnVjdCBkcm1fbW9kZXNldF9hY3F1aXJlX2N0eCAqY3R4KTsKPiA+Cj4gPiAgLyoq Cj4gPiAgICogZHJtX2F0b21pY19jcnRjX2Zvcl9lYWNoX3BsYW5lIC0gaXRlcmF0ZSBvdmVyIHBs YW5lcyBjdXJyZW50bHkgYXR0YWNoZWQgdG8gQ1JUQwo+ID4gZGlmZiAtLWdpdCBhL2luY2x1ZGUv ZHJtL2RybV9hdG9taWNfc3RhdGVfaGVscGVyLmggYi9pbmNsdWRlL2RybS9kcm1fYXRvbWljX3N0 YXRlX2hlbHBlci5oCj4gPiBpbmRleCA1YjgyY2NmZGI1MDIuLjY2YzkyY2JkOGUxNiAxMDA2NDQK PiA+IC0tLSBhL2luY2x1ZGUvZHJtL2RybV9hdG9taWNfc3RhdGVfaGVscGVyLmgKPiA+ICsrKyBi L2luY2x1ZGUvZHJtL2RybV9hdG9taWNfc3RhdGVfaGVscGVyLmgKPiA+IEBAIC02NSwxNiArNjUs OSBAQCBfX2RybV9hdG9taWNfaGVscGVyX2Nvbm5lY3Rvcl9kdXBsaWNhdGVfc3RhdGUoc3RydWN0 IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwKPiA+ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9zdGF0ZSAqc3RhdGUpOwo+ID4g IHN0cnVjdCBkcm1fY29ubmVjdG9yX3N0YXRlICoKPiA+ICBkcm1fYXRvbWljX2hlbHBlcl9jb25u ZWN0b3JfZHVwbGljYXRlX3N0YXRlKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpOwo+ ID4gLXN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICoKPiA+IC1kcm1fYXRvbWljX2hlbHBlcl9kdXBs aWNhdGVfc3RhdGUoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiA+IC0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBzdHJ1Y3QgZHJtX21vZGVzZXRfYWNxdWlyZV9jdHggKmN0eCk7Cj4g PiAgdm9pZAo+ID4gIF9fZHJtX2F0b21pY19oZWxwZXJfY29ubmVjdG9yX2Rlc3Ryb3lfc3RhdGUo c3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgKnN0YXRlKTsKPiA+ICB2b2lkIGRybV9hdG9taWNf aGVscGVyX2Nvbm5lY3Rvcl9kZXN0cm95X3N0YXRlKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25u ZWN0b3IsCj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1 Y3QgZHJtX2Nvbm5lY3Rvcl9zdGF0ZSAqc3RhdGUpOwo+ID4gLWludCBkcm1fYXRvbWljX2hlbHBl cl9sZWdhY3lfZ2FtbWFfc2V0KHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKPiA+IC0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHUxNiAqcmVkLCB1MTYgKmdyZWVuLCB1MTYgKmJs dWUsCj4gPiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBz aXplLAo+ID4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IGRy bV9tb2Rlc2V0X2FjcXVpcmVfY3R4ICpjdHgpOwo+ID4gIHZvaWQgX19kcm1fYXRvbWljX2hlbHBl cl9wcml2YXRlX29ial9kdXBsaWNhdGVfc3RhdGUoc3RydWN0IGRybV9wcml2YXRlX29iaiAqb2Jq LAo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBzdHJ1Y3QgZHJtX3ByaXZhdGVfc3RhdGUgKnN0YXRlKTsKPiA+IC0tCj4gPiAyLjE5LjEKPiA+ Cj4gPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+ID4g SW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+ID4gSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9y Zwo+ID4gaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRl bC1nZngKCi0tIApEYW5pZWwgVmV0dGVyClNvZnR3YXJlIEVuZ2luZWVyLCBJbnRlbCBDb3Jwb3Jh dGlvbgpodHRwOi8vYmxvZy5mZndsbC5jaApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5m cmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9kcmktZGV2ZWwK