Messages in this thread | | | Date | Thu, 16 Mar 2023 18:57:35 -0700 | Subject | Re: [PATCH 10/10] mm, treewide: Redefine MAX_ORDER sanely | From | Vineet Gupta <> |
| |
On 3/16/23 16:30, Kirill A. Shutemov wrote: > On Thu, Mar 16, 2023 at 11:15:47AM -0700, Mike Kravetz wrote: >> On 03/15/23 14:31, Kirill A. Shutemov wrote: >>> MAX_ORDER currently defined as number of orders page allocator supports: >>> user can ask buddy allocator for page order between 0 and MAX_ORDER-1. >>> >>> This definition is counter-intuitive and lead to number of bugs all over >>> the kernel. >>> >>> Change the definition of MAX_ORDER to be inclusive: the range of orders >>> user can ask from buddy allocator is 0..MAX_ORDER now. >>> >>> --- a/arch/arc/Kconfig >>> +++ b/arch/arc/Kconfig >>> @@ -556,7 +556,7 @@ endmenu # "ARC Architecture Configuration" >>> >>> config ARCH_FORCE_MAX_ORDER >>> int "Maximum zone order" >>> - default "12" if ARC_HUGEPAGE_16M >>> - default "11" >>> + default "11" if ARC_HUGEPAGE_16M >>> + default "10" >> Is this Kconfig file wrong (off by 1) today? It seems like it wants MAX_ORDER >> to be sufficiently large to allocate 16M if ARC_HUGEPAGE_16M. So, seems like >> it should be 13 today? > +Vineet. > > Hm. I think it is okay as long as CONFIG_ARC_PAGE_SIZE_8K=y which is > default, but breaks for other PAGE_SIZE. > > Looks like ARCH_FORCE_MAX_ORDER calculation should involve selected page > size.
Thats right 8K is default for ARC.
-Vineet
| |