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 CA8BBC64EC4 for ; Fri, 10 Mar 2023 09:46:50 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 264C46B0072; Fri, 10 Mar 2023 04:46:50 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 2149D6B0074; Fri, 10 Mar 2023 04:46:50 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 091428E0001; Fri, 10 Mar 2023 04:46:50 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id EB76C6B0072 for ; Fri, 10 Mar 2023 04:46:49 -0500 (EST) Received: from smtpin28.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id C7C551416E7 for ; Fri, 10 Mar 2023 09:46:49 +0000 (UTC) X-FDA: 80552509338.28.6ECAD23 Received: from mail-wm1-f53.google.com (mail-wm1-f53.google.com [209.85.128.53]) by imf19.hostedemail.com (Postfix) with ESMTP id C56CA1A000B for ; Fri, 10 Mar 2023 09:46:46 +0000 (UTC) Authentication-Results: imf19.hostedemail.com; dkim=pass header.d=rivosinc-com.20210112.gappssmtp.com header.s=20210112 header.b=DK0AVNF2; spf=pass (imf19.hostedemail.com: domain of alexghiti@rivosinc.com designates 209.85.128.53 as permitted sender) smtp.mailfrom=alexghiti@rivosinc.com; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1678441606; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=KgQQy0WOaC8x36p48NSIJDImmcDBT39MIpy6PGzDwU8=; b=dscYQSMjdPFniHt7+VAVnGOqbBowvxO8o/W4ByH5O41Xu0qkc63t9e6zBZ4in1GXGcw0TO bS40N5gXXfmRKo9eMXROZdaQh+aUjfaX1S5xpdhIeeZcL4CBuNAPyVL70dg1Z1hon+qDgQ kBSqlHTwnlmtDDMHwyiSDnlS0sIMJYc= ARC-Authentication-Results: i=1; imf19.hostedemail.com; dkim=pass header.d=rivosinc-com.20210112.gappssmtp.com header.s=20210112 header.b=DK0AVNF2; spf=pass (imf19.hostedemail.com: domain of alexghiti@rivosinc.com designates 209.85.128.53 as permitted sender) smtp.mailfrom=alexghiti@rivosinc.com; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1678441606; a=rsa-sha256; cv=none; b=DyxzcjWVP0eA1YiN8tpKySn5BKSOq+M5WGnuZTnwF4UY0j7+ks+wrfOus0ZcMMaH6BIXiO IzH9SwgpSQ3GDbhSWWeiyG0OwIq3OBcf+pYEmiB7xg9rkP3UBRBjwD09V+MUcNroR3OjN7 /B4L8hlOunRzHJhnmD5JGghLrrf0wTA= Received: by mail-wm1-f53.google.com with SMTP id j19-20020a05600c191300b003eb3e1eb0caso5556497wmq.1 for ; Fri, 10 Mar 2023 01:46:46 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rivosinc-com.20210112.gappssmtp.com; s=20210112; t=1678441605; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=KgQQy0WOaC8x36p48NSIJDImmcDBT39MIpy6PGzDwU8=; b=DK0AVNF24CSovjJHjfX2BnbZdKEc3SCRhmed7jkWmNWONYRQJpkIDL/dDxC8+TqV4s iPdx2usmr4K0UsSvTjdyMJmHIJpwPpBtCXOt0TWuokX7Zry9p/D+3rjrf+QNRJWTAH9d FjemEPIjcSPl6Z/IT3jQJZ+EuCULRYq4LA1+kUq2ILkogKGSgomgez1hILg2QQS3XD5g MnLjt536CUEpLSQiQqLquY6n4kpR5vSmgTKTmGbi96kMFXMKcVgHdPrFYi3R8Xkr71dD FrlWWYDKsTczd5y5BLAiMFpgQ4ohQfrZRU/KQHi3A7pE0F0Ua9QPnaql2wwabry3iuEd DTwg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678441605; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=KgQQy0WOaC8x36p48NSIJDImmcDBT39MIpy6PGzDwU8=; b=fRYNK4Lzr9Fcw3L2oQqAvlBCp3tLLWKbLE2oanYM5w4m43CIal/k4bxZ51Vz1xaw27 +sD1WwxlUbcwvTNQ5F6R4Q+cJQPFx/WDKvmBpCILLCOw0BuZfxgT8mJC/w2KsClsQpXK vO+CFwfE4/tQOvO5dv0qTB46yebdRwA7F0RbDYdOUYoFJu9RoM7eNkOnpvQPT5gZmcYh 18VUVcrJ4HXYIghrOROBtMHNEQPqEuNjzwxiXfRqovyviOjl06bxCHpgdpfBlC7rHOoA vRgDB6LPkVifLrrHygs3r83I/6l/q+jI9nA4CE/3rFY82XIZ/NaRHMCkDocOEcWJgVH/ 064w== X-Gm-Message-State: AO0yUKV1/2ps3WBnGAWp4OLJvlt9igcTdGjz3nioCoHDZ4uJRGofvaQn pVBC54YOqcsWDwvwtz1fnGPBXw== X-Google-Smtp-Source: AK7set8b349TneToQStuc8wRqpg6p575gxaExAvpkNXCodRjWOTreYyk5UxGc9fCPDchPDs9B8XsoA== X-Received: by 2002:a05:600c:4452:b0:3eb:2de8:b739 with SMTP id v18-20020a05600c445200b003eb2de8b739mr1958858wmn.37.1678441605417; Fri, 10 Mar 2023 01:46:45 -0800 (PST) Received: from alex-rivos.ba.rivosinc.com (amontpellier-656-1-456-62.w92-145.abo.wanadoo.fr. [92.145.124.62]) by smtp.gmail.com with ESMTPSA id iz9-20020a05600c554900b003eb369abd92sm2461929wmb.2.2023.03.10.01.46.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 10 Mar 2023 01:46:45 -0800 (PST) From: Alexandre Ghiti To: Catalin Marinas , Will Deacon , Paul Walmsley , Palmer Dabbelt , Albert Ou , Rob Herring , Frank Rowand , Mike Rapoport , Andrew Morton , Anup Patel , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org, devicetree@vger.kernel.org, linux-mm@kvack.org Cc: Alexandre Ghiti , Andrew Jones Subject: [PATCH v7 1/4] riscv: Get rid of riscv_pfn_base variable Date: Fri, 10 Mar 2023 10:45:36 +0100 Message-Id: <20230310094539.764357-2-alexghiti@rivosinc.com> X-Mailer: git-send-email 2.37.2 In-Reply-To: <20230310094539.764357-1-alexghiti@rivosinc.com> References: <20230310094539.764357-1-alexghiti@rivosinc.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspam-User: X-Rspamd-Server: rspam03 X-Stat-Signature: 6f9nnix7bwjbg33jc9nq4njdy6pomyu6 X-Rspamd-Queue-Id: C56CA1A000B X-HE-Tag: 1678441606-114069 X-HE-Meta: U2FsdGVkX18VwmAneZF1B2qWW8etuAq6Tgp17RFQnPXu3TRc8rxKWdmR9ReVRbbFgkeiitzrZCmHsjjBkiB/hWRDEHDK4a2SKrryJAGVw5eQbvxWx+hA4aKNKFwTHcwPEQV4whi9lEXgu759IHBryNNzvDzOOL8uCn5aPyI8PbOI2RpkcsO1YkXKjNQSZbOkAO0CvmRk893fhUqkdKklajV3n6C0+kxb3h1/c16dwgSdMZAPAEqKObhH/vf6Th4trpmtJSet9Qye/vkMa+AvcYwF5SSpxpMwpseV3gJZRWfY0m0FQAdY2rbL1MwgJpiN/TiiTNyTFJE816Ryi0wb63I+eo3vojXaz+PZz51TxJ6iy6zjrA+q0uUBo7604ocApJrzWmV4zeuq53JuMJKkNfKNClPXIdNzF0rqY5tudavwgKuSySLicOnYnFInbWOy3jJCCmB5CxcoaYmy5uvJiwy9Xb5a6FOc9CbSraMd380cpM4BJzgLHluwDe2yBVvNYjfnOPuNaUtqtZu4uyf3g+DPKB3h1ggse74hgVMsH9agi6KIU5L+ejqaLFVDVzNISYg/PBPsKCx9mK5YbnTn15h+H1o8Bdc8EOaP01VIkTPI2A4qkhNGy3XPzPVMGYEoTXmXUkxitl2McSdPk2zvA1bzXhZQwNiS4OH9DJtyPACjetus4HZa7BeYKUjGW9N8xJAfcIPtexyFha07gduQ62qgatRVuHknr7DVqt/DsSoRHwNqWvF6V9ELVWaHhOG9m+FdHuLlmckDuah42OC2JNgSaYQzSIR/GTGnWZEoDDWT6EOpDb+/gcLUBBIQ435f0wLNPRO74QX5EqpSWKn9TphT+VNiTnb7teG9JzJThpNahO4LQJqtjoJ181KrPt7j1d7qhJaSDn6A8MUUs9YGQ6JHz+OnpPlkAOm4qE3XHdV2APdyj2vi74hrGCcU0MH1e1VjLrXIUVSljB+SI6d fHmKLsJL 2TqYboJaeYk5PNbFEO0meCzhqBsdkLiz+u3z3uJBTSjoYgxbAKeWAqMgc3uvXXG4OXlSmOPm2kWrlKOjCNQ886oKT6un309FASw1KQCQrGMhCo7uupDAOCZGStHQOu8yk6mMs8kCV8+5Tmgc9ZVblrnitj1m6UuX1fNbK9YT1z6CwfT7B3KzE0tWYVIMhQkGUSH8MHWvvImFwB0aK5ge7e9gPVTo7hrU8uc5wbtuZiZ19Xh2u5VsCB23QSRfYRE55t00nAEwfiFzI8UHIh9IjvINbB/CGdWEchI0vl8KrI60YaARyD+OevhqB6i2QlwOHQRIzb9icIIH5rJZXYb/LK1b9iYsNSMIZDT6bANqTeJnHlA2VT9qfGx5QQG8FKdtfBWsT+56eXqqRoAWF9rImDVaAKYWsQ95Jss2vvGAJT1qbu0eURkN1PE574NnKgrdmOrq28BuG5Egiw4sbfMZHGS7Po03a/zNiCyJr6TiF7a2aeGLIsQsILA+UmMaRSYeKDZ4rz/ZtaMbfNOl+wmRhIw1mjKAEK8OK/v6bAijAMTl6ZGyZnNV7heE8mn7FvKgDIg+kBQDAAskHSpxXEi1lJk/j78DS9GdKXwA46vdoY8obfa+vi9v1uZG0H60MDOUfZpa0IY4Ek2mrwog= 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: Use directly phys_ram_base instead, riscv_pfn_base is just the pfn of the address contained in phys_ram_base. Even if there is no functional change intended in this patch, actually setting phys_ram_base that early changes the behaviour of kernel_mapping_pa_to_va during the early boot: phys_ram_base used to be zero before this patch and now it is set to the physical start address of the kernel. But it does not break the conversion of a kernel physical address into a virtual address since kernel_mapping_pa_to_va should only be used on kernel physical addresses, i.e. addresses greater than the physical start address of the kernel. Signed-off-by: Alexandre Ghiti Reviewed-by: Andrew Jones --- arch/riscv/include/asm/page.h | 3 +-- arch/riscv/mm/init.c | 6 +----- 2 files changed, 2 insertions(+), 7 deletions(-) diff --git a/arch/riscv/include/asm/page.h b/arch/riscv/include/asm/page.h index 7fed7c431928..8dc686f549b6 100644 --- a/arch/riscv/include/asm/page.h +++ b/arch/riscv/include/asm/page.h @@ -91,8 +91,7 @@ typedef struct page *pgtable_t; #endif #ifdef CONFIG_MMU -extern unsigned long riscv_pfn_base; -#define ARCH_PFN_OFFSET (riscv_pfn_base) +#define ARCH_PFN_OFFSET (PFN_DOWN((unsigned long)phys_ram_base)) #else #define ARCH_PFN_OFFSET (PAGE_OFFSET >> PAGE_SHIFT) #endif /* CONFIG_MMU */ diff --git a/arch/riscv/mm/init.c b/arch/riscv/mm/init.c index 478d6763a01a..225a7d2b65cc 100644 --- a/arch/riscv/mm/init.c +++ b/arch/riscv/mm/init.c @@ -271,9 +271,6 @@ static void __init setup_bootmem(void) #ifdef CONFIG_MMU struct pt_alloc_ops pt_ops __initdata; -unsigned long riscv_pfn_base __ro_after_init; -EXPORT_SYMBOL(riscv_pfn_base); - pgd_t swapper_pg_dir[PTRS_PER_PGD] __page_aligned_bss; pgd_t trampoline_pg_dir[PTRS_PER_PGD] __page_aligned_bss; static pte_t fixmap_pte[PTRS_PER_PTE] __page_aligned_bss; @@ -285,7 +282,6 @@ static pmd_t __maybe_unused early_dtb_pmd[PTRS_PER_PMD] __initdata __aligned(PAG #ifdef CONFIG_XIP_KERNEL #define pt_ops (*(struct pt_alloc_ops *)XIP_FIXUP(&pt_ops)) -#define riscv_pfn_base (*(unsigned long *)XIP_FIXUP(&riscv_pfn_base)) #define trampoline_pg_dir ((pgd_t *)XIP_FIXUP(trampoline_pg_dir)) #define fixmap_pte ((pte_t *)XIP_FIXUP(fixmap_pte)) #define early_pg_dir ((pgd_t *)XIP_FIXUP(early_pg_dir)) @@ -985,7 +981,7 @@ asmlinkage void __init setup_vm(uintptr_t dtb_pa) kernel_map.va_pa_offset = PAGE_OFFSET - kernel_map.phys_addr; kernel_map.va_kernel_pa_offset = kernel_map.virt_addr - kernel_map.phys_addr; - riscv_pfn_base = PFN_DOWN(kernel_map.phys_addr); + phys_ram_base = kernel_map.phys_addr; /* * The default maximal physical memory size is KERN_VIRT_SIZE for 32-bit -- 2.37.2