]> git.baikalelectronics.ru Git - kernel.git/commit
parisc: flush pages through tmpalias space
authorJames Bottomley <James.Bottomley@HansenPartnership.com>
Wed, 22 Dec 2010 16:22:11 +0000 (10:22 -0600)
committerJames Bottomley <James.Bottomley@suse.de>
Sat, 15 Jan 2011 14:44:40 +0000 (08:44 -0600)
commitb2482eb22c5a728cb6df57fb675a2c6d15ab7a3e
tree802ef2aa01bd0d662e60412366a40c827fd3e875
parentd0e10128ca8edb29fb956d999f25fbb9c79ee37d
parisc: flush pages through tmpalias space

The kernel has an 8M tmpailas space (originally designed for copying
and clearing pages but now only used for clearing).  The idea is
to place zeros into the cache above a physical page rather than into
the physical page and flush the cache, because often the zeros end up
being replaced quickly anyway.

We can also use the tmpalias space for flushing a page.  The difference
here is that we have to do tmpalias processing in the non access data and
instruction traps.  The principle is the same: as long as we know the physical
address and have a virtual address congruent to the real one, the flush will
be effective.

In order to use the tmpalias space, the icache miss path has to be enhanced to
check for the alias region to make the fic instruction effective.

Signed-off-by: James Bottomley <James.Bottomley@suse.de>
arch/parisc/include/asm/cacheflush.h
arch/parisc/kernel/cache.c
arch/parisc/kernel/entry.S
arch/parisc/kernel/pacache.S