diff options
author | jmcp <James.McPherson@Sun.COM> | 2009-12-03 01:41:29 -0800 |
---|---|---|
committer | jmcp <James.McPherson@Sun.COM> | 2009-12-03 01:41:29 -0800 |
commit | 902408c74976ae981a40a253677084474ca7f2f5 (patch) | |
tree | 05afd96ae9f3bb770c3a7028852110402f49b7c5 /usr/src | |
parent | 500b96d99247182b2f05a6cb2d63ca95fca0eace (diff) | |
download | illumos-joyent-902408c74976ae981a40a253677084474ca7f2f5.tar.gz |
backout 6840848: fails to build
Diffstat (limited to 'usr/src')
-rw-r--r-- | usr/src/uts/common/vm/seg_kmem.c | 15 | ||||
-rw-r--r-- | usr/src/uts/sun4/os/startup.c | 21 | ||||
-rw-r--r-- | usr/src/uts/sun4/sys/ivintr.h | 9 |
3 files changed, 16 insertions, 29 deletions
diff --git a/usr/src/uts/common/vm/seg_kmem.c b/usr/src/uts/common/vm/seg_kmem.c index ce68c4c930..1b2f34dd0b 100644 --- a/usr/src/uts/common/vm/seg_kmem.c +++ b/usr/src/uts/common/vm/seg_kmem.c @@ -47,8 +47,6 @@ #include <vm/seg_kp.h> #include <sys/bitmap.h> #include <sys/mem_cage.h> -#include <sys/ivintr.h> -#include <sys/panic.h> /* * seg_kmem is the primary kernel memory segment driver. It @@ -300,19 +298,6 @@ kernelheap_init( SYSLIMIT32 - SYSBASE32 - HEAPTEXT_SIZE, PAGESIZE, NULL, NULL, NULL, 0, VM_SLEEP); - /* - * Prom claims the physical and virtual resources used by panicbuf - * and inter_vec_table. So reserve space for panicbuf, intr_vec_table, - * reserved interrrupt vector data structures from the 32-bit heap. - */ - (void) vmem_xalloc(heap32_arena, PANICBUFSIZE, PAGESIZE, 0, 0, - panicbuf, panicbuf + PANICBUFSIZE, - VM_NOSLEEP | VM_BESTFIT | VM_PANIC); - - (void) vmem_xalloc(heap32_arena, IVSIZE, PAGESIZE, 0, 0, - intr_vec_table, (caddr_t)intr_vec_table + IVSIZE, - VM_NOSLEEP | VM_BESTFIT | VM_PANIC); - textbase = SYSLIMIT32 - HEAPTEXT_SIZE; heaptext_parent = NULL; #else /* __sparc */ diff --git a/usr/src/uts/sun4/os/startup.c b/usr/src/uts/sun4/os/startup.c index 41e1baaa20..ebb336f6d9 100644 --- a/usr/src/uts/sun4/os/startup.c +++ b/usr/src/uts/sun4/os/startup.c @@ -37,6 +37,7 @@ #include <sys/prom_plat.h> #include <sys/prom_isa.h> #include <sys/autoconf.h> +#include <sys/intreg.h> #include <sys/ivintr.h> #include <sys/fpu/fpusystm.h> #include <sys/iommutsb.h> @@ -464,12 +465,8 @@ printmemseg(struct memseg *memseg) * | | * | segkmem32 segment | (SYSLIMIT32 - SYSBASE32 = * | | ~64MB) - * |-----------------------| - * | IVSIZE | - * 0x00000000.70004000 -|-----------------------| - * | panicbuf | * 0x00000000.70002000 -|-----------------------| - * | PAGESIZE | + * | panicbuf | * 0x00000000.70000000 -|-----------------------|- SYSBASE32 * | boot-time | * | temporary space | @@ -825,6 +822,10 @@ alloc_kmem64(caddr_t base, caddr_t end) static prom_memlist_t *boot_physinstalled, *boot_physavail, *boot_virtavail; static size_t boot_physinstalled_len, boot_physavail_len, boot_virtavail_len; +#define IVSIZE roundup(((MAXIVNUM * sizeof (intr_vec_t *)) + \ + (MAX_RSVD_IV * sizeof (intr_vec_t)) + \ + (MAX_RSVD_IVX * sizeof (intr_vecx_t))), PAGESIZE) + #if !defined(C_OBP) /* * Install a temporary tte handler in OBP for kmem64 area. @@ -1469,8 +1470,16 @@ startup_memlist(void) bp_init(shm_alignment, HAT_STRICTORDER); /* - * Reserve space for MPO mblock structs from the 32-bit heap. + * Reserve space for panicbuf, intr_vec_table, reserved interrupt + * vector data structures and MPO mblock structs from the 32-bit heap. */ + (void) vmem_xalloc(heap32_arena, PANICBUFSIZE, PAGESIZE, 0, 0, + panicbuf, panicbuf + PANICBUFSIZE, + VM_NOSLEEP | VM_BESTFIT | VM_PANIC); + + (void) vmem_xalloc(heap32_arena, IVSIZE, PAGESIZE, 0, 0, + intr_vec_table, (caddr_t)intr_vec_table + IVSIZE, + VM_NOSLEEP | VM_BESTFIT | VM_PANIC); if (mpo_heap32_bufsz > (size_t)0) { (void) vmem_xalloc(heap32_arena, mpo_heap32_bufsz, diff --git a/usr/src/uts/sun4/sys/ivintr.h b/usr/src/uts/sun4/sys/ivintr.h index 7aad039075..eec54078c5 100644 --- a/usr/src/uts/sun4/sys/ivintr.h +++ b/usr/src/uts/sun4/sys/ivintr.h @@ -19,16 +19,13 @@ * CDDL HEADER END */ /* - * Copyright 2009 Sun Microsystems, Inc. All rights reserved. + * Copyright 2008 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ #ifndef _SYS_IVINTR_H #define _SYS_IVINTR_H -#include <sys/intreg.h> -#include <sys/param.h> - #ifdef __cplusplus extern "C" { #endif @@ -48,10 +45,6 @@ extern "C" { #define MAX_RSVD_IV ((NCPU * 3) + 256) /* HW and Single target SW intrs */ #define MAX_RSVD_IVX 32 /* Multi target software intrs */ -#define IVSIZE roundup(((MAXIVNUM * sizeof (intr_vec_t *)) + \ - (MAX_RSVD_IV * sizeof (intr_vec_t)) + \ - (MAX_RSVD_IVX * sizeof (intr_vecx_t))), PAGESIZE) - #ifndef _ASM typedef uint_t (*intrfunc)(caddr_t, caddr_t); |