ARM: 6772/1: errata: possible fault MMU translations following an ASID switch
authorWill Deacon <will.deacon@arm.com>
Mon, 28 Feb 2011 17:15:16 +0000 (18:15 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Wed, 9 Mar 2011 21:40:12 +0000 (21:40 +0000)
commitfcbdc5fe6ebe07d502c9b652cb63376bcc4227ac
tree6472c243e21776c0fcac35d01b77924ed1c16e11
parentf5412be599602124d2bdd49947b231dd77c0bf99
ARM: 6772/1: errata: possible fault MMU translations following an ASID switch

On the r2p* and r3p* versions of the Cortex-A9, a speculative memory
access may cause a page table walk which starts prior to an ASID switch
but completes afterwards. This can populate the micro-TLB with a stale
entry which may be hit with the new ASID.

This workaround places two dsb instructions in the mm switching code so
that no page table walks can cross the ASID switch.

Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/Kconfig
arch/arm/mm/proc-v7.S