Source-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: src/sys/arch/sparc64/sparc64
Module Name: src
Committed By: mrg
Date: Wed Mar 10 06:57:23 UTC 2010
Modified Files:
src/sys/arch/sparc64/sparc64: db_interface.c locore.s pmap.c
Log Message:
XXX: workaround we'd like to remove when pmap / uvm locking is cleaned up:
- rename pseg_get() and pseg_set() to pseg_get_real() and pseg_set_real().
- if USE_LOCKSAFE_PSEG_GETSET is defined, which it current is by default,
define pseg_[gs]et() in terms of functions that take a new pseg_lock
mutex at IPL_VM while calling into the real functions.
this seems to avoid the pseg_set() crashes we've seen:
1 - spare needed, when pseg_get() just worked for this pmap
2 - the 2rd ldxa via ASI_PHYS_CACHED in pseg_set() loads garbage
into %o4, and causes the 3rd ldxa to fault
To generate a diff of this commit:
cvs rdiff -u -r1.123 -r1.124 src/sys/arch/sparc64/sparc64/db_interface.c
cvs rdiff -u -r1.326 -r1.327 src/sys/arch/sparc64/sparc64/locore.s
cvs rdiff -u -r1.258 -r1.259 src/sys/arch/sparc64/sparc64/pmap.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Home |
Main Index |
Thread Index |
Old Index