ARM: 7787/1: virt: ensure visibility of __boot_cpu_mode
authorMark Rutland <mark.rutland@arm.com>
Thu, 18 Jul 2013 16:20:33 +0000 (17:20 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Fri, 26 Jul 2013 11:01:17 +0000 (12:01 +0100)
commit8fbac214e5c594a0c2fe78c14adf2cdbb1febc92
tree0f331dcd30fb4110f10afe7cde11bc40b8f83ada
parentab8d46c0609843a83aef3f486365ca5e7c21d537
ARM: 7787/1: virt: ensure visibility of __boot_cpu_mode

Secondary CPUs write to __boot_cpu_mode with caches disabled, and thus a
cached value of __boot_cpu_mode may be incoherent with that in memory.
This could lead to a failure to detect mismatched boot modes.

This patch adds flushing to ensure that writes by secondaries to
__boot_cpu_mode are made visible before we test against it.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Acked-by: Dave Martin <Dave.Martin@arm.com>
Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Cc: Christoffer Dall <cdall@cs.columbia.edu>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/include/asm/virt.h
arch/arm/kernel/setup.c