asm-generic/tlb: Track freeing of page-table directories in struct mmu_gather
authorPeter Zijlstra <peterz@infradead.org>
Thu, 23 Aug 2018 19:27:25 +0000 (20:27 +0100)
committerWill Deacon <will.deacon@arm.com>
Tue, 4 Sep 2018 10:08:26 +0000 (11:08 +0100)
commit22a61c3c4f1379ef8b0ce0d5cb78baf3178950e2
tree78157ea5d95eb8f7da534a40ef6cdb7a5a13c031
parentfaaadaf315b48d40b39bf4f0011fa740f40fbe9e
asm-generic/tlb: Track freeing of page-table directories in struct mmu_gather

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 struct mmu_gather so that the
architecture code can operate accordingly if it's the intermediate
levels being invalidated.

Acked-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
include/asm-generic/tlb.h