Subject: freebsd/sparc64 goes multiuser on dual-cpu.
To: None <port-sparc64@netbsd.org>
From: Darren Reed <darrenr@reed.wattle.id.au>
List: port-sparc64
Date: 03/08/2002 00:51:18
I figure the various NetBSD/sparc64 might be interested in the changes
involved herein.
On Wed, 6 Mar 2002, Jake Burkholder wrote:
> jake 2002/03/06 22:01:41 PST
>
> Modified files:
> sys/sparc64/include smp.h tlb.h
> sys/sparc64/sparc64 bus_machdep.c genassym.c machdep.c
> mp_exception.s mp_locore.s mp_machdep.c
> pmap.c pv.c trap.c tsb.c
> Log:
> Implement delivery of tlb shootdown ipis. This is currently more fine grained
> than the other implementations; we have complete control over the tlb, so we
> only demap specific pages. We take advantage of the ranged tlb flush api
> to send one ipi for a range of pages, and due to the pm_active optimization
> we rarely send ipis for demaps from user pmaps.
>
> Remove now unused routines to load the tlb; this is only done once outside
> of the tlb fault handlers.
> Minor cleanups to the smp startup code.
>
> This boots multi user with both cpus active on a dual ultra 60 and on a
> dual ultra 2.
>
> Revision Changes Path
> 1.8 +37 -24 src/sys/sparc64/include/smp.h
> 1.14 +66 -145 src/sys/sparc64/include/tlb.h
> 1.6 +2 -0 src/sys/sparc64/sparc64/bus_machdep.c
> 1.27 +4 -2 src/sys/sparc64/sparc64/genassym.c
> 1.41 +2 -0 src/sys/sparc64/sparc64/machdep.c
> 1.2 +68 -53 src/sys/sparc64/sparc64/mp_exception.s
> 1.3 +23 -15 src/sys/sparc64/sparc64/mp_locore.s
> 1.4 +18 -9 src/sys/sparc64/sparc64/mp_machdep.c
> 1.40 +17 -7 src/sys/sparc64/sparc64/pmap.c
> 1.13 +2 -0 src/sys/sparc64/sparc64/pv.c
> 1.28 +2 -0 src/sys/sparc64/sparc64/trap.c
> 1.17 +2 -0 src/sys/sparc64/sparc64/tsb.c
>
----- End of forwarded message from Robert Watson -----