From: "Arnd Bergmann" <arnd@arndb.de>
To: "Samuel Holland" <samuel.holland@sifive.com>,
"Arnd Bergmann" <arnd@kernel.org>,
"Thomas Gleixner" <tglx@linutronix.de>,
"Vincenzo Frascino" <vincenzo.frascino@arm.com>,
"Kees Cook" <keescook@chromium.org>,
"Anna-Maria Gleixner" <anna-maria@linutronix.de>
Cc: "Matt Turner" <mattst88@gmail.com>,
"Vineet Gupta" <vgupta@kernel.org>,
"Russell King" <linux@armlinux.org.uk>,
"Catalin Marinas" <catalin.marinas@arm.com>,
guoren <guoren@kernel.org>, "Brian Cain" <bcain@quicinc.com>,
"Huacai Chen" <chenhuacai@kernel.org>,
"Geert Uytterhoeven" <geert@linux-m68k.org>,
"Michal Simek" <monstr@monstr.eu>,
"Thomas Bogendoerfer" <tsbogend@alpha.franken.de>,
"Helge Deller" <deller@gmx.de>,
"Michael Ellerman" <mpe@ellerman.id.au>,
"Christophe Leroy" <christophe.leroy@csgroup.eu>,
"Palmer Dabbelt" <palmer@dabbelt.com>,
"John Paul Adrian Glaubitz" <glaubitz@physik.fu-berlin.de>,
"Andreas Larsson" <andreas@gaisler.com>,
"Richard Weinberger" <richard@nod.at>,
x86@kernel.org, "Max Filippov" <jcmvbkbc@gmail.com>,
"Andy Lutomirski" <luto@kernel.org>,
"Jan Kiszka" <jan.kiszka@siemens.com>,
"Kieran Bingham" <kbingham@kernel.org>,
"Andrew Morton" <akpm@linux-foundation.org>,
linux-kernel@vger.kernel.org, linux-alpha@vger.kernel.org,
linux-snps-arc@lists.infradead.org,
linux-arm-kernel@lists.infradead.org,
"linux-csky@vger.kernel.org" <linux-csky@vger.kernel.org>,
linux-hexagon@vger.kernel.org, loongarch@lists.linux.dev,
linux-m68k@lists.linux-m68k.org, linux-mips@vger.kernel.org,
"linux-openrisc@vger.kernel.org" <linux-openrisc@vger.kernel.org>,
linux-parisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org,
linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org,
linux-sh@vger.kernel.org, sparclinux@vger.kernel.org,
linux-um@lists.infradead.org
Subject: Re: [PATCH 1/4] arch: consolidate existing CONFIG_PAGE_SIZE_*KB definitions
Date: Tue, 27 Feb 2024 16:40:34 +0100 [thread overview]
Message-ID: <83450530-c908-4abc-bab7-88c50a3143ff@app.fastmail.com> (raw)
In-Reply-To: <764fafb0-2206-4ab1-84ea-ebb7848c8ff2@sifive.com>
On Mon, Feb 26, 2024, at 17:55, Samuel Holland wrote:
> On 2024-02-26 10:14 AM, Arnd Bergmann wrote:
>>
>> +config HAVE_PAGE_SIZE_4KB
>> + bool
>> +
>> +config HAVE_PAGE_SIZE_8KB
>> + bool
>> +
>> +config HAVE_PAGE_SIZE_16KB
>> + bool
>> +
>> +config HAVE_PAGE_SIZE_32KB
>> + bool
>> +
>> +config HAVE_PAGE_SIZE_64KB
>> + bool
>> +
>> +config HAVE_PAGE_SIZE_256KB
>> + bool
>> +
>> +choice
>> + prompt "MMU page size"
>
> Should this have some generic help text (at least a warning about
> compatibility)?
Good point. I've added some of this now, based on the mips
text with some generalizations for other architectures:
config PAGE_SIZE_4KB
bool "4KiB pages"
depends on HAVE_PAGE_SIZE_4KB
help
This option select the standard 4KiB Linux page size and the only
available option on many architectures. Using 4KiB page size will
minimize memory consumption and is therefore recommended for low
memory systems.
Some software that is written for x86 systems makes incorrect
assumptions about the page size and only runs on 4KiB pages.
config PAGE_SIZE_8KB
bool "8KiB pages"
depends on HAVE_PAGE_SIZE_8KB
help
This option is the only supported page size on a few older
processors, and can be slightly faster than 4KiB pages.
config PAGE_SIZE_16KB
bool "16KiB pages"
depends on HAVE_PAGE_SIZE_16KB
help
This option is usually a good compromise between memory
consumption and performance for typical desktop and server
workloads, often saving a level of page table lookups compared
to 4KB pages as well as reducing TLB pressure and overhead of
per-page operations in the kernel at the expense of a larger
page cache.
config PAGE_SIZE_32KB
bool "32KiB pages"
depends on HAVE_PAGE_SIZE_32KB
Using 32KiB page size will result in slightly higher performance
kernel at the price of higher memory consumption compared to
16KiB pages. This option is available only on cnMIPS cores.
Note that you will need a suitable Linux distribution to
support this.
config PAGE_SIZE_64KB
bool "64KiB pages"
depends on HAVE_PAGE_SIZE_64KB
Using 64KiB page size will result in slightly higher performance
kernel at the price of much higher memory consumption compared to
4KiB or 16KiB pages.
This is not suitable for general-purpose workloads but the
better performance may be worth the cost for certain types of
supercomputing or database applications that work mostly with
large in-memory data rather than small files.
config PAGE_SIZE_256KB
bool "256KiB pages"
depends on HAVE_PAGE_SIZE_256KB
help
256KB pages have little practical value due to their extreme
memory usage.
>> diff --git a/arch/hexagon/Kconfig b/arch/hexagon/Kconfig
>> index a880ee067d2e..aac46ee1a000 100644
>> --- a/arch/hexagon/Kconfig
>> +++ b/arch/hexagon/Kconfig
>> @@ -8,6 +8,11 @@ config HEXAGON
>> select ARCH_HAS_SYNC_DMA_FOR_DEVICE
>> select ARCH_NO_PREEMPT
>> select DMA_GLOBAL_POOL
>> + select FRAME_POINTER
>
> Looks like a paste error.
>
Fixed, thanks! I think that happened during a rebase.
>> #ifdef CONFIG_PAGE_SIZE_1MB
>> -#define PAGE_SHIFT 20
>> #define HEXAGON_L1_PTE_SIZE __HVM_PDE_S_1MB
>> #endif
>
> The corresponding Kconfig option does not exist (and did not exist before this
> patch).
Yes, I noticed that as well. It's clearly harmless.
Arnd
next prev parent reply other threads:[~2024-02-27 15:40 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-02-26 16:14 [PATCH 0/4] arch: mm, vdso: consolidate PAGE_SIZE definition Arnd Bergmann
2024-02-26 16:14 ` [PATCH 1/4] arch: consolidate existing CONFIG_PAGE_SIZE_*KB definitions Arnd Bergmann
2024-02-26 16:55 ` Samuel Holland
2024-02-27 15:40 ` Arnd Bergmann [this message]
2024-02-27 15:44 ` Christophe Leroy
2024-02-27 15:48 ` Arnd Bergmann
2024-02-26 19:02 ` Christophe Leroy
2024-02-27 15:42 ` Arnd Bergmann
2024-02-27 8:45 ` Geert Uytterhoeven
2024-02-27 15:43 ` Arnd Bergmann
2024-02-26 16:14 ` [PATCH 2/4] arch: simplify architecture specific page size configuration Arnd Bergmann
2024-02-26 19:05 ` Christophe Leroy
2024-02-27 13:46 ` Catalin Marinas
2024-02-27 13:53 ` Helge Deller
2024-02-26 16:14 ` [PATCH 3/4] arch: define CONFIG_PAGE_SIZE_*KB on all architectures Arnd Bergmann
2024-02-27 0:49 ` Guo Ren
2024-02-27 7:41 ` Heiko Carstens
2024-02-27 8:54 ` Geert Uytterhoeven
2024-02-27 10:59 ` Arnd Bergmann
2024-02-27 11:12 ` Geert Uytterhoeven
2024-02-27 14:18 ` Arnd Bergmann
2024-02-28 21:06 ` Stafford Horne
2024-03-05 10:59 ` Johannes Berg
2024-02-26 16:14 ` [PATCH 4/4] vdso: avoid including asm/page.h Arnd Bergmann
2024-02-26 18:53 ` Christophe Leroy
2024-02-27 12:57 ` Michael Ellerman
2024-02-27 13:46 ` Catalin Marinas
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=83450530-c908-4abc-bab7-88c50a3143ff@app.fastmail.com \
--to=arnd@arndb.de \
--cc=akpm@linux-foundation.org \
--cc=andreas@gaisler.com \
--cc=anna-maria@linutronix.de \
--cc=arnd@kernel.org \
--cc=bcain@quicinc.com \
--cc=catalin.marinas@arm.com \
--cc=chenhuacai@kernel.org \
--cc=christophe.leroy@csgroup.eu \
--cc=deller@gmx.de \
--cc=geert@linux-m68k.org \
--cc=glaubitz@physik.fu-berlin.de \
--cc=guoren@kernel.org \
--cc=jan.kiszka@siemens.com \
--cc=jcmvbkbc@gmail.com \
--cc=kbingham@kernel.org \
--cc=keescook@chromium.org \
--cc=linux-alpha@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-csky@vger.kernel.org \
--cc=linux-hexagon@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-m68k@lists.linux-m68k.org \
--cc=linux-mips@vger.kernel.org \
--cc=linux-openrisc@vger.kernel.org \
--cc=linux-parisc@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=linux-s390@vger.kernel.org \
--cc=linux-sh@vger.kernel.org \
--cc=linux-snps-arc@lists.infradead.org \
--cc=linux-um@lists.infradead.org \
--cc=linux@armlinux.org.uk \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=loongarch@lists.linux.dev \
--cc=luto@kernel.org \
--cc=mattst88@gmail.com \
--cc=monstr@monstr.eu \
--cc=mpe@ellerman.id.au \
--cc=palmer@dabbelt.com \
--cc=richard@nod.at \
--cc=samuel.holland@sifive.com \
--cc=sparclinux@vger.kernel.org \
--cc=tglx@linutronix.de \
--cc=tsbogend@alpha.franken.de \
--cc=vgupta@kernel.org \
--cc=vincenzo.frascino@arm.com \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).