Why flush_cache_all() not including flushing L2 cache if the system has L2 cache?

Eric Miao eric.y.miao at gmail.com
Sun Nov 1 22:42:25 EST 2009


On Mon, Nov 2, 2009 at 10:32 AM, Peter Chen <hzpeterchen at gmail.com> wrote:
> Dear list,
>
> I met a problem if the address is first used by cachable, then uncachable.
> After that, the address will be filled with cachable value
> after that L2 cache line is evicted.
>

L2 cache is usually physically tagged, and from the CPU POV, it's
consistent once the L1 is flushed.

If you have problems with L2 not being flushed, it's most likely a
device issue, which means you probably need the dma_ API.



More information about the linux-arm-kernel mailing list