linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* flush_dcache_page does too much?
@ 2010-01-18 13:13 anfei
  2010-01-18 13:33 ` Russell King - ARM Linux
  0 siblings, 1 reply; 13+ messages in thread
From: anfei @ 2010-01-18 13:13 UTC (permalink / raw)
  To: linux-arm-kernel

Hello,

I'm studying the cache alias problem especially of VIPT, I found
function flush_dcache_page() does much more operations on ARM than MIPS.
Can we not flush the userspace mappings and icache, just like MIPS?
Are the cache more consistent with these operations?

As far as I know, flush_dcache_page is usually used as this:
        kmap_atomic(page, ...);
        write the page;
        flush_dcache_page(page);
        kunmap_atomic(...);
called in the path of write()/..., but since mmap() + write() is not
ensured to work (even on ARM currently), it's the userspace to consider
msync()/munmap(), it looks okay without flush the userspace mappings
here.  Other cases seem the same if the userspace takes charge of the 
cache problem.

Thanks,
Anfei.

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2010-01-19 18:33 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-01-18 13:13 flush_dcache_page does too much? anfei
2010-01-18 13:33 ` Russell King - ARM Linux
2010-01-18 13:54   ` anfei
2010-01-18 14:00     ` Russell King - ARM Linux
2010-01-18 14:15       ` anfei
2010-01-18 14:44         ` Russell King - ARM Linux
2010-01-18 14:53           ` anfei
2010-01-18 14:57           ` anfei
2010-01-18 15:01             ` Russell King - ARM Linux
2010-01-19  0:16               ` anfei
2010-01-19 13:05                 ` anfei
2010-01-19 17:44                   ` Russell King - ARM Linux
2010-01-19 18:33                     ` Jamie Lokier

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).