iommu/arm-smmu: fix table flushing during initial allocations
authorWill Deacon <will.deacon@arm.com>
Wed, 5 Feb 2014 17:49:34 +0000 (17:49 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 7 Mar 2014 06:06:26 +0000 (22:06 -0800)
commitbf6d0428283db250d9dde3e7fb6ca51fc490d5d7
treee4afeab5bf7a48d20c740b63607ee4158211c196
parentd38c6fee4dcd002f9936f4936334d95632bab064
iommu/arm-smmu: fix table flushing during initial allocations

commit 6dd35f45b8dac827b6f9dd86f5aca6436cdd2410 upstream.

Now that we populate page tables as we traverse them ("iommu/arm-smmu:
fix pud/pmd entry fill sequence"), we need to ensure that we flush out
our zeroed tables after initial allocation, to prevent speculative TLB
fills using bogus data.

This patch adds additional calls to arm_smmu_flush_pgtable during
initial table allocation, and moves the dsb required by coherent table
walkers into the helper.

Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/iommu/arm-smmu.c