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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id A9969C433F5 for ; Fri, 25 Feb 2022 13:12:38 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S241016AbiBYNNI (ORCPT ); Fri, 25 Feb 2022 08:13:08 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33258 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S241007AbiBYNNI (ORCPT ); Fri, 25 Feb 2022 08:13:08 -0500 Received: from mail-mut.mcl.gg (mail-mut.mcl.gg [IPv6:2a0f:85c1:beef:2011::25]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 50155181E55 for ; Fri, 25 Feb 2022 05:12:35 -0800 (PST) Message-ID: <3db2e80c-76aa-2f93-7be2-d2c34283289d@mcl.gg> DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=mcl.gg; s=mail; t=1645794750; bh=owDrh3jCAesAqtGwF9HgH+X6SWFko8JbNWCP+uD6IEs=; h=Date:To:Cc:References:From:Subject:In-Reply-To; b=je/XYiqXaH5Z2Bee6ZIklrkt2Qg0VMP1DqN1x+Sh8CA4LsEO4QK3jF6kh0XrVB7uh di9TnhVDuXIaGtuAP0bkJUTGFzV88ZkxOU0s6EYvtlwmkdIpDLpPGwGnpTlv1rerP7 vN8IYcq4ccdRFAseIsQCpkGVJsWPu3qCrAQKbWoEjFS/tObIBdqBAnyCzu1BKYYIR7 hsBhBBWy2XgrcOLPQLVqBZlPlPmVsfw0k+ZOPJf/CrKI41Nho8ZmgaxkQDL87R/3+e PI5QMkN4/5TURU/z8SnFol5aRHDnj35YnytO6mSiGNXgmR7bnA1a7ky4nZOz5y5jDy 0iBYGgthdjPgQ== Date: Fri, 25 Feb 2022 14:12:30 +0100 MIME-Version: 1.0 To: =?UTF-8?Q?Pali_Roh=c3=a1r?= , Bjorn Helgaas Cc: linux-arm-kernel@lists.infradead.org, linux-pci@vger.kernel.org References: <20220224162532.GA274119@bhelgaas> <20220224172136.ydx4wu7avmfq4ndt@pali> From: Marcel Menzel Subject: Re: Kernel 5.16.3 and above fails to detect PCIe devices on Turris Omnia (Armada 385 / mvebu) In-Reply-To: <20220224172136.ydx4wu7avmfq4ndt@pali> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org Am 24.02.2022 um 18:21 schrieb Pali Rohár: > On Thursday 24 February 2022 10:25:32 Bjorn Helgaas wrote: >> On Thu, Feb 24, 2022 at 05:00:30PM +0100, Marcel Menzel wrote: >>> +linux-pci >>> >>> Am 24.02.2022 um 14:52 schrieb Marcel Menzel: >>>> Am 24.02.2022 um 14:09 schrieb Marcel Menzel: >>>>> Hello, >>>>> >>>>> When upgrading from kernel 5.16.2 to a newer version (tried 5.16.3 >>>>> and 5.16.10 with unchanged .config), the Kernel fails to detect both >>>>> my installed mPCIe WiFi cards in my Turris Omnia (newer version, >>>>> silver case, GPIO pins installed again). >>>>> I have two Mediatek MT7915 based cards installed. I also tried with >>>>> one Atheros at9k and one ath10k based card, yielding the same >>>>> result. On a Kernel version newer than 5.16.2, all cards aren't >>>>> getting recognized correctly. >>>>> >>>>> Before 5.16.3 I also had to disable PCIe ASPM via boot aragument, >>>>> otherwise the WiFi drivers would complain about weird device >>>>> behaviors and failing to initialize them, but re-enabling it does >>>>> not yield any different results. >> Please try this commit, which is headed to mainline today: >> >> https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/commit/?h=for-linus&id=c49ae619905eebd3f54598a84e4cd2bd58ba8fe9 >> >> This commit should fix the PCI enumeration problem. > It should fix that regression. If not, please let me know. Can confirm this patch solving the issue. Many thanks! >> If you still have >> to disable ASPM, that sounds like a separate problem that we should >> also try to debug. > This is different and known issue and **not** related to ASPM. I spend > some time on it, initially I thought it is bug in Atheros cards, but now > I'm in impression that this is issue in Marvell PCIe HW that link > retraining (required step of ASPM) triggers either Link Down or Hot > Reset which triggers another Atheros issue (this one is already > documented in kernel pci quirks code). > > I will try to implement some workaround for this but requirement is to > have all new improvements in pci-mvebu.c + pci-aardvark.c drivers... and > review process is slow. So it would not be before all those changes are > reviewed and merged. Removing "pcie_aspm=off" works for my MT7915E based cards, having had no issues so far. So it doesn't seem to be an issue with the Marvell hardware itself at least. Regarding Atheros cards: I disabled it back then for my Atheros AR9582 & QCA9880 cards and never re-enabled it when I switched to the MT7915E cards, which I forgot to mention in my first mail, sorry! I put those two cards back into the device to test it, and the same problem occurs why I disabled it back then. The router completely freezes while booting with this as the last log lines (gathered via serial): [   10.400986] ath9k 0000:02:00.0: can't change power state from D3cold to D0 (config space inaccessible) [   10.466924] ath10k_pci 0000:03:00.0: can't change power state from D3cold to D0 (config space inaccessible) [   10.613847] ath10k_pci 0000:03:00.0: failed to wake up device : -110 [   10.622944] usb 1-1: New USB device found, idVendor=0cf3, idProduct=3004, bcdDevice= 0.02 [   10.635092] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 [   10.659930] ath10k_pci: probe of 0000:03:00.0 failed with error -110 This seems to be another topic however. I'd be glad to test and try to debug fixes and / or gather additional information on my hardware regarding this problem. 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 9344CC433FE for ; Fri, 25 Feb 2022 13:14:15 +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-Type: Content-Transfer-Encoding:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:Subject:From:References:Cc:To: MIME-Version:Date:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=ByGOpfghrZQHjlgB1pePqbgKg2sHUREpxIzf75ooD9Y=; b=UX9rzGeLFrMeLs enoVQXY/Ykx1FwBqV/IlBXUSi9YKtmkGSXT6GqE2K5SF5YVpqQ/L8dQ7R58qdpfCQfo51CZcPrAf5 5Pvs0jjXIiv1RNiR3WW+wqblSOkyMXzrvV956oZOozuo42LZrkbqe3Qblurt3XJeH8bwmI+u0nDMS uW4fsJk/cYSO9hCUIQy21P0nYHoFj+N8MUDN1r+QsBLfJ/NC0Q9hkns97n/zMQz0j2rlC6rBIb6mh AkmQx6W1QbyYncq9J/v1+QaGGfHySPPsir6kGfA8yn3QlZRW4+ZLtzx0OJK9qb6mFgTulHoFxyUyU C3gdPJLnE4RAOn2XOOxg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nNaP7-0050Ul-Bo; Fri, 25 Feb 2022 13:13:01 +0000 Received: from casper.infradead.org ([2001:8b0:10b:1236::1]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1nNaP5-0050UM-9K for linux-arm-kernel@bombadil.infradead.org; Fri, 25 Feb 2022 13:12:59 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=Content-Transfer-Encoding:Content-Type: In-Reply-To:Subject:From:References:Cc:To:MIME-Version:Date:Message-ID:Sender :Reply-To:Content-ID:Content-Description; bh=7U+lLOxHwysBMdUZE3x93RJ83YkUTRZzKUYkZGLkHzc=; b=voLunqfjcyI3A0UkV6cXK7sjkT 459IgEMsMwQkl8uTGGg0dIR3xDYmDa/4zFuAa/9zQdtUB4+drtoqVQHvAN12lfO8A8t4jSpn3ZkRM eT6M46o0w6yvOYqWMyMg+L4YoM6Hc3xZWNOFPyvykVU6YsHNJWq2xpArWX2oJSkf52mw8snj4x3LF hXHdzLYyrWfL+p0De4nXS0hgOrmmK4HVL+gRoqncVaDH+Hnyweb4en+apxCfFc5+JLeXG7bDOeFh6 /EhYQcTZXN412UNaW6FXX6RoSlP9OqxemgwyGkGb+E8d3X6DRwwKC70ODkPZytmWfp1jn8gdAePQ1 7Cco3YKg==; Received: from mail-mut.mcl.gg ([2a0f:85c1:beef:2011::25]) by casper.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1nNaP1-005njv-Qs for linux-arm-kernel@lists.infradead.org; Fri, 25 Feb 2022 13:12:58 +0000 Message-ID: <3db2e80c-76aa-2f93-7be2-d2c34283289d@mcl.gg> DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=mcl.gg; s=mail; t=1645794750; bh=owDrh3jCAesAqtGwF9HgH+X6SWFko8JbNWCP+uD6IEs=; h=Date:To:Cc:References:From:Subject:In-Reply-To; b=je/XYiqXaH5Z2Bee6ZIklrkt2Qg0VMP1DqN1x+Sh8CA4LsEO4QK3jF6kh0XrVB7uh di9TnhVDuXIaGtuAP0bkJUTGFzV88ZkxOU0s6EYvtlwmkdIpDLpPGwGnpTlv1rerP7 vN8IYcq4ccdRFAseIsQCpkGVJsWPu3qCrAQKbWoEjFS/tObIBdqBAnyCzu1BKYYIR7 hsBhBBWy2XgrcOLPQLVqBZlPlPmVsfw0k+ZOPJf/CrKI41Nho8ZmgaxkQDL87R/3+e PI5QMkN4/5TURU/z8SnFol5aRHDnj35YnytO6mSiGNXgmR7bnA1a7ky4nZOz5y5jDy 0iBYGgthdjPgQ== Date: Fri, 25 Feb 2022 14:12:30 +0100 MIME-Version: 1.0 To: =?UTF-8?Q?Pali_Roh=c3=a1r?= , Bjorn Helgaas Cc: linux-arm-kernel@lists.infradead.org, linux-pci@vger.kernel.org References: <20220224162532.GA274119@bhelgaas> <20220224172136.ydx4wu7avmfq4ndt@pali> From: Marcel Menzel Subject: Re: Kernel 5.16.3 and above fails to detect PCIe devices on Turris Omnia (Armada 385 / mvebu) In-Reply-To: <20220224172136.ydx4wu7avmfq4ndt@pali> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220225_131255_956564_D36EEAE7 X-CRM114-Status: GOOD ( 22.40 ) 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-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org CgpBbSAyNC4wMi4yMDIyIHVtIDE4OjIxIHNjaHJpZWIgUGFsaSBSb2jDoXI6Cj4gT24gVGh1cnNk YXkgMjQgRmVicnVhcnkgMjAyMiAxMDoyNTozMiBCam9ybiBIZWxnYWFzIHdyb3RlOgo+PiBPbiBU aHUsIEZlYiAyNCwgMjAyMiBhdCAwNTowMDozMFBNICswMTAwLCBNYXJjZWwgTWVuemVsIHdyb3Rl Ogo+Pj4gK2xpbnV4LXBjaQo+Pj4KPj4+IEFtIDI0LjAyLjIwMjIgdW0gMTQ6NTIgc2NocmllYiBN YXJjZWwgTWVuemVsOgo+Pj4+IEFtIDI0LjAyLjIwMjIgdW0gMTQ6MDkgc2NocmllYiBNYXJjZWwg TWVuemVsOgo+Pj4+PiBIZWxsbywKPj4+Pj4KPj4+Pj4gV2hlbiB1cGdyYWRpbmcgZnJvbSBrZXJu ZWwgNS4xNi4yIHRvIGEgbmV3ZXIgdmVyc2lvbiAodHJpZWQgNS4xNi4zCj4+Pj4+IGFuZCA1LjE2 LjEwIHdpdGggdW5jaGFuZ2VkIC5jb25maWcpLCB0aGUgS2VybmVsIGZhaWxzIHRvIGRldGVjdCBi b3RoCj4+Pj4+IG15IGluc3RhbGxlZCBtUENJZSBXaUZpIGNhcmRzIGluIG15IFR1cnJpcyBPbW5p YSAobmV3ZXIgdmVyc2lvbiwKPj4+Pj4gc2lsdmVyIGNhc2UsIEdQSU8gcGlucyBpbnN0YWxsZWQg YWdhaW4pLgo+Pj4+PiBJIGhhdmUgdHdvIE1lZGlhdGVrIE1UNzkxNSBiYXNlZCBjYXJkcyBpbnN0 YWxsZWQuIEkgYWxzbyB0cmllZCB3aXRoCj4+Pj4+IG9uZSBBdGhlcm9zIGF0OWsgYW5kIG9uZSBh dGgxMGsgYmFzZWQgY2FyZCwgeWllbGRpbmcgdGhlIHNhbWUKPj4+Pj4gcmVzdWx0LiBPbiBhIEtl cm5lbCB2ZXJzaW9uIG5ld2VyIHRoYW4gNS4xNi4yLCBhbGwgY2FyZHMgYXJlbid0Cj4+Pj4+IGdl dHRpbmcgcmVjb2duaXplZCBjb3JyZWN0bHkuCj4+Pj4+Cj4+Pj4+IEJlZm9yZSA1LjE2LjMgSSBh bHNvIGhhZCB0byBkaXNhYmxlIFBDSWUgQVNQTSB2aWEgYm9vdCBhcmFndW1lbnQsCj4+Pj4+IG90 aGVyd2lzZSB0aGUgV2lGaSBkcml2ZXJzIHdvdWxkIGNvbXBsYWluIGFib3V0IHdlaXJkIGRldmlj ZQo+Pj4+PiBiZWhhdmlvcnMgYW5kIGZhaWxpbmcgdG8gaW5pdGlhbGl6ZSB0aGVtLCBidXQgcmUt ZW5hYmxpbmcgaXQgZG9lcwo+Pj4+PiBub3QgeWllbGQgYW55IGRpZmZlcmVudCByZXN1bHRzLgo+ PiBQbGVhc2UgdHJ5IHRoaXMgY29tbWl0LCB3aGljaCBpcyBoZWFkZWQgdG8gbWFpbmxpbmUgdG9k YXk6Cj4+Cj4+IGh0dHBzOi8vZ2l0Lmtlcm5lbC5vcmcvcHViL3NjbS9saW51eC9rZXJuZWwvZ2l0 L2hlbGdhYXMvcGNpLmdpdC9jb21taXQvP2g9Zm9yLWxpbnVzJmlkPWM0OWFlNjE5OTA1ZWViZDNm NTQ1OThhODRlNGNkMmJkNThiYThmZTkKPj4KPj4gVGhpcyBjb21taXQgc2hvdWxkIGZpeCB0aGUg UENJIGVudW1lcmF0aW9uIHByb2JsZW0uCj4gSXQgc2hvdWxkIGZpeCB0aGF0IHJlZ3Jlc3Npb24u IElmIG5vdCwgcGxlYXNlIGxldCBtZSBrbm93LgpDYW4gY29uZmlybSB0aGlzIHBhdGNoIHNvbHZp bmcgdGhlIGlzc3VlLiBNYW55IHRoYW5rcyEKCj4+IElmIHlvdSBzdGlsbCBoYXZlCj4+IHRvIGRp c2FibGUgQVNQTSwgdGhhdCBzb3VuZHMgbGlrZSBhIHNlcGFyYXRlIHByb2JsZW0gdGhhdCB3ZSBz aG91bGQKPj4gYWxzbyB0cnkgdG8gZGVidWcuCj4gVGhpcyBpcyBkaWZmZXJlbnQgYW5kIGtub3du IGlzc3VlIGFuZCAqKm5vdCoqIHJlbGF0ZWQgdG8gQVNQTS4gSSBzcGVuZAo+IHNvbWUgdGltZSBv biBpdCwgaW5pdGlhbGx5IEkgdGhvdWdodCBpdCBpcyBidWcgaW4gQXRoZXJvcyBjYXJkcywgYnV0 IG5vdwo+IEknbSBpbiBpbXByZXNzaW9uIHRoYXQgdGhpcyBpcyBpc3N1ZSBpbiBNYXJ2ZWxsIFBD SWUgSFcgdGhhdCBsaW5rCj4gcmV0cmFpbmluZyAocmVxdWlyZWQgc3RlcCBvZiBBU1BNKSB0cmln Z2VycyBlaXRoZXIgTGluayBEb3duIG9yIEhvdAo+IFJlc2V0IHdoaWNoIHRyaWdnZXJzIGFub3Ro ZXIgQXRoZXJvcyBpc3N1ZSAodGhpcyBvbmUgaXMgYWxyZWFkeQo+IGRvY3VtZW50ZWQgaW4ga2Vy bmVsIHBjaSBxdWlya3MgY29kZSkuCj4KPiBJIHdpbGwgdHJ5IHRvIGltcGxlbWVudCBzb21lIHdv cmthcm91bmQgZm9yIHRoaXMgYnV0IHJlcXVpcmVtZW50IGlzIHRvCj4gaGF2ZSBhbGwgbmV3IGlt cHJvdmVtZW50cyBpbiBwY2ktbXZlYnUuYyArIHBjaS1hYXJkdmFyay5jIGRyaXZlcnMuLi4gYW5k Cj4gcmV2aWV3IHByb2Nlc3MgaXMgc2xvdy4gU28gaXQgd291bGQgbm90IGJlIGJlZm9yZSBhbGwg dGhvc2UgY2hhbmdlcyBhcmUKPiByZXZpZXdlZCBhbmQgbWVyZ2VkLgpSZW1vdmluZyAicGNpZV9h c3BtPW9mZiIgd29ya3MgZm9yIG15IE1UNzkxNUUgYmFzZWQgY2FyZHMsIGhhdmluZyBoYWQgbm8g Cmlzc3VlcyBzbyBmYXIuIFNvIGl0IGRvZXNuJ3Qgc2VlbSB0byBiZSBhbiBpc3N1ZSB3aXRoIHRo ZSBNYXJ2ZWxsIApoYXJkd2FyZSBpdHNlbGYgYXQgbGVhc3QuCgpSZWdhcmRpbmcgQXRoZXJvcyBj YXJkczogSSBkaXNhYmxlZCBpdCBiYWNrIHRoZW4gZm9yIG15IEF0aGVyb3MgQVI5NTgyICYgClFD QTk4ODAgY2FyZHMgYW5kIG5ldmVyIHJlLWVuYWJsZWQgaXQgd2hlbiBJIHN3aXRjaGVkIHRvIHRo ZSBNVDc5MTVFIApjYXJkcywgd2hpY2ggSSBmb3Jnb3QgdG8gbWVudGlvbiBpbiBteSBmaXJzdCBt YWlsLCBzb3JyeSEKSSBwdXQgdGhvc2UgdHdvIGNhcmRzIGJhY2sgaW50byB0aGUgZGV2aWNlIHRv IHRlc3QgaXQsIGFuZCB0aGUgc2FtZSAKcHJvYmxlbSBvY2N1cnMgd2h5IEkgZGlzYWJsZWQgaXQg YmFjayB0aGVuLiBUaGUgcm91dGVyIGNvbXBsZXRlbHkgCmZyZWV6ZXMgd2hpbGUgYm9vdGluZyB3 aXRoIHRoaXMgYXMgdGhlIGxhc3QgbG9nIGxpbmVzIChnYXRoZXJlZCB2aWEgc2VyaWFsKToKClvC oMKgIDEwLjQwMDk4Nl0gYXRoOWsgMDAwMDowMjowMC4wOiBjYW4ndCBjaGFuZ2UgcG93ZXIgc3Rh dGUgZnJvbSBEM2NvbGQgCnRvIEQwIChjb25maWcgc3BhY2UgaW5hY2Nlc3NpYmxlKQpbwqDCoCAx MC40NjY5MjRdIGF0aDEwa19wY2kgMDAwMDowMzowMC4wOiBjYW4ndCBjaGFuZ2UgcG93ZXIgc3Rh dGUgZnJvbSAKRDNjb2xkIHRvIEQwIChjb25maWcgc3BhY2UgaW5hY2Nlc3NpYmxlKQpbwqDCoCAx MC42MTM4NDddIGF0aDEwa19wY2kgMDAwMDowMzowMC4wOiBmYWlsZWQgdG8gd2FrZSB1cCBkZXZp Y2UgOiAtMTEwClvCoMKgIDEwLjYyMjk0NF0gdXNiIDEtMTogTmV3IFVTQiBkZXZpY2UgZm91bmQs IGlkVmVuZG9yPTBjZjMsIAppZFByb2R1Y3Q9MzAwNCwgYmNkRGV2aWNlPSAwLjAyClvCoMKgIDEw LjYzNTA5Ml0gdXNiIDEtMTogTmV3IFVTQiBkZXZpY2Ugc3RyaW5nczogTWZyPTAsIFByb2R1Y3Q9 MCwgClNlcmlhbE51bWJlcj0wClvCoMKgIDEwLjY1OTkzMF0gYXRoMTBrX3BjaTogcHJvYmUgb2Yg MDAwMDowMzowMC4wIGZhaWxlZCB3aXRoIGVycm9yIC0xMTAKClRoaXMgc2VlbXMgdG8gYmUgYW5v dGhlciB0b3BpYyBob3dldmVyLiBJJ2QgYmUgZ2xhZCB0byB0ZXN0IGFuZCB0cnkgdG8gCmRlYnVn IGZpeGVzIGFuZCAvIG9yIGdhdGhlciBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIG9uIG15IGhhcmR3 YXJlIApyZWdhcmRpbmcgdGhpcyBwcm9ibGVtLgoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KbGludXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgt YXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3Jn L21haWxtYW4vbGlzdGluZm8vbGludXgtYXJtLWtlcm5lbAo=