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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 9B9C5EF99FD for ; Sat, 14 Feb 2026 04:49:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References: Message-ID:Subject:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=zLYDO4RG7+FJfN3zL2Xfe51kVxHsCZmATC/n7oO2OrY=; b=tzNTXE4QYrTLe7 uukFvA2b4ItTAkGlmYdZmlSjeBFPaUeEn9IfNOraqYtzXcyxGhk7sI6wTcy42sOzmgxpPiokR50Y6 mf+nT060bdj+8E2cr9d0NLWZd8oEqqR0OwdvsLyuPr0Qi/NDTjJP5FkQIq3b9+3DFEZGw88x2IqCJ /7tYPrLtad62No3RyXFdK+iH4ZrTIvjykaXi71gcHotvu19FCKibuhI7nxldrBghh+Gy1dHqKwji2 764rczXcfE6kV3IgjsFqDzmP4d07FpOT1cvux0FQ17AQAewWabzBQI5iMQLqTzgtj8+cXRjGTXgZd B7P92VMSNHUEjQbeNZiA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98.2 #2 (Red Hat Linux)) id 1vr7aX-00000004HqP-1MAM; Sat, 14 Feb 2026 04:49:01 +0000 Received: from tor.source.kernel.org ([2600:3c04:e001:324:0:1991:8:25]) by bombadil.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux)) id 1vr7aV-00000004HqH-2yNh for linux-riscv@lists.infradead.org; Sat, 14 Feb 2026 04:48:59 +0000 Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by tor.source.kernel.org (Postfix) with ESMTP id 2F92160054; Sat, 14 Feb 2026 04:48:58 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 16543C19421; Sat, 14 Feb 2026 04:48:57 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1771044537; bh=SWciu1EotfgCtPYvcZhetq4/41qsYpU6LYTorQstCP4=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=cm4Dbc+cr3k+spSIzdONPIChT99Efjuv8SV8dvRQb+wDhK4lYNjrfVC7WL6wvScp6 CxrdCZRan298qIW56GPrdlelatF6w7A3xe1FRGogqkfh7+AYurnTRGnDVB2mYwJuIK HUSEbujlPyLPV+y17WezDaMMSSpMs+I3kqiecM9vp7HJCvNoa0jUjoW0ilpYbUCPTT RbK6J4+3gLHiLXBVnCv8/XguS3cqs+VHqrT5X55xqpBYShpTyo1oWXeFWVjMN1P5b2 h6tt+18A4u0gySiiSTMeUkWUZIQpwlCz4IHkffTnMag+X8WIdi7cgv9XUdgsKgSb0i UJwI8UCOU210w== Date: Fri, 13 Feb 2026 20:48:55 -0800 From: Drew Fustini To: yunhui cui Subject: Re: [External] [PATCH RFC v2 16/17] acpi: riscv: Parse RISC-V Quality of Service Controller (RQSC) table Message-ID: References: <20260128-ssqosid-cbqri-v2-0-dca586b091b9@kernel.org> <20260128-ssqosid-cbqri-v2-16-dca586b091b9@kernel.org> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-BeenThere: linux-riscv@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Atish Patra , Adrien Ricciardi , Atish Kumar Patra , Conor Dooley , Nicolas Pitre , devicetree@vger.kernel.org, Liu Zhiwei , guo.wenjia23@zte.com.cn, linux-riscv@lists.infradead.org, Rob Herring , Peter Newman , x86@kernel.org, acpica-devel@lists.linux.dev, Robert Moore , liu.qingtao2@zte.com.cn, linux-acpi@vger.kernel.org, Ben Horgan , James Morse , Radim =?utf-8?B?S3LEjW3DocWZ?= , Dave Martin , Len Brown , Fenghua Yu , Chen Pei , Albert Ou , Kornel =?utf-8?Q?Dul=C4=99ba?= , Babu Moger , Weiwei Li , Paul Walmsley , Ved Shanbhogue , Reinette Chatre , Vasudevan Srinivasan , Tony Luck , Alexandre Ghiti , linux-kernel@vger.kernel.org, Samuel Holland , Krzysztof Kozlowski , Palmer Dabbelt , "Rafael J. Wysocki" , Paul Walmsley Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-riscv" Errors-To: linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org T24gTW9uLCBGZWIgMDIsIDIwMjYgYXQgMDc6MDg6NDhQTSArMDgwMCwgeXVuaHVpIGN1aSB3cm90 ZToKPiBIaSBEcmV3LAo+IAo+IE9uIFRodSwgSmFuIDI5LCAyMDI2IGF0IDQ6MjjigK9BTSBEcmV3 IEZ1c3RpbmkgPGZ1c3RpbmlAa2VybmVsLm9yZz4gd3JvdGU6Cj4gPgo+ID4gQWRkIGRyaXZlciB0 byBwYXJzZSB0aGUgQUNQSSBSSVNDLVYgUXVhbGl0eSBvZiBTZXJ2aWNlIENvbnRyb2xsZXIgKFJR U0MpCj4gPiB0YWJsZSB3aGljaCBkZXNjcmliZXMgdGhlIGNhcGFjaXR5IGFuZCBiYW5kd2lkdGgg UW9TIGNvbnRyb2xsZXJzIGluIGEKPiA+IHN5c3RlbS4gVGhlIFFvUyBjb250cm9sbGVycyBpbXBs ZW1lbnQgdGhlIFJJU0MtViBDYXBhY2l0eSBhbmQgQmFuZHdpZHRoCj4gPiBDb250cm9sbGVyIFFv UyBSZWdpc3RlciBJbnRlcmZhY2UgKENCUVJJKSBzcGVjaWZpY2F0aW9uLgo+ID4KPiA+IExpbms6 IGh0dHBzOi8vZ2l0aHViLmNvbS9yaXNjdi1ub24taXNhL3Jpc2N2LWNicXJpL3JlbGVhc2VzL3Rh Zy92MS4wCj4gPiBMaW5rOiBodHRwczovL2dpdGh1Yi5jb20vcmlzY3Ytbm9uLWlzYS9yaXNjdi1y cXNjL2Jsb2IvbWFpbi9zcmMvCj4gPiBTaWduZWQtb2ZmLWJ5OiBEcmV3IEZ1c3RpbmkgPGZ1c3Rp bmlAa2VybmVsLm9yZz4KPiA+IC0tLQo+ID4gIE1BSU5UQUlORVJTICAgICAgICAgICAgICAgICAg IHwgICAxICsKPiA+ICBhcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2FjcGkuaCB8ICAxMCArKysrCj4g PiAgZHJpdmVycy9hY3BpL3Jpc2N2L01ha2VmaWxlICAgfCAgIDIgKy0KPiA+ICBkcml2ZXJzL2Fj cGkvcmlzY3YvcnFzYy5jICAgICB8IDExMiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysKPiA+ICA0IGZpbGVzIGNoYW5nZWQsIDEyNCBpbnNlcnRpb25zKCspLCAxIGRl bGV0aW9uKC0pCj4gPgo+ID4gZGlmZiAtLWdpdCBhL01BSU5UQUlORVJTIGIvTUFJTlRBSU5FUlMK PiA+IGluZGV4IDk2ZWFkMzU3YTYzNC4uZTk2YTgzZGM5YTAyIDEwMDY0NAo+ID4gLS0tIGEvTUFJ TlRBSU5FUlMKPiA+ICsrKyBiL01BSU5UQUlORVJTCj4gPiBAQCAtMjI1MTIsNiArMjI1MTIsNyBA QCBTOiAgICAgIFN1cHBvcnRlZAo+ID4gIEY6ICAgICBhcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL3Fv cy5oCj4gPiAgRjogICAgIGFyY2gvcmlzY3YvaW5jbHVkZS9hc20vcmVzY3RybC5oCj4gPiAgRjog ICAgIGFyY2gvcmlzY3Yva2VybmVsL3Fvcy8KPiA+ICtGOiAgICAgZHJpdmVycy9hY3BpL3Jpc2N2 L3Jxc2MuYwo+ID4gIEY6ICAgICBpbmNsdWRlL2xpbnV4L3Jpc2N2X3Fvcy5oCj4gPgo+ID4gIFJJ U0MtViBSUE1JIEFORCBNUFhZIERSSVZFUlMKPiA+IGRpZmYgLS1naXQgYS9hcmNoL3Jpc2N2L2lu Y2x1ZGUvYXNtL2FjcGkuaCBiL2FyY2gvcmlzY3YvaW5jbHVkZS9hc20vYWNwaS5oCj4gPiBpbmRl eCA2ZTEzNjk1MTIwYmMuLjE2YzZlMjVlZWQxZSAxMDA2NDQKPiA+IC0tLSBhL2FyY2gvcmlzY3Yv aW5jbHVkZS9hc20vYWNwaS5oCj4gPiArKysgYi9hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2FjcGku aAo+ID4gQEAgLTcxLDYgKzcxLDE2IEBAIGludCBhY3BpX2dldF9yaXNjdl9pc2Eoc3RydWN0IGFj cGlfdGFibGVfaGVhZGVyICp0YWJsZSwKPiA+Cj4gPiAgdm9pZCBhY3BpX2dldF9jYm9fYmxvY2tf c2l6ZShzdHJ1Y3QgYWNwaV90YWJsZV9oZWFkZXIgKnRhYmxlLCB1MzIgKmNib21fc2l6ZSwKPiA+ ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdTMyICpjYm96X3NpemUsIHUzMiAqY2JvcF9z aXplKTsKPiA+ICsKPiA+ICsjaWZkZWYgQ09ORklHX1JJU0NWX0lTQV9TU1FPU0lECj4gPiAraW50 IGFjcGlfcGFyc2VfcnFzYyhzdHJ1Y3QgYWNwaV90YWJsZV9oZWFkZXIgKnRhYmxlKTsKPiA+ICsj ZWxzZQo+ID4gK3N0YXRpYyBpbmxpbmUgaW50IGFjcGlfcGFyc2VfcnFzYyhzdHJ1Y3QgYWNwaV90 YWJsZV9oZWFkZXIgKnRhYmxlKQo+ID4gK3sKPiA+ICsgICAgICAgcmV0dXJuIC1FSU5WQUw7Cj4g PiArfQo+ID4gKyNlbmRpZiAvKiBDT05GSUdfUklTQ1ZfSVNBX1NTUU9TSUQgKi8KPiA+ICsKPiA+ ICAjZWxzZQo+ID4gIHN0YXRpYyBpbmxpbmUgdm9pZCBhY3BpX2luaXRfcmludGNfbWFwKHZvaWQp IHsgfQo+ID4gIHN0YXRpYyBpbmxpbmUgc3RydWN0IGFjcGlfbWFkdF9yaW50YyAqYWNwaV9jcHVf Z2V0X21hZHRfcmludGMoaW50IGNwdSkKPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2FjcGkvcmlz Y3YvTWFrZWZpbGUgYi9kcml2ZXJzL2FjcGkvcmlzY3YvTWFrZWZpbGUKPiA+IGluZGV4IDEyODRh MDc2ZmE4OC4uY2YwZjM4YzkzYTlmIDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVycy9hY3BpL3Jpc2N2 L01ha2VmaWxlCj4gPiArKysgYi9kcml2ZXJzL2FjcGkvcmlzY3YvTWFrZWZpbGUKPiA+IEBAIC0x LDUgKzEsNSBAQAo+ID4gICMgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQTC0yLjAtb25seQo+ ID4gLW9iai15ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICs9IHJoY3QubyBpbml0 Lm8gaXJxLm8KPiA+ICtvYmoteSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArPSBy aGN0Lm8gcnFzYy5vIGluaXQubyBpcnEubwo+ID4gIG9iai0kKENPTkZJR19BQ1BJX1BST0NFU1NP Ul9JRExFKSAgICAgICs9IGNwdWlkbGUubwo+ID4gIG9iai0kKENPTkZJR19BQ1BJX0NQUENfTElC KSAgICAgICAgICAgICs9IGNwcGMubwo+ID4gIG9iai0kKENPTkZJR19BQ1BJX1JJTVQpICAgICAg ICAgICAgICAgICAgICAgICAgKz0gcmltdC5vCj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9hY3Bp L3Jpc2N2L3Jxc2MuYyBiL2RyaXZlcnMvYWNwaS9yaXNjdi9ycXNjLmMKPiA+IG5ldyBmaWxlIG1v ZGUgMTAwNjQ0Cj4gPiBpbmRleCAwMDAwMDAwMDAwMDAuLmE4NmRkYjM5ZmFlNAo+ID4gLS0tIC9k ZXYvbnVsbAo+ID4gKysrIGIvZHJpdmVycy9hY3BpL3Jpc2N2L3Jxc2MuYwo+ID4gQEAgLTAsMCAr MSwxMTIgQEAKPiA+ICsvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogR1BMLTIuMC1vbmx5Cj4g PiArLyoKPiA+ICsgKiBDb3B5cmlnaHQgKEMpIDIwMjUgVGVuc3RvcnJlbnQKPiA+ICsgKiAgICAg QXV0aG9yOiBEcmV3IEZ1c3RpbmkgPGZ1c3RpbmlAa2VybmVsLm9yZz4KPiA+ICsgKgo+ID4gKyAq Lwo+ID4gKwo+ID4gKyNkZWZpbmUgcHJfZm10KGZtdCkgIkFDUEk6IFJRU0M6ICIgZm10Cj4gPiAr Cj4gPiArI2luY2x1ZGUgPGxpbnV4L2FjcGkuaD4KPiA+ICsjaW5jbHVkZSA8bGludXgvYml0cy5o Pgo+ID4gKyNpbmNsdWRlIDxsaW51eC9yaXNjdl9xb3MuaD4KPiA+ICsKPiA+ICsjaWZkZWYgQ09O RklHX1JJU0NWX0lTQV9TU1FPU0lECj4gPiArCj4gPiArI2RlZmluZSBDQlFSSV9DVFJMX1NJWkUg MHgxMDAwCj4gPiArCj4gPiArc3RhdGljIHN0cnVjdCBhY3BpX3RhYmxlX3Jxc2MgKmFjcGlfZ2V0 X3Jxc2Modm9pZCkKPiA+ICt7Cj4gPiArICAgICAgIHN0YXRpYyBzdHJ1Y3QgYWNwaV90YWJsZV9o ZWFkZXIgKnJxc2M7Cj4gPiArICAgICAgIGFjcGlfc3RhdHVzIHN0YXR1czsKPiA+ICsKPiA+ICsg ICAgICAgLyoKPiA+ICsgICAgICAgICogUlFTQyB3aWxsIGJlIHVzZWQgYXQgcnVudGltZSBvbiBl dmVyeSBDUFUsIHNvIHdlCj4gPiArICAgICAgICAqIGRvbid0IG5lZWQgdG8gY2FsbCBhY3BpX3B1 dF90YWJsZSgpIHRvIHJlbGVhc2UgdGhlIHRhYmxlIG1hcHBpbmcuCj4gPiArICAgICAgICAqLwo+ ID4gKyAgICAgICBpZiAoIXJxc2MpIHsKPiA+ICsgICAgICAgICAgICAgICBzdGF0dXMgPSBhY3Bp X2dldF90YWJsZShBQ1BJX1NJR19SUVNDLCAwLCAmcnFzYyk7Cj4gPiArICAgICAgICAgICAgICAg aWYgKEFDUElfRkFJTFVSRShzdGF0dXMpKSB7Cj4gPiArICAgICAgICAgICAgICAgICAgICAgICBw cl93YXJuX29uY2UoIk5vIFJRU0MgdGFibGUgZm91bmRcbiIpOwo+ID4gKyAgICAgICAgICAgICAg ICAgICAgICAgcmV0dXJuIE5VTEw7Cj4gPiArICAgICAgICAgICAgICAgfQo+ID4gKyAgICAgICB9 Cj4gPiArCj4gPiArICAgICAgIHJldHVybiAoc3RydWN0IGFjcGlfdGFibGVfcnFzYyAqKXJxc2M7 Cj4gPiArfQo+ID4gKwo+ID4gK2ludCBhY3BpX3BhcnNlX3Jxc2Moc3RydWN0IGFjcGlfdGFibGVf aGVhZGVyICp0YWJsZSkKPiA+ICt7Cj4gPiArICAgICAgIHN0cnVjdCBhY3BpX3RhYmxlX3Jxc2Mg KnJxc2M7Cj4gPiArICAgICAgIGludCBlcnI7Cj4gPiArCj4gPiArICAgICAgIEJVR19PTihhY3Bp X2Rpc2FibGVkKTsKPiA+ICsgICAgICAgaWYgKCF0YWJsZSkgewo+ID4gKyAgICAgICAgICAgICAg IHJxc2MgPSBhY3BpX2dldF9ycXNjKCk7Cj4gPiArICAgICAgICAgICAgICAgaWYgKCFycXNjKQo+ ID4gKyAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC1FTk9FTlQ7Cj4gPiArICAgICAgIH0g ZWxzZSB7Cj4gPiArICAgICAgICAgICAgICAgcnFzYyA9IChzdHJ1Y3QgYWNwaV90YWJsZV9ycXNj ICopdGFibGU7Cj4gPiArICAgICAgIH0KPiA+ICsKPiA+ICsgICAgICAgZm9yIChpbnQgaSA9IDA7 IGkgPCBycXNjLT5udW07IGkrKykgewo+ID4gKyAgICAgICAgICAgICAgIHN0cnVjdCBjYnFyaV9j b250cm9sbGVyX2luZm8gKmN0cmxfaW5mbzsKPiA+ICsKPiA+ICsgICAgICAgICAgICAgICBjdHJs X2luZm8gPSBremFsbG9jKHNpemVvZigqY3RybF9pbmZvKSwgR0ZQX0tFUk5FTCk7Cj4gPiArICAg ICAgICAgICAgICAgaWYgKCFjdHJsX2luZm8pCj4gPiArICAgICAgICAgICAgICAgICAgICAgICBy ZXR1cm4gLUVOT01FTTsKPiA+ICsKPiA+ICsgICAgICAgICAgICAgICBjdHJsX2luZm8tPnR5cGUg PSBycXNjLT5mW2ldLnR5cGU7Cj4gPiArICAgICAgICAgICAgICAgY3RybF9pbmZvLT5hZGRyID0g cnFzYy0+ZltpXS5yZWdbMV07Cj4gPiArICAgICAgICAgICAgICAgY3RybF9pbmZvLT5zaXplID0g Q0JRUklfQ1RSTF9TSVpFOwo+ID4gKyAgICAgICAgICAgICAgIGN0cmxfaW5mby0+cmNpZF9jb3Vu dCA9IHJxc2MtPmZbaV0ucmNpZDsKPiA+ICsgICAgICAgICAgICAgICBjdHJsX2luZm8tPm1jaWRf Y291bnQgPSBycXNjLT5mW2ldLm1jaWQ7Cj4gPiArCj4gPiArICAgICAgICAgICAgICAgcHJfaW5m bygiRm91bmQgY29udHJvbGxlciB3aXRoIHR5cGUgJXUgYWRkciAweCVseCBzaXplICAlbHUgcmNp ZCAgJXUgbWNpZCAgJXUiLAo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgY3RybF9pbmZvLT50 eXBlLCBjdHJsX2luZm8tPmFkZHIsIGN0cmxfaW5mby0+c2l6ZSwKPiA+ICsgICAgICAgICAgICAg ICAgICAgICAgIGN0cmxfaW5mby0+cmNpZF9jb3VudCwgY3RybF9pbmZvLT5tY2lkX2NvdW50KTsK PiA+ICsKPiA+ICsgICAgICAgICAgICAgICBpZiAoY3RybF9pbmZvLT50eXBlID09IENCUVJJX0NP TlRST0xMRVJfVFlQRV9DQVBBQ0lUWSkgewo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgY3Ry bF9pbmZvLT5jYWNoZS5jYWNoZV9pZCA9IHJxc2MtPmZbaV0ucmVzLmlkMTsKPiA+ICsgICAgICAg ICAgICAgICAgICAgICAgIGN0cmxfaW5mby0+Y2FjaGUuY2FjaGVfbGV2ZWwgPQo+ID4gKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBmaW5kX2FjcGlfY2FjaGVfbGV2ZWxfZnJvbV9pZChj dHJsX2luZm8tPmNhY2hlLmNhY2hlX2lkKTsKPiA+ICsKPiA+ICsgICAgICAgICAgICAgICAgICAg ICAgIHN0cnVjdCBhY3BpX3BwdHRfY2FjaGUgKmNhY2hlOwo+ID4gKwo+ID4gKyAgICAgICAgICAg ICAgICAgICAgICAgY2FjaGUgPSBmaW5kX2FjcGlfY2FjaGVfZnJvbV9pZChjdHJsX2luZm8tPmNh Y2hlLmNhY2hlX2lkKTsKPiA+ICsgICAgICAgICAgICAgICAgICAgICAgIGlmIChjYWNoZSkgewo+ ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdHJsX2luZm8tPmNhY2hlLmNhY2hl X3NpemUgPSBjYWNoZS0+c2l6ZTsKPiA+ICsgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7 Cj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByX3dhcm4oIiVzKCk6IGZhaWxl ZCB0byBkZXRlcm1pbmUgc2l6ZSBmb3IgY2FjaGUgaWQgMHgleCIsCj4gPiArICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgX19mdW5jX18sIGN0cmxfaW5mby0+Y2FjaGUuY2Fj aGVfaWQpOwo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdHJsX2luZm8tPmNh Y2hlLmNhY2hlX3NpemUgPSAwOwo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgfQo+ID4gKwo+ ID4gKyAgICAgICAgICAgICAgICAgICAgICAgcHJfaW5mbygiQ2FjaGUgY29udHJvbGxlciBoYXMg SUQgMHgleCBsZXZlbCAldSBzaXplICV1ICIsCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGN0cmxfaW5mby0+Y2FjaGUuY2FjaGVfaWQsIGN0cmxfaW5mby0+Y2FjaGUuY2FjaGVf bGV2ZWwsCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN0cmxfaW5mby0+Y2Fj aGUuY2FjaGVfc2l6ZSk7Cj4gPiArCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAvKgo+ID4g KyAgICAgICAgICAgICAgICAgICAgICAgICogRm9yIENCUVJJLCBhbnkgY3B1ICh0ZWNobmljYWxs eSBhIGhhcnQgaW4gUklTQy1WIHRlcm1zKQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICog Y2FuIGFjY2VzcyB0aGUgbWVtb3J5LW1hcHBlZCByZWdpc3RlcnMgb2YgYW55IENCUVJJCj4gPiAr ICAgICAgICAgICAgICAgICAgICAgICAgKiBjb250cm9sbGVyIGluIHRoZSBzeXN0ZW0uCj4gPiAr ICAgICAgICAgICAgICAgICAgICAgICAgKi8KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgIGVy ciA9IGNwdW1hc2tfcGFyc2UoIkZGIiwgJmN0cmxfaW5mby0+Y2FjaGUuY3B1X21hc2spOwo+IAo+ IEhhcmRjb2RlPyBhY3BpX3BwdHRfZ2V0X2NwdW1hc2tfZnJvbV9jYWNoZV9pZChjdHJsX2luZm8t PmNhY2hlLmNhY2hlX2lkLAo+ICZjdHJsX2luZm8tPmNhY2hlLmNwdV9tYXNrKTsgPwoKVGhhbmsg eW91LCBJJ2xsIHN3aXRjaCB0byB1c2luZyB0aGF0LgoKRHJldwoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGludXgtcmlzY3YgbWFpbGluZyBsaXN0Cmxp bnV4LXJpc2N2QGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcv bWFpbG1hbi9saXN0aW5mby9saW51eC1yaXNjdgo=