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 6391EF94CBE for ; Wed, 22 Apr 2026 15:38:28 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 78FC310EA4F; Wed, 22 Apr 2026 15:38:27 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (1024-bit key; unprotected) header.d=amd.com header.i=@amd.com header.b="kV9FPQEr"; dkim-atps=neutral Received: from SJ2PR03CU001.outbound.protection.outlook.com (mail-westusazon11012021.outbound.protection.outlook.com [52.101.43.21]) by gabe.freedesktop.org (Postfix) with ESMTPS id 5C9AB10EA4F for ; Wed, 22 Apr 2026 15:38:26 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=lAQoDVrv6EkY+Ah0sn3G0CcOsBRNppMxtDHUGxiPQbqL7ZxZwNEJLb0VDA9flJALVjZYO1bcsXM4JnDiCWEw6Y9rGHcaykDS9bEM7Kkw2txes7vhI9UBrDUyc5xFzKMysbdWTiasju2nVT1bwIfU7g6qFMq+BkmLVjE+uQuKJtieys5zXPlMbwZhOfW4f3rcGlXc9cBa+wlS7YpLdpMyY9VI3pcFKkD8JMpD3FVhr/mw3/0hMHUSVUp8XngA6vOrs4gceTMxlBcJ/JRY6nnNT8VtJsK/VhG5/TTn48KugDH4UyQc+5Wsplk7lRcQJYWHpLe2nv/N2kS3VnNxcdXaEQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=9ESkB3fnWp5MBQDEQl+a8WDYjYYe5CozTNi3WB0E8Xo=; b=x3vjIxOIp4MBxoQmy4SYVP2e7l8oIkDoe/kRIBEKv8QWselPsQm0RFu7Y4QhzUxr0XNyYqd5nz2Gjj5O3TVwIfIZo2PyvihPGwShDowTBPdx9hMFIzpbdBBmaW9/bpIry2CJp9IKGO+UtyKxxR9tZSoTgO4wtRL1V+gyE4/TRztzoMGxIAr7fvPU2lwXP9dpna7hD383grOk6FdpJGIPQc/DjH9+slQaML9FwDA4rbUL/kz12z3LAf7LLQEoWrKEGZsLZwNNTuNqdYZ4jkGHvw30hQEF55o2fajy7g58jZPnzLnpxbHbAgMgSW/2i8aegG1gmnsrXLeoj6JBFlHvag== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=kernel.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=9ESkB3fnWp5MBQDEQl+a8WDYjYYe5CozTNi3WB0E8Xo=; b=kV9FPQEr4EOG5KiKUShHa+gNlBM6P5w/Z9MVly1JuMfNsHN/PRRa3TjDTql23WCvCfT75XZR/l3jh6Fzs6H3LiVDVR+5q+rxUU0FkkE+FhERr9qJ9k7TJ6dSyA7v+4c6JMmo9ddOH1vQfQ0EPX8xT/rnjj0J7PCkJYCkzrT6Bhw= Received: from BN9PR03CA0064.namprd03.prod.outlook.com (2603:10b6:408:fc::9) by SJ0PR12MB7475.namprd12.prod.outlook.com (2603:10b6:a03:48d::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9846.16; Wed, 22 Apr 2026 15:38:20 +0000 Received: from BL6PEPF0001AB52.namprd02.prod.outlook.com (2603:10b6:408:fc:cafe::93) by BN9PR03CA0064.outlook.office365.com (2603:10b6:408:fc::9) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9791.48 via Frontend Transport; Wed, 22 Apr 2026 15:38:19 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=satlexmb07.amd.com; pr=C Received: from satlexmb07.amd.com (165.204.84.17) by BL6PEPF0001AB52.mail.protection.outlook.com (10.167.241.4) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9846.18 via Frontend Transport; Wed, 22 Apr 2026 15:38:19 +0000 Received: from satlexmb10.amd.com (10.181.42.219) by satlexmb07.amd.com (10.181.42.216) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Wed, 22 Apr 2026 10:38:19 -0500 Received: from satlexmb07.amd.com (10.181.42.216) by satlexmb10.amd.com (10.181.42.219) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Wed, 22 Apr 2026 10:38:19 -0500 Received: from [172.19.71.207] (10.180.168.240) by satlexmb07.amd.com (10.181.42.216) with Microsoft SMTP Server id 15.2.2562.17 via Frontend Transport; Wed, 22 Apr 2026 10:38:18 -0500 Message-ID: Date: Wed, 22 Apr 2026 08:38:13 -0700 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.11.0 Subject: Re: [PATCH V1] accel/amdxdna: Improve tracing for job lifecycle and mailbox RX worker Content-Language: en-US To: Mario Limonciello , , , , CC: Max Zhen , , References: <20260421181502.1970263-1-lizhi.hou@amd.com> <83846da8-0c8f-4eca-bac9-08efe1c0eb2f@amd.com> <9bca1ecd-ce16-2703-3a0d-6db208c83b06@amd.com> From: Lizhi Hou In-Reply-To: Content-Type: text/plain; charset="utf-8"; format="flowed" Content-Transfer-Encoding: base64 X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BL6PEPF0001AB52:EE_|SJ0PR12MB7475:EE_ X-MS-Office365-Filtering-Correlation-Id: 94d82da5-1925-47c0-8273-08dea0852e20 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|82310400026|36860700016|376014|1800799024|18002099003|22082099003|56012099003; X-Microsoft-Antispam-Message-Info: 1XWd726+zqZr4YAHL+qkKnUDXTwsGV85hLSHnWmrUZsAlwUufdfmLJsXnWh+/9ThFheI/q/YlVVYSm09/nJkmUo4GpxFVRciVEVAictc+/huED5G/MrqV4YNuwGNzclaQX2Bjk1hiWxcqkNaWjX7uQPA4YlAGKxGRJdHeZOjMQ7hcKW9eQ7UDeoJh7YSxjoxgZaJHVc7s//SMPM3tTlxdYzXasXjExl/Gk/ZNxPhxh37D1jQkNJDOzt8yq5OKsKjWEuseNfmeAvnKT232fnj+5eyHevtL65M7Hx/lUCdo8uTWhOK1aUiMkMiXQCT8JlxmRkBt1buFDkkUVX3bdfpMYk24xN8vvpNrngWhrpV+GLxbZnT6nAFeC08J5Nv3lVHfxmTtygO9n7tyj5OpJF6XI85h0uWvtrO/oJKQVP1Xe6dIvu+2NswtRNiviMwSir9Q66u4FFNIbsHnXNCiUhxNDpHkOWNawO8oAKvbe7eaRN4W2oT3phoB9irRIoKMr3Kl7iH90eAqGtEOgKj+MEPgfvoAyGtM4TurXoTlgJhQqtxep1jQoAzV9T7jkCJta8OmtxqejEjm8reFV7RN9y6NfXmmlSGfZVOb8jPfO4t7jbeWIhghh+15/lKdSf1cMb/uXY9g4cZTy/yLtZZ3qmevWO8r4Sum6F/cQXH347Bk8vZZRod+EEEYzfWuuEXLM1GNCdTQ3TKbOAk4VNwovqAGuCbpYxT5tO0TItMzXVQ2uwc5dBR7GhTyY1WACx46qnL+d71o1IhOoLCQ2lbK3OgsA== X-Forefront-Antispam-Report: CIP:165.204.84.17; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:satlexmb07.amd.com; PTR:InfoDomainNonexistent; CAT:NONE; SFS:(13230040)(82310400026)(36860700016)(376014)(1800799024)(18002099003)(22082099003)(56012099003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: KVvPVeB5bDH83tKOtrR8/yb7tiZ3wyzqhBL3mpJJrFMXIlUESoUJjykdFiSrJx8AkuIiu9lILH2WWUVyFz6RAtWkGFFkJU7gOKFHaSocoMMVKfIkeocP2fyn8hTin56oM4vsVUfrdGbG4YG6p5AOzSzP0mh1b3efLacSljF2BAxWxPurXXW/U4l6zCv/eLF+pl43t3BL9GYpCnlO1MU97An0nID4aFqJyRGWZZEmKSmKo8n6W1fNF3qMUHOt0jjYc2HaYawB0FrrMyNEcbKK01JYv7uutH1bBjzoEJMypi3iglTB+D/dS5+TUEAPor/XiTcfp46No1buBo5Czu2fbCbFXUKpb3DjZtGbrbKNFZ0kdyF2IhrFYz6S2iwamPrPF8h9iwKdmVY8vw2pq19lBA3WU6MyQGGtRc44OPS1VHQh3TWpx+42l4WcKooLQuU4 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Apr 2026 15:38:19.7727 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 94d82da5-1925-47c0-8273-08dea0852e20 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d; Ip=[165.204.84.17]; Helo=[satlexmb07.amd.com] X-MS-Exchange-CrossTenant-AuthSource: BL6PEPF0001AB52.namprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR12MB7475 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" QXBwbGllZCB0byBkcm0tbWlzYy1uZXh0CgpPbiA0LzIxLzI2IDEyOjQ1LCBNYXJpbyBMaW1vbmNp ZWxsbyB3cm90ZToKPgo+Cj4gT24gNC8yMS8yNiAxNDozOSwgTGl6aGkgSG91IHdyb3RlOgo+Pgo+ PiBPbiA0LzIxLzI2IDEyOjE4LCBNYXJpbyBMaW1vbmNpZWxsbyB3cm90ZToKPj4+Cj4+Pgo+Pj4g T24gNC8yMS8yNiAxMzoxNSwgTGl6aGkgSG91IHdyb3RlOgo+Pj4+IEZyb206IE1heCBaaGVuIDxt YXguemhlbkBhbWQuY29tPgo+Pj4+Cj4+Pj4gQWRkIG1vcmUgdHJhY2UgY292ZXJhZ2UgdG8gYW1k eGRuYSBqb2IgaGFuZGxpbmcgYW5kIG1haWxib3ggcmVjZWl2ZQo+Pj4+IHByb2Nlc3NpbmcgdG8g bWFrZSBkcml2ZXIgZXhlY3V0aW9uIGVhc2llciB0byBkZWJ1Zy4KPj4+Pgo+Pj4+IEV4dGVuZCB0 aGUgeGRuYV9qb2IgdHJhY2UgZXZlbnQgdG8gcmVjb3JkIHRoZSBjb21tYW5kIG9wY29kZSBpbgo+ Pj4+IGFkZGl0aW9uIHRvIHRoZSBqb2Igc2VxdWVuY2UgbnVtYmVyLiBVc2UgdGhlIGVuaGFuY2Vk IHRyYWNlcG9pbnQgaW4KPj4+PiB0aGUgam9iIHJ1biwgc2VudC10by1kZXZpY2UsIHNpZ25hbGVk LWZlbmNlLCBhbmQgam9iLWZyZWUgcGF0aHMgc28KPj4+PiB0aGF0IHRyYWNlIG91dHB1dCBjYW4g YmUgY29ycmVsYXRlZCB3aXRoIHRoZSBjb21tYW5kIGJlaW5nIGV4ZWN1dGVkLgo+Pj4+Cj4+Pj4g QWxzbyBhZGQgZGVidWctcG9pbnQgdHJhY2luZyB3aGVuIGEgY29tbWFuZCBpcyByZWNlaXZlZCB0 aHJvdWdoIHRoZQo+Pj4+IHN1Ym1pdCBpb2N0bCBwYXRoLCBhbmQgYWRkIGEgdHJhY2UgZXZlbnQg d2hlbiB0aGUgbWFpbGJveCBSWCB3b3JrZXIKPj4+PiBydW5zLgo+Pj4+Cj4+Pj4gVGhlc2UgY2hh bmdlcyBpbXByb3ZlIHZpc2liaWxpdHkgaW50byBqb2IgbGlmZXRpbWUgdHJhbnNpdGlvbnMgYW5k Cj4+Pj4gbWFpbGJveCBhY3Rpdml0eSwgd2hpY2ggaGVscHMgZGVidWcgY29tbWFuZCBmbG93IGFu ZCBzY2hlZHVsZXIgaXNzdWVzLgo+Pj4+Cj4+Pj4gU2lnbmVkLW9mZi1ieTogTWF4IFpoZW4gPG1h eC56aGVuQGFtZC5jb20+Cj4+Pj4gU2lnbmVkLW9mZi1ieTogTGl6aGkgSG91IDxsaXpoaS5ob3VA YW1kLmNvbT4KPiBSZXZpZXdlZC1ieTogTWFyaW8gTGltb25jaWVsbG8gKEFNRCkgPHN1cGVybTFA a2VybmVsLm9yZz4KPj4+PiAtLS0KPj4+PiDCoCBkcml2ZXJzL2FjY2VsL2FtZHhkbmEvYWllMl9j dHguY8KgwqDCoMKgwqDCoMKgIHwgMTQgKysrKysrLS0tCj4+Pj4gwqAgZHJpdmVycy9hY2NlbC9h bWR4ZG5hL2FtZHhkbmFfY3R4LmPCoMKgwqDCoCB8wqAgMyArLQo+Pj4+IMKgIGRyaXZlcnMvYWNj ZWwvYW1keGRuYS9hbWR4ZG5hX2N0eC5owqDCoMKgwqAgfMKgIDEgKwo+Pj4+IMKgIGRyaXZlcnMv YWNjZWwvYW1keGRuYS9hbWR4ZG5hX21haWxib3guYyB8wqAgMSArCj4+Pj4gwqAgaW5jbHVkZS90 cmFjZS9ldmVudHMvYW1keGRuYS5owqDCoMKgwqDCoMKgwqDCoMKgIHwgNDIgCj4+Pj4gKysrKysr KysrKysrKysrKy0tLS0tLS0tLQo+Pj4+IMKgIDUgZmlsZXMgY2hhbmdlZCwgNDIgaW5zZXJ0aW9u cygrKSwgMTkgZGVsZXRpb25zKC0pCj4+Pj4KPj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9hY2Nl bC9hbWR4ZG5hL2FpZTJfY3R4LmMgYi9kcml2ZXJzL2FjY2VsLyAKPj4+PiBhbWR4ZG5hL2FpZTJf Y3R4LmMKPj4+PiBpbmRleCBkMzcxMjNkOTI1YjYuLjNiMGZlYmE0NDhjNCAxMDA2NDQKPj4+PiAt LS0gYS9kcml2ZXJzL2FjY2VsL2FtZHhkbmEvYWllMl9jdHguYwo+Pj4+ICsrKyBiL2RyaXZlcnMv YWNjZWwvYW1keGRuYS9haWUyX2N0eC5jCj4+Pj4gQEAgLTY0LDYgKzY0LDcgQEAgc3RhdGljIHZv aWQgYWllMl9qb2JfcmVsZWFzZShzdHJ1Y3Qga3JlZiAqcmVmKQo+Pj4+IMKgwqDCoMKgwqAgc3Ry dWN0IGFtZHhkbmFfc2NoZWRfam9iICpqb2I7Cj4+Pj4gwqAgwqDCoMKgwqDCoCBqb2IgPSBjb250 YWluZXJfb2YocmVmLCBzdHJ1Y3QgYW1keGRuYV9zY2hlZF9qb2IsIHJlZmNudCk7Cj4+Pj4gKwo+ Pj4+IMKgwqDCoMKgwqAgYW1keGRuYV9zY2hlZF9qb2JfY2xlYW51cChqb2IpOwo+Pj4+IMKgwqDC oMKgwqAgYXRvbWljNjRfaW5jKCZqb2ItPmh3Y3R4LT5qb2JfZnJlZV9jbnQpOwo+Pj4+IMKgwqDC oMKgwqAgd2FrZV91cCgmam9iLT5od2N0eC0+cHJpdi0+am9iX2ZyZWVfd3EpOwo+Pj4+IEBAIC0x OTUsNyArMTk2LDggQEAgYWllMl9zY2hlZF9ub3RpZnkoc3RydWN0IGFtZHhkbmFfc2NoZWRfam9i ICpqb2IpCj4+Pj4gwqAgewo+Pj4+IMKgwqDCoMKgwqAgc3RydWN0IGRtYV9mZW5jZSAqZmVuY2Ug PSBqb2ItPmZlbmNlOwo+Pj4+IMKgIC3CoMKgwqAgdHJhY2VfeGRuYV9qb2IoJmpvYi0+YmFzZSwg am9iLT5od2N0eC0+bmFtZSwgInNpZ25hbGVkIAo+Pj4+IGZlbmNlIiwgam9iLT5zZXEpOwo+Pj4+ ICvCoMKgwqAgdHJhY2VfeGRuYV9qb2IoJmpvYi0+YmFzZSwgam9iLT5od2N0eC0+bmFtZSwgInNp Z25hbGluZyBmZW5jZSIsCj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgam9iLT5z ZXEsIGpvYi0+ZHJ2X2NtZCA/IGpvYi0+ZHJ2X2NtZC0+b3Bjb2RlIDogCj4+Pj4gREVGQVVMVF9J Tyk7Cj4+Pj4gwqAgwqDCoMKgwqDCoCBhaWUyX3Rkcl9zaWduYWwoam9iLT5od2N0eC0+Y2xpZW50 LT54ZG5hKTsKPj4+PiDCoMKgwqDCoMKgIGpvYi0+aHdjdHgtPnByaXYtPmNvbXBsZXRlZCsrOwo+ Pj4+IEBAIC0zNjYsNiArMzY4LDkgQEAgYWllMl9zY2hlZF9qb2JfcnVuKHN0cnVjdCBkcm1fc2No ZWRfam9iIAo+Pj4+ICpzY2hlZF9qb2IpCj4+Pj4gwqDCoMKgwqDCoCBzdHJ1Y3QgZG1hX2ZlbmNl ICpmZW5jZTsKPj4+PiDCoMKgwqDCoMKgIGludCByZXQ7Cj4+Pj4gwqAgK8KgwqDCoCB0cmFjZV94 ZG5hX2pvYihzY2hlZF9qb2IsIGh3Y3R4LT5uYW1lLCAiam9iIHJ1biIsCj4+Pj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgam9iLT5zZXEsIGpvYi0+ZHJ2X2NtZCA/IGpvYi0+ZHJ2X2Nt ZC0+b3Bjb2RlIDogCj4+Pj4gREVGQVVMVF9JTyk7Cj4+Pj4gKwo+Pj4+IMKgwqDCoMKgwqAgaWYg KCFod2N0eC0+cHJpdi0+bWJveF9jaGFubikKPj4+PiDCoMKgwqDCoMKgwqDCoMKgwqAgcmV0dXJu IE5VTEw7Cj4+Pj4gwqAgQEAgLTQwOSw3ICs0MTQsOCBAQCBhaWUyX3NjaGVkX2pvYl9ydW4oc3Ry dWN0IGRybV9zY2hlZF9qb2IgCj4+Pj4gKnNjaGVkX2pvYikKPj4+PiDCoMKgwqDCoMKgIH0gZWxz ZSB7Cj4+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgIGFpZTJfdGRyX3NpZ25hbChod2N0eC0+Y2xpZW50 LT54ZG5hKTsKPj4+PiDCoMKgwqDCoMKgIH0KPj4+PiAtwqDCoMKgIHRyYWNlX3hkbmFfam9iKHNj aGVkX2pvYiwgaHdjdHgtPm5hbWUsICJzZW50IHRvIGRldmljZSIsIAo+Pj4+IGpvYi0+c2VxKTsK Pj4+PiArwqDCoMKgIHRyYWNlX3hkbmFfam9iKHNjaGVkX2pvYiwgaHdjdHgtPm5hbWUsICJzZW50 IHRvIGRldmljZSIsCj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgam9iLT5zZXEs IGpvYi0+ZHJ2X2NtZCA/IGpvYi0+ZHJ2X2NtZC0+b3Bjb2RlIDogCj4+Pj4gREVGQVVMVF9JTyk7 Cj4+Pj4gwqAgwqDCoMKgwqDCoCByZXR1cm4gZmVuY2U7Cj4+Pj4gwqAgfQo+Pj4+IEBAIC00MTks NyArNDI1LDggQEAgc3RhdGljIHZvaWQgYWllMl9zY2hlZF9qb2JfZnJlZShzdHJ1Y3QgCj4+Pj4g ZHJtX3NjaGVkX2pvYiAqc2NoZWRfam9iKQo+Pj4+IMKgwqDCoMKgwqAgc3RydWN0IGFtZHhkbmFf c2NoZWRfam9iICpqb2IgPSBkcm1fam9iX3RvX3hkbmFfam9iKHNjaGVkX2pvYik7Cj4+Pj4gwqDC oMKgwqDCoCBzdHJ1Y3QgYW1keGRuYV9od2N0eCAqaHdjdHggPSBqb2ItPmh3Y3R4Owo+Pj4+IMKg IC3CoMKgwqAgdHJhY2VfeGRuYV9qb2Ioc2NoZWRfam9iLCBod2N0eC0+bmFtZSwgImpvYiBmcmVl Iiwgam9iLT5zZXEpOwo+Pj4+ICvCoMKgwqAgdHJhY2VfeGRuYV9qb2Ioc2NoZWRfam9iLCBod2N0 eC0+bmFtZSwgImpvYiBmcmVlIiwKPj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBq b2ItPnNlcSwgam9iLT5kcnZfY21kID8gam9iLT5kcnZfY21kLT5vcGNvZGUgOiAKPj4+PiBERUZB VUxUX0lPKTsKPj4+PiDCoMKgwqDCoMKgIGlmICgham9iLT5qb2JfZG9uZSkKPj4+PiDCoMKgwqDC oMKgwqDCoMKgwqAgdXAoJmh3Y3R4LT5wcml2LT5qb2Jfc2VtKTsKPj4+PiDCoCBAQCAtNDM3LDcg KzQ0NCw2IEBAIGFpZTJfc2NoZWRfam9iX3RpbWVkb3V0KHN0cnVjdCBkcm1fc2NoZWRfam9iIAo+ Pj4+ICpzY2hlZF9qb2IpCj4+Pj4gwqDCoMKgwqDCoCBpbnQgcmV0Owo+Pj4+IMKgIMKgwqDCoMKg wqAgeGRuYSA9IGh3Y3R4LT5jbGllbnQtPnhkbmE7Cj4+Pj4gLcKgwqDCoCB0cmFjZV94ZG5hX2pv YihzY2hlZF9qb2IsIGh3Y3R4LT5uYW1lLCAiam9iIHRpbWVkb3V0Iiwgam9iLT5zZXEpOwo+Pj4+ IMKgIMKgwqDCoMKgwqAgZ3VhcmQobXV0ZXgpKCZ4ZG5hLT5kZXZfbG9jayk7Cj4+Pj4gwqAgZGlm ZiAtLWdpdCBhL2RyaXZlcnMvYWNjZWwvYW1keGRuYS9hbWR4ZG5hX2N0eC5jIGIvZHJpdmVycy9h Y2NlbC8gCj4+Pj4gYW1keGRuYS9hbWR4ZG5hX2N0eC5jCj4+Pj4gaW5kZXggZmY2YzNlOGU1YTE1 Li4yYzJjMjE5OTJjODcgMTAwNjQ0Cj4+Pj4gLS0tIGEvZHJpdmVycy9hY2NlbC9hbWR4ZG5hL2Ft ZHhkbmFfY3R4LmMKPj4+PiArKysgYi9kcml2ZXJzL2FjY2VsL2FtZHhkbmEvYW1keGRuYV9jdHgu Ywo+Pj4+IEBAIC01MTQsNyArNTE0LDYgQEAgaW50IGFtZHhkbmFfY21kX3N1Ym1pdChzdHJ1Y3Qg YW1keGRuYV9jbGllbnQgCj4+Pj4gKmNsaWVudCwKPj4+PiDCoMKgwqDCoMKgwqDCoMKgwqAgZ290 byB1bmxvY2tfc3JjdTsKPj4+PiDCoMKgwqDCoMKgIH0KPj4+PiDCoCAtCj4+Pj4gwqDCoMKgwqDC oCBqb2ItPmh3Y3R4ID0gaHdjdHg7Cj4+Pj4gwqDCoMKgwqDCoCBqb2ItPm1tID0gY3VycmVudC0+ bW07Cj4+Pj4gwqAgQEAgLTYxMiw2ICs2MTEsOCBAQCBpbnQgYW1keGRuYV9kcm1fc3VibWl0X2Nt ZF9pb2N0bChzdHJ1Y3QgCj4+Pj4gZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLCBzdHJ1Y3Qg ZHJtXwo+Pj4+IMKgwqDCoMKgwqAgaWYgKGFyZ3MtPmV4dCB8fCBhcmdzLT5leHRfZmxhZ3MpCj4+ Pj4gwqDCoMKgwqDCoMKgwqDCoMKgIHJldHVybiAtRUlOVkFMOwo+Pj4+IMKgICvCoMKgwqAgdHJh Y2VfYW1keGRuYV9kZWJ1Z19wb2ludChjdXJyZW50LT5jb21tLCBhcmdzLT50eXBlLCAiam9iIAo+ Pj4+IHJlY2VpdmVkIik7Cj4+Pj4gKwo+Pj4+IMKgwqDCoMKgwqAgc3dpdGNoIChhcmdzLT50eXBl KSB7Cj4+Pj4gwqDCoMKgwqDCoCBjYXNlIEFNRFhETkFfQ01EX1NVQk1JVF9FWEVDX0JVRjoKPj4+ PiDCoMKgwqDCoMKgwqDCoMKgwqAgcmV0dXJuIGFtZHhkbmFfZHJtX3N1Ym1pdF9leGVjYnVmKGNs aWVudCwgYXJncyk7Cj4+Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvYWNjZWwvYW1keGRuYS9hbWR4 ZG5hX2N0eC5oIGIvZHJpdmVycy9hY2NlbC8gCj4+Pj4gYW1keGRuYS9hbWR4ZG5hX2N0eC5oCj4+ Pj4gaW5kZXggYTg1NTdkN2U4OTIzLi4zNTU3OTg2ODczNzYgMTAwNjQ0Cj4+Pj4gLS0tIGEvZHJp dmVycy9hY2NlbC9hbWR4ZG5hL2FtZHhkbmFfY3R4LmgKPj4+PiArKysgYi9kcml2ZXJzL2FjY2Vs L2FtZHhkbmEvYW1keGRuYV9jdHguaAo+Pj4+IEBAIC0xMTksNiArMTE5LDcgQEAgc3RydWN0IGFt ZHhkbmFfaHdjdHggewo+Pj4+IMKgwqDCoMKgwqAgY29udGFpbmVyX29mKGosIHN0cnVjdCBhbWR4 ZG5hX3NjaGVkX2pvYiwgYmFzZSkKPj4+PiDCoCDCoCBlbnVtIGFtZHhkbmFfam9iX29wY29kZSB7 Cj4+Pj4gK8KgwqDCoCBERUZBVUxUX0lPLAo+Pj4KPj4+IERvIHlvdSByZWFsbHkgd2FudCB0aGlz IGF0IHRoZSBiZWdpbm5pbmcgb2YgdGhlIGxpc3Q/wqAgRG9lc24ndCB0aGF0IAo+Pj4gYnJlYWsg dXNlcyBvZiBhbWR4ZG5hX2Rydl9jbWQgdGhhdCBoYXMgdGhlIHByZXZpb3VzIGluZGV4aW5nPwo+ Pgo+PiAqX0RFQlVHX0JPIGlzIGRyaXZlciBpbnRlcm5hbCB1c2Ugb25seS4gVXNpbmcgMCBoZXJl IHRvIGFsaWduIHdpdGggCj4+IG91ciBjdXJyZW50IHRyYWNlIHNjcmlwdHMuCj4+Cj4+IExpemhp Cj4+Cj4+Pgo+Pj4+IMKgwqDCoMKgwqAgU1lOQ19ERUJVR19CTywKPj4+PiDCoMKgwqDCoMKgIEFU VEFDSF9ERUJVR19CTywKPj4+PiDCoMKgwqDCoMKgIERFVEFDSF9ERUJVR19CTywKPj4+PiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9hY2NlbC9hbWR4ZG5hL2FtZHhkbmFfbWFpbGJveC5jIAo+Pj4+IGIv ZHJpdmVycy9hY2NlbC8gYW1keGRuYS9hbWR4ZG5hX21haWxib3guYwo+Pj4+IGluZGV4IDM3Nzcx YmRiMjRhMS4uY2M4ODY1ZjRlNzljIDEwMDY0NAo+Pj4+IC0tLSBhL2RyaXZlcnMvYWNjZWwvYW1k eGRuYS9hbWR4ZG5hX21haWxib3guYwo+Pj4+ICsrKyBiL2RyaXZlcnMvYWNjZWwvYW1keGRuYS9h bWR4ZG5hX21haWxib3guYwo+Pj4+IEBAIC0zNjEsNiArMzYxLDcgQEAgc3RhdGljIHZvaWQgbWFp bGJveF9yeF93b3JrZXIoc3RydWN0IAo+Pj4+IHdvcmtfc3RydWN0ICpyeF93b3JrKQo+Pj4+IMKg wqDCoMKgwqAgaW50IHJldDsKPj4+PiDCoCDCoMKgwqDCoMKgIG1iX2NoYW5uID0gY29udGFpbmVy X29mKHJ4X3dvcmssIHN0cnVjdCBtYWlsYm94X2NoYW5uZWwsIAo+Pj4+IHJ4X3dvcmspOwo+Pj4+ ICvCoMKgwqAgdHJhY2VfbWJveF9yeF93b3JrZXIoTUFJTEJPWF9OQU1FLCBtYl9jaGFubi0+bXNp eF9pcnEpOwo+Pj4+IMKgIMKgwqDCoMKgwqAgaWYgKFJFQURfT05DRShtYl9jaGFubi0+YmFkX3N0 YXRlKSkgewo+Pj4+IMKgwqDCoMKgwqDCoMKgwqDCoCBNQl9FUlIobWJfY2hhbm4sICJDaGFubmVs IGluIGJhZCBzdGF0ZSwgd29yayBhYm9ydGVkIik7Cj4+Pj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUv dHJhY2UvZXZlbnRzL2FtZHhkbmEuaCBiL2luY2x1ZGUvdHJhY2UvZXZlbnRzLyAKPj4+PiBhbWR4 ZG5hLmgKPj4+PiBpbmRleCBjNmNiMmRhN2I3MDYuLjcxZGEyNDI2N2U1MiAxMDA2NDQKPj4+PiAt LS0gYS9pbmNsdWRlL3RyYWNlL2V2ZW50cy9hbWR4ZG5hLmgKPj4+PiArKysgYi9pbmNsdWRlL3Ry YWNlL2V2ZW50cy9hbWR4ZG5hLmgKPj4+PiBAQCAtMzAsMjYgKzMwLDMwIEBAIFRSQUNFX0VWRU5U KGFtZHhkbmFfZGVidWdfcG9pbnQsCj4+Pj4gwqAgKTsKPj4+PiDCoCDCoCBUUkFDRV9FVkVOVCh4 ZG5hX2pvYiwKPj4+PiAtwqDCoMKgwqDCoMKgwqAgVFBfUFJPVE8oc3RydWN0IGRybV9zY2hlZF9q b2IgKnNjaGVkX2pvYiwgY29uc3QgY2hhciAKPj4+PiAqbmFtZSwgY29uc3QgY2hhciAqc3RyLCB1 NjQgc2VxKSwKPj4+PiArwqDCoMKgwqDCoMKgwqAgVFBfUFJPVE8oc3RydWN0IGRybV9zY2hlZF9q b2IgKnNjaGVkX2pvYiwgY29uc3QgY2hhciAqbmFtZSwKPj4+PiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIGNvbnN0IGNoYXIgKnN0ciwgdTY0IHNlcSwgdTMyIG9wKSwKPj4+PiDCoCAtwqDCoMKg wqDCoMKgwqAgVFBfQVJHUyhzY2hlZF9qb2IsIG5hbWUsIHN0ciwgc2VxKSwKPj4+PiArwqDCoMKg wqDCoMKgwqAgVFBfQVJHUyhzY2hlZF9qb2IsIG5hbWUsIHN0ciwgc2VxLCBvcCksCj4+Pj4gwqAg wqDCoMKgwqDCoMKgwqDCoMKgIFRQX1NUUlVDVF9fZW50cnkoX19zdHJpbmcobmFtZSwgbmFtZSkK Pj4+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgX19zdHJpbmcoc3RyLCBz dHIpCj4+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIF9fZmllbGQodTY0 LCBmZW5jZV9jb250ZXh0KQo+Pj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCBfX2ZpZWxkKHU2NCwgZmVuY2Vfc2Vxbm8pCj4+Pj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIF9fZmllbGQodTY0LCBzZXEpKSwKPj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgX19maWVsZCh1NjQsIHNlcSkKPj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgX19maWVsZCh1MzIsIG9wKSksCj4+Pj4gwqAgwqDCoMKgwqDCoMKgwqDCoMKg IFRQX2Zhc3RfYXNzaWduKF9fYXNzaWduX3N0cihuYW1lKTsKPj4+PiDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCBfX2Fzc2lnbl9zdHIoc3RyKTsKPj4+PiDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCBfX2VudHJ5LT5mZW5jZV9jb250ZXh0ID0gc2NoZWRfam9iLT5zX2Zl bmNlLSAKPj4+PiA+ZmluaXNoZWQuY29udGV4dDsKPj4+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCBfX2VudHJ5LT5mZW5jZV9zZXFubyA9IHNjaGVkX2pvYi0+c19mZW5jZS0gCj4+ Pj4gPmZpbmlzaGVkLnNlcW5vOwo+Pj4+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIF9f ZW50cnktPnNlcSA9IHNlcTspLAo+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIF9f ZW50cnktPnNlcSA9IHNlcTsKPj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBfX2Vu dHJ5LT5vcCA9IG9wOyksCj4+Pj4gwqAgLcKgwqDCoMKgwqDCoMKgIFRQX3ByaW50aygiZmVuY2U9 KGNvbnRleHQ6JWxsdSwgc2Vxbm86JWxsZCksICVzIAo+Pj4+IHNlcSM6JWxsZCAlcyIsCj4+Pj4g K8KgwqDCoMKgwqDCoMKgIFRQX3ByaW50aygiZmVuY2U9KGNvbnRleHQ6JWxsdSwgc2Vxbm86JWxs dSksICVzIHNlcSM6JWxsdSAKPj4+PiAlcywgb3A9JXUiLAo+Pj4+IMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCBfX2VudHJ5LT5mZW5jZV9jb250ZXh0LCBfX2VudHJ5LT5mZW5jZV9zZXFu bywKPj4+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgX19nZXRfc3RyKG5hbWUpLCBf X2VudHJ5LT5zZXEsCj4+Pj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIF9fZ2V0X3N0cihz dHIpKQo+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBfX2dldF9zdHIoc3RyKSwKPj4+ PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgX19lbnRyeS0+b3ApCj4+Pj4gwqAgKTsKPj4+ PiDCoCDCoCBERUNMQVJFX0VWRU5UX0NMQVNTKHhkbmFfbWJveF9tc2csCj4+Pj4gQEAgLTgxLDE4 ICs4NSwyOCBAQCBERUZJTkVfRVZFTlQoeGRuYV9tYm94X21zZywgbWJveF9zZXRfaGVhZCwKPj4+ PiDCoMKgwqDCoMKgwqDCoMKgwqDCoCBUUF9BUkdTKG5hbWUsIGNoYW5uX2lkLCBvcGNvZGUsIGlk KQo+Pj4+IMKgICk7Cj4+Pj4gwqAgLVRSQUNFX0VWRU5UKG1ib3hfaXJxX2hhbmRsZSwKPj4+PiAt wqDCoMKgwqDCoMKgwqAgVFBfUFJPVE8oY2hhciAqbmFtZSwgaW50IGlycSksCj4+Pj4gK0RFQ0xB UkVfRVZFTlRfQ0xBU1MoeGRuYV9tYm94X25hbWVfaWQsCj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqAgVFBfUFJPVE8oY2hhciAqbmFtZSwgaW50IGlycSksCj4+Pj4gwqAgLcKgwqDCoMKgwqDC oMKgIFRQX0FSR1MobmFtZSwgaXJxKSwKPj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBUUF9B UkdTKG5hbWUsIGlycSksCj4+Pj4gwqAgLcKgwqDCoMKgwqDCoMKgIFRQX1NUUlVDVF9fZW50cnko X19zdHJpbmcobmFtZSwgbmFtZSkKPj4+PiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgX19maWVsZChpbnQsIGlycSkpLAo+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIFRQX1NU UlVDVF9fZW50cnkoX19zdHJpbmcobmFtZSwgbmFtZSkKPj4+PiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBfX2ZpZWxkKGludCwgaXJxKSksCj4+Pj4gwqAgLcKgwqDC oMKgwqDCoMKgIFRQX2Zhc3RfYXNzaWduKF9fYXNzaWduX3N0cihuYW1lKTsKPj4+PiAtwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBfX2VudHJ5LT5pcnEgPSBpcnE7KSwKPj4+PiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCBUUF9mYXN0X2Fzc2lnbihfX2Fzc2lnbl9zdHIobmFtZSk7Cj4+Pj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBfX2VudHJ5LT5pcnEgPSBpcnE7 KSwKPj4+PiArCj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgVFBfcHJpbnRrKCIlcy4lZCIs IF9fZ2V0X3N0cihuYW1lKSwgX19lbnRyeS0+aXJxKQo+Pj4+ICspOwo+Pj4+ICsKPj4+PiArREVG SU5FX0VWRU5UKHhkbmFfbWJveF9uYW1lX2lkLCBtYm94X2lycV9oYW5kbGUsCj4+Pj4gK8KgwqDC oMKgwqDCoMKgwqAgVFBfUFJPVE8oY2hhciAqbmFtZSwgaW50IGlycSksCj4+Pj4gK8KgwqDCoMKg wqDCoMKgwqAgVFBfQVJHUyhuYW1lLCBpcnEpCj4+Pj4gKyk7Cj4+Pj4gwqAgLcKgwqDCoMKgwqDC oMKgIFRQX3ByaW50aygiJXMuJWQiLCBfX2dldF9zdHIobmFtZSksIF9fZW50cnktPmlycSkKPj4+ PiArREVGSU5FX0VWRU5UKHhkbmFfbWJveF9uYW1lX2lkLCBtYm94X3J4X3dvcmtlciwKPj4+PiAr wqDCoMKgwqDCoMKgwqDCoCBUUF9QUk9UTyhjaGFyICpuYW1lLCBpbnQgaXJxKSwKPj4+PiArwqDC oMKgwqDCoMKgwqDCoCBUUF9BUkdTKG5hbWUsIGlycSkKPj4+PiDCoCApOwo+Pj4+IMKgIMKgICNl bmRpZiAvKiAhZGVmaW5lZChfVFJBQ0VfQU1EWEROQV9IKSB8fCAKPj4+PiBkZWZpbmVkKFRSQUNF X0hFQURFUl9NVUxUSV9SRUFEKSAqLwo+Pj4KPgo=