[parisc-linux] Fwd: Problems with raw interface.

Matthew Wilcox willy@debian.org
Fri, 26 Sep 2003 15:09:48 +0100


On Fri, Sep 26, 2003 at 06:21:43AM -0700, David S. Miller wrote:
> On Fri, 26 Sep 2003 14:29:01 +0100
> Matthew Wilcox <willy@debian.org> wrote:
> 
> > On Fri, Sep 26, 2003 at 05:56:52AM -0700, David S. Miller wrote:
> > > When page->mapping is NULL, flush_dcache_page() should purge the page
> > > (by physical addres) from it's caches.  This is what sparc64 does.
> > 
> > But you can't do that on PA-RISC.  You can only purge virtual addresses.
> 
> Then for page->mapping == NULL your flush_dcache_page() is not doing
> what it is supposed to, and you can expect problems extending further
> than this raw I/O case.

Oh, come on, Dave.  You just changed the definition of
flush_dcache_page().  You can't claim the implementation isn't doing
what it's supposed to!  The definition in cachetlb talks *only* about
page cache pages.

> You have to find a way to walk all the address spaces to figure out
> where the page is mapped.

That's ridiculous.  For a start, pages can't be mapped into multiple
address spaces without being in the page cache.  Second, we already know
where it is, you just refuse to pass that information in.

-- 
"It's not Hollywood.  War is real, war is primarily not about defeat or
victory, it is about death.  I've seen thousands and thousands of dead bodies.
Do you think I want to have an academic debate on this subject?" -- Robert Fisk