From nobody Tue Feb 10 06:26:01 2026 Delivered-To: importer@patchew.org Received-SPF: temperror (zoho.com: Error in retrieving data from DNS) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=temperror (zoho.com: Error in retrieving data from DNS) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org ARC-Seal: i=1; a=rsa-sha256; t=1556260001; cv=none; d=zoho.com; s=zohoarc; b=mjJIm+Xk/x4d+Dps3pIOI5phYDRRTCETauAOI3xDd1TR4Ru7kMGVonjixxMQiyKtQkEE5iR/HK41TF0jYU/SqP8zuZzyOocpFOv0dI74snNuFbK251fZx2mz7hyL1hMV1x7X3rqLVpWUzFr57LFXj8cojt92cbVlPTKswPO8Oqg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1556260001; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To:ARC-Authentication-Results; bh=9ah+NO0sDbqt5wkbA3I7tTHWe7FF6X+7Ie3jO0hUj6g=; b=d9W7e3aCBrMhoDJd+bmniAYCuuaBXxaU+LmLbcFr+Ku4NF//QU7VLUz0PeyjVmV85jY+y5/vF8A3MUXTZ26Zf8CveLk8SJMAzigPPQ7qYQ3H95qcdST0a4F/jAanOdbEtPRB58V9UfZC/4J3ryahjTeIg7QsvOiyhyiXkRH0RxA= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=fail; spf=temperror (zoho.com: Error in retrieving data from DNS) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (209.51.188.17 [209.51.188.17]) by mx.zohomail.com with SMTPS id 1556260000721375.94197761035275; Thu, 25 Apr 2019 23:26:40 -0700 (PDT) Received: from localhost ([127.0.0.1]:40204 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hJuJR-00083c-Fo for importer@patchew.org; Fri, 26 Apr 2019 02:26:21 -0400 Received: from eggs.gnu.org ([209.51.188.92]:60685) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hJu1K-0006Rx-Vf for qemu-devel@nongnu.org; Fri, 26 Apr 2019 02:07:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hJu1J-0005ed-Vs for qemu-devel@nongnu.org; Fri, 26 Apr 2019 02:07:38 -0400 Received: from bilbo.ozlabs.org ([2401:3900:2:1::2]:47081 helo=ozlabs.org) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hJu1J-00051z-IY; Fri, 26 Apr 2019 02:07:37 -0400 Received: by ozlabs.org (Postfix, from userid 1007) id 44r3Tq4TZ6z9sNr; Fri, 26 Apr 2019 16:06:39 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gibson.dropbear.id.au; s=201602; t=1556258799; bh=M9tGNO0CMBlakuYj8vyjTCfUIkj2mawnuCKyR78PxHI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=BtfV+qHJqaUc0YgHAp7Do9Hzehx3XGJwIlwAKAoZJ9nyj5WyQcE88YUWOxsYNMIoc ov33HhDnAdTNzuWwWX9ZJ+0GEKfrjuZXdc73Jv8OIsBwDTH502YKgj8+6/JIZ5VKHk ujRta+8jYUzi5LqzjVxJ9tJgQNTYQ7Cflt34UfD0= From: David Gibson To: peter.maydell@linaro.org Date: Fri, 26 Apr 2019 16:06:27 +1000 Message-Id: <20190426060627.18153-37-david@gibson.dropbear.id.au> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190426060627.18153-1-david@gibson.dropbear.id.au> References: <20190426060627.18153-1-david@gibson.dropbear.id.au> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2401:3900:2:1::2 Subject: [Qemu-devel] [PULL 36/36] target/ppc: improve performance of large BAT invalidations X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: gkurz@kaod.org, qemu-devel@nongnu.org, =?UTF-8?q?Herv=C3=A9=20Poussineau?= , clg@kaod.org, qemu-ppc@nongnu.org, Artyom Tarasenko , David Gibson Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Type: text/plain; charset="utf-8" From: Artyom Tarasenko Performing a complete flush is ~ 100 times faster than flushing 256MiB of 4KiB pages. Set a limit of 1024 pages and perform a complete flush afterwards. This patch significantly speeds up AIX 5.1 and NetBSD-ofppc. Signed-off-by: Artyom Tarasenko Message-Id: <1555103178-21894-4-git-send-email-atar4qemu@gmail.com> Reviewed-by: Herv=C3=A9 Poussineau Signed-off-by: David Gibson --- target/ppc/mmu_helper.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/target/ppc/mmu_helper.c b/target/ppc/mmu_helper.c index d226b35739..1dbc9acb75 100644 --- a/target/ppc/mmu_helper.c +++ b/target/ppc/mmu_helper.c @@ -1820,6 +1820,13 @@ static inline void do_invalidate_BAT(CPUPPCState *en= v, target_ulong BATu, =20 base =3D BATu & ~0x0001FFFF; end =3D base + mask + 0x00020000; + if (((end - base) >> TARGET_PAGE_BITS) > 1024) { + /* Flushing 1024 4K pages is slower than a complete flush */ + LOG_BATS("Flush all BATs\n"); + tlb_flush(CPU(cs)); + LOG_BATS("Flush done\n"); + return; + } LOG_BATS("Flush BAT from " TARGET_FMT_lx " to " TARGET_FMT_lx " (" TARGET_FMT_lx ")\n", base, end, mask); for (page =3D base; page !=3D end; page +=3D TARGET_PAGE_SIZE) { --=20 2.20.1