[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