[PATCH v2 2/2] powerpc/mm/hugetlb: Add support for reserving gigantic huge pages via kernel command line

Tyrel Datwyler tyreld at linux.vnet.ibm.com
Fri Jun 2 05:11:29 AEST 2017


On 06/01/2017 09:42 AM, christophe leroy wrote:
> 
> 
> Le 01/06/2017 à 16:30, Aneesh Kumar K.V a écrit :
>> With commit aa888a74977a8 ("hugetlb: support larger than MAX_ORDER") we added
>> support for allocating gigantic hugepages via kernel command line. Switch
>> ppc64 arch specific code to use that.
> 
> Is it only ppc64 ? Your patch removes things defined for the 8xx and 
> modifies stuff in init_32.c
> 
> On the 8xx, as far as I remember, 8M pages on 4k pages mode are above 
> default MAX_ORDER, I solved it by increasing MAX_ORDER. Is that wrong ?
> 
>>
>> W.r.t FSL support, we now limit our allocation range using BOOTMEM_ALLOC_ACCESSIBLE.
>>
>> We use the kernel command line to do reservation of hugetlb pages on powernv
>> platforms. On pseries hash mmu mode the supported gigantic huge page size is
>> 16GB and that can only be allocated with hypervisor assist. For pseries the
>> command line option doesn't do the allocation. Instead pseries does gigantic
>> hugepage allocation based on hypervisor hint that is specified via
>> "ibm,expected#pages" property of the memory node.
>>
>> Cc: Scott Wood <oss at buserror.net>
>> Cc: Christophe Leroy <christophe.leroy at c-s.fr>
>> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar at linux.vnet.ibm.com>
>> ---
>>  arch/powerpc/include/asm/book3s/64/mmu-hash.h |   2 +-
>>  arch/powerpc/include/asm/hugetlb.h            |  14 --
>>  arch/powerpc/kernel/setup-common.c            |   7 -
>>  arch/powerpc/mm/hash_utils_64.c               |   2 +-
>>  arch/powerpc/mm/hugetlbpage.c                 | 177 +++-----------------------
>>  arch/powerpc/mm/init_32.c                     |   2 -
>>  6 files changed, 22 insertions(+), 182 deletions(-)
>>
>> diff --git a/arch/powerpc/include/asm/book3s/64/mmu-hash.h b/arch/powerpc/include/asm/book3s/64/mmu-hash.h
>> index 6981a52b3887..67766e60a6b6 100644
>> --- a/arch/powerpc/include/asm/book3s/64/mmu-hash.h
>> +++ b/arch/powerpc/include/asm/book3s/64/mmu-hash.h
>> @@ -468,7 +468,7 @@ extern int htab_bolt_mapping(unsigned long vstart, unsigned long vend,
>>  			     int psize, int ssize);
>>  int htab_remove_mapping(unsigned long vstart, unsigned long vend,
>>  			int psize, int ssize);
>> -extern void add_gpage(u64 addr, u64 page_size, unsigned long number_of_pages);
>> +extern void pSeries_add_gpage(u64 addr, u64 page_size, unsigned long number_of_pages);
> 
> Linux kernel coding style says 'mixed-case names are frowned upon'

True, but there is precedent within arch/powerpc/platforms/pseries seeing as "pSeries_" is
already used heavily to prefix function names.

-Tyrel

> 
> Christophe
> 
> ---
> L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
> https://www.avast.com/antivirus
> 



More information about the Linuxppc-dev mailing list