On Wed, 2009-09-09 at 03:17 +0000, James Bottomley wrote: > On Virtually Indexed architectures (which don't do automatic alias > resolution in their caches), we have to flush via the correct > virtual address to prepare pages for DMA. On some architectures > (like arm) we cannot prevent the CPU from doing data movein along > the alias (and thus giving stale read data), so we not only have to > introduce a flush API to push dirty cache lines out, but also an invalidate > API to kill inconsistent cache lines that may have moved in before > DMA changed the data > > Signed-off-by: James Bottomley <James.Bottomley@xxxxxxx> > --- > include/linux/highmem.h | 6 ++++++ > 1 files changed, 6 insertions(+), 0 deletions(-) > > diff --git a/include/linux/highmem.h b/include/linux/highmem.h > index 211ff44..9719952 100644 > --- a/include/linux/highmem.h > +++ b/include/linux/highmem.h > @@ -17,6 +17,12 @@ static inline void flush_anon_page(struct vm_area_struct *vma, struct page *page > static inline void flush_kernel_dcache_page(struct page *page) > { > } > +static incline void flush_kernel_dcache_addr(void *vaddr) > +{ > +} > +static incline void invalidate_kernel_dcache_addr(void *vaddr) > +{ > +} > #endif OK, so it's been pointed out to me that I didn't compile check this ... just testing to see everyone is awake ... James -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html