diff options
author | David Daney <ddaney@caviumnetworks.com> | 2010-10-11 14:52:45 -0700 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2010-12-16 18:11:02 +0000 |
commit | c9bace7ca1e2aeb95754ebc92c8f88a9f215691d (patch) | |
tree | a42a86dee05efba73770434d5020abaae7750a72 | |
parent | 82b89152f00f7ad17844d5614d5011e8d7944ac9 (diff) | |
download | linux-3.10-c9bace7ca1e2aeb95754ebc92c8f88a9f215691d.tar.gz linux-3.10-c9bace7ca1e2aeb95754ebc92c8f88a9f215691d.tar.bz2 linux-3.10-c9bace7ca1e2aeb95754ebc92c8f88a9f215691d.zip |
MIPS: Add a CONFIG_FORCE_MAX_ZONEORDER Kconfig option.
For huge page support with base page size of 16K or 32K, we have to
increase the MAX_ORDER so that huge pages can be allocated.
[Ralf: I don't think a user should have to configure obscure constants like
this but for the time being this will have to suffice.]
Signed-off-by: David Daney <ddaney@caviumnetworks.com>
To: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/1685/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
-rw-r--r-- | arch/mips/Kconfig | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig index 7fc6bd1d385..0a9b5b8b2a1 100644 --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig @@ -1666,6 +1666,28 @@ config PAGE_SIZE_64KB endchoice +config FORCE_MAX_ZONEORDER + int "Maximum zone order" + range 13 64 if SYS_SUPPORTS_HUGETLBFS && PAGE_SIZE_32KB + default "13" if SYS_SUPPORTS_HUGETLBFS && PAGE_SIZE_32KB + range 12 64 if SYS_SUPPORTS_HUGETLBFS && PAGE_SIZE_16KB + default "12" if SYS_SUPPORTS_HUGETLBFS && PAGE_SIZE_16KB + range 11 64 + default "11" + help + The kernel memory allocator divides physically contiguous memory + blocks into "zones", where each zone is a power of two number of + pages. This option selects the largest power of two that the kernel + keeps in the memory allocator. If you need to allocate very large + blocks of physically contiguous memory, then you may need to + increase this value. + + This config option is actually maximum order plus one. For example, + a value of 11 means that the largest free memory block is 2^10 pages. + + The page size is not necessarily 4KB. Keep this in mind + when choosing a value for this option. + config BOARD_SCACHE bool |