From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id D0B0CF94CA9 for ; Tue, 21 Apr 2026 19:45:59 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 4A2BE10E168; Tue, 21 Apr 2026 19:45:59 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=kernel.org header.i=@kernel.org header.b="NDrrAmJE"; dkim-atps=neutral Received: from tor.source.kernel.org (tor.source.kernel.org [172.105.4.254]) by gabe.freedesktop.org (Postfix) with ESMTPS id 5C15510E168 for ; Tue, 21 Apr 2026 19:45:57 +0000 (UTC) Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by tor.source.kernel.org (Postfix) with ESMTP id 57D7D60172; Tue, 21 Apr 2026 19:45:56 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 676B8C2BCB0; Tue, 21 Apr 2026 19:45:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1776800756; bh=hm/z7m642SSms8DuycPWedMgrZhlsol5e0DI+vAf0q8=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=NDrrAmJEW55Vezbk5OaPKZayer8LC/OnvDp1acSQPsYNIRAzoJxeNDMFe0J7mXsuA 1aiBZNm+8BerqYAhdb+K82nkLXDg7qwztts9+pU2E+jsalH56odYv2jraYLxiSr/Nv G8cR3sljB1FEAPX6d42pNdJInG1Bq9a8d9sTfbb/Tjj8f1dgcQ3LKn9C8sh6/UmiZA gfBnMDgzpOQHXS7OwgdVE+la45fUpVFeG8gPY82wu8QV6eGaZPj8Ysan46DYojKjbE xRX06iKsyuDLiJFUkvoqwfuoc499Rjk+vnDhugctDLwT44X8mCccoYVX2Y4DDqf7Sq wv/iqX1TfnFGg== Message-ID: Date: Tue, 21 Apr 2026 14:45:52 -0500 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH V1] accel/amdxdna: Improve tracing for job lifecycle and mailbox RX worker Content-Language: en-US To: Lizhi Hou , ogabbay@kernel.org, quic_jhugo@quicinc.com, dri-devel@lists.freedesktop.org, maciej.falkowski@linux.intel.com Cc: Max Zhen , linux-kernel@vger.kernel.org, sonal.santan@amd.com References: <20260421181502.1970263-1-lizhi.hou@amd.com> <83846da8-0c8f-4eca-bac9-08efe1c0eb2f@amd.com> <9bca1ecd-ce16-2703-3a0d-6db208c83b06@amd.com> From: Mario Limonciello In-Reply-To: <9bca1ecd-ce16-2703-3a0d-6db208c83b06@amd.com> Content-Type: text/plain; charset="utf-8"; format="flowed" Content-Transfer-Encoding: base64 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" CgpPbiA0LzIxLzI2IDE0OjM5LCBMaXpoaSBIb3Ugd3JvdGU6Cj4gCj4gT24gNC8yMS8yNiAxMjox OCwgTWFyaW8gTGltb25jaWVsbG8gd3JvdGU6Cj4+Cj4+Cj4+IE9uIDQvMjEvMjYgMTM6MTUsIExp emhpIEhvdSB3cm90ZToKPj4+IEZyb206IE1heCBaaGVuIDxtYXguemhlbkBhbWQuY29tPgo+Pj4K Pj4+IEFkZCBtb3JlIHRyYWNlIGNvdmVyYWdlIHRvIGFtZHhkbmEgam9iIGhhbmRsaW5nIGFuZCBt YWlsYm94IHJlY2VpdmUKPj4+IHByb2Nlc3NpbmcgdG8gbWFrZSBkcml2ZXIgZXhlY3V0aW9uIGVh c2llciB0byBkZWJ1Zy4KPj4+Cj4+PiBFeHRlbmQgdGhlIHhkbmFfam9iIHRyYWNlIGV2ZW50IHRv IHJlY29yZCB0aGUgY29tbWFuZCBvcGNvZGUgaW4KPj4+IGFkZGl0aW9uIHRvIHRoZSBqb2Igc2Vx dWVuY2UgbnVtYmVyLiBVc2UgdGhlIGVuaGFuY2VkIHRyYWNlcG9pbnQgaW4KPj4+IHRoZSBqb2Ig cnVuLCBzZW50LXRvLWRldmljZSwgc2lnbmFsZWQtZmVuY2UsIGFuZCBqb2ItZnJlZSBwYXRocyBz bwo+Pj4gdGhhdCB0cmFjZSBvdXRwdXQgY2FuIGJlIGNvcnJlbGF0ZWQgd2l0aCB0aGUgY29tbWFu ZCBiZWluZyBleGVjdXRlZC4KPj4+Cj4+PiBBbHNvIGFkZCBkZWJ1Zy1wb2ludCB0cmFjaW5nIHdo ZW4gYSBjb21tYW5kIGlzIHJlY2VpdmVkIHRocm91Z2ggdGhlCj4+PiBzdWJtaXQgaW9jdGwgcGF0 aCwgYW5kIGFkZCBhIHRyYWNlIGV2ZW50IHdoZW4gdGhlIG1haWxib3ggUlggd29ya2VyCj4+PiBy dW5zLgo+Pj4KPj4+IFRoZXNlIGNoYW5nZXMgaW1wcm92ZSB2aXNpYmlsaXR5IGludG8gam9iIGxp ZmV0aW1lIHRyYW5zaXRpb25zIGFuZAo+Pj4gbWFpbGJveCBhY3Rpdml0eSwgd2hpY2ggaGVscHMg ZGVidWcgY29tbWFuZCBmbG93IGFuZCBzY2hlZHVsZXIgaXNzdWVzLgo+Pj4KPj4+IFNpZ25lZC1v ZmYtYnk6IE1heCBaaGVuIDxtYXguemhlbkBhbWQuY29tPgo+Pj4gU2lnbmVkLW9mZi1ieTogTGl6 aGkgSG91IDxsaXpoaS5ob3VAYW1kLmNvbT4KUmV2aWV3ZWQtYnk6IE1hcmlvIExpbW9uY2llbGxv IChBTUQpIDxzdXBlcm0xQGtlcm5lbC5vcmc+Cj4+PiAtLS0KPj4+IMKgIGRyaXZlcnMvYWNjZWwv YW1keGRuYS9haWUyX2N0eC5jwqDCoMKgwqDCoMKgwqAgfCAxNCArKysrKystLS0KPj4+IMKgIGRy aXZlcnMvYWNjZWwvYW1keGRuYS9hbWR4ZG5hX2N0eC5jwqDCoMKgwqAgfMKgIDMgKy0KPj4+IMKg IGRyaXZlcnMvYWNjZWwvYW1keGRuYS9hbWR4ZG5hX2N0eC5owqDCoMKgwqAgfMKgIDEgKwo+Pj4g wqAgZHJpdmVycy9hY2NlbC9hbWR4ZG5hL2FtZHhkbmFfbWFpbGJveC5jIHzCoCAxICsKPj4+IMKg IGluY2x1ZGUvdHJhY2UvZXZlbnRzL2FtZHhkbmEuaMKgwqDCoMKgwqDCoMKgwqDCoCB8IDQyICsr KysrKysrKysrKysrKystLS0tLS0tLS0KPj4+IMKgIDUgZmlsZXMgY2hhbmdlZCwgNDIgaW5zZXJ0 aW9ucygrKSwgMTkgZGVsZXRpb25zKC0pCj4+Pgo+Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvYWNj ZWwvYW1keGRuYS9haWUyX2N0eC5jIGIvZHJpdmVycy9hY2NlbC8gCj4+PiBhbWR4ZG5hL2FpZTJf Y3R4LmMKPj4+IGluZGV4IGQzNzEyM2Q5MjViNi4uM2IwZmViYTQ0OGM0IDEwMDY0NAo+Pj4gLS0t IGEvZHJpdmVycy9hY2NlbC9hbWR4ZG5hL2FpZTJfY3R4LmMKPj4+ICsrKyBiL2RyaXZlcnMvYWNj ZWwvYW1keGRuYS9haWUyX2N0eC5jCj4+PiBAQCAtNjQsNiArNjQsNyBAQCBzdGF0aWMgdm9pZCBh aWUyX2pvYl9yZWxlYXNlKHN0cnVjdCBrcmVmICpyZWYpCj4+PiDCoMKgwqDCoMKgIHN0cnVjdCBh bWR4ZG5hX3NjaGVkX2pvYiAqam9iOwo+Pj4gwqAgwqDCoMKgwqDCoCBqb2IgPSBjb250YWluZXJf b2YocmVmLCBzdHJ1Y3QgYW1keGRuYV9zY2hlZF9qb2IsIHJlZmNudCk7Cj4+PiArCj4+PiDCoMKg wqDCoMKgIGFtZHhkbmFfc2NoZWRfam9iX2NsZWFudXAoam9iKTsKPj4+IMKgwqDCoMKgwqAgYXRv bWljNjRfaW5jKCZqb2ItPmh3Y3R4LT5qb2JfZnJlZV9jbnQpOwo+Pj4gwqDCoMKgwqDCoCB3YWtl X3VwKCZqb2ItPmh3Y3R4LT5wcml2LT5qb2JfZnJlZV93cSk7Cj4+PiBAQCAtMTk1LDcgKzE5Niw4 IEBAIGFpZTJfc2NoZWRfbm90aWZ5KHN0cnVjdCBhbWR4ZG5hX3NjaGVkX2pvYiAqam9iKQo+Pj4g wqAgewo+Pj4gwqDCoMKgwqDCoCBzdHJ1Y3QgZG1hX2ZlbmNlICpmZW5jZSA9IGpvYi0+ZmVuY2U7 Cj4+PiDCoCAtwqDCoMKgIHRyYWNlX3hkbmFfam9iKCZqb2ItPmJhc2UsIGpvYi0+aHdjdHgtPm5h bWUsICJzaWduYWxlZCBmZW5jZSIsIAo+Pj4gam9iLT5zZXEpOwo+Pj4gK8KgwqDCoCB0cmFjZV94 ZG5hX2pvYigmam9iLT5iYXNlLCBqb2ItPmh3Y3R4LT5uYW1lLCAic2lnbmFsaW5nIGZlbmNlIiwK Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGpvYi0+c2VxLCBqb2ItPmRydl9jbWQg PyBqb2ItPmRydl9jbWQtPm9wY29kZSA6IAo+Pj4gREVGQVVMVF9JTyk7Cj4+PiDCoCDCoMKgwqDC oMKgIGFpZTJfdGRyX3NpZ25hbChqb2ItPmh3Y3R4LT5jbGllbnQtPnhkbmEpOwo+Pj4gwqDCoMKg wqDCoCBqb2ItPmh3Y3R4LT5wcml2LT5jb21wbGV0ZWQrKzsKPj4+IEBAIC0zNjYsNiArMzY4LDkg QEAgYWllMl9zY2hlZF9qb2JfcnVuKHN0cnVjdCBkcm1fc2NoZWRfam9iICpzY2hlZF9qb2IpCj4+ PiDCoMKgwqDCoMKgIHN0cnVjdCBkbWFfZmVuY2UgKmZlbmNlOwo+Pj4gwqDCoMKgwqDCoCBpbnQg cmV0Owo+Pj4gwqAgK8KgwqDCoCB0cmFjZV94ZG5hX2pvYihzY2hlZF9qb2IsIGh3Y3R4LT5uYW1l LCAiam9iIHJ1biIsCj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBqb2ItPnNlcSwg am9iLT5kcnZfY21kID8gam9iLT5kcnZfY21kLT5vcGNvZGUgOiAKPj4+IERFRkFVTFRfSU8pOwo+ Pj4gKwo+Pj4gwqDCoMKgwqDCoCBpZiAoIWh3Y3R4LT5wcml2LT5tYm94X2NoYW5uKQo+Pj4gwqDC oMKgwqDCoMKgwqDCoMKgIHJldHVybiBOVUxMOwo+Pj4gwqAgQEAgLTQwOSw3ICs0MTQsOCBAQCBh aWUyX3NjaGVkX2pvYl9ydW4oc3RydWN0IGRybV9zY2hlZF9qb2IgCj4+PiAqc2NoZWRfam9iKQo+ Pj4gwqDCoMKgwqDCoCB9IGVsc2Ugewo+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgIGFpZTJfdGRyX3Np Z25hbChod2N0eC0+Y2xpZW50LT54ZG5hKTsKPj4+IMKgwqDCoMKgwqAgfQo+Pj4gLcKgwqDCoCB0 cmFjZV94ZG5hX2pvYihzY2hlZF9qb2IsIGh3Y3R4LT5uYW1lLCAic2VudCB0byBkZXZpY2UiLCBq b2ItPnNlcSk7Cj4+PiArwqDCoMKgIHRyYWNlX3hkbmFfam9iKHNjaGVkX2pvYiwgaHdjdHgtPm5h bWUsICJzZW50IHRvIGRldmljZSIsCj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBq b2ItPnNlcSwgam9iLT5kcnZfY21kID8gam9iLT5kcnZfY21kLT5vcGNvZGUgOiAKPj4+IERFRkFV TFRfSU8pOwo+Pj4gwqAgwqDCoMKgwqDCoCByZXR1cm4gZmVuY2U7Cj4+PiDCoCB9Cj4+PiBAQCAt NDE5LDcgKzQyNSw4IEBAIHN0YXRpYyB2b2lkIGFpZTJfc2NoZWRfam9iX2ZyZWUoc3RydWN0IAo+ Pj4gZHJtX3NjaGVkX2pvYiAqc2NoZWRfam9iKQo+Pj4gwqDCoMKgwqDCoCBzdHJ1Y3QgYW1keGRu YV9zY2hlZF9qb2IgKmpvYiA9IGRybV9qb2JfdG9feGRuYV9qb2Ioc2NoZWRfam9iKTsKPj4+IMKg wqDCoMKgwqAgc3RydWN0IGFtZHhkbmFfaHdjdHggKmh3Y3R4ID0gam9iLT5od2N0eDsKPj4+IMKg IC3CoMKgwqAgdHJhY2VfeGRuYV9qb2Ioc2NoZWRfam9iLCBod2N0eC0+bmFtZSwgImpvYiBmcmVl Iiwgam9iLT5zZXEpOwo+Pj4gK8KgwqDCoCB0cmFjZV94ZG5hX2pvYihzY2hlZF9qb2IsIGh3Y3R4 LT5uYW1lLCAiam9iIGZyZWUiLAo+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgam9i LT5zZXEsIGpvYi0+ZHJ2X2NtZCA/IGpvYi0+ZHJ2X2NtZC0+b3Bjb2RlIDogCj4+PiBERUZBVUxU X0lPKTsKPj4+IMKgwqDCoMKgwqAgaWYgKCFqb2ItPmpvYl9kb25lKQo+Pj4gwqDCoMKgwqDCoMKg wqDCoMKgIHVwKCZod2N0eC0+cHJpdi0+am9iX3NlbSk7Cj4+PiDCoCBAQCAtNDM3LDcgKzQ0NCw2 IEBAIGFpZTJfc2NoZWRfam9iX3RpbWVkb3V0KHN0cnVjdCBkcm1fc2NoZWRfam9iIAo+Pj4gKnNj aGVkX2pvYikKPj4+IMKgwqDCoMKgwqAgaW50IHJldDsKPj4+IMKgIMKgwqDCoMKgwqAgeGRuYSA9 IGh3Y3R4LT5jbGllbnQtPnhkbmE7Cj4+PiAtwqDCoMKgIHRyYWNlX3hkbmFfam9iKHNjaGVkX2pv YiwgaHdjdHgtPm5hbWUsICJqb2IgdGltZWRvdXQiLCBqb2ItPnNlcSk7Cj4+PiDCoCDCoMKgwqDC oMKgIGd1YXJkKG11dGV4KSgmeGRuYS0+ZGV2X2xvY2spOwo+Pj4gwqAgZGlmZiAtLWdpdCBhL2Ry aXZlcnMvYWNjZWwvYW1keGRuYS9hbWR4ZG5hX2N0eC5jIGIvZHJpdmVycy9hY2NlbC8gCj4+PiBh bWR4ZG5hL2FtZHhkbmFfY3R4LmMKPj4+IGluZGV4IGZmNmMzZThlNWExNS4uMmMyYzIxOTkyYzg3 IDEwMDY0NAo+Pj4gLS0tIGEvZHJpdmVycy9hY2NlbC9hbWR4ZG5hL2FtZHhkbmFfY3R4LmMKPj4+ ICsrKyBiL2RyaXZlcnMvYWNjZWwvYW1keGRuYS9hbWR4ZG5hX2N0eC5jCj4+PiBAQCAtNTE0LDcg KzUxNCw2IEBAIGludCBhbWR4ZG5hX2NtZF9zdWJtaXQoc3RydWN0IGFtZHhkbmFfY2xpZW50IAo+ Pj4gKmNsaWVudCwKPj4+IMKgwqDCoMKgwqDCoMKgwqDCoCBnb3RvIHVubG9ja19zcmN1Owo+Pj4g wqDCoMKgwqDCoCB9Cj4+PiDCoCAtCj4+PiDCoMKgwqDCoMKgIGpvYi0+aHdjdHggPSBod2N0eDsK Pj4+IMKgwqDCoMKgwqAgam9iLT5tbSA9IGN1cnJlbnQtPm1tOwo+Pj4gwqAgQEAgLTYxMiw2ICs2 MTEsOCBAQCBpbnQgYW1keGRuYV9kcm1fc3VibWl0X2NtZF9pb2N0bChzdHJ1Y3QgCj4+PiBkcm1f ZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsIHN0cnVjdCBkcm1fCj4+PiDCoMKgwqDCoMKgIGlmIChh cmdzLT5leHQgfHwgYXJncy0+ZXh0X2ZsYWdzKQo+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgIHJldHVy biAtRUlOVkFMOwo+Pj4gwqAgK8KgwqDCoCB0cmFjZV9hbWR4ZG5hX2RlYnVnX3BvaW50KGN1cnJl bnQtPmNvbW0sIGFyZ3MtPnR5cGUsICJqb2IgCj4+PiByZWNlaXZlZCIpOwo+Pj4gKwo+Pj4gwqDC oMKgwqDCoCBzd2l0Y2ggKGFyZ3MtPnR5cGUpIHsKPj4+IMKgwqDCoMKgwqAgY2FzZSBBTURYRE5B X0NNRF9TVUJNSVRfRVhFQ19CVUY6Cj4+PiDCoMKgwqDCoMKgwqDCoMKgwqAgcmV0dXJuIGFtZHhk bmFfZHJtX3N1Ym1pdF9leGVjYnVmKGNsaWVudCwgYXJncyk7Cj4+PiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9hY2NlbC9hbWR4ZG5hL2FtZHhkbmFfY3R4LmggYi9kcml2ZXJzL2FjY2VsLyAKPj4+IGFt ZHhkbmEvYW1keGRuYV9jdHguaAo+Pj4gaW5kZXggYTg1NTdkN2U4OTIzLi4zNTU3OTg2ODczNzYg MTAwNjQ0Cj4+PiAtLS0gYS9kcml2ZXJzL2FjY2VsL2FtZHhkbmEvYW1keGRuYV9jdHguaAo+Pj4g KysrIGIvZHJpdmVycy9hY2NlbC9hbWR4ZG5hL2FtZHhkbmFfY3R4LmgKPj4+IEBAIC0xMTksNiAr MTE5LDcgQEAgc3RydWN0IGFtZHhkbmFfaHdjdHggewo+Pj4gwqDCoMKgwqDCoCBjb250YWluZXJf b2Yoaiwgc3RydWN0IGFtZHhkbmFfc2NoZWRfam9iLCBiYXNlKQo+Pj4gwqAgwqAgZW51bSBhbWR4 ZG5hX2pvYl9vcGNvZGUgewo+Pj4gK8KgwqDCoCBERUZBVUxUX0lPLAo+Pgo+PiBEbyB5b3UgcmVh bGx5IHdhbnQgdGhpcyBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSBsaXN0P8KgIERvZXNuJ3QgdGhh dCAKPj4gYnJlYWsgdXNlcyBvZiBhbWR4ZG5hX2Rydl9jbWQgdGhhdCBoYXMgdGhlIHByZXZpb3Vz IGluZGV4aW5nPwo+IAo+ICpfREVCVUdfQk8gaXMgZHJpdmVyIGludGVybmFsIHVzZSBvbmx5LiBV c2luZyAwIGhlcmUgdG8gYWxpZ24gd2l0aCBvdXIgCj4gY3VycmVudCB0cmFjZSBzY3JpcHRzLgo+ IAo+IExpemhpCj4gCj4+Cj4+PiDCoMKgwqDCoMKgIFNZTkNfREVCVUdfQk8sCj4+PiDCoMKgwqDC oMKgIEFUVEFDSF9ERUJVR19CTywKPj4+IMKgwqDCoMKgwqAgREVUQUNIX0RFQlVHX0JPLAo+Pj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvYWNjZWwvYW1keGRuYS9hbWR4ZG5hX21haWxib3guYyBiL2Ry aXZlcnMvYWNjZWwvIAo+Pj4gYW1keGRuYS9hbWR4ZG5hX21haWxib3guYwo+Pj4gaW5kZXggMzc3 NzFiZGIyNGExLi5jYzg4NjVmNGU3OWMgMTAwNjQ0Cj4+PiAtLS0gYS9kcml2ZXJzL2FjY2VsL2Ft ZHhkbmEvYW1keGRuYV9tYWlsYm94LmMKPj4+ICsrKyBiL2RyaXZlcnMvYWNjZWwvYW1keGRuYS9h bWR4ZG5hX21haWxib3guYwo+Pj4gQEAgLTM2MSw2ICszNjEsNyBAQCBzdGF0aWMgdm9pZCBtYWls Ym94X3J4X3dvcmtlcihzdHJ1Y3Qgd29ya19zdHJ1Y3QgCj4+PiAqcnhfd29yaykKPj4+IMKgwqDC oMKgwqAgaW50IHJldDsKPj4+IMKgIMKgwqDCoMKgwqAgbWJfY2hhbm4gPSBjb250YWluZXJfb2Yo cnhfd29yaywgc3RydWN0IG1haWxib3hfY2hhbm5lbCwgCj4+PiByeF93b3JrKTsKPj4+ICvCoMKg wqAgdHJhY2VfbWJveF9yeF93b3JrZXIoTUFJTEJPWF9OQU1FLCBtYl9jaGFubi0+bXNpeF9pcnEp Owo+Pj4gwqAgwqDCoMKgwqDCoCBpZiAoUkVBRF9PTkNFKG1iX2NoYW5uLT5iYWRfc3RhdGUpKSB7 Cj4+PiDCoMKgwqDCoMKgwqDCoMKgwqAgTUJfRVJSKG1iX2NoYW5uLCAiQ2hhbm5lbCBpbiBiYWQg c3RhdGUsIHdvcmsgYWJvcnRlZCIpOwo+Pj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvdHJhY2UvZXZl bnRzL2FtZHhkbmEuaCBiL2luY2x1ZGUvdHJhY2UvZXZlbnRzLyAKPj4+IGFtZHhkbmEuaAo+Pj4g aW5kZXggYzZjYjJkYTdiNzA2Li43MWRhMjQyNjdlNTIgMTAwNjQ0Cj4+PiAtLS0gYS9pbmNsdWRl L3RyYWNlL2V2ZW50cy9hbWR4ZG5hLmgKPj4+ICsrKyBiL2luY2x1ZGUvdHJhY2UvZXZlbnRzL2Ft ZHhkbmEuaAo+Pj4gQEAgLTMwLDI2ICszMCwzMCBAQCBUUkFDRV9FVkVOVChhbWR4ZG5hX2RlYnVn X3BvaW50LAo+Pj4gwqAgKTsKPj4+IMKgIMKgIFRSQUNFX0VWRU5UKHhkbmFfam9iLAo+Pj4gLcKg wqDCoMKgwqDCoMKgIFRQX1BST1RPKHN0cnVjdCBkcm1fc2NoZWRfam9iICpzY2hlZF9qb2IsIGNv bnN0IGNoYXIgKm5hbWUsIAo+Pj4gY29uc3QgY2hhciAqc3RyLCB1NjQgc2VxKSwKPj4+ICvCoMKg wqDCoMKgwqDCoCBUUF9QUk9UTyhzdHJ1Y3QgZHJtX3NjaGVkX2pvYiAqc2NoZWRfam9iLCBjb25z dCBjaGFyICpuYW1lLAo+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBjb25zdCBjaGFyICpz dHIsIHU2NCBzZXEsIHUzMiBvcCksCj4+PiDCoCAtwqDCoMKgwqDCoMKgwqAgVFBfQVJHUyhzY2hl ZF9qb2IsIG5hbWUsIHN0ciwgc2VxKSwKPj4+ICvCoMKgwqDCoMKgwqDCoCBUUF9BUkdTKHNjaGVk X2pvYiwgbmFtZSwgc3RyLCBzZXEsIG9wKSwKPj4+IMKgIMKgwqDCoMKgwqDCoMKgwqDCoCBUUF9T VFJVQ1RfX2VudHJ5KF9fc3RyaW5nKG5hbWUsIG5hbWUpCj4+PiDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgX19zdHJpbmcoc3RyLCBzdHIpCj4+PiDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgX19maWVsZCh1NjQsIGZlbmNlX2NvbnRleHQpCj4+PiDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgX19maWVsZCh1NjQsIGZlbmNlX3NlcW5v KQo+Pj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIF9fZmllbGQodTY0LCBzZXEp KSwKPj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBfX2ZpZWxkKHU2NCwgc2Vx KQo+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIF9fZmllbGQodTMyLCBvcCkp LAo+Pj4gwqAgwqDCoMKgwqDCoMKgwqDCoMKgIFRQX2Zhc3RfYXNzaWduKF9fYXNzaWduX3N0cihu YW1lKTsKPj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIF9fYXNzaWduX3N0cihz dHIpOwo+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgX19lbnRyeS0+ZmVuY2Vf Y29udGV4dCA9IHNjaGVkX2pvYi0+c19mZW5jZS0gCj4+PiA+ZmluaXNoZWQuY29udGV4dDsKPj4+ IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIF9fZW50cnktPmZlbmNlX3NlcW5vID0g c2NoZWRfam9iLT5zX2ZlbmNlLSAKPj4+ID5maW5pc2hlZC5zZXFubzsKPj4+IC3CoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIF9fZW50cnktPnNlcSA9IHNlcTspLAo+Pj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgX19lbnRyeS0+c2VxID0gc2VxOwo+Pj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgX19lbnRyeS0+b3AgPSBvcDspLAo+Pj4gwqAgLcKgwqDCoMKgwqDCoMKg IFRQX3ByaW50aygiZmVuY2U9KGNvbnRleHQ6JWxsdSwgc2Vxbm86JWxsZCksICVzIHNlcSM6JWxs ZCAKPj4+ICVzIiwKPj4+ICvCoMKgwqDCoMKgwqDCoCBUUF9wcmludGsoImZlbmNlPShjb250ZXh0 OiVsbHUsIHNlcW5vOiVsbHUpLCAlcyBzZXEjOiVsbHUgCj4+PiAlcywgb3A9JXUiLAo+Pj4gwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIF9fZW50cnktPmZlbmNlX2NvbnRleHQsIF9fZW50 cnktPmZlbmNlX3NlcW5vLAo+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIF9fZ2V0 X3N0cihuYW1lKSwgX19lbnRyeS0+c2VxLAo+Pj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IF9fZ2V0X3N0cihzdHIpKQo+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIF9fZ2V0X3N0 cihzdHIpLAo+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIF9fZW50cnktPm9wKQo+Pj4g wqAgKTsKPj4+IMKgIMKgIERFQ0xBUkVfRVZFTlRfQ0xBU1MoeGRuYV9tYm94X21zZywKPj4+IEBA IC04MSwxOCArODUsMjggQEAgREVGSU5FX0VWRU5UKHhkbmFfbWJveF9tc2csIG1ib3hfc2V0X2hl YWQsCj4+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoCBUUF9BUkdTKG5hbWUsIGNoYW5uX2lkLCBvcGNv ZGUsIGlkKQo+Pj4gwqAgKTsKPj4+IMKgIC1UUkFDRV9FVkVOVChtYm94X2lycV9oYW5kbGUsCj4+ PiAtwqDCoMKgwqDCoMKgwqAgVFBfUFJPVE8oY2hhciAqbmFtZSwgaW50IGlycSksCj4+PiArREVD TEFSRV9FVkVOVF9DTEFTUyh4ZG5hX21ib3hfbmFtZV9pZCwKPj4+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIFRQX1BST1RPKGNoYXIgKm5hbWUsIGludCBpcnEpLAo+Pj4gwqAgLcKgwqDCoMKgwqDC oMKgIFRQX0FSR1MobmFtZSwgaXJxKSwKPj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIFRQX0FS R1MobmFtZSwgaXJxKSwKPj4+IMKgIC3CoMKgwqDCoMKgwqDCoCBUUF9TVFJVQ1RfX2VudHJ5KF9f c3RyaW5nKG5hbWUsIG5hbWUpCj4+PiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg X19maWVsZChpbnQsIGlycSkpLAo+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgVFBfU1RSVUNU X19lbnRyeShfX3N0cmluZyhuYW1lLCBuYW1lKQo+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgX19maWVsZChpbnQsIGlycSkpLAo+Pj4gwqAgLcKgwqDCoMKgwqDC oMKgIFRQX2Zhc3RfYXNzaWduKF9fYXNzaWduX3N0cihuYW1lKTsKPj4+IC3CoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIF9fZW50cnktPmlycSA9IGlycTspLAo+Pj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqAgVFBfZmFzdF9hc3NpZ24oX19hc3NpZ25fc3RyKG5hbWUpOwo+Pj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBfX2VudHJ5LT5pcnEgPSBpcnE7KSwKPj4+ICsK Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIFRQX3ByaW50aygiJXMuJWQiLCBfX2dldF9zdHIo bmFtZSksIF9fZW50cnktPmlycSkKPj4+ICspOwo+Pj4gKwo+Pj4gK0RFRklORV9FVkVOVCh4ZG5h X21ib3hfbmFtZV9pZCwgbWJveF9pcnFfaGFuZGxlLAo+Pj4gK8KgwqDCoMKgwqDCoMKgwqAgVFBf UFJPVE8oY2hhciAqbmFtZSwgaW50IGlycSksCj4+PiArwqDCoMKgwqDCoMKgwqDCoCBUUF9BUkdT KG5hbWUsIGlycSkKPj4+ICspOwo+Pj4gwqAgLcKgwqDCoMKgwqDCoMKgIFRQX3ByaW50aygiJXMu JWQiLCBfX2dldF9zdHIobmFtZSksIF9fZW50cnktPmlycSkKPj4+ICtERUZJTkVfRVZFTlQoeGRu YV9tYm94X25hbWVfaWQsIG1ib3hfcnhfd29ya2VyLAo+Pj4gK8KgwqDCoMKgwqDCoMKgwqAgVFBf UFJPVE8oY2hhciAqbmFtZSwgaW50IGlycSksCj4+PiArwqDCoMKgwqDCoMKgwqDCoCBUUF9BUkdT KG5hbWUsIGlycSkKPj4+IMKgICk7Cj4+PiDCoCDCoCAjZW5kaWYgLyogIWRlZmluZWQoX1RSQUNF X0FNRFhETkFfSCkgfHwgCj4+PiBkZWZpbmVkKFRSQUNFX0hFQURFUl9NVUxUSV9SRUFEKSAqLwo+ PgoK