From nobody Thu Apr 2 22:21:29 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 92B9854763 for ; Fri, 13 Feb 2026 16:22:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770999745; cv=none; b=GzrZ1Iv5Ts8NiB7o5w1Bxpx1d9mjPcwwZQTtpk8uaP/Kzp9cl3p1hREMZTYkuBqcSUJ8oE0wk83UyIU/1dO0p6gYhJJ/GoNyhl8GaYCHbqyWcpvqmqDR+uWkkoOJ+knj06qbqn0tLb6y/4Kb3kK7lCGh0GEjDeODqRfUAOg3cdk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770999745; c=relaxed/simple; bh=d4NP+fYMPgAztZy77Zo0mSw1PpGN755kbgXloR2xrac=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version; b=ijPjwojPR4qz5U/VjD0jmvfQ85wLNApsrMXYMPs75K6nZTcDZoeN03vA5eZ9jMR46sB4gb8iiHThm+Pfs3hUu4NrWOLKBvgSh4cO5RDOlS5/e5kwxx58RsQYI+LCF+Q4h7SngIJMBY6cbjeJXk7QEhvwJW3xQ7of1LWf6TUWl+Q= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=BB7ESeYf; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="BB7ESeYf" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 89FE3C116C6; Fri, 13 Feb 2026 16:22:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1770999745; bh=d4NP+fYMPgAztZy77Zo0mSw1PpGN755kbgXloR2xrac=; h=From:To:Cc:Subject:Date:From; b=BB7ESeYfmafFLwTPuVAp96rCF+fbTkXRnfpXaiWuixbMiuL+vR6c8cDvTSgm54cjD oQOdodRSYB6eiwReWiNSuLcmFli20fBAEp4h42L2P75Rbm7cB19Pl79CftDOxhgelk kJB35JH8+zJkXk1h0DfL4ezXq9lqA0pNC5JSI1xsYchkuw7l+N4kEqh5MGuLYf9OSU FgOCi5mxyqc0l//1TL2NVN+B7OIEPrye2jfBFkolYAEeFtFwbUiqWhnDba8++4lMcN qHi/CqRp3n/aS34yx54dB1OJji6ekWMscjavccAx2biHoEHhuK2mxJ2K+cxkr9zO8a Rqo0YghTk2kkg== From: Arnd Bergmann To: Catalin Marinas , Will Deacon Cc: Arnd Bergmann , Andrew Morton , Ryan Roberts , Anshuman Khandual , Rohan McLure , Kevin Brodsky , Baolin Wang , Alistair Popple , Andrew Donnellan , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH] [v2] arm64: hugetlbpage: avoid unused-but-set-parameter warning (gcc-16) Date: Fri, 13 Feb 2026 17:22:14 +0100 Message-Id: <20260213162219.1042965-1-arnd@kernel.org> X-Mailer: git-send-email 2.39.5 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Arnd Bergmann gcc-16 warns about an instance that older compilers did not: arch/arm64/mm/hugetlbpage.c: In function 'huge_pte_clear': arch/arm64/mm/hugetlbpage.c:369:57: error: parameter 'addr' set but not use= d [-Werror=3Dunused-but-set-parameter=3D] The issue here is that __pte_clear() does not actually use its second argument when CONFIG_ARM64_CONTPTE is disabled. Replace the macro with an inline function to let the compiler see how the argument is used. Suggested-by: Catalin Marinas Signed-off-by: Arnd Bergmann --- v2: replace my original patch with Catalin's suggestion --- arch/arm64/include/asm/pgtable.h | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/arch/arm64/include/asm/pgtable.h b/arch/arm64/include/asm/pgta= ble.h index a17eb8a76788..b3e58735c49b 100644 --- a/arch/arm64/include/asm/pgtable.h +++ b/arch/arm64/include/asm/pgtable.h @@ -144,8 +144,6 @@ static inline pteval_t __phys_to_pte_val(phys_addr_t ph= ys) __pte(__phys_to_pte_val((phys_addr_t)(pfn) << PAGE_SHIFT) | pgprot_val(pr= ot)) =20 #define pte_none(pte) (!pte_val(pte)) -#define __pte_clear(mm, addr, ptep) \ - __set_pte(ptep, __pte(0)) #define pte_page(pte) (pfn_to_page(pte_pfn(pte))) =20 /* @@ -1284,6 +1282,13 @@ static inline bool pud_user_accessible_page(pud_t pu= d, unsigned long addr) /* * Atomic pte/pmd modifications. */ + +static inline void __pte_clear(struct mm_struct *mm, + unsigned long addr, pte_t *ptep) +{ + __set_pte(ptep, __pte(0)); +} + static inline int __ptep_test_and_clear_young(struct vm_area_struct *vma, unsigned long address, pte_t *ptep) --=20 2.39.5