Skip to content
Commit 621a0147 authored by Will Deacon's avatar Will Deacon Committed by Russell King
Browse files

ARM: 7757/1: mm: don't flush icache in switch_mm with hardware broadcasting



When scheduling an mm on a CPU where it hasn't previously been used, we
flush the icache on that CPU so that any code loaded previously on
a different core can be safely executed.

For cores with hardware broadcasting of cache maintenance operations,
this is clearly unnecessary, since the inner-shareable invalidation in
__sync_icache_dcache will affect all CPUs.

This patch conditionalises the icache flush in switch_mm based on
cache_ops_need_broadcast().

Acked-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
Reported-by: default avatarAlbin Tonnerre <albin.tonnerre@arm.com>
Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent 2874865c
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment