diff options
author | jlemon <jlemon@FreeBSD.org> | 1999-06-01 23:45:48 +0000 |
---|---|---|
committer | jlemon <jlemon@FreeBSD.org> | 1999-06-01 23:45:48 +0000 |
commit | 528563d156b054b4067862174976e63c99eab3c2 (patch) | |
tree | 267455133c12467139626990680b08e1bff4c474 /sys/i386 | |
parent | 14ffe630bdd64d3c182a530053fc1b98911e04ed (diff) | |
download | FreeBSD-src-528563d156b054b4067862174976e63c99eab3c2.zip FreeBSD-src-528563d156b054b4067862174976e63c99eab3c2.tar.gz |
Unbreak memory sizing for SMP.
Diffstat (limited to 'sys/i386')
-rw-r--r-- | sys/i386/i386/machdep.c | 26 | ||||
-rw-r--r-- | sys/i386/i386/vm86.c | 4 |
2 files changed, 18 insertions, 12 deletions
diff --git a/sys/i386/i386/machdep.c b/sys/i386/i386/machdep.c index 4b7cf94..31c6fa2 100644 --- a/sys/i386/i386/machdep.c +++ b/sys/i386/i386/machdep.c @@ -35,7 +35,7 @@ * SUCH DAMAGE. * * from: @(#)machdep.c 7.4 (Berkeley) 6/3/91 - * $Id: machdep.c,v 1.337 1999/06/01 18:19:40 jlemon Exp $ + * $Id: machdep.c,v 1.338 1999/06/01 18:25:26 jlemon Exp $ */ #include "apm.h" @@ -1352,7 +1352,12 @@ physmap_done: } #endif -/* XXX former point of mp_probe() and pmap_bootstrap() */ +#ifdef SMP + /* look for the MP hardware - needed for apic addresses */ + mp_probe(); +#endif + /* call pmap initialization to make new kernel address space */ + pmap_bootstrap(first, 0); /* * Size up each available chunk of physical memory. @@ -1361,8 +1366,11 @@ physmap_done: pa_indx = 0; phys_avail[pa_indx++] = physmap[0]; phys_avail[pa_indx] = physmap[0]; +#if 0 pte = (pt_entry_t)vtopte(KERNBASE); - *pte = (1 << PAGE_SHIFT) | PG_RW | PG_V; +#else + pte = (pt_entry_t)CMAP1; +#endif /* * physmap is in bytes, so when converting to page boundaries, @@ -1376,7 +1384,11 @@ physmap_done: end = trunc_page(physmap[i + 1]); for (pa = round_page(physmap[i]); pa < end; pa += PAGE_SIZE) { int tmp, page_bad; +#if 0 int *ptr = 0; +#else + int *ptr = (int *)CADDR1; +#endif /* * block out kernel memory as not available. @@ -1650,14 +1662,6 @@ init386(first) vm86_initialize(); getmemsize(first); -#ifdef SMP - /* look for the MP hardware - needed for apic addresses */ - mp_probe(); -#endif - - /* call pmap initialization to make new kernel address space */ - pmap_bootstrap(first, 0); - /* now running on new page tables, configured,and u/iom is accessible */ /* Map the message buffer. */ diff --git a/sys/i386/i386/vm86.c b/sys/i386/i386/vm86.c index 5499d69..43d8cff 100644 --- a/sys/i386/i386/vm86.c +++ b/sys/i386/i386/vm86.c @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: vm86.c,v 1.25 1999/05/12 21:38:45 luoqi Exp $ + * $Id: vm86.c,v 1.26 1999/06/01 18:19:48 jlemon Exp $ */ #include <sys/param.h> @@ -453,12 +453,14 @@ vm86_initialize(void) vm86pcb = pcb; +#if 0 /* * use whatever is leftover of the vm86 page layout as a * message buffer so we can capture early output. */ msgbufinit((vm_offset_t)vm86paddr + sizeof(struct vm86_layout), ctob(3) - sizeof(struct vm86_layout)); +#endif } vm_offset_t |