• Shawn Guo's avatar
    ARM: imx6: exit coherency when shutting down a cpu · 602bf409
    Shawn Guo authored
    There is a system hang issue on imx6q which can easily be seen with
    running a cpu hotplug stress testing (hotplug secondary cores from
    user space via sysfs interface for thousands iterations).
    
    It turns out that the issue is caused by coherency of the cpu that
    is being shut down.  When shutting down a cpu, we need to have the
    cpu exit coherency to prevent it from receiving cache, TLB, or BTB
    maintenance operations broadcast by other CPUs in the cluster.
    
    Copy cpu_enter_lowpower() and cpu_leave_lowpower() from mach-vexpress
    to have coherency properly handled in platform_cpu_die(), thus fix
    the issue.
    Signed-off-by: default avatarShawn Guo <shawn.guo@linaro.org>
    Cc: stable@kernel.org
    602bf409
hotplug.c 1.74 KB