Subject: rm7k flush_icache_line() in rm7k_dma_cache_*

From: William Jhun <[email-masked]>
Date: Mon, 15 Apr 2002 11:38:44 -0700

Hello,

We've been experiencing some problems with our RM7k cache code which is
based on the sgi mm/rm7k.c from around kernel version 2.4.2. While
trying to track this down, we noticed that someone added a call to
flush_icache_line() in the rm7k_dma_cache_*() routines (now
mm/c-rm7k.c). What is the reason for this? It is our understanding that
the instruction cache does not write back, and so stale cache lines in
the icache which are later used for data/dma would seem innocuous. Is
this not true? We could not find a CVS log entry to explain this,
either. Did anyone experience problems without these calls to
flush_icache_line()?

Thanks,
Will

---

From: Ralf Baechle <[email-masked]>
Date: Tue, 16 Apr 2002 00:41:36 -0700

> either. Did anyone experience problems without these calls to

All the DMA cache flushes are only supposed to be used from within the
PCI DMA API that is they don't have to deal with instruction caches ever.
As such these flushes are bogus and I'll remove them.

  Ralf