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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 38259C433EF for ; Mon, 4 Jul 2022 06:26:44 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 44B136B0072; Mon, 4 Jul 2022 02:26:43 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 3D3298E0001; Mon, 4 Jul 2022 02:26:43 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 273D66B0074; Mon, 4 Jul 2022 02:26:43 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 1281B6B0072 for ; Mon, 4 Jul 2022 02:26:43 -0400 (EDT) Received: from smtpin05.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay11.hostedemail.com (Postfix) with ESMTP id D8CFC80830 for ; Mon, 4 Jul 2022 06:26:42 +0000 (UTC) X-FDA: 79648433844.05.73182AE Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75]) by imf26.hostedemail.com (Postfix) with ESMTP id 4B7AB140010 for ; Mon, 4 Jul 2022 06:26:42 +0000 (UTC) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id 5A77DB80D25; Mon, 4 Jul 2022 06:26:40 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id ACBFEC3411E; Mon, 4 Jul 2022 06:26:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1656915999; bh=/dozeZi1LmhMDOAWCcXzX9Z0JD1Osv/58uL7Cc43LR4=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=mOYrmYjOTFK4bzvfiMDzsrGgHgrbXI6vJsLXsNwGXePJy90rsIERo6yutbh05fSOX WJfxGdI7M+mjj7/uGl/j0c9QccRx3QjyWAAxnnSAsXSTAXVz5TLrp42klwSLOoxdNG aVipXG/rE4S4Z1cuDqTQ/zBv7bCA5XXqZQKoWO0VN+ui2vDaU0rD0QeFs1U51A3Tkw uH4u+vFJCYFR6m1YC1zj85wK7tqo1n5N8hY6F5M0JpJkpnExsQE9md61mU+0lOkhnv lDSaLPPr2EQoHHmHWwj3gH19+9ACoXNQDwnFGBzHgPD/tGtmQWmfCo6htqWvyp2F60 n4FGEXQVahffg== Date: Mon, 4 Jul 2022 09:26:22 +0300 From: Mike Rapoport To: "Russell King (Oracle)" Cc: Matthew Wilcox , Andrew Morton , Arnd Bergmann , linux-arm-kernel@lists.infradead.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 15/14] arm: Rename PMD_ORDER to PMD_BITS Message-ID: References: <20220703141203.147893-1-rppt@kernel.org> <20220703211441.3981873-1-willy@infradead.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1656916002; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=qrl7DZixb+nXZNOwYC90Ks24mjAyZaTW4Z2LMG3XWqo=; b=SSBX/FAlch3Qy4Zdq2RSen1y3eBf5mi0bUdltXNRiiuUUe5afF0H5qzVAoazu8ttHdBGPf o+FTUnqwRqVjWzoT0kDInpRH9OrBV5uLzOpky0FM3oIAyldFttKZCJBGDccjTjiz9aj8Ya w14uMlUdf4B7VUmJMTyGYFwl1H3jCBM= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1656916002; a=rsa-sha256; cv=none; b=B7GiG89PViAapJQuIae9Gsmr5Dh+LTOm+hSYM1ch3oLvaR2Aqi5XJFqav66KpH+BIwHQ76 UrsbQ83xsYpVcTmm5nHsGNkyRYtb+H2JeemBmsb7s7+VkUHiSgEcIGMAyQbmS2Rqo6DkIm Hf1I0X7NlAXveIDHkuTlM3X7xy2FGc0= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=mOYrmYjO; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf26.hostedemail.com: domain of rppt@kernel.org designates 145.40.68.75 as permitted sender) smtp.mailfrom=rppt@kernel.org X-Stat-Signature: px5npxspfh1ng1zyystgu75oqj5a4oit X-Rspamd-Queue-Id: 4B7AB140010 X-Rspam-User: Authentication-Results: imf26.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=mOYrmYjO; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf26.hostedemail.com: domain of rppt@kernel.org designates 145.40.68.75 as permitted sender) smtp.mailfrom=rppt@kernel.org X-Rspamd-Server: rspam06 X-HE-Tag: 1656916002-225893 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Mon, Jul 04, 2022 at 05:32:33AM +0100, Russell King (Oracle) wrote: > On Sun, Jul 03, 2022 at 10:54:49PM +0100, Matthew Wilcox wrote: > > On Sun, Jul 03, 2022 at 10:16:45PM +0100, Russell King (Oracle) wrote: > > > On Sun, Jul 03, 2022 at 10:14:41PM +0100, Matthew Wilcox (Oracle) wrote: > > > > This is the number of bits used by a PMD entry, not the order of a PMD. > > > > > > No, it's not the number of bits. A PMD entry doesn't fit in 2 or 3 bits. > > > This is even more confusing. > > > > Well, what is it then? The order of something is PAGE_SIZE << n, and > > that doesn't seem to be what this is. > > Where is it defined that "order" means "PAGE_SIZE << n" ? > > "order" here is "order of magnitude" and in this case, it is 2^n, just > like order of magnitude in base 10 is 10^n. So strictly, the usage > here is completely correct, but if you describe "order" as "PAGE_SIZE << > n" that is no longer an order of magnitude, because it doesn't increase > in an order of magnitude (iow, n = 2 isn't PAGE_SIZE * PAGE_SIZE). I'd go with PMD_ENTRY_ORDER as Russell suggested last year. >From 6389dfb2e5ae5b040ca1c8f07a071d8da2873b13 Mon Sep 17 00:00:00 2001 From: Mike Rapoport Date: Mon, 4 Jul 2022 09:17:40 +0300 Subject: [PATCH] ARM: head.S: rename PMD_ORDER to PMD_ENTRY_ORDER PMD_ORDER denotes order of magnitude for a PMD entry, i.e PMD entry size is 2 ^ PMD_ORDER. Rename PMD_ORDER to PMD_ENTRY_ORDER to allow a generic definition of PMD_ORDER as order of a PMD allocation: (PMD_SHIFT - PAGE_SHIFT). Signed-off-by: Mike Rapoport --- arch/arm/kernel/head.S | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/arch/arm/kernel/head.S b/arch/arm/kernel/head.S index 500612d3da2e..29e2900178a1 100644 --- a/arch/arm/kernel/head.S +++ b/arch/arm/kernel/head.S @@ -38,10 +38,10 @@ #ifdef CONFIG_ARM_LPAE /* LPAE requires an additional page for the PGD */ #define PG_DIR_SIZE 0x5000 -#define PMD_ORDER 3 +#define PMD_ENTRY_ORDER 3 /* PMD entry size is 2^PMD_ENTRY_ORDER */ #else #define PG_DIR_SIZE 0x4000 -#define PMD_ORDER 2 +#define PMD_ENTRY_ORDER 2 #endif .globl swapper_pg_dir @@ -240,7 +240,7 @@ __create_page_tables: mov r6, r6, lsr #SECTION_SHIFT 1: orr r3, r7, r5, lsl #SECTION_SHIFT @ flags + kernel base - str r3, [r4, r5, lsl #PMD_ORDER] @ identity mapping + str r3, [r4, r5, lsl #PMD_ENTRY_ORDER] @ identity mapping cmp r5, r6 addlo r5, r5, #1 @ next section blo 1b @@ -250,7 +250,7 @@ __create_page_tables: * set two variables to indicate the physical start and end of the * kernel. */ - add r0, r4, #KERNEL_OFFSET >> (SECTION_SHIFT - PMD_ORDER) + add r0, r4, #KERNEL_OFFSET >> (SECTION_SHIFT - PMD_ENTRY_ORDER) ldr r6, =(_end - 1) adr_l r5, kernel_sec_start @ _pa(kernel_sec_start) #if defined CONFIG_CPU_ENDIAN_BE8 || defined CONFIG_CPU_ENDIAN_BE32 @@ -259,8 +259,8 @@ __create_page_tables: str r8, [r5] @ Save physical start of kernel (LE) #endif orr r3, r8, r7 @ Add the MMU flags - add r6, r4, r6, lsr #(SECTION_SHIFT - PMD_ORDER) -1: str r3, [r0], #1 << PMD_ORDER + add r6, r4, r6, lsr #(SECTION_SHIFT - PMD_ENTRY_ORDER) +1: str r3, [r0], #1 << PMD_ENTRY_ORDER add r3, r3, #1 << SECTION_SHIFT cmp r0, r6 bls 1b @@ -280,14 +280,14 @@ __create_page_tables: mov r3, pc mov r3, r3, lsr #SECTION_SHIFT orr r3, r7, r3, lsl #SECTION_SHIFT - add r0, r4, #(XIP_START & 0xff000000) >> (SECTION_SHIFT - PMD_ORDER) - str r3, [r0, #((XIP_START & 0x00f00000) >> SECTION_SHIFT) << PMD_ORDER]! + add r0, r4, #(XIP_START & 0xff000000) >> (SECTION_SHIFT - PMD_ENTRY_ORDER) + str r3, [r0, #((XIP_START & 0x00f00000) >> SECTION_SHIFT) << PMD_ENTRY_ORDER]! ldr r6, =(_edata_loc - 1) - add r0, r0, #1 << PMD_ORDER - add r6, r4, r6, lsr #(SECTION_SHIFT - PMD_ORDER) + add r0, r0, #1 << PMD_ENTRY_ORDER + add r6, r4, r6, lsr #(SECTION_SHIFT - PMD_ENTRY_ORDER) 1: cmp r0, r6 add r3, r3, #1 << SECTION_SHIFT - strls r3, [r0], #1 << PMD_ORDER + strls r3, [r0], #1 << PMD_ENTRY_ORDER bls 1b #endif @@ -297,10 +297,10 @@ __create_page_tables: */ mov r0, r2, lsr #SECTION_SHIFT cmp r2, #0 - ldrne r3, =FDT_FIXED_BASE >> (SECTION_SHIFT - PMD_ORDER) + ldrne r3, =FDT_FIXED_BASE >> (SECTION_SHIFT - PMD_ENTRY_ORDER) addne r3, r3, r4 orrne r6, r7, r0, lsl #SECTION_SHIFT - strne r6, [r3], #1 << PMD_ORDER + strne r6, [r3], #1 << PMD_ENTRY_ORDER addne r6, r6, #1 << SECTION_SHIFT strne r6, [r3] @@ -319,7 +319,7 @@ __create_page_tables: addruart r7, r3, r0 mov r3, r3, lsr #SECTION_SHIFT - mov r3, r3, lsl #PMD_ORDER + mov r3, r3, lsl #PMD_ENTRY_ORDER add r0, r4, r3 mov r3, r7, lsr #SECTION_SHIFT @@ -349,7 +349,7 @@ __create_page_tables: * If we're using the NetWinder or CATS, we also need to map * in the 16550-type serial port for the debug messages */ - add r0, r4, #0xff000000 >> (SECTION_SHIFT - PMD_ORDER) + add r0, r4, #0xff000000 >> (SECTION_SHIFT - PMD_ENTRY_ORDER) orr r3, r7, #0x7c000000 str r3, [r0] #endif @@ -359,10 +359,10 @@ __create_page_tables: * Similar reasons here - for debug. This is * only for Acorn RiscPC architectures. */ - add r0, r4, #0x02000000 >> (SECTION_SHIFT - PMD_ORDER) + add r0, r4, #0x02000000 >> (SECTION_SHIFT - PMD_ENTRY_ORDER) orr r3, r7, #0x02000000 str r3, [r0] - add r0, r4, #0xd8000000 >> (SECTION_SHIFT - PMD_ORDER) + add r0, r4, #0xd8000000 >> (SECTION_SHIFT - PMD_ENTRY_ORDER) str r3, [r0] #endif #endif -- 2.34.1 -- Sincerely yours, Mike.