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 CDE93CCF9E3 for ; Tue, 4 Nov 2025 09:56:08 +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: MIME-Version:Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-Type: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Owner; bh=SSHTx/aJBXe4tPj8g9UK0qKsO7sI9oG/c72UXbykh98=; b=mXL7bZgSPhPBH+3VqiNEdnuV/+ /GuB1BFZgfSMcxaxWBUsBlsY/Cr1qApc95vcFvIgI+l149Bg96KG+5MjOHqSr1u5ypR5BrsvZAeY3 EFRzLeEV4xo87vvmRYUSxWb9l17OhTnAIGZS8FD6zUwZgyiXkaMSpCUUDxhBrYRIZmbivkd/7Bgda Sc5Ix1NehKa3vzaw0dtcpkL5xkNKa6A0f4DOTFduyA+tKzRgjmUy40v7RZeicwjdfwJy+WRZdrHcE nB3yH50/DE0Txv/KCGnH2SPGz6CO1tw7xy++t321w3hNtvrheBEWFE6NUX1yzUxNaw/BVYxfARN5m DEiB8lTw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98.2 #2 (Red Hat Linux)) id 1vGDlh-0000000BZ8E-1pMP; Tue, 04 Nov 2025 09:56:01 +0000 Received: from out30-99.freemail.mail.aliyun.com ([115.124.30.99]) by bombadil.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux)) id 1vGDlf-0000000BZ69-0Xok for linux-arm-kernel@lists.infradead.org; Tue, 04 Nov 2025 09:56:00 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.alibaba.com; s=default; t=1762250153; h=From:To:Subject:Date:Message-Id:MIME-Version; bh=SSHTx/aJBXe4tPj8g9UK0qKsO7sI9oG/c72UXbykh98=; b=QCtzdVGVtJtImm5fGdT/X/tDXnr2tI9KA4sUh8y+wrL1spzZLoULsr+EgYa+lGAhygQiIJ2DVDnFUYWprwfX4nmX5roC9r4V50BkLV34t5AEh2UBqTppJAVorjSVrBp9Wm4RBT6Rduc1gbYnAd5PLzUnVQvjDB3YUtTvcNRxjno= Received: from localhost.localdomain(mailfrom:ying.huang@linux.alibaba.com fp:SMTPD_---0WrgsU.O_1762250129 cluster:ay36) by smtp.aliyun-inc.com; Tue, 04 Nov 2025 17:55:50 +0800 From: Huang Ying To: Catalin Marinas , Will Deacon , Andrew Morton , David Hildenbrand Cc: Huang Ying , Lorenzo Stoakes , Vlastimil Babka , Zi Yan , Baolin Wang , Ryan Roberts , Yang Shi , "Christoph Lameter (Ampere)" , Dev Jain , Barry Song , Anshuman Khandual , Kefeng Wang , Kevin Brodsky , Yin Fengwei , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org Subject: [PATCH -v4 0/2] arm, tlbflush: avoid TLBI broadcast if page reused in write fault Date: Tue, 4 Nov 2025 17:55:14 +0800 Message-Id: <20251104095516.7912-1-ying.huang@linux.alibaba.com> X-Mailer: git-send-email 2.39.5 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20251104_015559_889560_750F4DD1 X-CRM114-Status: UNSURE ( 7.86 ) X-CRM114-Notice: Please train this message. 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 This series is to optimize the system performance via avoiding TLBI broadcast if page is reused in the write protect fault handler. More details of the background and the test results can be found in [2/2]. Changelog: v4: - Collected Reviewed-by and Acked-by, Thanks Lorenzo, David, Ryan, and Barry. v3: - Various code cleanup and improved design and document in [1/2], Thanks Lorenzo and David's comments! - Fixed a typo and improved function interface in [2/2], Thanks Ryan's comments! v2: - Various code cleanup in [1/2], Thanks David's comments! - Remove unnecessary __local_flush_tlb_page_nosync() in [2/2], Thanks Ryan's comments! - Add missing contpte processing, Thanks Rayn and Catalin's comments! Huang Ying (2): mm: add spurious fault fixing support for huge pmd arm64, tlbflush: don't TLBI broadcast if page reused in write fault arch/arm64/include/asm/pgtable.h | 14 ++++--- arch/arm64/include/asm/tlbflush.h | 56 ++++++++++++++++++++++++++++ arch/arm64/mm/contpte.c | 3 +- arch/arm64/mm/fault.c | 2 +- include/linux/huge_mm.h | 2 +- include/linux/pgtable.h | 4 ++ mm/huge_memory.c | 33 ++++++++++------ mm/internal.h | 2 +- mm/memory.c | 62 +++++++++++++++++++++++-------- 9 files changed, 140 insertions(+), 38 deletions(-) Best Regards, Huang, Ying