"Aneesh Kumar K.V" <aneesh.ku...@linux.vnet.ibm.com> writes:
> We don't support allocating them runtime. Only supported mechanism as of now > is > HMC based hypervisor interface. So disable 16G hugetlb on powernv platform > > Signed-off-by: Aneesh Kumar K.V <aneesh.ku...@linux.vnet.ibm.com> > --- > > May be this should go to -stable ?. To show the 16G pagesize in > /sys/kernel/mm/hugepages/ confuse users It's a bit of a hack :/ 16G also shows up on pseries, when there are no pages pre-allocated, which is also confusing. Ideally we'd only show sizes that can be allocated at runtime, OR were preallocated, regardless of platform. Is there an easy way to do that? cheers > arch/powerpc/mm/hugetlbpage.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/arch/powerpc/mm/hugetlbpage.c b/arch/powerpc/mm/hugetlbpage.c > index e1bf5ca397fe..28ea94da0707 100644 > --- a/arch/powerpc/mm/hugetlbpage.c > +++ b/arch/powerpc/mm/hugetlbpage.c > @@ -24,6 +24,7 @@ > #include <asm/tlb.h> > #include <asm/setup.h> > #include <asm/hugetlb.h> > +#include <asm/machdep.h> > > #ifdef CONFIG_HUGETLB_PAGE > > @@ -749,7 +750,8 @@ static int __init add_huge_page_size(unsigned long long > size) > return -EINVAL; > } > } else { > - if (mmu_psize != MMU_PAGE_16M && mmu_psize != MMU_PAGE_16G) > + if ((mmu_psize != MMU_PAGE_16M && mmu_psize != MMU_PAGE_16G) > + || (mmu_psize == MMU_PAGE_16G && machine_is(powernv))) > return -EINVAL; > } > #endif > -- > 2.7.4