Module Name: src Committed By: matt Date: Thu Feb 16 10:47:07 UTC 2012
Modified Files: src/sys/arch/mips/mips [matt-nb5-mips64]: cpu_subr.c Log Message: When booting a N32 MP kernel, make sure to setup the ksegx mapping. To generate a diff of this commit: cvs rdiff -u -r1.1.2.23 -r1.1.2.24 src/sys/arch/mips/mips/cpu_subr.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/cpu_subr.c diff -u src/sys/arch/mips/mips/cpu_subr.c:1.1.2.23 src/sys/arch/mips/mips/cpu_subr.c:1.1.2.24 --- src/sys/arch/mips/mips/cpu_subr.c:1.1.2.23 Thu Jan 19 08:28:49 2012 +++ src/sys/arch/mips/mips/cpu_subr.c Thu Feb 16 10:47:06 2012 @@ -141,7 +141,7 @@ cpu_info_alloc(struct pmap_tlb_info *ti, const size_t ti_size = roundup2(sizeof(*ti), COHERENCY_UNIT) + 2*COHERENCY_UNIT; if (cpu_info_offset >= ti_size) { - ti = (void *) va; + ti = (void *) (va + cpu_info_offset - ti_size); } else { KASSERT(PAGE_SIZE - cpu_info_offset + sizeof(*ci) >= ti_size); ti = (struct pmap_tlb_info *)(va + PAGE_SIZE - ti_size); @@ -930,6 +930,10 @@ cpu_hatch(struct cpu_info *ci) tlb_invalidate_all(); mips3_cp0_wired_write(ti->ti_wired); +#ifdef ENABLE_MIPS_KSEGX + pmap_ksegx_bootstrap(); +#endif + /* * Setup HWRENA and USERLOCAL COP0 registers (MIPSxxR2). */