[parisc-linux] Re: RFC: mmap patch

David S. Miller davem@redhat.com
Sat, 08 Mar 2003 15:14:58 -0800 (PST)


	Sorry, I think you've misunderstood the problem.  This is
	write() vs mmap().  We call flush_dcache_page() after the
	write() -- but PA's flush_dcache_page() only flushes the
	kernel's mapping of that page, not the user's.  The question
	is how to fix that.

Right, flush_dcache_page() must get rid of all instances of
the underlying physical data from the cache.  This means all
kernel and user virtual mappings of the page.

Chips with a "flush physical page X" scheme can just do that,
others can flush the kernel virtual mapping then walk the
VMA list of user mappings and hit those one by one.