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 7D61EC4332F for ; Wed, 4 Jan 2023 11:37:36 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E06DD8E0002; Wed, 4 Jan 2023 06:37:35 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id DB43C8E0001; Wed, 4 Jan 2023 06:37:35 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id C7D888E0002; Wed, 4 Jan 2023 06:37:35 -0500 (EST) 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 B51538E0001 for ; Wed, 4 Jan 2023 06:37:35 -0500 (EST) Received: from smtpin18.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 818F51602D6 for ; Wed, 4 Jan 2023 11:37:35 +0000 (UTC) X-FDA: 80316916470.18.C98D611 Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75]) by imf16.hostedemail.com (Postfix) with ESMTP id C5B7E180008 for ; Wed, 4 Jan 2023 11:37:33 +0000 (UTC) Authentication-Results: imf16.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=nSfA2ISP; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf16.hostedemail.com: domain of rppt@kernel.org designates 145.40.68.75 as permitted sender) smtp.mailfrom=rppt@kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1672832254; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=JOn8nACLnp1LC6xHXaGU0TE5Y3vxQZUdrpsaoEEjz2o=; b=N2oX4nk4mqrnNdV0iJQ1ueQrJdCR14IugcRXhD9luL6b9W249iTlwURkq+31mcf6g6vAG6 kjWYLpUz3JoLuY4GBm7aVywyja8iJJiI14pvYCRrsJg/X7h3MiMesiVXGhFE5kIFGPbF5B Mxi6JZWi3rhWMuiVAy0tpE1tKF4ubl8= ARC-Authentication-Results: i=1; imf16.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=nSfA2ISP; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf16.hostedemail.com: domain of rppt@kernel.org designates 145.40.68.75 as permitted sender) smtp.mailfrom=rppt@kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1672832254; a=rsa-sha256; cv=none; b=b87EVv2DMMHEvxcaFpdvjFNCaMOqszXfpi06zUbrQvbb2VUsi0EDzYYbznzs9hNmwdM3HJ m7nMxxWnmw2qXshA9Kp2lA3ntgUyYkLrdY8SyQntG2H3uxD1MU15OayMQGS+Hj1UJzaI76 VHpO9lgXJJvW94crEYZXfuw9ytivAHs= 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 3DCACB8162A; Wed, 4 Jan 2023 11:37:32 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id D3AA1C433EF; Wed, 4 Jan 2023 11:37:23 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1672832250; bh=ifZwfrhIkTGIQJEEvqcP0bIoc8pO2AK8DydzKJqXHo4=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=nSfA2ISPrHXkRmB4FnqNjYPJVLu7CqJqDLc+3I3BJ12HetiZraycDjom0q0Xt9szC INZUSjxQoYcW5KJDMVxE99EAy16q5fCyYjxxjv8Fq9ZGxbbTerfjOk7FLZ5txZDA/Z xeANQpk7lP+aC2Lw3KmrUChI9zyfSySS4Bh6ZPxT/QwiC+ZQDrV1+MjRnh21kZWogc n/tsMfEoKuqteOM3xQnZdhfcqrK3aU8+84xqomL1bPiZbmUW9sgSqf27CAToNns0u/ bWmxyxX18ZK8u/yZVcuvTWCNGDmRKlSKH4IizVmUUJxUhbWWm5jQWpGM3CrsDddiif OMf1yBaQH/FTw== Date: Wed, 4 Jan 2023 13:37:12 +0200 From: Mike Rapoport To: Yann Sionneau Cc: Will Deacon , "Aneesh Kumar K.V" , Andrew Morton , Nick Piggin , Peter Zijlstra , Paul Walmsley , Palmer Dabbelt , Albert Ou , linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org, linux-mm@kvack.org, linux-riscv@lists.infradead.org, Clement Leger , Guillaume Thouvenin , Jean-Christophe Pince , Jules Maselbas , Julian Vetter , Julien Hascoet , Louis Morhet , Marc =?iso-8859-1?Q?Poulhi=E8s?= , Marius Gligor , Vincent Chardon Subject: Re: [RFC PATCH 11/25] kvx: Add memory management Message-ID: References: <20230103164359.24347-1-ysionneau@kalray.eu> <20230103164359.24347-12-ysionneau@kalray.eu> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20230103164359.24347-12-ysionneau@kalray.eu> X-Rspamd-Queue-Id: C5B7E180008 X-Rspamd-Server: rspam09 X-Rspam-User: X-Stat-Signature: mjrd7y86nzcfxg5j8z4eepoqux688mgo X-HE-Tag: 1672832253-195931 X-HE-Meta: U2FsdGVkX1+efBflA2OH3w9nfFRn57/IoYpBoHkzxSYC2ubRyVuRuATB/VwDAt6eyPz2pUW2fPNBuDt/GOGv9TZstyF3TKvdy0fL727fZTYIV0hcs3oZjQv5fIDU2ZC+k7wtYYdKzop0IHgp2ruYbcuo9nyV0ycHhSQaqt/s41lVQmGL6etdFPzFQW7fcLUGMsPy2E692kMD1B6Pe20SUCMDG56uMy5rXnS2EnUyicfyljN6UPmd48Lx5OEIAneuccacFVf2hRjWLoZKKc2PZaPzflAsASz1/OiNR1tnECN/gSC4X43OsAa3AUFeycYYCPDTKq/8qJAbagyh0UfaAgW09bspOAbYfTpUXwtGdV8J7551rcAnrrvS+4WFiTKpNFL0l/N7SvmiIowQt9MIzvfGSz1MZizwI66lAdvKX08W5txXC2kxfSfGntk5pywqhTS4l42LosA1lsEtdk9v2IVsNzZRC66VvEDbHcDEoFrLY1Iev6jaGIKk2yNZUcJjIK+v24wQmOgoReJcwnVCV3EzkTudhhfgYgH7I3sGDH1SzJ08hH0tcFOmtzwBWnBwjf6spPw/oJ2mxsCM/Yzskz3gnE4Ak6fk7YI9sWdKUxq/hP30pKawdj/gLClNLKB3X1H1vOUMeZtlEDmzMR4a6wxqUbFKDcfKiAqaRC8msGpErAFiFZcw+uil1qV8KITuQ9u6PR8ahS+wmhnT4u8RM4hcB5EY4Cl1QbTtkCIfdzs6mQQZkwT37UzJngTmH6rBxFd+T0b5V1bz/O4f9BG+Kh8N26C0ROeO8wRNMcdFGJLyNbwUdD2yJVBYoAApl8P72+b3WCfNOd813jKl4qdZTWSEZFaccCT6BooQIvPA26ZamVhvClvYrNYb5FAHikZsVlf7Eg6FXKn9YAglsvyy0q9pnRUxhcYVYlcazY9qtfS0tXJEjE4lmveml85V1i1W/Ks6uFWoohcuXFavFto zc9HHvRS l7ZhXm7WvJhzMI9SYKvykropj3ANjLRX7rZdg 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 Tue, Jan 03, 2023 at 05:43:45PM +0100, Yann Sionneau wrote: > Add memory management support for kvx, including: cache and tlb > management, page fault handling, ioremap/mmap and streaming dma support. > > CC: Will Deacon > CC: "Aneesh Kumar K.V" > CC: Andrew Morton > CC: Nick Piggin > CC: Peter Zijlstra > CC: Paul Walmsley > CC: Palmer Dabbelt > CC: Albert Ou > CC: linux-kernel@vger.kernel.org > CC: linux-arch@vger.kernel.org > CC: linux-mm@kvack.org > CC: linux-riscv@lists.infradead.org > Co-developed-by: Clement Leger > Signed-off-by: Clement Leger > Co-developed-by: Guillaume Thouvenin > Signed-off-by: Guillaume Thouvenin > Co-developed-by: Jean-Christophe Pince > Signed-off-by: Jean-Christophe Pince > Co-developed-by: Jules Maselbas > Signed-off-by: Jules Maselbas > Co-developed-by: Julian Vetter > Signed-off-by: Julian Vetter > Co-developed-by: Julien Hascoet > Signed-off-by: Julien Hascoet > Co-developed-by: Louis Morhet > Signed-off-by: Louis Morhet > Co-developed-by: Marc Poulhičs > Signed-off-by: Marc Poulhičs > Co-developed-by: Marius Gligor > Signed-off-by: Marius Gligor > Co-developed-by: Vincent Chardon > Signed-off-by: Vincent Chardon > Co-developed-by: Yann Sionneau > Signed-off-by: Yann Sionneau > --- > arch/kvx/include/asm/cache.h | 46 +++ > arch/kvx/include/asm/cacheflush.h | 181 +++++++++ > arch/kvx/include/asm/fixmap.h | 47 +++ > arch/kvx/include/asm/hugetlb.h | 36 ++ > arch/kvx/include/asm/l2_cache.h | 75 ++++ > arch/kvx/include/asm/l2_cache_defs.h | 64 ++++ > arch/kvx/include/asm/mem_map.h | 44 +++ > arch/kvx/include/asm/mmu.h | 296 +++++++++++++++ > arch/kvx/include/asm/mmu_context.h | 156 ++++++++ > arch/kvx/include/asm/mmu_stats.h | 38 ++ > arch/kvx/include/asm/page.h | 187 ++++++++++ > arch/kvx/include/asm/page_size.h | 29 ++ > arch/kvx/include/asm/pgalloc.h | 101 +++++ > arch/kvx/include/asm/pgtable-bits.h | 102 ++++++ > arch/kvx/include/asm/pgtable.h | 451 +++++++++++++++++++++++ > arch/kvx/include/asm/rm_fw.h | 16 + > arch/kvx/include/asm/sparsemem.h | 15 + > arch/kvx/include/asm/symbols.h | 16 + > arch/kvx/include/asm/tlb.h | 24 ++ > arch/kvx/include/asm/tlb_defs.h | 131 +++++++ > arch/kvx/include/asm/tlbflush.h | 58 +++ > arch/kvx/include/asm/vmalloc.h | 10 + > arch/kvx/mm/cacheflush.c | 154 ++++++++ > arch/kvx/mm/dma-mapping.c | 95 +++++ > arch/kvx/mm/extable.c | 24 ++ > arch/kvx/mm/fault.c | 264 ++++++++++++++ > arch/kvx/mm/hugetlbpage.c | 317 ++++++++++++++++ > arch/kvx/mm/init.c | 527 +++++++++++++++++++++++++++ > arch/kvx/mm/kernel_rwx.c | 228 ++++++++++++ > arch/kvx/mm/mmap.c | 31 ++ > arch/kvx/mm/mmu.c | 204 +++++++++++ > arch/kvx/mm/mmu_stats.c | 94 +++++ > arch/kvx/mm/tlb.c | 433 ++++++++++++++++++++++ > 33 files changed, 4494 insertions(+) Please strip functionality that's not essential for boot and the re-add it after the very core code is merged. I'd say multiple page size, hugetlb and strict RWX are not necessary to start with. I'd also suggest to have separate patches for different parts, like cache and tlb management, page tables and page fault fault handling, ioremap/mmap and streaming dma support. -- Sincerely yours, Mike.