[patch 1/2] arm: Disable outer (L2) cache in kexec
Catalin Marinas
catalin.marinas at arm.com
Mon Jul 5 08:11:10 EDT 2010
On Mon, 2010-07-05 at 12:52 +0100, Thomas Gleixner wrote:
> kexec does not disable the outer cache before disabling the inner
> caches in cpu_proc_fin(). So L2 is enabled across the kexec jump. When
> the new kernel enables chaches again, it randomly crashes.
>
> Disabling L2 before calling cpu_proc_fin() cures the problem.
>
> Disabling L2 requires the following new functions: flush_all(),
> inv_all() and disable(). Add them to outer_cache_fns and call them
> from the kexec code.
>
> Signed-off-by: Thomas Gleixner <tglx at linutronix.de>
Acked-by: Catalin Marinas <catalin.marinas at arm.com>
--
Catalin
More information about the linux-arm-kernel
mailing list