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 X-Spam-Level: X-Spam-Status: No, score=-14.7 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,INCLUDES_CR_TRAILER,INCLUDES_PATCH,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6B298C433ED for ; Fri, 7 May 2021 10:18:50 +0000 (UTC) Received: from desiato.infradead.org (desiato.infradead.org [90.155.92.199]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id D85FF61443 for ; Fri, 7 May 2021 10:18:49 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org D85FF61443 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=desiato.20200630; h=Sender:Content-Transfer-Encoding :Content-Type:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:Subject:Cc:To: From:Message-ID:Date:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=LkV+k5VoAekwrmNBj1XWVirE/bhpvjTokvBM9HEY1FU=; b=gBTo8AKXWdQ/uDEWCGzeASLHR IujVPNXRGzZ8Qc4/Yna95Dnixz1IQEDb+V9Zwy8DWKD9uTXD53v/iV2LTLlLX0G9JrnV0XwQ67dhY pxnB3+be1fHoBzpVY0m6AtT7UuiUpvl+s6CtvUj84QDsJC4fAd9Ug65q/5J6htR7ABi92sQ5Q3oXS q53xaZCaVPI8fSrMNeZDWwdCmHEoFoPOkw/EltqAoGIHQ5/i8MFq3xsIAgzZ5dpq2AYIrcU6qo7ed KE20VDZ2B1neF39u5/83atiPt//7Nkd31M6GrrsuTTa6UaxMt5qPnDApK8YI3E7ctlA1QmIvbLNoM rtPNJqz8w==; Received: from localhost ([::1] helo=desiato.infradead.org) by desiato.infradead.org with esmtp (Exim 4.94 #2 (Red Hat Linux)) id 1lexXf-006mdm-PO; Fri, 07 May 2021 10:17:07 +0000 Received: from bombadil.infradead.org ([2607:7c80:54:e::133]) by desiato.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1lexXd-006mdb-Dc for linux-arm-kernel@desiato.infradead.org; Fri, 07 May 2021 10:17:05 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=Content-Transfer-Encoding: Content-Type:MIME-Version:References:In-Reply-To:Subject:Cc:To:From: Message-ID:Date:Sender:Reply-To:Content-ID:Content-Description; bh=DiX0KPCGPaJXKd4srWXgQPVVw84cLbY2SVDFmC57e/8=; b=IZrTKKNQwsS00L6g1NzadFVgpT q8kazKKbTvtQ3GP/P2AvU0lzfTuP0/UVuJBToDpr/KZQxcVVVcHOvYCCfpZRxLGoe+pBJF3Rcx4Jr Vlw5ivKF7HZyDNmjbiG6RzT736RzER08Xs+VGonQLBTChmVwVqOxEfosr9MqRNfSI0z+06IOI8IA8 nkcYigFg6rkoEb0/eW7paXnex09vAM5EAu0JwspEHP9UqA9FJKS/vJo885i5+oH/2ALdO7yMUf5cq fhzL4sLeD/GtEFR5b9qBU6pZwAnq9tjIWHMk2sWSR4w6m1ZF6yjin24vhH0qmlgJOE/WKVd+HSMpn l6AxS8DA==; Received: from mail.kernel.org ([198.145.29.99]) by bombadil.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1lexXa-006lrH-Dd for linux-arm-kernel@lists.infradead.org; Fri, 07 May 2021 10:17:04 +0000 Received: from disco-boy.misterjones.org (disco-boy.misterjones.org [51.254.78.96]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 64E906143F; Fri, 7 May 2021 10:17:01 +0000 (UTC) Received: from 78.163-31-62.static.virginmediabusiness.co.uk ([62.31.163.78] helo=why.misterjones.org) by disco-boy.misterjones.org with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1lexXX-00BRMu-1h; Fri, 07 May 2021 11:16:59 +0100 Date: Fri, 07 May 2021 11:16:58 +0100 Message-ID: <87czu2q25h.wl-maz@kernel.org> From: Marc Zyngier To: Pali =?UTF-8?B?Um9ow6Fy?= Cc: Lorenzo Pieralisi , Thomas Petazzoni , Rob Herring , Bjorn Helgaas , Russell King , Marek =?UTF-8?B?QmVow7pu?= , Remi Pommarel , Xogium , Tomasz Maciej Nowak , linux-pci@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 17/42] PCI: aardvark: Fix support for MSI interrupts In-Reply-To: <20210506153153.30454-18-pali@kernel.org> References: <20210506153153.30454-1-pali@kernel.org> <20210506153153.30454-18-pali@kernel.org> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM-LB/1.14.9 (=?UTF-8?B?R29qxY0=?=) APEL-LB/10.8 EasyPG/1.0.0 Emacs/27.1 (x86_64-pc-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") X-SA-Exim-Connect-IP: 62.31.163.78 X-SA-Exim-Rcpt-To: pali@kernel.org, lorenzo.pieralisi@arm.com, thomas.petazzoni@bootlin.com, robh@kernel.org, bhelgaas@google.com, rmk+kernel@armlinux.org.uk, kabel@kernel.org, repk@triplefau.lt, contact@xogium.me, tmn505@gmail.com, linux-pci@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org X-SA-Exim-Mail-From: maz@kernel.org X-SA-Exim-Scanned: No (on disco-boy.misterjones.org); SAEximRunCond expanded to false X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210507_031702_539662_7345A2F8 X-CRM114-Status: GOOD ( 36.33 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gVGh1LCAwNiBNYXkgMjAyMSAxNjozMToyOCArMDEwMCwKUGFsaSBSb2jDoXIgPHBhbGlAa2Vy bmVsLm9yZz4gd3JvdGU6Cj4gCj4gTVNJIGRvbWFpbiBjYWxsYmFjayAuYWxsb2MgKGltcGxlbWVu dGVkIGJ5IGFkdmtfbXNpX2lycV9kb21haW5fYWxsb2MoKQo+IGZ1bmN0aW9uKSBzaG91bGQgcmV0 dXJuIHplcm8gb24gc3VjY2Vzcy4gUmV0dXJuaW5nIG5vbi16ZXJvIHZhbHVlIGluZGljYXRlcwo+ IGZhaWx1cmUuIEZpeCByZXR1cm4gdmFsdWUgb2YgdGhpcyBmdW5jdGlvbiBhcyBpbiBtYW55IGNh c2VzIGl0IG5vdyByZXR1cm5zCj4gZmFpbHVyZSB3aGlsZSBhbGxvY2F0aW5nIElSUXMuCj4gCj4g QWFyZHZhcmsgaGFyZHdhcmUgc3VwcG9ydHMgTXVsdGktTVNJIGFuZCBNU0lfRkxBR19NVUxUSV9Q Q0lfTVNJIGlzIGFscmVhZHkKPiBzZXQuIEJ1dCB3aGVuIGFsbG9jYXRpbmcgTVNJIGludGVycnVw dCBudW1iZXJzIGZvciBNdWx0aS1NU0ksIHRoZXkgbmVlZCB0bwo+IGJlIHByb3Blcmx5IGFsaWdu ZWQsIG90aGVyd2lzZSBlbmRwb2ludCBkZXZpY2VzIHNlbmQgTVNJIGludGVycnVwdCB3aXRoCj4g aW5jb3JyZWN0IG51bWJlcnMuIEZpeCB0aGlzIGlzc3VlIGJ5IHVzaW5nIGZ1bmN0aW9uIGJpdG1h cF9maW5kX2ZyZWVfcmVnaW9uKCkKPiBpbnN0ZWFkIG9mIGJpdG1hcF9maW5kX25leHRfemVyb19h cmVhKCkuCj4gCj4gVG8gZW5zdXJlIHRoYXQgYWxpZ25lZCBNU0kgaW50ZXJydXB0IG51bWJlcnMg YXJlIHVzZWQgYnkgZW5kcG9pbnQgZGV2aWNlcywKPiB3ZSBjYW5ub3QgdXNlIExpbnV4IHZpcnR1 YWwgaXJxIG51bWJlcnMgKGFzIHRoZXkgYXJlIHJhbmRvbSBhbmQgbm90Cj4gcHJvcGVybHkgYWxp Z25lZCkuIFNvIHVzZSBod2lycSBudW1iZXJzIGFsbG9jYXRlZCBieSB0aGUgZnVuY3Rpb24KPiBi aXRtYXBfZmluZF9mcmVlX3JlZ2lvbigpLCB3aGljaCBhcmUgYWxpZ25lZC4gVGhpcyBuZWVkcyBh biB1cGRhdGUgaW4KPiBhZHZrX21zaV9pcnFfY29tcG9zZV9tc2lfbXNnKCkgYW5kIGFkdmtfcGNp ZV9oYW5kbGVfbXNpKCkgZnVuY3Rpb25zIHRvIGRvCj4gcHJvcGVyIG1hcHBpbmcgYmV0d2VlbiBM aW51eCB2aXJ0dWFsIGlycSBudW1iZXJzIGFuZCBod2lycSBNU0kgaW5uZXIgZG9tYWluCj4gbnVt YmVycy4KPiAKPiBBbHNvIHRoZSB3aG9sZSAxNi1iaXQgTVNJIG51bWJlciBpcyBzdG9yZWQgaW4g dGhlIFBDSUVfTVNJX1BBWUxPQURfUkVHCj4gcmVnaXN0ZXIsIG5vdCBvbmx5IGxvd2VyIDggYml0 cy4gRml4IHJlYWRpbmcgY29udGVudCBvZiB0aGlzIHJlZ2lzdGVyLgo+IAo+IFRoaXMgY2hhbmdl IGZpeGVzIHJlY2VpdmluZyBNU0kgaW50ZXJydXB0cyBvbiBBcm1hZGEgMzcyMCBib2FyZHMgYW5k IGFsbG93cwo+IHVzaW5nIE5WTWUgZGlza3Mgd2hpY2ggdXNlIE11bHRpLU1TSSBmZWF0dXJlIHdp dGggMyBpbnRlcnJ1cHRzLgo+IAo+IFdpdGhvdXQgdGhpcyBjaGFuZ2UsIE5WTWUgZGlza3MganVz dCBmcmVlemUgYm9vdGluZyBMaW51eCBvbiBBcm1hZGEgMzcyMAo+IGJvYXJkcyBhcyBsaW51eCBu dm1lLWNvcmUuYyBkcml2ZXIgaXMgd2FpdGluZyA2MHMgZm9yIGFuIGludGVycnVwdC4KPiAKPiBT aWduZWQtb2ZmLWJ5OiBQYWxpIFJvaMOhciA8cGFsaUBrZXJuZWwub3JnPgo+IFJldmlld2VkLWJ5 OiBNYXJlayBCZWjDum4gPGthYmVsQGtlcm5lbC5vcmc+Cj4gQ2M6IHN0YWJsZUB2Z2VyLmtlcm5l bC5vcmcgIyBmMjFhOGIxYjY4MzcgKCJQQ0k6IGFhcmR2YXJrOiBNb3ZlIHRvIE1TSSBoYW5kbGlu ZyB1c2luZyBnZW5lcmljIE1TSSBzdXBwb3J0IikKPiAtLS0KPiAgZHJpdmVycy9wY2kvY29udHJv bGxlci9wY2ktYWFyZHZhcmsuYyB8IDMyICsrKysrKysrKysrKysrKystLS0tLS0tLS0tLQo+ICAx IGZpbGUgY2hhbmdlZCwgMTkgaW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRpb25zKC0pCj4gCj4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvcGNpL2NvbnRyb2xsZXIvcGNpLWFhcmR2YXJrLmMgYi9kcml2ZXJz L3BjaS9jb250cm9sbGVyL3BjaS1hYXJkdmFyay5jCj4gaW5kZXggMzY2ZDc0ODBiYzFiLi40OTg4 MTBjMDBiNmQgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9wY2kvY29udHJvbGxlci9wY2ktYWFyZHZh cmsuYwo+ICsrKyBiL2RyaXZlcnMvcGNpL2NvbnRyb2xsZXIvcGNpLWFhcmR2YXJrLmMKPiBAQCAt MTE4LDYgKzExOCw3IEBACj4gICNkZWZpbmUgUENJRV9NU0lfU1RBVFVTX1JFRwkJCShDT05UUk9M X0JBU0VfQUREUiArIDB4NTgpCj4gICNkZWZpbmUgUENJRV9NU0lfTUFTS19SRUcJCQkoQ09OVFJP TF9CQVNFX0FERFIgKyAweDVDKQo+ICAjZGVmaW5lIFBDSUVfTVNJX1BBWUxPQURfUkVHCQkJKENP TlRST0xfQkFTRV9BRERSICsgMHg5QykKPiArI2RlZmluZSAgICAgUENJRV9NU0lfREFUQV9NQVNL CQkJR0VOTUFTSygxNSwgMCkKClNlZSBteSBjb21tZW50IGJlbG93IGFib3V0IHRoaXMgYWRkaXRp b24uCgo+ICAvKiBMTUkgcmVnaXN0ZXJzIGJhc2UgYWRkcmVzcyBhbmQgcmVnaXN0ZXIgb2Zmc2V0 cyAqLwo+ICAjZGVmaW5lIExNSV9CQVNFX0FERFIJCQkJMHg2MDAwCj4gQEAgLTg2MSw3ICs4NjIs NyBAQCBzdGF0aWMgdm9pZCBhZHZrX21zaV9pcnFfY29tcG9zZV9tc2lfbXNnKHN0cnVjdCBpcnFf ZGF0YSAqZGF0YSwKPiAgCj4gIAltc2ctPmFkZHJlc3NfbG8gPSBsb3dlcl8zMl9iaXRzKG1zaV9t c2cpOwo+ICAJbXNnLT5hZGRyZXNzX2hpID0gdXBwZXJfMzJfYml0cyhtc2lfbXNnKTsKPiAtCW1z Zy0+ZGF0YSA9IGRhdGEtPmlycTsKPiArCW1zZy0+ZGF0YSA9IGRhdGEtPmh3aXJxOwo+ICB9Cj4g IAo+ICBzdGF0aWMgaW50IGFkdmtfbXNpX3NldF9hZmZpbml0eShzdHJ1Y3QgaXJxX2RhdGEgKmly cV9kYXRhLAo+IEBAIC04NzgsMTUgKzg3OSwxMSBAQCBzdGF0aWMgaW50IGFkdmtfbXNpX2lycV9k b21haW5fYWxsb2Moc3RydWN0IGlycV9kb21haW4gKmRvbWFpbiwKPiAgCWludCBod2lycSwgaTsK PiAgCj4gIAltdXRleF9sb2NrKCZwY2llLT5tc2lfdXNlZF9sb2NrKTsKPiAtCWh3aXJxID0gYml0 bWFwX2ZpbmRfbmV4dF96ZXJvX2FyZWEocGNpZS0+bXNpX3VzZWQsIE1TSV9JUlFfTlVNLAo+IC0J CQkJCSAgIDAsIG5yX2lycXMsIDApOwo+IC0JaWYgKGh3aXJxID49IE1TSV9JUlFfTlVNKSB7Cj4g LQkJbXV0ZXhfdW5sb2NrKCZwY2llLT5tc2lfdXNlZF9sb2NrKTsKPiAtCQlyZXR1cm4gLUVOT1NQ QzsKPiAtCX0KPiAtCj4gLQliaXRtYXBfc2V0KHBjaWUtPm1zaV91c2VkLCBod2lycSwgbnJfaXJx cyk7Cj4gKwlod2lycSA9IGJpdG1hcF9maW5kX2ZyZWVfcmVnaW9uKHBjaWUtPm1zaV91c2VkLCBN U0lfSVJRX05VTSwKPiArCQkJCQlvcmRlcl9iYXNlXzIobnJfaXJxcykpOwo+ICAJbXV0ZXhfdW5s b2NrKCZwY2llLT5tc2lfdXNlZF9sb2NrKTsKPiArCWlmIChod2lycSA8IDApCj4gKwkJcmV0dXJu IC1FTk9TUEM7Cj4gIAo+ICAJZm9yIChpID0gMDsgaSA8IG5yX2lycXM7IGkrKykKPiAgCQlpcnFf ZG9tYWluX3NldF9pbmZvKGRvbWFpbiwgdmlycSArIGksIGh3aXJxICsgaSwKPiBAQCAtODk0LDcg Kzg5MSw3IEBAIHN0YXRpYyBpbnQgYWR2a19tc2lfaXJxX2RvbWFpbl9hbGxvYyhzdHJ1Y3QgaXJx X2RvbWFpbiAqZG9tYWluLAo+ICAJCQkJICAgIGRvbWFpbi0+aG9zdF9kYXRhLCBoYW5kbGVfc2lt cGxlX2lycSwKPiAgCQkJCSAgICBOVUxMLCBOVUxMKTsKPiAgCj4gLQlyZXR1cm4gaHdpcnE7Cj4g KwlyZXR1cm4gMDsKPiAgfQo+ICAKPiAgc3RhdGljIHZvaWQgYWR2a19tc2lfaXJxX2RvbWFpbl9m cmVlKHN0cnVjdCBpcnFfZG9tYWluICpkb21haW4sCj4gQEAgLTkwNCw3ICs5MDEsNyBAQCBzdGF0 aWMgdm9pZCBhZHZrX21zaV9pcnFfZG9tYWluX2ZyZWUoc3RydWN0IGlycV9kb21haW4gKmRvbWFp biwKPiAgCXN0cnVjdCBhZHZrX3BjaWUgKnBjaWUgPSBkb21haW4tPmhvc3RfZGF0YTsKPiAgCj4g IAltdXRleF9sb2NrKCZwY2llLT5tc2lfdXNlZF9sb2NrKTsKPiAtCWJpdG1hcF9jbGVhcihwY2ll LT5tc2lfdXNlZCwgZC0+aHdpcnEsIG5yX2lycXMpOwo+ICsJYml0bWFwX3JlbGVhc2VfcmVnaW9u KHBjaWUtPm1zaV91c2VkLCBkLT5od2lycSwgb3JkZXJfYmFzZV8yKG5yX2lycXMpKTsKPiAgCW11 dGV4X3VubG9jaygmcGNpZS0+bXNpX3VzZWRfbG9jayk7Cj4gIH0KPiAgCj4gQEAgLTEwNDgsNiAr MTA0NSw3IEBAIHN0YXRpYyB2b2lkIGFkdmtfcGNpZV9oYW5kbGVfbXNpKHN0cnVjdCBhZHZrX3Bj aWUgKnBjaWUpCj4gIHsKPiAgCXUzMiBtc2lfdmFsLCBtc2lfbWFzaywgbXNpX3N0YXR1cywgbXNp X2lkeDsKPiAgCXUxNiBtc2lfZGF0YTsKPiArCWludCB2aXJxOwo+ICAKPiAgCW1zaV9tYXNrID0g YWR2a19yZWFkbChwY2llLCBQQ0lFX01TSV9NQVNLX1JFRyk7Cj4gIAltc2lfdmFsID0gYWR2a19y ZWFkbChwY2llLCBQQ0lFX01TSV9TVEFUVVNfUkVHKTsKPiBAQCAtMTA1Nyw5ICsxMDU1LDE3IEBA IHN0YXRpYyB2b2lkIGFkdmtfcGNpZV9oYW5kbGVfbXNpKHN0cnVjdCBhZHZrX3BjaWUgKnBjaWUp Cj4gIAkJaWYgKCEoQklUKG1zaV9pZHgpICYgbXNpX3N0YXR1cykpCj4gIAkJCWNvbnRpbnVlOwo+ ICAKPiArCQkvKgo+ICsJCSAqIG1zaV9pZHggY29udGFpbnMgYml0cyBbNDowXSBvZiB0aGUgbXNp X2RhdGEgYW5kIG1zaV9kYXRhCj4gKwkJICogY29udGFpbnMgMTZiaXQgTVNJIGludGVycnVwdCBu dW1iZXIgZnJvbSBNU0kgaW5uZXIgZG9tYWluCj4gKwkJICovCj4gIAkJYWR2a193cml0ZWwocGNp ZSwgQklUKG1zaV9pZHgpLCBQQ0lFX01TSV9TVEFUVVNfUkVHKTsKPiAtCQltc2lfZGF0YSA9IGFk dmtfcmVhZGwocGNpZSwgUENJRV9NU0lfUEFZTE9BRF9SRUcpICYgMHhGRjsKPiAtCQlnZW5lcmlj X2hhbmRsZV9pcnEobXNpX2RhdGEpOwo+ICsJCW1zaV9kYXRhID0gYWR2a19yZWFkbChwY2llLCBQ Q0lFX01TSV9QQVlMT0FEX1JFRykgJiBQQ0lFX01TSV9EQVRBX01BU0s7CgpDYW4gdGhpcyBiZSBt b3ZlZCB0byBhIHNlcGFyYXRlIHBhdGNoPyBJdCBzZWVtcyBsaWtlIHRoaXMgcGF0Y2ggc2hvdWxk Cm9ubHkgZm9jdXMgb24gY29ycmVjdGx5IGRlYWxpbmcgd2l0aCB0aGUgaXJxL2h3aXJxIGlzc3Vl cy4KCj4gKwkJdmlycSA9IGlycV9maW5kX21hcHBpbmcocGNpZS0+bXNpX2lubmVyX2RvbWFpbiwg bXNpX2RhdGEpOwo+ICsJCWlmICh2aXJxKQo+ICsJCQlnZW5lcmljX2hhbmRsZV9pcnEodmlycSk7 Cj4gKwkJZWxzZQo+ICsJCQlkZXZfZXJyKCZwY2llLT5wZGV2LT5kZXYsICJ1bmV4cGVjdGVkIE1T SSAweCUwNGh4XG4iLCBtc2lfZGF0YSk7CgpTYW1lIGNvbmNlcm4gYWJvdXQgdGhlIHVubWl0aWdh dGVkIHNjcmVhbWluZy4KClRoYW5rcywKCglNLgoKLS0gCldpdGhvdXQgZGV2aWF0aW9uIGZyb20g dGhlIG5vcm0sIHByb2dyZXNzIGlzIG5vdCBwb3NzaWJsZS4KCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0 CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFk ZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK