]> git.baikalelectronics.ru Git - kernel.git/commit
[SPARC64]: More TLB/TSB handling fixes.
authorDavid S. Miller <davem@sunset.davemloft.net>
Sat, 18 Feb 2006 02:01:02 +0000 (18:01 -0800)
committerDavid S. Miller <davem@sunset.davemloft.net>
Mon, 20 Mar 2006 09:13:34 +0000 (01:13 -0800)
commitfc70c5142419fcffe8bba01451831f26868c03d1
treeab4ab14fa7f1cab7889ecc2339f0261253a5d0e1
parenta444d9f572fed2a71c61e6a8039fc712f0353223
[SPARC64]: More TLB/TSB handling fixes.

The SUN4V convention with non-shared TSBs is that the context
bit of the TAG is clear.  So we have to choose an "invalid"
bit and initialize new TSBs appropriately.  Otherwise a zero
TAG looks "valid".

Make sure, for the window fixup cases, that we use the right
global registers and that we don't potentially trample on
the live global registers in etrap/rtrap handling (%g2 and
%g6) and that we put the missing virtual address properly
in %g5.

Signed-off-by: David S. Miller <davem@davemloft.net>
arch/sparc64/kernel/dtlb_miss.S
arch/sparc64/kernel/itlb_miss.S
arch/sparc64/kernel/ktlb.S
arch/sparc64/kernel/sun4v_tlb_miss.S
arch/sparc64/kernel/tsb.S
arch/sparc64/mm/init.c
arch/sparc64/mm/tsb.c
include/asm-sparc64/tsb.h
include/asm-sparc64/ttable.h