]> git.baikalelectronics.ru Git - kernel.git/commit
ARM: smp: flush L1 cache in cpu_die()
authorRussell King <rmk+kernel@arm.linux.org.uk>
Thu, 18 Apr 2013 17:05:29 +0000 (18:05 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Thu, 18 Apr 2013 19:08:04 +0000 (20:08 +0100)
commit698fcc7394ff7d4304eafaf15fc67b80c68049c1
treeb1195cfa0a049e91369ce1de5a524ca239a114b5
parentcb486146a10786d41b27e061d47ba54508fe1311
ARM: smp: flush L1 cache in cpu_die()

Flush the L1 cache for the CPU which is going down in cpu_die() so
that we don't end up with all platforms doing this.  This ensures
that any cache lines we own are pushed out before the cache becomes
inaccessible.

We may end up subsequently creating some dirty cache lines - for
example, with the complete() call, but this update must become
visible to other CPUs before __cpu_die() can proceed.  Subsequent
accesses from the platforms cpu_die() function should _not_ matter.

Also place a mb() after the complete() call to ensure that this is
visible to other CPUs.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/kernel/smp.c