Subject: Re: [PATCH] powerpc/mm/hugetlb: Use the correct page size when flushing hugepage tlb

From: Nicholas Piggin <[email-masked]>
Date: Mon, 28 May 2018 19:08:43 +1000

On Tue, 22 May 2018 14:42:09 +0530
"Aneesh Kumar K.V" <[email-masked]> wrote:

> We used wrong page size (mmu_virtual_psize) when doing a tlbflush after
> pte update. This patch update the flush to use hugetlb page size.
> The page size is derived from hugetlb hstate.
> 
> Now that ptep_set_access_flags won't be called for hugetlb remove
> the is_vm_hugetlb_page() check and add the assert of pte lock
> unconditionally.

radix__flush_tlb_page seems to check for a hugepage vma and flush the
right page size in that case. So is there a case where the flush size
actually goes wrong?

I do think if we could make hugetlb flushing always use
flush_hugetlb_page version and take the test out of flush_tlb_page I
think that would be nicer code (I haven't checked if that's feasible
after this patch), but that wouldn't be a bug-fix.

Thanks,
Nick