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 97979F364CA for ; Thu, 9 Apr 2026 23:01:35 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 0072D10E15F; Thu, 9 Apr 2026 23:01:35 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=qualcomm.com header.i=@qualcomm.com header.b="kSQ3PYrT"; dkim=pass (2048-bit key; unprotected) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="Wrl9ah0X"; dkim-atps=neutral Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) by gabe.freedesktop.org (Postfix) with ESMTPS id 2599110E87B for ; Thu, 9 Apr 2026 23:01:33 +0000 (UTC) Received: from pps.filterd (m0279872.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 639KhZIH2624709 for ; Thu, 9 Apr 2026 23:01:32 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= szDQZJpHeLYiXJmahVnEFVzdttSQHWcNOehxAJzYlsA=; b=kSQ3PYrToYXR4Elg ZgKAv0RWyY+mBwFhvaDERk6GTtrsOQ5hF8SYd2zS7wt9VG+crzh2ZJON4g1II51n PMJ0aWMdcZCg2GgX77f+0TK7vfq/JqcihWleXwH4z8hoT1iH0uD6OjkjDswZvLzk ePoBQJ2ZzsQejtbvfuAmKVWMN7WPE1PgXbkkq2EN5w5Sy+PIB+pi55V48z/DXRwb d5/YWesSX0aaSER5qjIn6jLrLrqrQp5inXctoaxiWwce5Raj2Od+o+YogqbMBWQg omlipNadM/nAngeZ0zv22FoQG/KlUaLdPT5GMbTPO/gm/mwTsLfTknCBr4ogsG9C AKJOuA== Received: from mail-dy1-f198.google.com (mail-dy1-f198.google.com [74.125.82.198]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4decmu1xjv-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 09 Apr 2026 23:01:32 +0000 (GMT) Received: by mail-dy1-f198.google.com with SMTP id 5a478bee46e88-2c16233ee11so1890800eec.1 for ; Thu, 09 Apr 2026 16:01:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1775775691; x=1776380491; darn=lists.freedesktop.org; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=szDQZJpHeLYiXJmahVnEFVzdttSQHWcNOehxAJzYlsA=; b=Wrl9ah0XFaSMQRIH2bL5tUxSDMfubviDFOeJQHZo5t/+uNzFMIdMZT7LuNblPUDTIM TmXdUgDE4WyC76hK0e4xQyBv3OuCSMWAo9qk44jULzi9S/LmmyWvCtd/liRv2OdFahwi mqb7LxoHBG7+16Z5+mtg/o/Fw+9rsy09MK5EI1GczSeiyoXG37krj784+6w/+Y/g51pR NNBysXuuEmyMfzFvc14whUV0scq9g8hsPMGEyz0zJ3wfU4F7tCx+xJv/El3gd192QzJr GQ0QeKB0tbFKSjmUVuyP1DEKQuXiZf3Tl9bKB74ohmPTtQ2qMfNrB9qkRlyqMWGQD3kR hRUg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775775691; x=1776380491; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=szDQZJpHeLYiXJmahVnEFVzdttSQHWcNOehxAJzYlsA=; b=jIuCQEHSuxVozpx2wypl4NU/zpoBxxP8iQYuRWgxNqU6lJXouJBM2VT3dJr6Y7jnJV 3dhaBnRnmOfMCUNj/LcoJ0nhr0oqSdghL4Sksgddj5XZe4QcAFZ8UmxXrj/hb0XM/hF/ vNN3bEUqfNTPYj9kM1ZFpwukiO6QfocN88MFgq7RXdIG/bh0IjFY9WzhCVwvqTsQT+KI Wbyfr6tsCBVnqSVxhjyB8u2Nk9SZyx5VUZddPZImrgpuTtcT130bgCXIujAG0oPtFqK/ VNbIBNsDV55rgY9UoPqEcS3tMzKWsj/djRxHcmwPNmEeX1iqXp8Z3VzwwaI32+zkhNZK ZyKA== X-Forwarded-Encrypted: i=1; AJvYcCXH3jPPWVRR9qdsRGHlg39zuSlbA5GlBz3vzLBLxFH/b7ZxXIh8eztc3zOrNHU8HswU2ykS1xI8eIM=@lists.freedesktop.org X-Gm-Message-State: AOJu0YwiEkF/1ONRiEdpcexVPcyKM4FwP8d++uKgSEnkU7AI7c81VcxV ShuMNA1G/mmFJznwaSvdu3zlV/ZSMJJKEhv2z0c/51QgTm68JSZZAsDyFB2X5sUD0gUTcOB0tL7 41b4jQm2UUZUegJEYuMbaVc1ZBPKzITaMZgyfpIKK4c8V9uBcuJmdRd+QxrMkeAqnC3moU5w= X-Gm-Gg: AeBDiesN+jJmrqFfC2EApCLAmdZmeYmbEkRd1iuwdB0zDO6z7Be6mKAfoaAxk/J3K9Y 7rxDRHHSiDmGSURBxJjWZdB4aKVEusf6Ny4PulhDDpeQWjXRdqybkjCFhQQauwyjI2EDCvZFbNO Gub2waW5Tmj1tKOMWe1WqTjt+kcs/7Di7bu6qlIVBLu3ndxRqYMIeoV5BdfkciDINdDfLj0ubpU aaO2AXSkdIv/Uw9h9qdyzj2MYb5Wl8LmXfEympnv5b2O6qz5lg8Abtt+PuFZKe9lhfx6da/ttWu +6/xvM4HxKSargOsbk62EjeEG2jwPCCU5+lZytawjlfJQNvU6nmi9zAU8i1HX61nuDgrdKlGL1i T/Xjv0djcWw0VJaoyxadt+X27qEX8VTCrUAduoXKwOcW+0VZ2UKpOovC5Qj4tPdcEYmpYelqxWV glJlKKqIc= X-Received: by 2002:a05:7300:bc8a:b0:2c6:cdb3:bd67 with SMTP id 5a478bee46e88-2d5897690bbmr529674eec.22.1775775689468; Thu, 09 Apr 2026 16:01:29 -0700 (PDT) X-Received: by 2002:a05:7300:bc8a:b0:2c6:cdb3:bd67 with SMTP id 5a478bee46e88-2d5897690bbmr529629eec.22.1775775688659; Thu, 09 Apr 2026 16:01:28 -0700 (PDT) Received: from [10.226.48.50] (i-global254.qualcomm.com. [199.106.103.254]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-2d5632a2a06sm1668316eec.30.2026.04.09.16.01.26 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 09 Apr 2026 16:01:28 -0700 (PDT) Message-ID: <413e8508-5f29-4a5a-a583-8360f9e48712@oss.qualcomm.com> Date: Thu, 9 Apr 2026 17:01:25 -0600 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v2 1/2] drm/drm_ras: Add clear-error-counter netlink command to drm_ras To: "Tauro, Riana" , intel-xe@lists.freedesktop.org, dri-devel@lists.freedesktop.org, netdev@vger.kernel.org, rodrigo.vivi@intel.com, joonas.lahtinen@linux.intel.com, aravind.iddamsetty@linux.intel.com Cc: anshuman.gupta@intel.com, simona.vetter@ffwll.ch, airlied@gmail.com, pratik.bari@intel.com, joshua.santosh.ranjan@intel.com, ashwin.kumar.kulkarni@intel.com, shubham.kumar@intel.com, ravi.kishore.koppuravuri@intel.com, raag.jadav@intel.com, anvesh.bakwad@intel.com, maarten.lankhorst@linux.intel.com, Jakub Kicinski , Lijo Lazar , Hawking Zhang , "David S. Miller" , Paolo Abeni , Eric Dumazet References: <20260409073318.2909379-4-riana.tauro@intel.com> <20260409073318.2909379-5-riana.tauro@intel.com> Content-Language: en-US From: Zack McKevitt In-Reply-To: Content-Type: text/plain; charset="utf-8"; format="flowed" Content-Transfer-Encoding: base64 X-Proofpoint-GUID: qIdqx9mbT8NSbkhHeW4bq9uDW_fui-0K X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNDA5MDIxMyBTYWx0ZWRfX9dtuEXpTPZrH /AE+7OWF6rCHIIZNt77yfCVMU1r38IqmUB1Q0i2jy14PnU7c3Vhq6KGWC1m0biaISirD3+pYoQZ F1d6YclSi8l4OKMbDGPY1eb1YIXxuEv+BLfdsEq8tIGVd16CWZz6dKBflnw0h3gbs++FiHurzQs 0jsq8A7leCKCP1PTDq7/nwHcoKO9kadt3Okd7sOhSGcydFu1f7Fu1BD3rdgnnXPcUVYgGyKOMCy eeTxFLhIFn3InA9TKtP/x7qcNsXp0g6/0iolHvlCXqjbFvBGTyPIMu4vfH2Lmhv+GwmShDXS5AH tLYw7rGHUKmm9E7S9G4ziP/QgUyN3EFLTnVvokzmkJwwFQ+lVfx2dV3z+6lk0SlECEEK8a0Zbop SV5Y+7ZQj8xhZ+Jb9C+B3i0yxFFS/HYwwsUFMQzQ7nPyfa2BUYXPCs22NS09ryEzutusRBZ/hsO QfOijBU0V5mxjaVdaKg== X-Proofpoint-ORIG-GUID: qIdqx9mbT8NSbkhHeW4bq9uDW_fui-0K X-Authority-Analysis: v=2.4 cv=DslmPm/+ c=1 sm=1 tr=0 ts=69d82fcc cx=c_pps a=wEP8DlPgTf/vqF+yE6f9lg==:117 a=JYp8KDb2vCoCEuGobkYCKw==:17 a=IkcTkHD0fZMA:10 a=A5OVakUREuEA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=yx91gb_oNiZeI1HMLzn7:22 a=VwQbUJbxAAAA:8 a=EUspDBNiAAAA:8 a=zd2uoN0lAAAA:8 a=J1Y8HTJGAAAA:8 a=20KFwNOVAAAA:8 a=1XWaLZrsAAAA:8 a=QyXUC8HyAAAA:8 a=af6eHWY9oS_2PyDk4DsA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=bBxd6f-gb0O0v-kibOvt:22 a=y1Q9-5lHfBjTkpIzbSAN:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-04-09_04,2026-04-09_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 phishscore=0 lowpriorityscore=0 suspectscore=0 adultscore=0 malwarescore=0 clxscore=1011 impostorscore=0 bulkscore=0 priorityscore=1501 spamscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2604010000 definitions=main-2604090213 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" Ck9uIDQvOS8yMDI2IDE6MjEgQU0sIFRhdXJvLCBSaWFuYSB3cm90ZToKPiBIaSBaYWNrCj4gCj4g Q291bGQgeW91IHBsZWFzZSB0YWtlIGEgbG9vayBhdCB0aGlzIHBhdGNoIGlmIGFwcGxpY2FibGUg dG8geW91ciAKPiB1c2VjYXNlLiBQbGVhc2UgbGV0IG1lIGtub3cgaWYgYW55Cj4gY2hhbmdlcyBh cmUgcmVxdWlyZWQKPiAKCiBGcm9tIGEgcXVpY2sgZ2xhbmNlLCBJIHRoaW5rIHRoaXMgbG9va3Mg Z29vZCBmcm9tIG91ciBlbmQuCgpUaGFua3MsClphY2sKCj4gQFJvZHJpZ28gVGhpcyBpcyBhbHJl YWR5IHJldmlld2VkIGJ5IEpha3ViIGFuZCBSYWFnLgo+IElmIHRoZXJlIGFyZSBubyBvcGVucywg Y2FuIHRoaXMgYmUgbWVyZ2VkIHZpYSBkcm1fbWlzYwo+IAo+IFRoYW5rcwo+IFJpYW5hCj4gCj4g T24gNC85LzIwMjYgMTowMyBQTSwgUmlhbmEgVGF1cm8gd3JvdGU6Cj4+IEludHJvZHVjZSBhIG5l dyAnY2xlYXItZXJyb3ItY291bnRlcicgZHJtX3JhcyBjb21tYW5kIHRvIHJlc2V0IHRoZSAKPj4g Y291bnRlcgo+PiB2YWx1ZSBmb3IgYSBzcGVjaWZpYyBlcnJvciBjb3VudGVyIG9mIGEgZ2l2ZW4g bm9kZS4KPj4KPj4gVGhlIGNvbW1hbmQgaXMgYSAnZG8nIG5ldGxpbmsgcmVxdWVzdCB3aXRoICdu b2RlLWlkJyBhbmQgJ2Vycm9yLWlkJwo+PiBhcyBwYXJhbWV0ZXJzIHdpdGggbm8gcmVzcG9uc2Ug cGF5bG9hZC4KPj4KPj4gVXNhZ2U6Cj4+Cj4+ICQgc3VkbyB5bmwgLS1mYW1pbHkgZHJtX3Jhc8Kg IC0tZG8gY2xlYXItZXJyb3ItY291bnRlciAtLWpzb24gXAo+PiAneyJub2RlLWlkIjoxLCAiZXJy b3ItaWQiOjF9Jwo+PiBOb25lCj4+Cj4+IENjOiBKYWt1YiBLaWNpbnNraSA8a3ViYUBrZXJuZWwu b3JnPgo+PiBDYzogWmFjayBNY0tldml0dCA8emFjaGFyeS5tY2tldml0dEBvc3MucXVhbGNvbW0u Y29tPgo+PiBDYzogTGlqbyBMYXphciA8bGlqby5sYXphckBhbWQuY29tPgo+PiBDYzogSGF3a2lu ZyBaaGFuZyA8SGF3a2luZy5aaGFuZ0BhbWQuY29tPgo+PiBDYzogRGF2aWQgUy4gTWlsbGVyIDxk YXZlbUBkYXZlbWxvZnQubmV0Pgo+PiBDYzogUGFvbG8gQWJlbmkgPHBhYmVuaUByZWRoYXQuY29t Pgo+PiBDYzogRXJpYyBEdW1hemV0IDxlZHVtYXpldEBnb29nbGUuY29tPgo+PiBTaWduZWQtb2Zm LWJ5OiBSaWFuYSBUYXVybyA8cmlhbmEudGF1cm9AaW50ZWwuY29tPgo+PiBSZXZpZXdlZC1ieTog SmFrdWIgS2ljaW5za2kgPGt1YmFAa2VybmVsLm9yZz4KPj4gUmV2aWV3ZWQtYnk6IFJhYWcgSmFk YXYgPHJhYWcuamFkYXZAaW50ZWwuY29tPgo+PiAtLS0KPj4gwqAgRG9jdW1lbnRhdGlvbi9ncHUv ZHJtLXJhcy5yc3TCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHzCoCA4ICsrKysrCj4+IMKgIERvY3Vt ZW50YXRpb24vbmV0bGluay9zcGVjcy9kcm1fcmFzLnlhbWwgfCAxMyArKysrKystCj4+IMKgIGRy aXZlcnMvZ3B1L2RybS9kcm1fcmFzLmPCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfCA0 MyArKysrKysrKysrKysrKysrKysrKysrKy0KPj4gwqAgZHJpdmVycy9ncHUvZHJtL2RybV9yYXNf bmwuY8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8IDEzICsrKysrKysKPj4gwqAgZHJpdmVycy9n cHUvZHJtL2RybV9yYXNfbmwuaMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8wqAgMiArKwo+PiDC oCBpbmNsdWRlL2RybS9kcm1fcmFzLmjCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCB8IDExICsrKysrKwo+PiDCoCBpbmNsdWRlL3VhcGkvZHJtL2RybV9yYXMuaMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgfMKgIDEgKwo+PiDCoCA3IGZpbGVzIGNoYW5nZWQsIDg5IGlu c2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCj4+Cj4+IGRpZmYgLS1naXQgYS9Eb2N1bWVudGF0 aW9uL2dwdS9kcm0tcmFzLnJzdCBiL0RvY3VtZW50YXRpb24vZ3B1L2RybS0gCj4+IHJhcy5yc3QK Pj4gaW5kZXggNzBiMjQ2YTc4ZmM4Li40NjM2ZTY4ZjU2NzggMTAwNjQ0Cj4+IC0tLSBhL0RvY3Vt ZW50YXRpb24vZ3B1L2RybS1yYXMucnN0Cj4+ICsrKyBiL0RvY3VtZW50YXRpb24vZ3B1L2RybS1y YXMucnN0Cj4+IEBAIC01Miw2ICs1Miw4IEBAIFVzZXIgc3BhY2UgdG9vbHMgY2FuOgo+PiDCoMKg wqAgYXMgYSBwYXJhbWV0ZXIuCj4+IMKgICogUXVlcnkgc3BlY2lmaWMgZXJyb3IgY291bnRlciB2 YWx1ZXMgd2l0aCB0aGUgYGBnZXQtZXJyb3ItY291bnRlcmBgIAo+PiBjb21tYW5kLCB1c2luZyBi b3RoCj4+IMKgwqDCoCBgYG5vZGUtaWRgYCBhbmQgYGBlcnJvci1pZGBgIGFzIHBhcmFtZXRlcnMu Cj4+ICsqIENsZWFyIHNwZWNpZmljIGVycm9yIGNvdW50ZXJzIHdpdGggdGhlIGBgY2xlYXItZXJy b3ItY291bnRlcmBgIAo+PiBjb21tYW5kLCB1c2luZyBib3RoCj4+ICvCoCBgYG5vZGUtaWRgYCBh bmQgYGBlcnJvci1pZGBgIGFzIHBhcmFtZXRlcnMuCj4+IMKgIFlBTUwtYmFzZWQgSW50ZXJmYWNl Cj4+IMKgIC0tLS0tLS0tLS0tLS0tLS0tLS0tCj4+IEBAIC0xMDEsMyArMTAzLDkgQEAgRXhhbXBs ZTogUXVlcnkgYW4gZXJyb3IgY291bnRlciBmb3IgYSBnaXZlbiBub2RlCj4+IMKgwqDCoMKgwqAg c3VkbyB5bmwgLS1mYW1pbHkgZHJtX3JhcyAtLWRvIGdldC1lcnJvci1jb3VudGVyIC0tanNvbiAn eyJub2RlLSAKPj4gaWQiOjAsICJlcnJvci1pZCI6MX0nCj4+IMKgwqDCoMKgwqAgeydlcnJvci1p ZCc6IDEsICdlcnJvci1uYW1lJzogJ2Vycm9yX25hbWUxJywgJ2Vycm9yLXZhbHVlJzogMH0KPj4g K0V4YW1wbGU6IENsZWFyIGFuIGVycm9yIGNvdW50ZXIgZm9yIGEgZ2l2ZW4gbm9kZQo+PiArCj4+ ICsuLiBjb2RlLWJsb2NrOjogYmFzaAo+PiArCj4+ICvCoMKgwqAgc3VkbyB5bmwgLS1mYW1pbHkg ZHJtX3JhcyAtLWRvIGNsZWFyLWVycm9yLWNvdW50ZXIgLS1qc29uIAo+PiAneyJub2RlLWlkIjow LCAiZXJyb3ItaWQiOjF9Jwo+PiArwqDCoMKgIE5vbmUKPj4gZGlmZiAtLWdpdCBhL0RvY3VtZW50 YXRpb24vbmV0bGluay9zcGVjcy9kcm1fcmFzLnlhbWwgYi9Eb2N1bWVudGF0aW9uLyAKPj4gbmV0 bGluay9zcGVjcy9kcm1fcmFzLnlhbWwKPj4gaW5kZXggNzlhZjI1ZGFjM2M1Li5lMTEzMDU2Zjhj MDEgMTAwNjQ0Cj4+IC0tLSBhL0RvY3VtZW50YXRpb24vbmV0bGluay9zcGVjcy9kcm1fcmFzLnlh bWwKPj4gKysrIGIvRG9jdW1lbnRhdGlvbi9uZXRsaW5rL3NwZWNzL2RybV9yYXMueWFtbAo+PiBA QCAtOTksNyArOTksNyBAQCBvcGVyYXRpb25zOgo+PiDCoMKgwqDCoMKgwqDCoCBmbGFnczogW2Fk bWluLXBlcm1dCj4+IMKgwqDCoMKgwqDCoMKgIGRvOgo+PiDCoMKgwqDCoMKgwqDCoMKgwqAgcmVx dWVzdDoKPj4gLcKgwqDCoMKgwqDCoMKgwqDCoCBhdHRyaWJ1dGVzOgo+PiArwqDCoMKgwqDCoMKg wqDCoMKgIGF0dHJpYnV0ZXM6ICZpZC1hdHRycwo+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCAtIG5vZGUtaWQKPj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgLSBlcnJvci1pZAo+PiDC oMKgwqDCoMKgwqDCoMKgwqAgcmVwbHk6Cj4+IEBAIC0xMTMsMyArMTEzLDE0IEBAIG9wZXJhdGlv bnM6Cj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIC0gbm9kZS1pZAo+PiDCoMKgwqDCoMKg wqDCoMKgwqAgcmVwbHk6Cj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgYXR0cmlidXRlczogKmVy cm9yaW5mbwo+PiArwqDCoMKgIC0KPj4gK8KgwqDCoMKgwqAgbmFtZTogY2xlYXItZXJyb3ItY291 bnRlcgo+PiArwqDCoMKgwqDCoCBkb2M6ID4tCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoCBDbGVh ciBlcnJvciBjb3VudGVyIGZvciBhIGdpdmVuIG5vZGUuCj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oCBUaGUgcmVxdWVzdCBpbmNsdWRlcyB0aGUgZXJyb3ItaWQgYW5kIG5vZGUtaWQgb2YgdGhlCj4+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoCBjb3VudGVyIHRvIGJlIGNsZWFyZWQuCj4+ICvCoMKgwqDC oMKgIGF0dHJpYnV0ZS1zZXQ6IGVycm9yLWNvdW50ZXItYXR0cnMKPj4gK8KgwqDCoMKgwqAgZmxh Z3M6IFthZG1pbi1wZXJtXQo+PiArwqDCoMKgwqDCoCBkbzoKPj4gK8KgwqDCoMKgwqDCoMKgIHJl cXVlc3Q6Cj4+ICvCoMKgwqDCoMKgwqDCoMKgwqAgYXR0cmlidXRlczogKmlkLWF0dHJzCj4+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX3Jhcy5jIGIvZHJpdmVycy9ncHUvZHJtL2Ry bV9yYXMuYwo+PiBpbmRleCBiMmZhNWFiODZkODcuLmQ2ZWFiMjlhMTM5NCAxMDA2NDQKPj4gLS0t IGEvZHJpdmVycy9ncHUvZHJtL2RybV9yYXMuYwo+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJt X3Jhcy5jCj4+IEBAIC0yNiw3ICsyNiw3IEBACj4+IMKgwqAgKiBlZmZpY2llbnQgbG9va3VwIGJ5 IElELiBOb2RlcyBjYW4gYmUgcmVnaXN0ZXJlZCBvciB1bnJlZ2lzdGVyZWQKPj4gwqDCoCAqIGR5 bmFtaWNhbGx5IGF0IHJ1bnRpbWUuCj4+IMKgwqAgKgo+PiAtICogQSBHZW5lcmljIE5ldGxpbmsg ZmFtaWx5IGBkcm1fcmFzYCBleHBvc2VzIHR3byBtYWluIG9wZXJhdGlvbnMgdG8KPj4gKyAqIEEg R2VuZXJpYyBOZXRsaW5rIGZhbWlseSBgZHJtX3Jhc2AgZXhwb3NlcyB0aGUgYmVsb3cgb3BlcmF0 aW9ucyB0bwo+PiDCoMKgICogdXNlcnNwYWNlOgo+PiDCoMKgICoKPj4gwqDCoCAqIDEuIExJU1Rf Tk9ERVM6IER1bXAgYWxsIGN1cnJlbnRseSByZWdpc3RlcmVkIFJBUyBub2Rlcy4KPj4gQEAgLTM3 LDYgKzM3LDEwIEBACj4+IMKgwqAgKsKgwqDCoCBSZXR1cm5zIGFsbCBjb3VudGVycyBvZiBhIG5v ZGUgaWYgb25seSBOb2RlIElEIGlzIHByb3ZpZGVkIG9yIAo+PiBzcGVjaWZpYwo+PiDCoMKgICrC oMKgwqAgZXJyb3IgY291bnRlcnMuCj4+IMKgwqAgKgo+PiArICogMy4gQ0xFQVJfRVJST1JfQ09V TlRFUjogQ2xlYXIgZXJyb3IgY291bnRlciBvZiBhIGdpdmVuIG5vZGUuCj4+ICsgKsKgwqDCoCBV c2Vyc3BhY2UgbXVzdCBwcm92aWRlIE5vZGUgSUQsIEVycm9yIElELgo+PiArICrCoMKgwqAgQ2xl YXJzIHNwZWNpZmljIGVycm9yIGNvdW50ZXIgb2YgYSBub2RlIGlmIHN1cHBvcnRlZC4KPj4gKyAq Cj4+IMKgwqAgKiBOb2RlIHJlZ2lzdHJhdGlvbjoKPj4gwqDCoCAqCj4+IMKgwqAgKiAtIGRybV9y YXNfbm9kZV9yZWdpc3RlcigpOiBSZWdpc3RlcnMgYSBuZXcgbm9kZSBhbmQgYXNzaWducwo+PiBA QCAtNjYsNiArNzAsOCBAQAo+PiDCoMKgICrCoMKgIG9wZXJhdGlvbiwgZmV0Y2hpbmcgYWxsIGNv dW50ZXJzIGZyb20gYSBzcGVjaWZpYyBub2RlLgo+PiDCoMKgICogLSBkcm1fcmFzX25sX2dldF9l cnJvcl9jb3VudGVyX2RvaXQoKTogSW1wbGVtZW50cyB0aGUgCj4+IEdFVF9FUlJPUl9DT1VOVEVS IGRvaXQKPj4gwqDCoCAqwqDCoCBvcGVyYXRpb24sIGZldGNoaW5nIGEgY291bnRlciB2YWx1ZSBm cm9tIGEgc3BlY2lmaWMgbm9kZS4KPj4gKyAqIC0gZHJtX3Jhc19ubF9jbGVhcl9lcnJvcl9jb3Vu dGVyX2RvaXQoKTogSW1wbGVtZW50cyB0aGUgCj4+IENMRUFSX0VSUk9SX0NPVU5URVIgZG9pdAo+ PiArICrCoMKgIG9wZXJhdGlvbiwgY2xlYXJpbmcgYSBjb3VudGVyIHZhbHVlIGZyb20gYSBzcGVj aWZpYyBub2RlLgo+PiDCoMKgICovCj4+IMKgIHN0YXRpYyBERUZJTkVfWEFSUkFZX0FMTE9DKGRy bV9yYXNfeGEpOwo+PiBAQCAtMzE0LDYgKzMyMCw0MSBAQCBpbnQgZHJtX3Jhc19ubF9nZXRfZXJy b3JfY291bnRlcl9kb2l0KHN0cnVjdCAKPj4gc2tfYnVmZiAqc2tiLAo+PiDCoMKgwqDCoMKgIHJl dHVybiBkb2l0X3JlcGx5X3ZhbHVlKGluZm8sIG5vZGVfaWQsIGVycm9yX2lkKTsKPj4gwqAgfQo+ PiArLyoqCj4+ICsgKiBkcm1fcmFzX25sX2NsZWFyX2Vycm9yX2NvdW50ZXJfZG9pdCgpIC0gQ2xl YXIgYW4gZXJyb3IgY291bnRlciBvZiAKPj4gYSBub2RlCj4+ICsgKiBAc2tiOiBOZXRsaW5rIG1l c3NhZ2UgYnVmZmVyCj4+ICsgKiBAaW5mbzogR2VuZXJpYyBOZXRsaW5rIGluZm8gY29udGFpbmlu ZyBhdHRyaWJ1dGVzIG9mIHRoZSByZXF1ZXN0Cj4+ICsgKgo+PiArICogRXh0cmFjdHMgdGhlIG5v ZGUgSUQgYW5kIGVycm9yIElEIGZyb20gdGhlIG5ldGxpbmsgYXR0cmlidXRlcyBhbmQKPj4gKyAq IGNsZWFycyB0aGUgY3VycmVudCB2YWx1ZS4KPj4gKyAqCj4+ICsgKiBSZXR1cm46IDAgb24gc3Vj Y2Vzcywgb3IgbmVnYXRpdmUgZXJybm8gb24gZmFpbHVyZS4KPj4gKyAqLwo+PiAraW50IGRybV9y YXNfbmxfY2xlYXJfZXJyb3JfY291bnRlcl9kb2l0KHN0cnVjdCBza19idWZmICpza2IsCj4+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBzdHJ1Y3QgZ2VubF9pbmZvICpp bmZvKQo+PiArewo+PiArwqDCoMKgIHN0cnVjdCBkcm1fcmFzX25vZGUgKm5vZGU7Cj4+ICvCoMKg wqAgdTMyIG5vZGVfaWQsIGVycm9yX2lkOwo+PiArCj4+ICvCoMKgwqAgaWYgKCFpbmZvLT5hdHRy cyB8fAo+PiArwqDCoMKgwqDCoMKgwqAgR0VOTF9SRVFfQVRUUl9DSEVDSyhpbmZvLCAKPj4gRFJN X1JBU19BX0VSUk9SX0NPVU5URVJfQVRUUlNfTk9ERV9JRCkgfHwKPj4gK8KgwqDCoMKgwqDCoMKg IEdFTkxfUkVRX0FUVFJfQ0hFQ0soaW5mbywgCj4+IERSTV9SQVNfQV9FUlJPUl9DT1VOVEVSX0FU VFJTX0VSUk9SX0lEKSkKPj4gK8KgwqDCoMKgwqDCoMKgIHJldHVybiAtRUlOVkFMOwo+PiArCj4+ ICvCoMKgwqAgbm9kZV9pZCA9IG5sYV9nZXRfdTMyKGluZm8tIAo+PiA+YXR0cnNbRFJNX1JBU19B X0VSUk9SX0NPVU5URVJfQVRUUlNfTk9ERV9JRF0pOwo+PiArwqDCoMKgIGVycm9yX2lkID0gbmxh X2dldF91MzIoaW5mby0gCj4+ID5hdHRyc1tEUk1fUkFTX0FfRVJST1JfQ09VTlRFUl9BVFRSU19F UlJPUl9JRF0pOwo+PiArCj4+ICvCoMKgwqAgbm9kZSA9IHhhX2xvYWQoJmRybV9yYXNfeGEsIG5v ZGVfaWQpOwo+PiArwqDCoMKgIGlmICghbm9kZSB8fCAhbm9kZS0+Y2xlYXJfZXJyb3JfY291bnRl cikKPj4gK8KgwqDCoMKgwqDCoMKgIHJldHVybiAtRU5PRU5UOwo+PiArCj4+ICvCoMKgwqAgaWYg KGVycm9yX2lkIDwgbm9kZS0+ZXJyb3JfY291bnRlcl9yYW5nZS5maXJzdCB8fAo+PiArwqDCoMKg wqDCoMKgwqAgZXJyb3JfaWQgPiBub2RlLT5lcnJvcl9jb3VudGVyX3JhbmdlLmxhc3QpCj4+ICvC oMKgwqDCoMKgwqDCoCByZXR1cm4gLUVJTlZBTDsKPj4gKwo+PiArwqDCoMKgIHJldHVybiBub2Rl LT5jbGVhcl9lcnJvcl9jb3VudGVyKG5vZGUsIGVycm9yX2lkKTsKPj4gK30KPj4gKwo+PiDCoCAv KioKPj4gwqDCoCAqIGRybV9yYXNfbm9kZV9yZWdpc3RlcigpIC0gUmVnaXN0ZXIgYSBuZXcgUkFT IG5vZGUKPj4gwqDCoCAqIEBub2RlOiBOb2RlIHN0cnVjdHVyZSB0byByZWdpc3Rlcgo+PiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9yYXNfbmwuYyBiL2RyaXZlcnMvZ3B1L2RybS9k cm1fcmFzX25sLmMKPj4gaW5kZXggMTY4MDNkMGM0YTQ0Li5kZWExYzFiMjQ5NGUgMTAwNjQ0Cj4+ IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fcmFzX25sLmMKPj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2RybV9yYXNfbmwuYwo+PiBAQCAtMjIsNiArMjIsMTIgQEAgc3RhdGljIGNvbnN0IHN0cnVj dCBubGFfcG9saWN5IAo+PiBkcm1fcmFzX2dldF9lcnJvcl9jb3VudGVyX2R1bXBfbmxfcG9saWN5 W0RSTV9SQVNfCj4+IMKgwqDCoMKgwqAgW0RSTV9SQVNfQV9FUlJPUl9DT1VOVEVSX0FUVFJTX05P REVfSURdID0geyAudHlwZSA9IE5MQV9VMzIsIH0sCj4+IMKgIH07Cj4+ICsvKiBEUk1fUkFTX0NN RF9DTEVBUl9FUlJPUl9DT1VOVEVSIC0gZG8gKi8KPj4gK3N0YXRpYyBjb25zdCBzdHJ1Y3Qgbmxh X3BvbGljeSAKPj4gZHJtX3Jhc19jbGVhcl9lcnJvcl9jb3VudGVyX25sX3BvbGljeVtEUk1fUkFT X0FfRVJST1JfQ09VTlRFUl9BVFRSU19FUlJPUl9JRCArIDFdID0gewo+PiArwqDCoMKgIFtEUk1f UkFTX0FfRVJST1JfQ09VTlRFUl9BVFRSU19OT0RFX0lEXSA9IHsgLnR5cGUgPSBOTEFfVTMyLCB9 LAo+PiArwqDCoMKgIFtEUk1fUkFTX0FfRVJST1JfQ09VTlRFUl9BVFRSU19FUlJPUl9JRF0gPSB7 IC50eXBlID0gTkxBX1UzMiwgfSwKPj4gK307Cj4+ICsKPj4gwqAgLyogT3BzIHRhYmxlIGZvciBk cm1fcmFzICovCj4+IMKgIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZ2VubF9zcGxpdF9vcHMgZHJtX3Jh c19ubF9vcHNbXSA9IHsKPj4gwqDCoMKgwqDCoCB7Cj4+IEBAIC00Myw2ICs0OSwxMyBAQCBzdGF0 aWMgY29uc3Qgc3RydWN0IGdlbmxfc3BsaXRfb3BzIGRybV9yYXNfbmxfb3BzW10gCj4+ID0gewo+ PiDCoMKgwqDCoMKgwqDCoMKgwqAgLm1heGF0dHLCoMKgwqAgPSBEUk1fUkFTX0FfRVJST1JfQ09V TlRFUl9BVFRSU19OT0RFX0lELAo+PiDCoMKgwqDCoMKgwqDCoMKgwqAgLmZsYWdzwqDCoMKgwqDC oMKgwqAgPSBHRU5MX0FETUlOX1BFUk0gfCBHRU5MX0NNRF9DQVBfRFVNUCwKPj4gwqDCoMKgwqDC oCB9LAo+PiArwqDCoMKgIHsKPj4gK8KgwqDCoMKgwqDCoMKgIC5jbWTCoMKgwqDCoMKgwqDCoCA9 IERSTV9SQVNfQ01EX0NMRUFSX0VSUk9SX0NPVU5URVIsCj4+ICvCoMKgwqDCoMKgwqDCoCAuZG9p dMKgwqDCoMKgwqDCoMKgID0gZHJtX3Jhc19ubF9jbGVhcl9lcnJvcl9jb3VudGVyX2RvaXQsCj4+ ICvCoMKgwqDCoMKgwqDCoCAucG9saWN5wqDCoMKgwqDCoMKgwqAgPSBkcm1fcmFzX2NsZWFyX2Vy cm9yX2NvdW50ZXJfbmxfcG9saWN5LAo+PiArwqDCoMKgwqDCoMKgwqAgLm1heGF0dHLCoMKgwqAg PSBEUk1fUkFTX0FfRVJST1JfQ09VTlRFUl9BVFRSU19FUlJPUl9JRCwKPj4gK8KgwqDCoMKgwqDC oMKgIC5mbGFnc8KgwqDCoMKgwqDCoMKgID0gR0VOTF9BRE1JTl9QRVJNIHwgR0VOTF9DTURfQ0FQ X0RPLAo+PiArwqDCoMKgIH0sCj4+IMKgIH07Cj4+IMKgIHN0cnVjdCBnZW5sX2ZhbWlseSBkcm1f cmFzX25sX2ZhbWlseSBfX3JvX2FmdGVyX2luaXQgPSB7Cj4+IGRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vZHJtX3Jhc19ubC5oIGIvZHJpdmVycy9ncHUvZHJtL2RybV9yYXNfbmwuaAo+PiBp bmRleCAwNmNjZDkzNDI3NzMuLmEzOTg2NDM1NzJhNSAxMDA2NDQKPj4gLS0tIGEvZHJpdmVycy9n cHUvZHJtL2RybV9yYXNfbmwuaAo+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX3Jhc19ubC5o Cj4+IEBAIC0xOCw2ICsxOCw4IEBAIGludCBkcm1fcmFzX25sX2dldF9lcnJvcl9jb3VudGVyX2Rv aXQoc3RydWN0IHNrX2J1ZmYgCj4+ICpza2IsCj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgc3RydWN0IGdlbmxfaW5mbyAqaW5mbyk7Cj4+IMKgIGludCBk cm1fcmFzX25sX2dldF9lcnJvcl9jb3VudGVyX2R1bXBpdChzdHJ1Y3Qgc2tfYnVmZiAqc2tiLAo+ PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgc3RydWN0IG5ldGxp bmtfY2FsbGJhY2sgKmNiKTsKPj4gK2ludCBkcm1fcmFzX25sX2NsZWFyX2Vycm9yX2NvdW50ZXJf ZG9pdChzdHJ1Y3Qgc2tfYnVmZiAqc2tiLAo+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgc3RydWN0IGdlbmxfaW5mbyAqaW5mbyk7Cj4+IMKgIGV4dGVybiBzdHJ1Y3Qg Z2VubF9mYW1pbHkgZHJtX3Jhc19ubF9mYW1pbHk7Cj4+IGRpZmYgLS1naXQgYS9pbmNsdWRlL2Ry bS9kcm1fcmFzLmggYi9pbmNsdWRlL2RybS9kcm1fcmFzLmgKPj4gaW5kZXggNWQ1MDIwOWU1MWRi Li5mMmE3ODdiYzRmNjQgMTAwNjQ0Cj4+IC0tLSBhL2luY2x1ZGUvZHJtL2RybV9yYXMuaAo+PiAr KysgYi9pbmNsdWRlL2RybS9kcm1fcmFzLmgKPj4gQEAgLTU4LDYgKzU4LDE3IEBAIHN0cnVjdCBk cm1fcmFzX25vZGUgewo+PiDCoMKgwqDCoMKgIGludCAoKnF1ZXJ5X2Vycm9yX2NvdW50ZXIpKHN0 cnVjdCBkcm1fcmFzX25vZGUgKm5vZGUsIHUzMiBlcnJvcl9pZCwKPj4gwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBjb25zdCBjaGFyICoqbmFtZSwgdTMyICp2YWwpOwo+ PiArwqDCoMKgIC8qKgo+PiArwqDCoMKgwqAgKiBAY2xlYXJfZXJyb3JfY291bnRlcjoKPj4gK8Kg wqDCoMKgICoKPj4gK8KgwqDCoMKgICogVGhpcyBjYWxsYmFjayBpcyB1c2VkIGJ5IGRybV9yYXMg dG8gY2xlYXIgYSBzcGVjaWZpYyBlcnJvciAKPj4gY291bnRlci4KPj4gK8KgwqDCoMKgICogRHJp dmVyIHNob3VsZCBpbXBsZW1lbnQgdGhpcyBjYWxsYmFjayB0byBzdXBwb3J0IGNsZWFyaW5nIAo+ PiBlcnJvciBjb3VudGVycwo+PiArwqDCoMKgwqAgKiBvZiBhIG5vZGUuCj4+ICvCoMKgwqDCoCAq Cj4+ICvCoMKgwqDCoCAqIFJldHVybnM6IDAgb24gc3VjY2VzcywgbmVnYXRpdmUgZXJyb3IgY29k ZSBvbiBmYWlsdXJlLgo+PiArwqDCoMKgwqAgKi8KPj4gK8KgwqDCoCBpbnQgKCpjbGVhcl9lcnJv cl9jb3VudGVyKShzdHJ1Y3QgZHJtX3Jhc19ub2RlICpub2RlLCB1MzIgZXJyb3JfaWQpOwo+PiAr Cj4+IMKgwqDCoMKgwqAgLyoqIEBwcml2OiBEcml2ZXIgcHJpdmF0ZSBkYXRhICovCj4+IMKgwqDC oMKgwqAgdm9pZCAqcHJpdjsKPj4gwqAgfTsKPj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWFwaS9k cm0vZHJtX3Jhcy5oIGIvaW5jbHVkZS91YXBpL2RybS9kcm1fcmFzLmgKPj4gaW5kZXggNWY0MGZh NWI4NjlkLi4yMThhM2VlODY4MDUgMTAwNjQ0Cj4+IC0tLSBhL2luY2x1ZGUvdWFwaS9kcm0vZHJt X3Jhcy5oCj4+ICsrKyBiL2luY2x1ZGUvdWFwaS9kcm0vZHJtX3Jhcy5oCj4+IEBAIC00MSw2ICs0 MSw3IEBAIGVudW0gewo+PiDCoCBlbnVtIHsKPj4gwqDCoMKgwqDCoCBEUk1fUkFTX0NNRF9MSVNU X05PREVTID0gMSwKPj4gwqDCoMKgwqDCoCBEUk1fUkFTX0NNRF9HRVRfRVJST1JfQ09VTlRFUiwK Pj4gK8KgwqDCoCBEUk1fUkFTX0NNRF9DTEVBUl9FUlJPUl9DT1VOVEVSLAo+PiDCoMKgwqDCoMKg IF9fRFJNX1JBU19DTURfTUFYLAo+PiDCoMKgwqDCoMKgIERSTV9SQVNfQ01EX01BWCA9IChfX0RS TV9SQVNfQ01EX01BWCAtIDEpCgo=