[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