From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?Q?Nicolai_H=c3=a4hnle?= Subject: Re: [PATCH 1/3] drm/ttm: split BO structure initialization into a separate function Date: Wed, 15 Feb 2017 14:35:23 +0100 Message-ID: <06a90674-9f46-e646-9893-8b2748ddd9e4@gmail.com> References: <20170214103744.4133-1-nhaehnle@gmail.com> <9229e0d9-4e9d-0233-4ba2-c54c7192acfa@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: =?UTF-8?Q?Christian_K=c3=b6nig?= , =?UTF-8?Q?Nicolai_H=c3=a4hnle?= , amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: dri-devel@lists.freedesktop.org T24gMTQuMDIuMjAxNyAxMzo1MSwgQ2hyaXN0aWFuIEvDtm5pZyB3cm90ZToKPiBBbSAxNC4wMi4y MDE3IHVtIDEzOjAwIHNjaHJpZWIgTmljb2xhaSBIw6RobmxlOgo+PiBPbiAxNC4wMi4yMDE3IDEx OjQ5LCBDaHJpc3RpYW4gS8O2bmlnIHdyb3RlOgo+Pj4gQW0gMTQuMDIuMjAxNyB1bSAxMTozNyBz Y2hyaWViIE5pY29sYWkgSMOkaG5sZToKPj4+PiBGcm9tOiBOaWNvbGFpIEjDpGhubGUgPG5pY29s YWkuaGFlaG5sZUBhbWQuY29tPgo+Pj4+Cj4+Pj4gQWxsb3cgY2FsbGVycyB0byBvcHQgb3V0IG9m IGNhbGxpbmcgdHRtX2JvX3ZhbGlkYXRlIGltbWVkaWF0ZWx5LiBUaGlzCj4+Pj4gYWxsb3dzIG1v cmUgZmxleGliaWxpdHkgaW4gaG93IGxvY2tpbmcgb2YgdGhlIHJlc2VydmF0aW9uIG9iamVjdCBp cwo+Pj4+IGRvbmUsIHdoaWNoIGlzIG5lZWRlZCB0byBmaXggYSBsb2NraW5nIGJ1ZyAoZGVzdHJv eSBsb2NrZWQgbXV0ZXgpCj4+Pj4gaW4gYW1kZ3B1Lgo+Pj4+Cj4+Pj4gU2lnbmVkLW9mZi1ieTog Tmljb2xhaSBIw6RobmxlIDxuaWNvbGFpLmhhZWhubGVAYW1kLmNvbT4KPj4+Cj4+PiBQbGVhc2Ug c3F1YXNoIHRoYXQgaW50byB5b3VyIG90aGVyIHBhdGNoLiBJdCBmaXhlcyBhbm90aGVyIGJ1Zywg YnV0IEkKPj4+IGRvbid0IHRoaW5rIGZpeGluZyBvbmUgYnVnIGp1c3QgdG8gcnVuIGludG8gYW5v dGhlciBpcyByZWFsbHkgYSBnb29kCj4+PiBpZGVhLgo+Pgo+PiBJIGRvbid0IHVuZGVyc3RhbmQu IEknbSBub3QgYXdhcmUgdGhhdCB0aGlzIHBhdGNoIGZpeGVzIGFueXRoaW5nLCBpdAo+PiBqdXN0 IGVuYWJsZXMgdGhlIHN1YnNlcXVlbnQgZml4IGluIGFtZGdwdSBpbiBwYXRjaCAjMi4gSSBkb24n dCB0aGluawo+PiBzcXVhc2hpbmcgdGhvc2UgdG9nZXRoZXIgaXMgYSBnb29kIGlkZWEgKG9uZSBp cyBpbiB0dG0sIHRoZSBvdGhlciBpbgo+PiBhbWRncHUpLgo+Cj4gT2ssIGZvcmdldCBpdCBJJ3Zl IG1lc3NlZCB1cCB0aGUgZGlmZmVyZW50IHJlZmVyZW5jZSBjb3VudC4KPgo+IFdpdGggYXQgbGVh c3QgaW5pdGlhbGl6aW5nIGJvLT5rcmVmIGFuZCBiby0+ZGVzdHJveSBiZWZvcmUgcmV0dXJuaW5n IHRoZQo+IGZpcnN0IGVycm9yIHRoZSBwYXRjaCBpcyBSZXZpZXdlZC1ieTogQ2hyaXN0aWFuIEvD tm5pZwo+IDxjaHJpc3RpYW4ua29lbmlnQGFtZC5jb20+LgoKVGhhbmtzLiBEb2VzIHRoaXMgYXBw bHkgdG8gcGF0Y2hlcyAjMiBhbmQgIzMgYXMgd2VsbD8KCkNoZWVycywKTmljb2xhaQoKCj4KPiBS ZWdhcmRzLAo+IENocmlzdGlhbi4KPgo+Pgo+Pgo+Pj4gQWRkaXRpb25hbCB0byB0aGF0IG9uZSBj b21tZW50IGJlbG93Lgo+Pj4KPj4+PiAtLS0KPj4+PiAgIGRyaXZlcnMvZ3B1L2RybS90dG0vdHRt X2JvLmMgfCA2Mgo+Pj4+ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0t LS0tCj4+Pj4gICBpbmNsdWRlL2RybS90dG0vdHRtX2JvX2FwaS5oIHwgNDUgKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysKPj4+PiAgIDIgZmlsZXMgY2hhbmdlZCwgODYgaW5zZXJ0aW9u cygrKSwgMjEgZGVsZXRpb25zKC0pCj4+Pj4KPj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL3R0bS90dG1fYm8uYwo+Pj4+IGIvZHJpdmVycy9ncHUvZHJtL3R0bS90dG1fYm8uYwo+Pj4+ IGluZGV4IDc2YmVlNDIuLmNlNGMwZjUgMTAwNjQ0Cj4+Pj4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L3R0bS90dG1fYm8uYwo+Pj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS90dG0vdHRtX2JvLmMKPj4+ PiBAQCAtMTEyMCw0MSArMTEyMCwzMCBAQCBpbnQgdHRtX2JvX3ZhbGlkYXRlKHN0cnVjdCB0dG1f YnVmZmVyX29iamVjdAo+Pj4+ICpibywKPj4+PiAgIH0KPj4+PiAgIEVYUE9SVF9TWU1CT0wodHRt X2JvX3ZhbGlkYXRlKTsKPj4+PiAgIC1pbnQgdHRtX2JvX2luaXQoc3RydWN0IHR0bV9ib19kZXZp Y2UgKmJkZXYsCj4+Pj4gLSAgICAgICAgc3RydWN0IHR0bV9idWZmZXJfb2JqZWN0ICpibywKPj4+ PiAtICAgICAgICB1bnNpZ25lZCBsb25nIHNpemUsCj4+Pj4gLSAgICAgICAgZW51bSB0dG1fYm9f dHlwZSB0eXBlLAo+Pj4+IC0gICAgICAgIHN0cnVjdCB0dG1fcGxhY2VtZW50ICpwbGFjZW1lbnQs Cj4+Pj4gLSAgICAgICAgdWludDMyX3QgcGFnZV9hbGlnbm1lbnQsCj4+Pj4gLSAgICAgICAgYm9v bCBpbnRlcnJ1cHRpYmxlLAo+Pj4+IC0gICAgICAgIHN0cnVjdCBmaWxlICpwZXJzaXN0ZW50X3N3 YXBfc3RvcmFnZSwKPj4+PiAtICAgICAgICBzaXplX3QgYWNjX3NpemUsCj4+Pj4gLSAgICAgICAg c3RydWN0IHNnX3RhYmxlICpzZywKPj4+PiAtICAgICAgICBzdHJ1Y3QgcmVzZXJ2YXRpb25fb2Jq ZWN0ICpyZXN2LAo+Pj4+IC0gICAgICAgIHZvaWQgKCpkZXN0cm95KSAoc3RydWN0IHR0bV9idWZm ZXJfb2JqZWN0ICopKQo+Pj4+ICtpbnQgdHRtX2JvX2luaXRfdG9wKHN0cnVjdCB0dG1fYm9fZGV2 aWNlICpiZGV2LAo+Pj4+ICsgICAgICAgICAgICBzdHJ1Y3QgdHRtX2J1ZmZlcl9vYmplY3QgKmJv LAo+Pj4+ICsgICAgICAgICAgICB1bnNpZ25lZCBsb25nIHNpemUsCj4+Pj4gKyAgICAgICAgICAg IGVudW0gdHRtX2JvX3R5cGUgdHlwZSwKPj4+PiArICAgICAgICAgICAgdWludDMyX3QgcGFnZV9h bGlnbm1lbnQsCj4+Pj4gKyAgICAgICAgICAgIHN0cnVjdCBmaWxlICpwZXJzaXN0ZW50X3N3YXBf c3RvcmFnZSwKPj4+PiArICAgICAgICAgICAgc2l6ZV90IGFjY19zaXplLAo+Pj4+ICsgICAgICAg ICAgICBzdHJ1Y3Qgc2dfdGFibGUgKnNnLAo+Pj4+ICsgICAgICAgICAgICBzdHJ1Y3QgcmVzZXJ2 YXRpb25fb2JqZWN0ICpyZXN2LAo+Pj4+ICsgICAgICAgICAgICB2b2lkICgqZGVzdHJveSkgKHN0 cnVjdCB0dG1fYnVmZmVyX29iamVjdCAqKSkKPj4+PiAgIHsKPj4+PiAgICAgICBpbnQgcmV0ID0g MDsKPj4+PiAgICAgICB1bnNpZ25lZCBsb25nIG51bV9wYWdlczsKPj4+PiAgICAgICBzdHJ1Y3Qg dHRtX21lbV9nbG9iYWwgKm1lbV9nbG9iID0gYmRldi0+Z2xvYi0+bWVtX2dsb2I7Cj4+Pj4gLSAg ICBib29sIGxvY2tlZDsKPj4+PiAgICAgICAgIHJldCA9IHR0bV9tZW1fZ2xvYmFsX2FsbG9jKG1l bV9nbG9iLCBhY2Nfc2l6ZSwgZmFsc2UsIGZhbHNlKTsKPj4+PiAgICAgICBpZiAocmV0KSB7Cj4+ Pj4gICAgICAgICAgIHByX2VycigiT3V0IG9mIGtlcm5lbCBtZW1vcnlcbiIpOwo+Pj4+IC0gICAg ICAgIGlmIChkZXN0cm95KQo+Pj4+IC0gICAgICAgICAgICAoKmRlc3Ryb3kpKGJvKTsKPj4+PiAt ICAgICAgICBlbHNlCj4+Pj4gLSAgICAgICAgICAgIGtmcmVlKGJvKTsKPj4+PiAgICAgICAgICAg cmV0dXJuIC1FTk9NRU07Cj4+Pj4gICAgICAgfQo+Pj4+ICAgICAgICAgbnVtX3BhZ2VzID0gKHNp emUgKyBQQUdFX1NJWkUgLSAxKSA+PiBQQUdFX1NISUZUOwo+Pj4+ICAgICAgIGlmIChudW1fcGFn ZXMgPT0gMCkgewo+Pj4+ICAgICAgICAgICBwcl9lcnIoIklsbGVnYWwgYnVmZmVyIG9iamVjdCBz aXplXG4iKTsKPj4+PiAtICAgICAgICBpZiAoZGVzdHJveSkKPj4+PiAtICAgICAgICAgICAgKCpk ZXN0cm95KShibyk7Cj4+Pj4gLSAgICAgICAgZWxzZQo+Pj4+IC0gICAgICAgICAgICBrZnJlZShi byk7Cj4+Pj4gICAgICAgICAgIHR0bV9tZW1fZ2xvYmFsX2ZyZWUobWVtX2dsb2IsIGFjY19zaXpl KTsKPj4+PiAgICAgICAgICAgcmV0dXJuIC1FSU5WQUw7Cj4+Pj4gICAgICAgfQo+Pj4KPj4+IEkg d291bGQgbW92ZSB0aG9zZSBjaGVja3MgYWZ0ZXIgYWxsIHRoZSBmaWVsZCBpbml0aWFsaXphdGlv bnMuIFRoaXMgd2F5Cj4+PiB0aGUgc3RydWN0dXJlIGhhcyBhdCBsZWFzdCBhIHZhbGlkIGNvbnRl bnQgYW5kIHdlIGNhbiBzYWZlbHkgdXNlCj4+PiB0dG1fYm9fdW5yZWYgb24gaXQuCj4+Cj4+IFRo YXQgZmVlbHMgb2RkIHRvIG1lLCBzaW5jZSB0aGUgcmV0dXJuIHZhbHVlIGluZGljYXRlcyB0aGF0 IHRoZSBidWZmZXIKPj4gd2Fzbid0IHByb3Blcmx5IGluaXRpYWxpemVkLCBidXQgSSBkb24ndCBm ZWVsIHN0cm9uZ2x5IGFib3V0IGl0Lgo+Pgo+PiBDaGVlcnMsCj4+IE5pY29sYWkKPj4KPj4KPj4+ Cj4+PiBSZWdhcmRzLAo+Pj4gQ2hyaXN0aWFuLgo+Pj4KPj4+PiBAQCAtMTIwNCw2ICsxMTkzLDM3 IEBAIGludCB0dG1fYm9faW5pdChzdHJ1Y3QgdHRtX2JvX2RldmljZSAqYmRldiwKPj4+PiAgICAg ICAgICAgcmV0ID0gZHJtX3ZtYV9vZmZzZXRfYWRkKCZiZGV2LT52bWFfbWFuYWdlciwgJmJvLT52 bWFfbm9kZSwKPj4+PiAgICAgICAgICAgICAgICAgICAgICAgIGJvLT5tZW0ubnVtX3BhZ2VzKTsK Pj4+PiAgICsgICAgcmV0dXJuIHJldDsKPj4+PiArfQo+Pj4+ICtFWFBPUlRfU1lNQk9MKHR0bV9i b19pbml0X3RvcCk7Cj4+Pj4gKwo+Pj4+ICtpbnQgdHRtX2JvX2luaXQoc3RydWN0IHR0bV9ib19k ZXZpY2UgKmJkZXYsCj4+Pj4gKyAgICAgICAgc3RydWN0IHR0bV9idWZmZXJfb2JqZWN0ICpibywK Pj4+PiArICAgICAgICB1bnNpZ25lZCBsb25nIHNpemUsCj4+Pj4gKyAgICAgICAgZW51bSB0dG1f Ym9fdHlwZSB0eXBlLAo+Pj4+ICsgICAgICAgIHN0cnVjdCB0dG1fcGxhY2VtZW50ICpwbGFjZW1l bnQsCj4+Pj4gKyAgICAgICAgdWludDMyX3QgcGFnZV9hbGlnbm1lbnQsCj4+Pj4gKyAgICAgICAg Ym9vbCBpbnRlcnJ1cHRpYmxlLAo+Pj4+ICsgICAgICAgIHN0cnVjdCBmaWxlICpwZXJzaXN0ZW50 X3N3YXBfc3RvcmFnZSwKPj4+PiArICAgICAgICBzaXplX3QgYWNjX3NpemUsCj4+Pj4gKyAgICAg ICAgc3RydWN0IHNnX3RhYmxlICpzZywKPj4+PiArICAgICAgICBzdHJ1Y3QgcmVzZXJ2YXRpb25f b2JqZWN0ICpyZXN2LAo+Pj4+ICsgICAgICAgIHZvaWQgKCpkZXN0cm95KSAoc3RydWN0IHR0bV9i dWZmZXJfb2JqZWN0ICopKQo+Pj4+ICt7Cj4+Pj4gKyAgICBib29sIGxvY2tlZDsKPj4+PiArICAg IGludCByZXQ7Cj4+Pj4gKwo+Pj4+ICsgICAgcmV0ID0gdHRtX2JvX2luaXRfdG9wKGJkZXYsIGJv LCBzaXplLCB0eXBlLCBwYWdlX2FsaWdubWVudCwKPj4+PiArICAgICAgICAgICAgICAgICAgcGVy c2lzdGVudF9zd2FwX3N0b3JhZ2UsIGFjY19zaXplLCBzZywgcmVzdiwKPj4+PiArICAgICAgICAg ICAgICAgICAgZGVzdHJveSk7Cj4+Pj4gKyAgICBpZiAocmV0KSB7Cj4+Pj4gKyAgICAgICAgaWYg KGRlc3Ryb3kpCj4+Pj4gKyAgICAgICAgICAgICgqZGVzdHJveSkoYm8pOwo+Pj4+ICsgICAgICAg IGVsc2UKPj4+PiArICAgICAgICAgICAga2ZyZWUoYm8pOwo+Pj4+ICsgICAgICAgIHJldHVybiBy ZXQ7Cj4+Pj4gKyAgICB9Cj4+Pj4gKwo+Pj4+ICAgICAgIC8qIHBhc3NlZCByZXNlcnZhdGlvbiBv YmplY3RzIHNob3VsZCBhbHJlYWR5IGJlIGxvY2tlZCwKPj4+PiAgICAgICAgKiBzaW5jZSBvdGhl cndpc2UgbG9ja2RlcCB3aWxsIGJlIGFuZ2VyZWQgaW4gcmFkZW9uLgo+Pj4+ICAgICAgICAqLwo+ Pj4+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS90dG0vdHRtX2JvX2FwaS5oCj4+Pj4gYi9pbmNs dWRlL2RybS90dG0vdHRtX2JvX2FwaS5oCj4+Pj4gaW5kZXggZjE5NTg5OS4uZDQ0YjhlNCAxMDA2 NDQKPj4+PiAtLS0gYS9pbmNsdWRlL2RybS90dG0vdHRtX2JvX2FwaS5oCj4+Pj4gKysrIGIvaW5j bHVkZS9kcm0vdHRtL3R0bV9ib19hcGkuaAo+Pj4+IEBAIC00NTMsNiArNDUzLDUxIEBAIHNpemVf dCB0dG1fYm9fZG1hX2FjY19zaXplKHN0cnVjdCB0dG1fYm9fZGV2aWNlCj4+Pj4gKmJkZXYsCj4+ Pj4gICAgICAgICAgICAgICAgICB1bnNpZ25lZCBzdHJ1Y3Rfc2l6ZSk7Cj4+Pj4gICAgIC8qKgo+ Pj4+ICsgKiB0dG1fYm9faW5pdF90b3AKPj4+PiArICoKPj4+PiArICogQGJkZXY6IFBvaW50ZXIg dG8gYSB0dG1fYm9fZGV2aWNlIHN0cnVjdC4KPj4+PiArICogQGJvOiBQb2ludGVyIHRvIGEgdHRt X2J1ZmZlcl9vYmplY3QgdG8gYmUgaW5pdGlhbGl6ZWQuCj4+Pj4gKyAqIEBzaXplOiBSZXF1ZXN0 ZWQgc2l6ZSBvZiBidWZmZXIgb2JqZWN0Lgo+Pj4+ICsgKiBAdHlwZTogUmVxdWVzdGVkIHR5cGUg b2YgYnVmZmVyIG9iamVjdC4KPj4+PiArICogQGZsYWdzOiBJbml0aWFsIHBsYWNlbWVudCBmbGFn cy4KPj4+PiArICogQHBhZ2VfYWxpZ25tZW50OiBEYXRhIGFsaWdubWVudCBpbiBwYWdlcy4KPj4+ PiArICogQHBlcnNpc3RlbnRfc3dhcF9zdG9yYWdlOiBVc3VhbGx5IHRoZSBzd2FwIHN0b3JhZ2Ug aXMgZGVsZXRlZCBmb3IKPj4+PiBidWZmZXJzCj4+Pj4gKyAqIHBpbm5lZCBpbiBwaHlzaWNhbCBt ZW1vcnkuIElmIHRoaXMgYmVoYXZpb3VyIGlzIG5vdCBkZXNpcmVkLCB0aGlzCj4+Pj4gbWVtYmVy Cj4+Pj4gKyAqIGhvbGRzIGEgcG9pbnRlciB0byBhIHBlcnNpc3RlbnQgc2htZW0gb2JqZWN0LiBU eXBpY2FsbHksIHRoaXMgd291bGQKPj4+PiArICogcG9pbnQgdG8gdGhlIHNobWVtIG9iamVjdCBi YWNraW5nIGEgR0VNIG9iamVjdCBpZiBUVE0gaXMgdXNlZCB0bwo+Pj4+IGJhY2sgYQo+Pj4+ICsg KiBHRU0gdXNlciBpbnRlcmZhY2UuCj4+Pj4gKyAqIEBhY2Nfc2l6ZTogQWNjb3VudGVkIHNpemUg Zm9yIHRoaXMgb2JqZWN0Lgo+Pj4+ICsgKiBAcmVzdjogUG9pbnRlciB0byBhIHJlc2VydmF0aW9u X29iamVjdCwgb3IgTlVMTCB0byBsZXQgdHRtCj4+Pj4gYWxsb2NhdGUgb25lLgo+Pj4+ICsgKiBA ZGVzdHJveTogRGVzdHJveSBmdW5jdGlvbi4gVXNlIE5VTEwgZm9yIGtmcmVlKCkuCj4+Pj4gKyAq Cj4+Pj4gKyAqIFRoaXMgZnVuY3Rpb24gaW5pdGlhbGl6ZXMgYSBwcmUtYWxsb2NhdGVkIHN0cnVj dCB0dG1fYnVmZmVyX29iamVjdC4KPj4+PiArICogQXMgdGhpcyBvYmplY3QgbWF5IGJlIHBhcnQg b2YgYSBsYXJnZXIgc3RydWN0dXJlLCB0aGlzIGZ1bmN0aW9uLAo+Pj4+ICsgKiB0b2dldGhlciB3 aXRoIHRoZSBAZGVzdHJveSBmdW5jdGlvbiwKPj4+PiArICogZW5hYmxlcyBkcml2ZXItc3BlY2lm aWMgb2JqZWN0cyBkZXJpdmVkIGZyb20gYSB0dG1fYnVmZmVyX29iamVjdC4KPj4+PiArICoKPj4+ PiArICogVW5saWtlIHR0bV9ib19pbml0LCBAYm8gaXMgbm90IHZhbGlkYXRlZCwgYW5kIHdoZW4g YW4gZXJyb3IgaXMKPj4+PiByZXR1cm5lZCwKPj4+PiArICogdGhlIGNhbGxlciBpcyByZXNwb25z aWJsZSBmb3IgZnJlZWluZyBAYm8gKGJ1dCB0aGUgc2V0dXAKPj4+PiBwZXJmb3JtZWQgYnkKPj4+ PiArICogdHRtX2JvX2luaXRfdG9wIGl0c2VsZiBpcyBjbGVhbmVkIHVwKS4KPj4+PiArICoKPj4+ PiArICogT24gc3VjY2Vzc2Z1bCByZXR1cm4sIHRoZSBvYmplY3Qga3JlZiBhbmQgbGlzdF9rcmVm IGFyZSBzZXQgdG8gMS4KPj4+PiArICoKPj4+PiArICogUmV0dXJucwo+Pj4+ICsgKiAtRU5PTUVN OiBPdXQgb2YgbWVtb3J5Lgo+Pj4+ICsgKiAtRUlOVkFMOiBJbnZhbGlkIGJ1ZmZlciBzaXplLgo+ Pj4+ICsgKi8KPj4+PiArCj4+Pj4gK2V4dGVybiBpbnQgdHRtX2JvX2luaXRfdG9wKHN0cnVjdCB0 dG1fYm9fZGV2aWNlICpiZGV2LAo+Pj4+ICsgICAgICAgICAgICAgICBzdHJ1Y3QgdHRtX2J1ZmZl cl9vYmplY3QgKmJvLAo+Pj4+ICsgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIHNpemUsCj4+ Pj4gKyAgICAgICAgICAgICAgIGVudW0gdHRtX2JvX3R5cGUgdHlwZSwKPj4+PiArICAgICAgICAg ICAgICAgdWludDMyX3QgcGFnZV9hbGlnbm1lbnQsCj4+Pj4gKyAgICAgICAgICAgICAgIHN0cnVj dCBmaWxlICpwZXJzaXN0ZW50X3N3YXBfc3RvcmFnZSwKPj4+PiArICAgICAgICAgICAgICAgc2l6 ZV90IGFjY19zaXplLAo+Pj4+ICsgICAgICAgICAgICAgICBzdHJ1Y3Qgc2dfdGFibGUgKnNnLAo+ Pj4+ICsgICAgICAgICAgICAgICBzdHJ1Y3QgcmVzZXJ2YXRpb25fb2JqZWN0ICpyZXN2LAo+Pj4+ ICsgICAgICAgICAgICAgICB2b2lkICgqZGVzdHJveSkgKHN0cnVjdCB0dG1fYnVmZmVyX29iamVj dCAqKSk7Cj4+Pj4gKwo+Pj4+ICsvKioKPj4+PiAgICAqIHR0bV9ib19pbml0Cj4+Pj4gICAgKgo+ Pj4+ICAgICogQGJkZXY6IFBvaW50ZXIgdG8gYSB0dG1fYm9fZGV2aWNlIHN0cnVjdC4KPj4+Cj4+ Pgo+Pgo+CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwph bWQtZ2Z4IG1haWxpbmcgbGlzdAphbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczov L2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2FtZC1nZngK