alistair23-linux/arch/arc
Vineet Gupta 4102b53392 ARC: [mm] Aliasing VIPT dcache support 2/4
This is the meat of the series which prevents any dcache alias creation
by always keeping the U and K mapping of a page congruent.
If a mapping already exists, and other tries to access the page, prev
one is flushed to physical page (wback+inv)

Essentially flush_dcache_page()/copy_user_highpage() create K-mapping
of a page, but try to defer flushing, unless U-mapping exist.
When page is actually mapped to userspace, update_mmu_cache() flushes
the K-mapping (in certain cases this can be optimised out)

Additonally flush_cache_mm(), flush_cache_range(), flush_cache_page()
handle the puring of stale userspace mappings on exit/munmap...

flush_anon_page() handles the existing U-mapping for anon page before
kernel reads it via the GUP path.

Note that while not complete, this is enough to boot a simple
dynamically linked Busybox based rootfs

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
2013-05-09 21:59:46 +05:30
..
boot ARC: Add support for nSIM OSCI System C model 2013-05-07 13:44:00 +05:30
configs ARC: Add support for nSIM OSCI System C model 2013-05-07 13:44:00 +05:30
include ARC: [mm] Aliasing VIPT dcache support 2/4 2013-05-09 21:59:46 +05:30
kernel ARC: Prepare interrupt code for external controllers 2013-05-07 13:43:58 +05:30
lib ARC: String library 2013-02-11 20:00:35 +05:30
mm ARC: [mm] Aliasing VIPT dcache support 2/4 2013-05-09 21:59:46 +05:30
oprofile ARC: OProfile support 2013-02-15 23:16:00 +05:30
plat-arcfpga ARC: Add support for nSIM OSCI System C model 2013-05-07 13:44:00 +05:30
plat-tb10x ARC: [TB10x] Add support for TB10x platform 2013-05-07 13:43:59 +05:30
Kbuild
Kconfig ARC: [mm] Aliasing VIPT dcache support 2/4 2013-05-09 21:59:46 +05:30
Kconfig.debug
Makefile ARC: [TB10x] Add support for TB10x platform 2013-05-07 13:43:59 +05:30