Re: [PATCH RFC 2/2] mm/x86/pat: Do proper PAT bit shift for large mappings

From: Dave Hansen
Date: Thu May 23 2024 - 18:48:43 EST


On 5/23/24 15:37, Peter Xu wrote:
> diff --git a/mm/huge_memory.c b/mm/huge_memory.c
> index 317de2afd371..c4a2356b1a54 100644
> --- a/mm/huge_memory.c
> +++ b/mm/huge_memory.c
> @@ -1135,7 +1135,7 @@ static void insert_pfn_pmd(struct vm_area_struct *vma, unsigned long addr,
> goto out_unlock;
> }
>
> - entry = pmd_mkhuge(pfn_t_pmd(pfn, prot));
> + entry = pmd_mkhuge(pfn_t_pmd(pfn, pgprot_4k_2_large(prot)));
> if (pfn_t_devmap(pfn))
> entry = pmd_mkdevmap(entry);
> if (write) {

Does this even compile on non-x86 architectures?