On Tue, 22 May 2018 14:42:09 +0530 "Aneesh Kumar K.V" <aneesh.ku...@linux.ibm.com> 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