[PATCH v8 4/4] hugetlb: allow to free gigantic pages regardless of the configuration
Aneesh Kumar K.V
aneesh.kumar at linux.ibm.com
Wed Mar 27 18:01:10 AEDT 2019
On 3/27/19 12:06 PM, Alexandre Ghiti wrote:
> On systems without CONTIG_ALLOC activated but that support gigantic pages,
> boottime reserved gigantic pages can not be freed at all. This patch
> simply enables the possibility to hand back those pages to memory
> allocator.
>
> Signed-off-by: Alexandre Ghiti <alex at ghiti.fr>
> Acked-by: David S. Miller <davem at davemloft.net> [sparc]
>
> diff --git a/arch/powerpc/include/asm/book3s/64/hugetlb.h b/arch/powerpc/include/asm/book3s/64/hugetlb.h
> index ec2a55a553c7..7013284f0f1b 100644
> --- a/arch/powerpc/include/asm/book3s/64/hugetlb.h
> +++ b/arch/powerpc/include/asm/book3s/64/hugetlb.h
> @@ -36,8 +36,8 @@ static inline int hstate_get_psize(struct hstate *hstate)
> }
> }
>
> -#ifdef CONFIG_ARCH_HAS_GIGANTIC_PAGE
> -static inline bool gigantic_page_supported(void)
> +#define __HAVE_ARCH_GIGANTIC_PAGE_RUNTIME_SUPPORTED
> +static inline bool gigantic_page_runtime_supported(void)
> {
> /*
> * We used gigantic page reservation with hypervisor assist in some case.
> @@ -49,7 +49,6 @@ static inline bool gigantic_page_supported(void)
>
> return true;
> }
> -#endif
>
> /* hugepd entry valid bit */
> #define HUGEPD_VAL_BITS (0x8000000000000000UL)
Is that correct when CONTIG_ALLOC is not enabled? I guess we want
gigantic_page_runtime_supported to return false when CONTIG_ALLOC is not
enabled on all architectures and on POWER when it is enabled we want it
to be conditional as it is now.
-aneesh
More information about the Linuxppc-dev
mailing list