[PATCH] ARM: fix highmem with VIPT cache and DMA

Nicolas Pitre nico at fluxnic.net
Fri Mar 26 11:51:58 EDT 2010


On Fri, 26 Mar 2010, Catalin Marinas wrote:

> On Thu, 2010-03-25 at 21:02 +0000, Nicolas Pitre wrote:
> > --- a/arch/arm/include/asm/highmem.h
> > +++ b/arch/arm/include/asm/highmem.h
> > @@ -11,7 +11,11 @@
> > 
> >  #define kmap_prot              PAGE_KERNEL
> > 
> > -#define flush_cache_kmaps()    flush_cache_all()
> > +#define flush_cache_kmaps() \
> > +       do { \
> > +               if (cache_is_vivt()) \
> > +                       flush_cache_all(); \
> > +       } while (0)
> 
> Do the aliasing VIPT caches need flushing as well?

No idea.  Highmem is not supported with aliasing VIPT at the moment 
anyway -- see commit 3f973e2216.  I don't have hardware with aliasing 
VIPT cache either.


Nicolas



More information about the linux-arm-kernel mailing list