Module Name: src
Committed By: matt
Date: Sun Feb 12 07:48:37 UTC 2012
Modified Files:
src/sys/arch/mips/mips [matt-nb5-mips64]: pmap.c
Log Message:
pmap pv pages can come from KSEGX too.
To generate a diff of this commit:
cvs rdiff -u -r1.179.16.39 -r1.179.16.40 src/sys/arch/mips/mips/pmap.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/mips/mips/pmap.c
diff -u src/sys/arch/mips/mips/pmap.c:1.179.16.39 src/sys/arch/mips/mips/pmap.c:1.179.16.40
--- src/sys/arch/mips/mips/pmap.c:1.179.16.39 Fri Feb 10 08:15:58 2012
+++ src/sys/arch/mips/mips/pmap.c Sun Feb 12 07:48:37 2012
@@ -2538,8 +2538,15 @@ pmap_pv_page_free(struct pool *pp, void
KASSERT(MIPS_XKPHYS_P(va));
pa = MIPS_XKPHYS_TO_PHYS(va);
#else
- KASSERT(MIPS_KSEG0_P(va));
- pa = MIPS_KSEG0_TO_PHYS(va);
+#ifdef ENABLE_MIPS_KSEGX
+ if (VM_KSEGX_ADDRESS <= va && va <= VM_KSEGX_ADDRESS + VM_KSEGX_SIZE) {
+ pa = mips_ksegx_start + va - VM_KSEGX_ADDRESS;
+ } else
+#endif
+ {
+ KASSERT(MIPS_KSEG0_P(va));
+ pa = MIPS_KSEG0_TO_PHYS(va);
+ }
#endif
#ifdef MIPS3_PLUS
if (MIPS_CACHE_VIRTUAL_ALIAS)