From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 73A9827456 for ; Fri, 10 Apr 2026 03:22:43 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=217.140.110.172 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775791365; cv=none; b=o2QQwhfRTp1I7c7cyyGuzWMSXUNzOBuBRBdZ6t8MVtgPfZmAqOOiqnDhAlSytnOMLsl/GbOOA9ryRfOPbqDz7/XhKIsD8+JoyCLYbBW/gLPnRqG3LBpyVt2PgpIxBmrDZ+n4BeiNMoV3nfn9niiQtoDT8vSXhSQuFxak7d/yszg= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775791365; c=relaxed/simple; bh=R3qfDw7crVOy8R1j2TZwYuQoVv5jXQP+cKnUXI5OagA=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=be5wlcUwjhDREZHCW1RtpVn1sn1ptqMqcRrQpS0Jjp8vUVcI2N2O6kwEGvbESkkcOCbj/PYD/+ZAajkvo1AEpGV0WmxoUZkzAn7RU6bjQUAYPm5ZYrbCitvmdjaEp+9rzXNVG20jRXuIV2Fz3QUfrSS08PBoYkFea0/JKOb8/jk= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com; spf=pass smtp.mailfrom=arm.com; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=G+yp2+wa; arc=none smtp.client-ip=217.140.110.172 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="G+yp2+wa" 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 EB3061C25; Thu, 9 Apr 2026 20:22:36 -0700 (PDT) Received: from [10.163.181.107] (unknown [10.163.181.107]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id AEDB83F641; Thu, 9 Apr 2026 20:22:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=arm.com; s=foss; t=1775791362; bh=R3qfDw7crVOy8R1j2TZwYuQoVv5jXQP+cKnUXI5OagA=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=G+yp2+waAu91yxXfiqb8dbQfzSXCQ1iHAvULnso7HPiYfR827OieVKrhS5V8+wMqa q1uW/KbgMfpSlCI44/PT4LXYYbfuLIob2IuOvEmmbUJ3kc2wPSsuZiSlD7bfEPfKmU dGKDbHoGuZZS/wmvK934atJ8TP8nhwh7yAPgkalg= Message-ID: Date: Fri, 10 Apr 2026 08:52:33 +0530 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [RFC V1 14/16] arm64/mm: Enable fixmap with 5 level page table To: "David Hildenbrand (Arm)" , linux-arm-kernel@lists.infradead.org Cc: Catalin Marinas , Will Deacon , Ryan Roberts , Mark Rutland , Lorenzo Stoakes , Andrew Morton , Mike Rapoport , Linu Cherian , linux-kernel@vger.kernel.org, linux-mm@kvack.org References: <20260224051153.3150613-1-anshuman.khandual@arm.com> <20260224051153.3150613-15-anshuman.khandual@arm.com> <4382c90a-bc92-470e-9aa7-4666753479ca@kernel.org> Content-Language: en-US From: Anshuman Khandual In-Reply-To: <4382c90a-bc92-470e-9aa7-4666753479ca@kernel.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 08/04/26 5:59 PM, David Hildenbrand (Arm) wrote: > On 2/24/26 06:11, Anshuman Khandual wrote: >> Enable fixmap with 5 level page table when required. This creates table >> entries at the PGD level. Add a fallback stub for pgd_page_paddr() when >> (PGTBALE_LEVELS <= 4) which helps in intercepting any unintended usage. > > Can you add the "why" ? Following reworded commit message should work ? ------------------------------------------------------------------ arm64/mm: Enable fixmap with 5 level page table FEAT_D128 halves PTRS_PER_PXX thus shrinking the VA range coverage for each page table level. Hence in order to preserve all existing VA range configurations, some geometry now need to become 5-level. Since fixmap is used to build and manipulate page tables early on during boot the mapping must also gain that additional level which was not required earlier. Enable fixmap with 5 level page table when required. This creates table entries at the PGD level. Add a fallback stub for pgd_page_paddr() when (PGTBALE_LEVELS <= 4) which helps in intercepting any unintended usage. -------------------------------------------------------------------