From: John David Anglin Date: Sun, 3 Feb 2013 23:01:47 +0000 (+0000) Subject: parisc: fixes and cleanups in page cache flushing (3/4) X-Git-Tag: v3.9-rc1~102^2~20 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6d2439d9558e259822fb487ec274cc9e362e6a81;p=pandora-kernel.git parisc: fixes and cleanups in page cache flushing (3/4) flush_cache_mm, for the non current case also uses flush_dcache_page_asm and flush_icache_page_asm which are TMPALIAS flushes. For the non current case, the algorithm used by get_ptep is derived from the vmalloc_to_page implementation in vmalloc.c. It is essentially a generic page table lookup. The other alternative was to duplicate the lookup in entry.S. The break point for switching to a full cache flush is somewhat arbitrary. The same approach is used in flush_cache_range for non current case. In a GCC build and check, many small programs are executed and this change provided a significant performance enhancement, e.g. GCC build time was cut almost in half on a rp3440 at j4. Previously, we always flushed the entire cache. Signed-off-by: John David Anglin Signed-off-by: Helge Deller --- Reading git-diff-tree failed