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 0A782CEF163 for ; Tue, 8 Oct 2024 12:36:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Transfer-Encoding: Content-Type:In-Reply-To:From:References:Cc:To:Subject: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=leO6hVotxlHzrvQyeBDQE3nvmhKcDtquJauWwfIF/Lc=; b=gWYbIHPBA1frhRxp3sA9Dnlq8W NkLIqekVslc9muNxq3nJ3sVk+eBC60uylsKxYf01eaf+VIPuCf45jKSDp+K4zA6Lq4Euw4CjFYl5I To+cermZtIBOAS6TIOTG4RVWe1XQByRjnSsTcu5sqmPZTxkJl8cbd0ROVUlk+Rv/AAy6rnzkrEOPQ auahqAsS4UalUrXy99DimWsEs+YIXk/EPk1ITJ6ALSTP0D/t6PKdrCT/JJfUsAhB0Ivw/nhk3fho7 i0MopIkS1DQZ9UNphoSW2pwqgQbJq6b+Qa4rcaqd9geiyMolBDH+hiGtdFs0+Zz17sPR5MyfpN7Kp Y+dBmbTg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1sy9Rk-00000005pwB-0y3N; Tue, 08 Oct 2024 12:36:12 +0000 Received: from foss.arm.com ([217.140.110.172]) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1sy9PE-00000005pUh-0hJT for linux-arm-kernel@lists.infradead.org; Tue, 08 Oct 2024 12:33:37 +0000 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 28439DA7; Tue, 8 Oct 2024 05:34:02 -0700 (PDT) Received: from [10.1.196.40] (e121345-lin.cambridge.arm.com [10.1.196.40]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id F17DE3F73F; Tue, 8 Oct 2024 05:33:30 -0700 (PDT) Message-ID: Date: Tue, 8 Oct 2024 13:33:25 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] iommu/arm-smmu: Don't disable next-page prefetcher on devices it works on To: Pankaj Patil , Doug Anderson , Will Deacon Cc: Joerg Roedel , Stephen Boyd , Chen Lin , iommu@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, quic_sibis@quicinc.com References: <20240513161343.1.I5db5530070a1335e6cc3c55e056c2a84b1031308@changeid> <20240517163742.GA525@willie-the-truck> <98d56e5e-47ca-45d8-8e0e-07c204fcc04b@quicinc.com> From: Robin Murphy Content-Language: en-GB In-Reply-To: <98d56e5e-47ca-45d8-8e0e-07c204fcc04b@quicinc.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20241008_053336_456106_542EB7F2 X-CRM114-Status: GOOD ( 25.46 ) 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: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On 07/10/2024 11:03 am, Pankaj Patil wrote: > On 9/4/2024 1:59 PM, Pankaj Patil wrote: >> On 5/17/2024 10:49 PM, Doug Anderson wrote: >>> Hi, >>> >>> On Fri, May 17, 2024 at 9:37 AM Will Deacon wrote: >>>> >>>> Hi Doug, >>>> >>>> On Mon, May 13, 2024 at 04:13:47PM -0700, Douglas Anderson wrote: >>>>> On sc7180 trogdor devices we get a scary warning at bootup: >>>>> arm-smmu 15000000.iommu: >>>>> Failed to disable prefetcher [errata #841119 and #826419], check ACR.CACHE_LOCK >>>>> >>>>> We spent some time trying to figure out how we were going to fix these >>>>> errata and whether we needed to do a firmware update. Upon closer >>>>> inspection, however, we realized that the errata don't apply to us. >>>>> Specifically, the errata document says that for these errata: >>>>> * Found in: r0p0 >>>>> * Fixed in: r2p2 >>>>> >>>>> ...and trogdor devices appear to be running r2p4. That means that they >>>>> are unaffected despite the scary warning. >>>>> >>>>> The issue is that the kernel unconditionally tries to disable the >>>>> prefetcher even on unaffected devices and then warns when it's unable >>>>> to. >>>>> >>>>> Let's change the kernel to only disable the prefetcher on affected >>>>> devices, which will get rid of the scary warning on devices that are >>>>> unaffected. As per the comment the prefetcher is >>>>> "not-particularly-beneficial" but it shouldn't hurt to leave it on for >>>>> devices where it doesn't cause problems. >>>>> >>>>> Fixes: f87f6e5b4539 ("iommu/arm-smmu: Warn once when the perfetcher errata patch fails to apply") >>>>> Signed-off-by: Douglas Anderson >>>>> --- >>>>> >>>>> drivers/iommu/arm/arm-smmu/arm-smmu-impl.c | 21 +++++++++++++-------- >>>>> 1 file changed, 13 insertions(+), 8 deletions(-) >>>> >>>> >>>> Just curious, but did you see any performance impact (good or bad) as a >>>> result of this patch? The next-page prefetcher has always looked a little >>>> naive to me and, with a tendency for tiny TLBs in some implementations, >>>> there's a possibility it could do more harm than good. >>> >>> This patch actually makes no difference on trogdor today other than >>> getting rid of the scary warning. Specifically on trogdor the >>> ACR.CACHE_LOCK bit seems to be set so the kernel is unable to change >>> the setting anyway and has never been able to. We are working on >>> figuring out how to fix the firmware and then we have to get a >>> firmware spin before we can really see any changes. I'll keep an eye >>> out to see if performance numbers change when the firmware uprevs. >>> >>> BTW: any idea how big of a deal these errata are? We're _just_ >>> finishing a firmware uprev process and there is always pushback >>> against kicking off a new one unless the issue is important. Given >>> that we've been living with this issue since devices shipped I'm going >>> to assume we don't need to rush a firmware update, but if this is >>> really scary and needs to be addressed sooner we can figure that out. >>> >>> -Doug >> >> Receiving the warning on pre-silicon platforms as well, despite being unaffected. If merged, it will help in reducing log clutter. >> The patch applies cleanly on the tip of linux-next, tag: next-20240904. >> > Following up on the patch. Please let me know if any additional > changes are required. Surely at pre-silicon there's really very little excuse for not just fixing the firmware? Anyway, it remains the case that the real issue here is the message and comment being misleadingly over-specific, and I already sent a patch to address that[1]. Thanks, Robin. [1] https://lore.kernel.org/linux-iommu/7c426dc0-4fde-4d1e-bb91-538984bd8b59@arm.com/