Re: [RFC PATCH 09/11] asm-generic/tlb: Track which levels of the page tables have been cleared

Peter Zijlstra
2018-08-27T07:53:48Z

On Fri, Aug 24, 2018 at 04:52:44PM +0100, Will Deacon wrote:
> +static inline unsigned long tlb_get_unmap_granule(struct mmu_gather *tlb)
> +{
> + if (tlb->cleared_ptes)
> + return PAGE_SIZE;
> + if (tlb->cleared_pmds)
> + return PMD_SIZE;
> + if (tlb->cleared_puds)
> + return PUD_SIZE;
> + if (tlb->cleared_p4ds)
> + return P4D_SIZE;
> +
> + return PAGE_SIZE;
> +}

When doing the x86 patch; I found _SHIFT more useful than _SIZE.