From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mta0.migadu.com (out-68.mta0.migadu.com [91.218.175.68]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id DB54A44CF29 for ; Fri, 9 Oct 2026 06:36:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=91.218.175.68 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1791527777; cv=none; b=k54NTDv8TYhsL13uSCMjs+R6ymSMhdos1Bn64TL7D83YLp5F0nQY2v4MSqFlX9diRwxtQ82Djs8udUy+fpewo7RkSGIH6qX6B5jfXLXE97m0jEjP8HKl6YIjbuOwZBEaumlkN9U7cUkjNbmGtDFFHQFsfBDkOF72V0ylqoIRczM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1791527777; c=relaxed/simple; bh=Uktr6zhQvbp9EzuGh+m96ZQeOR2JVBFEMc1HzncifB8=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=FvzMxv+1f+c31SZ9BZzUEEeRQyj/HfS07zw7GUrRTGIgXBKm5nqgkBrfFdk1SSu4SO4fHDpcytN6/2gZO42zqS/x6hBxoetNzt7TJvnRIVhfn+gLfVXuootJDOXnYKw/HPzXqse0+HxRUw8FHVHbHgdlE4itmuzNRJ1dEGNwY9k= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.dev; spf=pass smtp.mailfrom=linux.dev; dkim=pass (1024-bit key) header.d=linux.dev header.i=@linux.dev header.b=wUF7oPFp; arc=none smtp.client-ip=91.218.175.68 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.dev Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.dev Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linux.dev header.i=@linux.dev header.b="wUF7oPFp" X-Envelope-To: linux-kernel@vger.kernel.org DKIM-Signature: a=rsa-sha256; bh=Uktr6zhQvbp9EzuGh+m96ZQeOR2JVBFEMc1HzncifB8=; c=simple/simple; d=linux.dev; h=from:to:subject:date:message-id:mime-version:content-type; s=key1; t=1791527772; v=1; x=1792132572; b=wUF7oPFpMxyb4WpP6gRGR2ODKxA4RCeg9jwOTOi6WMPnkH9gp2nR2OHzxf9yxdUUVabYWj8T PChLgYuIGSQchfZkTY2JDVX9K9fuaNFisFm791z5P7daE186kchH8FQWO/v5ojfRpcdcXl4knpn YqmqF3/ASrow1ab8I4TUVW9A= X-Envelope-To: linux-kernel@vger.kernel.org Received: by smtp.migadu.com with ESMTPS id 540e04d12dbe99da; Fri, 09 Oct 2026 06:36:12 +0000 X-Mizu-Trace-ID: 540e04d12dbe99da X-Migadu-Flow: FLOW_OUT From: Hao Ge To: Suren Baghdasaryan , Madhavan Srinivasan , Michael Ellerman , Nicholas Piggin , "Christophe Leroy (CS GROUP)" , "Ritesh Harjani (IBM)" , Shrikanth Hegde , Alexander Potapenko , Marco Elver , Dmitry Vyukov , Andrew Morton , Dennis Zhou , Tejun Heo , Christoph Lameter , Uladzislau Rezki Cc: Hao Ge , linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, kasan-dev@googlegroups.com, linux-mm@kvack.org Subject: [RFC PATCH 3/4] powerpc: drop redundant unmaps of failed vmap mappings Date: Fri, 9 Oct 2026 14:36:18 +0800 Message-Id: <20261009063619.112313-4-hao.ge@linux.dev> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20261009063619.112313-1-hao.ge@linux.dev> References: <20261009063619.112313-1-hao.ge@linux.dev> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit vmap_page_range() and ioremap_page_range() clear the PTEs they installed when they fail, so the vunmap_range() in remap_isa_base() and ioremap_phb() has nothing left to remove. Signed-off-by: Hao Ge --- arch/powerpc/kernel/isa-bridge.c | 5 ++--- arch/powerpc/kernel/pci_64.c | 4 +--- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/arch/powerpc/kernel/isa-bridge.c b/arch/powerpc/kernel/isa-bridge.c index 5c064485197a..93029d85e6ea 100644 --- a/arch/powerpc/kernel/isa-bridge.c +++ b/arch/powerpc/kernel/isa-bridge.c @@ -46,9 +46,8 @@ static void remap_isa_base(phys_addr_t pa, unsigned long size) WARN_ON_ONCE(size & ~PAGE_MASK); if (slab_is_available()) { - if (vmap_page_range(ISA_IO_BASE, ISA_IO_BASE + size, pa, - pgprot_noncached(PAGE_KERNEL))) - vunmap_range(ISA_IO_BASE, ISA_IO_BASE + size); + vmap_page_range(ISA_IO_BASE, ISA_IO_BASE + size, pa, + pgprot_noncached(PAGE_KERNEL)); } else { early_ioremap_range(ISA_IO_BASE, pa, size, pgprot_noncached(PAGE_KERNEL)); diff --git a/arch/powerpc/kernel/pci_64.c b/arch/powerpc/kernel/pci_64.c index e27342ef128b..f74269636d5e 100644 --- a/arch/powerpc/kernel/pci_64.c +++ b/arch/powerpc/kernel/pci_64.c @@ -139,10 +139,8 @@ void __iomem *ioremap_phb(phys_addr_t paddr, unsigned long size) addr = (unsigned long)area->addr; if (ioremap_page_range(addr, addr + size, paddr, - pgprot_noncached(PAGE_KERNEL))) { - vunmap_range(addr, addr + size); + pgprot_noncached(PAGE_KERNEL))) return NULL; - } return (void __iomem *)addr; } -- 2.25.1