Subject: CVS commit: src
To: None <source-changes@netbsd.org>
From: Jason R Thorpe <thorpej@netbsd.org>
List: source-changes
Date: 02/24/1999 19:43:14
Module Name: src
Committed By: thorpej
Date: Thu Feb 25 03:43:14 UTC 1999
Modified Files:
src/sys/arch/alpha/alpha: pmap.c prom.c
Log Message:
On multiprocessor systems, it is possible that a lev1map might be in use
by two processors concurrently. This means that we cannot modify the
lev1map in use by the processor which wishes to use the PROM.
Fix this by creating a separate lev1map for PROM users. This lev1map
is a copy of the kernel_lev1map, with the exception of the necessary
PROM mapping. When a processor wishes to use the PROM, it switches
its PTBR to point at the prom_lev1map, performs the PROM operation,
and switches back to its previous lev1map.
Note that kernels without multiprocessor support use the old method
of modifying the current lev1map.
Also, serialize access to the PROM via a spin lock.