On 2023/3/25 14:08, Mike Rapoport wrote:
From: "Mike Rapoport (IBM)" <r...@kernel.org>

The prompt and help text of ARCH_FORCE_MAX_ORDER are not even close to
describe this configuration option.

Update both to actually describe what this option does.

Acked-by: Kirill A. Shutemov <kirill.shute...@linux.intel.com>
Reviewed-by: Zi Yan <z...@nvidia.com>
Signed-off-by: Mike Rapoport (IBM) <r...@kernel.org>

Reviewed-by: Kefeng Wang <wangkefeng.w...@huawei.com>

---
  arch/arm64/Kconfig | 24 ++++++++++++------------
  1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index 7324032af859..cc11cdcf5a00 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -1487,24 +1487,24 @@ config XEN
  # 16K |       27          |      14      |       13        |         11       
  |
  # 64K |       29          |      16      |       13        |         13       
  |
  config ARCH_FORCE_MAX_ORDER
-       int "Maximum zone order" if EXPERT && (ARM64_4K_PAGES || 
ARM64_16K_PAGES)
+       int "Order of maximal physically contiguous allocations" if EXPERT && 
(ARM64_4K_PAGES || ARM64_16K_PAGES)
        default "13" if ARM64_64K_PAGES
        default "11" if ARM64_16K_PAGES
        default "10"
        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.
+         The kernel page allocator limits the size of maximal physically
+         contiguous allocations. The limit is called MAX_ORDER and it
+         defines the maximal power of two of number of pages that can be
+         allocated as a single contiguous block. This option allows
+         overriding the default setting when ability to allocate very
+         large blocks of physically contiguous memory is required.
- We make sure that we can allocate up to a HugePage size for each configuration.
-         Hence we have :
-               MAX_ORDER = PMD_SHIFT - PAGE_SHIFT  => PAGE_SHIFT - 3
+         The maximal size of allocation cannot exceed the size of the
+         section, so the value of MAX_ORDER should satisfy
- However for 4K, we choose a higher default value, 10 as opposed to 9, giving us
-         4M allocations matching the default size used by generic code.
+           MAX_ORDER + PAGE_SHIFT <= SECTION_SIZE_BITS
+
+         Don't change if unsure.
config UNMAP_KERNEL_AT_EL0
        bool "Unmap kernel when running in userspace (aka \"KAISER\")" if EXPERT

Reply via email to