[SPARC64]: Optimized TSB table initialization.
authorDavid S. Miller <davem@sunset.davemloft.net>
Sun, 19 Mar 2006 07:55:11 +0000 (23:55 -0800)
committerDavid S. Miller <davem@sunset.davemloft.net>
Mon, 20 Mar 2006 09:16:41 +0000 (01:16 -0800)
commitbb8646d8340fa7c1b66a037428e39f85f8738f0a
tree931d4505a0ba65124b662f0f8b5935e0b154bd66
parent88d7079458f87d6f2d2261b2f87b7b9416019f5e
[SPARC64]: Optimized TSB table initialization.

We only need to write an invalid tag every 16 bytes,
so taking advantage of this can save many instructions
compared to the simple memset() call we make now.

A prefetching implementation is implemented for sun4u
and a block-init store version if implemented for Niagara.

The next trick is to be able to perform an init and
a copy_tsb() in parallel when growing a TSB table.

Signed-off-by: David S. Miller <davem@davemloft.net>
arch/sparc64/kernel/tsb.S
arch/sparc64/lib/NGbzero.S
arch/sparc64/mm/tsb.c
include/asm-sparc64/mmu.h