Re: [RFC PATCH 08/11] asm-generic/tlb: Track freeing of page-table directories in struct mmu_gather

2018-08-28 Thread Nicholas Piggin
On Tue, 28 Aug 2018 15:46:38 +0200 Peter Zijlstra wrote: > On Mon, Aug 27, 2018 at 02:44:57PM +1000, Nicholas Piggin wrote: > > > powerpc may be able to use the unmap granule thing to improve > > its page size dependent flushes, but it might prefer to go > > a different way and track start-end f

Re: [RFC PATCH 08/11] asm-generic/tlb: Track freeing of page-table directories in struct mmu_gather

2018-08-28 Thread Peter Zijlstra
On Tue, Aug 28, 2018 at 03:46:38PM +0200, Peter Zijlstra wrote: > On Mon, Aug 27, 2018 at 02:44:57PM +1000, Nicholas Piggin wrote: > > > powerpc may be able to use the unmap granule thing to improve > > its page size dependent flushes, but it might prefer to go > > a different way and track start-

Re: [RFC PATCH 08/11] asm-generic/tlb: Track freeing of page-table directories in struct mmu_gather

2018-08-28 Thread Peter Zijlstra
On Mon, Aug 27, 2018 at 02:44:57PM +1000, Nicholas Piggin wrote: > powerpc may be able to use the unmap granule thing to improve > its page size dependent flushes, but it might prefer to go > a different way and track start-end for different page sizes. I don't really see how tracking multiple ra

Re: [RFC PATCH 08/11] asm-generic/tlb: Track freeing of page-table directories in struct mmu_gather

2018-08-26 Thread Nicholas Piggin
On Fri, 24 Aug 2018 16:52:43 +0100 Will Deacon wrote: > From: Peter Zijlstra > > Some architectures require different TLB invalidation instructions > depending on whether it is only the last-level of page table being > changed, or whether there are also changes to the intermediate > (directory)

[RFC PATCH 08/11] asm-generic/tlb: Track freeing of page-table directories in struct mmu_gather

2018-08-24 Thread Will Deacon
From: Peter Zijlstra Some architectures require different TLB invalidation instructions depending on whether it is only the last-level of page table being changed, or whether there are also changes to the intermediate (directory) entries higher up the tree. Add a new bit to the flags bitfield in