Is it too strict for VIPT cache flushing in flush_cache_[mm|range]?

Ning Jiang ning.n.jiang at gmail.com
Mon Oct 22 22:55:23 EDT 2012


2012/10/16 Ning Jiang <ning.n.jiang at gmail.com>:
> I found that the implementation of flush_cache_mm() and
> flush_cache_range() for VIPT aliasing case is to clean + invalidate
> whole data cache, but for a physically tagged cache, why do we need to
> perform such an operation? Is it because we'll have aliasing issue?
>
> I searched through the git history and found it is brought in the
> commit "d7b6b358"  "[ARM] Fix ARMv6 VIPT cache >= 32K", before that,
> there is indeed no flushing, why we "Fix ARMv6 VIPT cache >= 32K"?
>
> Sorry for asking such stupid question, but it really confuses me ;-)
>
> Thanks,
> Ning

Maybe someone in the mail list can give an answer ;-)



More information about the linux-arm-kernel mailing list