mirror of
https://git.hardenedbsd.org/hardenedbsd/HardenedBSD.git
synced 2024-11-16 15:44:04 +01:00
Convert all:
panic( "xxxxx\n" ); to: printf( "xxxxx\n" ); panic( "\n" ); For some as yet undetermined reason the argument to panic() is often NOT printed, and the system sometimes hangs before reaching the panic printout. So we hopefully at least print some useful info before the hang, as oppossed to leaving the user clueless as to what has happened.
This commit is contained in:
parent
32ef6b86b5
commit
89921bb594
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=26019
@ -22,7 +22,7 @@
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: mp_machdep.c,v 1.8 1997/05/05 22:56:27 fsmp Exp $
|
||||
* $Id: mp_machdep.c,v 1.9 1997/05/07 22:25:27 fsmp Exp $
|
||||
*/
|
||||
|
||||
#include "opt_smp.h"
|
||||
@ -175,8 +175,8 @@ mp_start(void)
|
||||
if (mp_probe(base_memory))
|
||||
mp_enable(boot_address);
|
||||
else {
|
||||
printf("MP FPS NOT FOUND, suggest use of 'mptable' program\n");
|
||||
panic("can't continue!\n");
|
||||
printf( "MP FPS not found, can't continue!\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* finish pmap initialization - turn off V==P mapping at zero */
|
||||
@ -331,8 +331,10 @@ mp_enable(u_int boot_addr)
|
||||
|
||||
/* program each IO APIC in the system */
|
||||
for (apic = 0; apic < mp_napics; ++apic)
|
||||
if (io_apic_setup(apic) < 0)
|
||||
panic("IO APIC setup failure\n");
|
||||
if (io_apic_setup(apic) < 0) {
|
||||
printf( "IO APIC setup failure\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* install an inter-CPU IPI for TLB invalidation */
|
||||
setidt(ICU_OFFSET + XINVLTLB_OFFSET, Xinvltlb,
|
||||
@ -596,8 +598,10 @@ parse_mp_table(void)
|
||||
}
|
||||
#endif /* TEST_DEFAULT_CONFIG */
|
||||
|
||||
if ((cth = fps->pap) == 0)
|
||||
panic("MP Configuration Table Header MISSING!\n");
|
||||
if ((cth = fps->pap) == 0) {
|
||||
printf( "MP Configuration Table Header MISSING!\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
cpu_apic_address = (vm_offset_t) cth->apic_address;
|
||||
|
||||
@ -630,7 +634,8 @@ parse_mp_table(void)
|
||||
/* int_entry(position); */
|
||||
break;
|
||||
default:
|
||||
panic("mpfps Base Table HOSED!\n");
|
||||
printf( "mpfps Base Table HOSED!\n" );
|
||||
panic( "\n" );
|
||||
/* NOTREACHED */
|
||||
}
|
||||
|
||||
@ -638,8 +643,10 @@ parse_mp_table(void)
|
||||
(u_char *) position += basetable_entry_types[type].length;
|
||||
}
|
||||
|
||||
if (boot_cpu_id == -1)
|
||||
panic("NO BSP found!\n");
|
||||
if (boot_cpu_id == -1) {
|
||||
printf( "NO BSP found!\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* record # of APs found */
|
||||
mp_naps = (cpu - 1);
|
||||
@ -733,8 +740,8 @@ fix_mp_table(void)
|
||||
if (bus_data[x].bus_type != PCI)
|
||||
continue;
|
||||
if (bus_data[x].bus_id >= num_pci_bus ) {
|
||||
printf("bad PCI bus numbering\n");
|
||||
panic("\n");
|
||||
printf( "bad PCI bus numbering\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -777,8 +784,10 @@ bus_entry(bus_entry_ptr entry, int *bus)
|
||||
char name[8];
|
||||
char c;
|
||||
|
||||
if ((x = (*bus)++) == NBUS)
|
||||
panic("too many busses, increase 'NBUS'\n");
|
||||
if ((x = (*bus)++) == NBUS) {
|
||||
printf( "too many busses, increase 'NBUS'\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* encode the name into an index */
|
||||
for (y = 0; y < 6; ++y) {
|
||||
@ -788,8 +797,10 @@ bus_entry(bus_entry_ptr entry, int *bus)
|
||||
}
|
||||
name[y] = '\0';
|
||||
|
||||
if ((y = lookup_bus_type(name)) == UNKNOWN_BUSTYPE)
|
||||
panic("unknown bus type: '%s'\n", name);
|
||||
if ((y = lookup_bus_type(name)) == UNKNOWN_BUSTYPE) {
|
||||
printf( "unknown bus type: '%s'\n", name );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
bus_data[x].bus_id = entry->bus_id;
|
||||
bus_data[x].bus_type = y;
|
||||
@ -804,8 +815,10 @@ io_apic_entry(io_apic_entry_ptr entry, int *apic)
|
||||
if (!(entry->apic_flags & IOAPICENTRY_FLAG_EN))
|
||||
return;
|
||||
|
||||
if ((x = (*apic)++) == NAPIC)
|
||||
panic("too many APICs, increase 'NAPIC'\n");
|
||||
if ((x = (*apic)++) == NAPIC) {
|
||||
printf( "too many APICs, increase 'NAPIC'\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
IO_TO_ID(x) = entry->apic_id;
|
||||
ID_TO_IO(entry->apic_id) = x;
|
||||
@ -832,8 +845,10 @@ int_entry(int_entry_ptr entry, int *intr)
|
||||
{
|
||||
int x;
|
||||
|
||||
if ((x = (*intr)++) == NINTR)
|
||||
panic("too many INTs, increase 'NINTR'\n");
|
||||
if ((x = (*intr)++) == NINTR) {
|
||||
printf( "too many INTs, increase 'NINTR'\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
io_apic_ints[x].int_type = entry->int_type;
|
||||
io_apic_ints[x].int_flags = entry->int_flags;
|
||||
@ -1203,8 +1218,10 @@ default_mp_table(int type)
|
||||
ux |= 0x02000000; /* set it to '2' */
|
||||
io_apic_write(0, IOAPIC_ID, ux); /* write new value */
|
||||
ux = io_apic_read(0, IOAPIC_ID); /* re-read && test */
|
||||
if ((ux & APIC_ID_MASK) != 0x02000000)
|
||||
panic("Problem: can't control IO APIC ID, reg: 0x%08x\n", ux);
|
||||
if ((ux & APIC_ID_MASK) != 0x02000000) {
|
||||
printf( "can't control IO APIC ID, reg: 0x%08x\n", ux );
|
||||
panic( "\n" );
|
||||
}
|
||||
io_apic_id = 2;
|
||||
}
|
||||
IO_TO_ID(0) = io_apic_id;
|
||||
@ -1230,7 +1247,8 @@ default_mp_table(int type)
|
||||
|
||||
/* case 4: case 7: MCA NOT supported */
|
||||
default: /* illegal/reserved */
|
||||
panic("BAD default MP config: %d\n", type);
|
||||
printf( "BAD default MP config: %d\n", type );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
#if defined(APIC_IO)
|
||||
@ -1250,9 +1268,11 @@ default_mp_table(int type)
|
||||
io_apic_ints[13].int_type = 0xff; /* N/C */
|
||||
#if !defined(APIC_MIXED_MODE)
|
||||
/** FIXME: ??? */
|
||||
panic("sorry, can't support type 2 default yet\n");
|
||||
printf( "sorry, can't support type 2 default yet\n" );
|
||||
panic( "\n" );
|
||||
#endif /* APIC_MIXED_MODE */
|
||||
} else
|
||||
}
|
||||
else
|
||||
io_apic_ints[2].src_bus_irq = 0; /* ISA IRQ0 is on APIC INT 2 */
|
||||
|
||||
if (type == 7)
|
||||
@ -1317,8 +1337,10 @@ start_all_aps(u_int boot_addr)
|
||||
* somewhere
|
||||
*/
|
||||
printf("panic y/n? [n] ");
|
||||
if (cngetc() != 'n')
|
||||
panic("bye-bye\n");
|
||||
if (cngetc() != 'n') {
|
||||
printf( "bye-bye\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
}
|
||||
CHECK_PRINT("trace"); /* show checkpoints */
|
||||
|
||||
|
@ -22,7 +22,7 @@
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: mp_machdep.c,v 1.8 1997/05/05 22:56:27 fsmp Exp $
|
||||
* $Id: mp_machdep.c,v 1.9 1997/05/07 22:25:27 fsmp Exp $
|
||||
*/
|
||||
|
||||
#include "opt_smp.h"
|
||||
@ -175,8 +175,8 @@ mp_start(void)
|
||||
if (mp_probe(base_memory))
|
||||
mp_enable(boot_address);
|
||||
else {
|
||||
printf("MP FPS NOT FOUND, suggest use of 'mptable' program\n");
|
||||
panic("can't continue!\n");
|
||||
printf( "MP FPS not found, can't continue!\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* finish pmap initialization - turn off V==P mapping at zero */
|
||||
@ -331,8 +331,10 @@ mp_enable(u_int boot_addr)
|
||||
|
||||
/* program each IO APIC in the system */
|
||||
for (apic = 0; apic < mp_napics; ++apic)
|
||||
if (io_apic_setup(apic) < 0)
|
||||
panic("IO APIC setup failure\n");
|
||||
if (io_apic_setup(apic) < 0) {
|
||||
printf( "IO APIC setup failure\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* install an inter-CPU IPI for TLB invalidation */
|
||||
setidt(ICU_OFFSET + XINVLTLB_OFFSET, Xinvltlb,
|
||||
@ -596,8 +598,10 @@ parse_mp_table(void)
|
||||
}
|
||||
#endif /* TEST_DEFAULT_CONFIG */
|
||||
|
||||
if ((cth = fps->pap) == 0)
|
||||
panic("MP Configuration Table Header MISSING!\n");
|
||||
if ((cth = fps->pap) == 0) {
|
||||
printf( "MP Configuration Table Header MISSING!\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
cpu_apic_address = (vm_offset_t) cth->apic_address;
|
||||
|
||||
@ -630,7 +634,8 @@ parse_mp_table(void)
|
||||
/* int_entry(position); */
|
||||
break;
|
||||
default:
|
||||
panic("mpfps Base Table HOSED!\n");
|
||||
printf( "mpfps Base Table HOSED!\n" );
|
||||
panic( "\n" );
|
||||
/* NOTREACHED */
|
||||
}
|
||||
|
||||
@ -638,8 +643,10 @@ parse_mp_table(void)
|
||||
(u_char *) position += basetable_entry_types[type].length;
|
||||
}
|
||||
|
||||
if (boot_cpu_id == -1)
|
||||
panic("NO BSP found!\n");
|
||||
if (boot_cpu_id == -1) {
|
||||
printf( "NO BSP found!\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* record # of APs found */
|
||||
mp_naps = (cpu - 1);
|
||||
@ -733,8 +740,8 @@ fix_mp_table(void)
|
||||
if (bus_data[x].bus_type != PCI)
|
||||
continue;
|
||||
if (bus_data[x].bus_id >= num_pci_bus ) {
|
||||
printf("bad PCI bus numbering\n");
|
||||
panic("\n");
|
||||
printf( "bad PCI bus numbering\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -777,8 +784,10 @@ bus_entry(bus_entry_ptr entry, int *bus)
|
||||
char name[8];
|
||||
char c;
|
||||
|
||||
if ((x = (*bus)++) == NBUS)
|
||||
panic("too many busses, increase 'NBUS'\n");
|
||||
if ((x = (*bus)++) == NBUS) {
|
||||
printf( "too many busses, increase 'NBUS'\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* encode the name into an index */
|
||||
for (y = 0; y < 6; ++y) {
|
||||
@ -788,8 +797,10 @@ bus_entry(bus_entry_ptr entry, int *bus)
|
||||
}
|
||||
name[y] = '\0';
|
||||
|
||||
if ((y = lookup_bus_type(name)) == UNKNOWN_BUSTYPE)
|
||||
panic("unknown bus type: '%s'\n", name);
|
||||
if ((y = lookup_bus_type(name)) == UNKNOWN_BUSTYPE) {
|
||||
printf( "unknown bus type: '%s'\n", name );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
bus_data[x].bus_id = entry->bus_id;
|
||||
bus_data[x].bus_type = y;
|
||||
@ -804,8 +815,10 @@ io_apic_entry(io_apic_entry_ptr entry, int *apic)
|
||||
if (!(entry->apic_flags & IOAPICENTRY_FLAG_EN))
|
||||
return;
|
||||
|
||||
if ((x = (*apic)++) == NAPIC)
|
||||
panic("too many APICs, increase 'NAPIC'\n");
|
||||
if ((x = (*apic)++) == NAPIC) {
|
||||
printf( "too many APICs, increase 'NAPIC'\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
IO_TO_ID(x) = entry->apic_id;
|
||||
ID_TO_IO(entry->apic_id) = x;
|
||||
@ -832,8 +845,10 @@ int_entry(int_entry_ptr entry, int *intr)
|
||||
{
|
||||
int x;
|
||||
|
||||
if ((x = (*intr)++) == NINTR)
|
||||
panic("too many INTs, increase 'NINTR'\n");
|
||||
if ((x = (*intr)++) == NINTR) {
|
||||
printf( "too many INTs, increase 'NINTR'\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
io_apic_ints[x].int_type = entry->int_type;
|
||||
io_apic_ints[x].int_flags = entry->int_flags;
|
||||
@ -1203,8 +1218,10 @@ default_mp_table(int type)
|
||||
ux |= 0x02000000; /* set it to '2' */
|
||||
io_apic_write(0, IOAPIC_ID, ux); /* write new value */
|
||||
ux = io_apic_read(0, IOAPIC_ID); /* re-read && test */
|
||||
if ((ux & APIC_ID_MASK) != 0x02000000)
|
||||
panic("Problem: can't control IO APIC ID, reg: 0x%08x\n", ux);
|
||||
if ((ux & APIC_ID_MASK) != 0x02000000) {
|
||||
printf( "can't control IO APIC ID, reg: 0x%08x\n", ux );
|
||||
panic( "\n" );
|
||||
}
|
||||
io_apic_id = 2;
|
||||
}
|
||||
IO_TO_ID(0) = io_apic_id;
|
||||
@ -1230,7 +1247,8 @@ default_mp_table(int type)
|
||||
|
||||
/* case 4: case 7: MCA NOT supported */
|
||||
default: /* illegal/reserved */
|
||||
panic("BAD default MP config: %d\n", type);
|
||||
printf( "BAD default MP config: %d\n", type );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
#if defined(APIC_IO)
|
||||
@ -1250,9 +1268,11 @@ default_mp_table(int type)
|
||||
io_apic_ints[13].int_type = 0xff; /* N/C */
|
||||
#if !defined(APIC_MIXED_MODE)
|
||||
/** FIXME: ??? */
|
||||
panic("sorry, can't support type 2 default yet\n");
|
||||
printf( "sorry, can't support type 2 default yet\n" );
|
||||
panic( "\n" );
|
||||
#endif /* APIC_MIXED_MODE */
|
||||
} else
|
||||
}
|
||||
else
|
||||
io_apic_ints[2].src_bus_irq = 0; /* ISA IRQ0 is on APIC INT 2 */
|
||||
|
||||
if (type == 7)
|
||||
@ -1317,8 +1337,10 @@ start_all_aps(u_int boot_addr)
|
||||
* somewhere
|
||||
*/
|
||||
printf("panic y/n? [n] ");
|
||||
if (cngetc() != 'n')
|
||||
panic("bye-bye\n");
|
||||
if (cngetc() != 'n') {
|
||||
printf( "bye-bye\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
}
|
||||
CHECK_PRINT("trace"); /* show checkpoints */
|
||||
|
||||
|
@ -22,7 +22,7 @@
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: mp_machdep.c,v 1.8 1997/05/05 22:56:27 fsmp Exp $
|
||||
* $Id: mp_machdep.c,v 1.9 1997/05/07 22:25:27 fsmp Exp $
|
||||
*/
|
||||
|
||||
#include "opt_smp.h"
|
||||
@ -175,8 +175,8 @@ mp_start(void)
|
||||
if (mp_probe(base_memory))
|
||||
mp_enable(boot_address);
|
||||
else {
|
||||
printf("MP FPS NOT FOUND, suggest use of 'mptable' program\n");
|
||||
panic("can't continue!\n");
|
||||
printf( "MP FPS not found, can't continue!\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* finish pmap initialization - turn off V==P mapping at zero */
|
||||
@ -331,8 +331,10 @@ mp_enable(u_int boot_addr)
|
||||
|
||||
/* program each IO APIC in the system */
|
||||
for (apic = 0; apic < mp_napics; ++apic)
|
||||
if (io_apic_setup(apic) < 0)
|
||||
panic("IO APIC setup failure\n");
|
||||
if (io_apic_setup(apic) < 0) {
|
||||
printf( "IO APIC setup failure\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* install an inter-CPU IPI for TLB invalidation */
|
||||
setidt(ICU_OFFSET + XINVLTLB_OFFSET, Xinvltlb,
|
||||
@ -596,8 +598,10 @@ parse_mp_table(void)
|
||||
}
|
||||
#endif /* TEST_DEFAULT_CONFIG */
|
||||
|
||||
if ((cth = fps->pap) == 0)
|
||||
panic("MP Configuration Table Header MISSING!\n");
|
||||
if ((cth = fps->pap) == 0) {
|
||||
printf( "MP Configuration Table Header MISSING!\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
cpu_apic_address = (vm_offset_t) cth->apic_address;
|
||||
|
||||
@ -630,7 +634,8 @@ parse_mp_table(void)
|
||||
/* int_entry(position); */
|
||||
break;
|
||||
default:
|
||||
panic("mpfps Base Table HOSED!\n");
|
||||
printf( "mpfps Base Table HOSED!\n" );
|
||||
panic( "\n" );
|
||||
/* NOTREACHED */
|
||||
}
|
||||
|
||||
@ -638,8 +643,10 @@ parse_mp_table(void)
|
||||
(u_char *) position += basetable_entry_types[type].length;
|
||||
}
|
||||
|
||||
if (boot_cpu_id == -1)
|
||||
panic("NO BSP found!\n");
|
||||
if (boot_cpu_id == -1) {
|
||||
printf( "NO BSP found!\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* record # of APs found */
|
||||
mp_naps = (cpu - 1);
|
||||
@ -733,8 +740,8 @@ fix_mp_table(void)
|
||||
if (bus_data[x].bus_type != PCI)
|
||||
continue;
|
||||
if (bus_data[x].bus_id >= num_pci_bus ) {
|
||||
printf("bad PCI bus numbering\n");
|
||||
panic("\n");
|
||||
printf( "bad PCI bus numbering\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -777,8 +784,10 @@ bus_entry(bus_entry_ptr entry, int *bus)
|
||||
char name[8];
|
||||
char c;
|
||||
|
||||
if ((x = (*bus)++) == NBUS)
|
||||
panic("too many busses, increase 'NBUS'\n");
|
||||
if ((x = (*bus)++) == NBUS) {
|
||||
printf( "too many busses, increase 'NBUS'\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* encode the name into an index */
|
||||
for (y = 0; y < 6; ++y) {
|
||||
@ -788,8 +797,10 @@ bus_entry(bus_entry_ptr entry, int *bus)
|
||||
}
|
||||
name[y] = '\0';
|
||||
|
||||
if ((y = lookup_bus_type(name)) == UNKNOWN_BUSTYPE)
|
||||
panic("unknown bus type: '%s'\n", name);
|
||||
if ((y = lookup_bus_type(name)) == UNKNOWN_BUSTYPE) {
|
||||
printf( "unknown bus type: '%s'\n", name );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
bus_data[x].bus_id = entry->bus_id;
|
||||
bus_data[x].bus_type = y;
|
||||
@ -804,8 +815,10 @@ io_apic_entry(io_apic_entry_ptr entry, int *apic)
|
||||
if (!(entry->apic_flags & IOAPICENTRY_FLAG_EN))
|
||||
return;
|
||||
|
||||
if ((x = (*apic)++) == NAPIC)
|
||||
panic("too many APICs, increase 'NAPIC'\n");
|
||||
if ((x = (*apic)++) == NAPIC) {
|
||||
printf( "too many APICs, increase 'NAPIC'\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
IO_TO_ID(x) = entry->apic_id;
|
||||
ID_TO_IO(entry->apic_id) = x;
|
||||
@ -832,8 +845,10 @@ int_entry(int_entry_ptr entry, int *intr)
|
||||
{
|
||||
int x;
|
||||
|
||||
if ((x = (*intr)++) == NINTR)
|
||||
panic("too many INTs, increase 'NINTR'\n");
|
||||
if ((x = (*intr)++) == NINTR) {
|
||||
printf( "too many INTs, increase 'NINTR'\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
io_apic_ints[x].int_type = entry->int_type;
|
||||
io_apic_ints[x].int_flags = entry->int_flags;
|
||||
@ -1203,8 +1218,10 @@ default_mp_table(int type)
|
||||
ux |= 0x02000000; /* set it to '2' */
|
||||
io_apic_write(0, IOAPIC_ID, ux); /* write new value */
|
||||
ux = io_apic_read(0, IOAPIC_ID); /* re-read && test */
|
||||
if ((ux & APIC_ID_MASK) != 0x02000000)
|
||||
panic("Problem: can't control IO APIC ID, reg: 0x%08x\n", ux);
|
||||
if ((ux & APIC_ID_MASK) != 0x02000000) {
|
||||
printf( "can't control IO APIC ID, reg: 0x%08x\n", ux );
|
||||
panic( "\n" );
|
||||
}
|
||||
io_apic_id = 2;
|
||||
}
|
||||
IO_TO_ID(0) = io_apic_id;
|
||||
@ -1230,7 +1247,8 @@ default_mp_table(int type)
|
||||
|
||||
/* case 4: case 7: MCA NOT supported */
|
||||
default: /* illegal/reserved */
|
||||
panic("BAD default MP config: %d\n", type);
|
||||
printf( "BAD default MP config: %d\n", type );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
#if defined(APIC_IO)
|
||||
@ -1250,9 +1268,11 @@ default_mp_table(int type)
|
||||
io_apic_ints[13].int_type = 0xff; /* N/C */
|
||||
#if !defined(APIC_MIXED_MODE)
|
||||
/** FIXME: ??? */
|
||||
panic("sorry, can't support type 2 default yet\n");
|
||||
printf( "sorry, can't support type 2 default yet\n" );
|
||||
panic( "\n" );
|
||||
#endif /* APIC_MIXED_MODE */
|
||||
} else
|
||||
}
|
||||
else
|
||||
io_apic_ints[2].src_bus_irq = 0; /* ISA IRQ0 is on APIC INT 2 */
|
||||
|
||||
if (type == 7)
|
||||
@ -1317,8 +1337,10 @@ start_all_aps(u_int boot_addr)
|
||||
* somewhere
|
||||
*/
|
||||
printf("panic y/n? [n] ");
|
||||
if (cngetc() != 'n')
|
||||
panic("bye-bye\n");
|
||||
if (cngetc() != 'n') {
|
||||
printf( "bye-bye\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
}
|
||||
CHECK_PRINT("trace"); /* show checkpoints */
|
||||
|
||||
|
@ -22,7 +22,7 @@
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: mp_machdep.c,v 1.8 1997/05/05 22:56:27 fsmp Exp $
|
||||
* $Id: mp_machdep.c,v 1.9 1997/05/07 22:25:27 fsmp Exp $
|
||||
*/
|
||||
|
||||
#include "opt_smp.h"
|
||||
@ -175,8 +175,8 @@ mp_start(void)
|
||||
if (mp_probe(base_memory))
|
||||
mp_enable(boot_address);
|
||||
else {
|
||||
printf("MP FPS NOT FOUND, suggest use of 'mptable' program\n");
|
||||
panic("can't continue!\n");
|
||||
printf( "MP FPS not found, can't continue!\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* finish pmap initialization - turn off V==P mapping at zero */
|
||||
@ -331,8 +331,10 @@ mp_enable(u_int boot_addr)
|
||||
|
||||
/* program each IO APIC in the system */
|
||||
for (apic = 0; apic < mp_napics; ++apic)
|
||||
if (io_apic_setup(apic) < 0)
|
||||
panic("IO APIC setup failure\n");
|
||||
if (io_apic_setup(apic) < 0) {
|
||||
printf( "IO APIC setup failure\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* install an inter-CPU IPI for TLB invalidation */
|
||||
setidt(ICU_OFFSET + XINVLTLB_OFFSET, Xinvltlb,
|
||||
@ -596,8 +598,10 @@ parse_mp_table(void)
|
||||
}
|
||||
#endif /* TEST_DEFAULT_CONFIG */
|
||||
|
||||
if ((cth = fps->pap) == 0)
|
||||
panic("MP Configuration Table Header MISSING!\n");
|
||||
if ((cth = fps->pap) == 0) {
|
||||
printf( "MP Configuration Table Header MISSING!\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
cpu_apic_address = (vm_offset_t) cth->apic_address;
|
||||
|
||||
@ -630,7 +634,8 @@ parse_mp_table(void)
|
||||
/* int_entry(position); */
|
||||
break;
|
||||
default:
|
||||
panic("mpfps Base Table HOSED!\n");
|
||||
printf( "mpfps Base Table HOSED!\n" );
|
||||
panic( "\n" );
|
||||
/* NOTREACHED */
|
||||
}
|
||||
|
||||
@ -638,8 +643,10 @@ parse_mp_table(void)
|
||||
(u_char *) position += basetable_entry_types[type].length;
|
||||
}
|
||||
|
||||
if (boot_cpu_id == -1)
|
||||
panic("NO BSP found!\n");
|
||||
if (boot_cpu_id == -1) {
|
||||
printf( "NO BSP found!\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* record # of APs found */
|
||||
mp_naps = (cpu - 1);
|
||||
@ -733,8 +740,8 @@ fix_mp_table(void)
|
||||
if (bus_data[x].bus_type != PCI)
|
||||
continue;
|
||||
if (bus_data[x].bus_id >= num_pci_bus ) {
|
||||
printf("bad PCI bus numbering\n");
|
||||
panic("\n");
|
||||
printf( "bad PCI bus numbering\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -777,8 +784,10 @@ bus_entry(bus_entry_ptr entry, int *bus)
|
||||
char name[8];
|
||||
char c;
|
||||
|
||||
if ((x = (*bus)++) == NBUS)
|
||||
panic("too many busses, increase 'NBUS'\n");
|
||||
if ((x = (*bus)++) == NBUS) {
|
||||
printf( "too many busses, increase 'NBUS'\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* encode the name into an index */
|
||||
for (y = 0; y < 6; ++y) {
|
||||
@ -788,8 +797,10 @@ bus_entry(bus_entry_ptr entry, int *bus)
|
||||
}
|
||||
name[y] = '\0';
|
||||
|
||||
if ((y = lookup_bus_type(name)) == UNKNOWN_BUSTYPE)
|
||||
panic("unknown bus type: '%s'\n", name);
|
||||
if ((y = lookup_bus_type(name)) == UNKNOWN_BUSTYPE) {
|
||||
printf( "unknown bus type: '%s'\n", name );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
bus_data[x].bus_id = entry->bus_id;
|
||||
bus_data[x].bus_type = y;
|
||||
@ -804,8 +815,10 @@ io_apic_entry(io_apic_entry_ptr entry, int *apic)
|
||||
if (!(entry->apic_flags & IOAPICENTRY_FLAG_EN))
|
||||
return;
|
||||
|
||||
if ((x = (*apic)++) == NAPIC)
|
||||
panic("too many APICs, increase 'NAPIC'\n");
|
||||
if ((x = (*apic)++) == NAPIC) {
|
||||
printf( "too many APICs, increase 'NAPIC'\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
IO_TO_ID(x) = entry->apic_id;
|
||||
ID_TO_IO(entry->apic_id) = x;
|
||||
@ -832,8 +845,10 @@ int_entry(int_entry_ptr entry, int *intr)
|
||||
{
|
||||
int x;
|
||||
|
||||
if ((x = (*intr)++) == NINTR)
|
||||
panic("too many INTs, increase 'NINTR'\n");
|
||||
if ((x = (*intr)++) == NINTR) {
|
||||
printf( "too many INTs, increase 'NINTR'\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
io_apic_ints[x].int_type = entry->int_type;
|
||||
io_apic_ints[x].int_flags = entry->int_flags;
|
||||
@ -1203,8 +1218,10 @@ default_mp_table(int type)
|
||||
ux |= 0x02000000; /* set it to '2' */
|
||||
io_apic_write(0, IOAPIC_ID, ux); /* write new value */
|
||||
ux = io_apic_read(0, IOAPIC_ID); /* re-read && test */
|
||||
if ((ux & APIC_ID_MASK) != 0x02000000)
|
||||
panic("Problem: can't control IO APIC ID, reg: 0x%08x\n", ux);
|
||||
if ((ux & APIC_ID_MASK) != 0x02000000) {
|
||||
printf( "can't control IO APIC ID, reg: 0x%08x\n", ux );
|
||||
panic( "\n" );
|
||||
}
|
||||
io_apic_id = 2;
|
||||
}
|
||||
IO_TO_ID(0) = io_apic_id;
|
||||
@ -1230,7 +1247,8 @@ default_mp_table(int type)
|
||||
|
||||
/* case 4: case 7: MCA NOT supported */
|
||||
default: /* illegal/reserved */
|
||||
panic("BAD default MP config: %d\n", type);
|
||||
printf( "BAD default MP config: %d\n", type );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
#if defined(APIC_IO)
|
||||
@ -1250,9 +1268,11 @@ default_mp_table(int type)
|
||||
io_apic_ints[13].int_type = 0xff; /* N/C */
|
||||
#if !defined(APIC_MIXED_MODE)
|
||||
/** FIXME: ??? */
|
||||
panic("sorry, can't support type 2 default yet\n");
|
||||
printf( "sorry, can't support type 2 default yet\n" );
|
||||
panic( "\n" );
|
||||
#endif /* APIC_MIXED_MODE */
|
||||
} else
|
||||
}
|
||||
else
|
||||
io_apic_ints[2].src_bus_irq = 0; /* ISA IRQ0 is on APIC INT 2 */
|
||||
|
||||
if (type == 7)
|
||||
@ -1317,8 +1337,10 @@ start_all_aps(u_int boot_addr)
|
||||
* somewhere
|
||||
*/
|
||||
printf("panic y/n? [n] ");
|
||||
if (cngetc() != 'n')
|
||||
panic("bye-bye\n");
|
||||
if (cngetc() != 'n') {
|
||||
printf( "bye-bye\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
}
|
||||
CHECK_PRINT("trace"); /* show checkpoints */
|
||||
|
||||
|
@ -22,7 +22,7 @@
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: mp_machdep.c,v 1.8 1997/05/05 22:56:27 fsmp Exp $
|
||||
* $Id: mp_machdep.c,v 1.9 1997/05/07 22:25:27 fsmp Exp $
|
||||
*/
|
||||
|
||||
#include "opt_smp.h"
|
||||
@ -175,8 +175,8 @@ mp_start(void)
|
||||
if (mp_probe(base_memory))
|
||||
mp_enable(boot_address);
|
||||
else {
|
||||
printf("MP FPS NOT FOUND, suggest use of 'mptable' program\n");
|
||||
panic("can't continue!\n");
|
||||
printf( "MP FPS not found, can't continue!\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* finish pmap initialization - turn off V==P mapping at zero */
|
||||
@ -331,8 +331,10 @@ mp_enable(u_int boot_addr)
|
||||
|
||||
/* program each IO APIC in the system */
|
||||
for (apic = 0; apic < mp_napics; ++apic)
|
||||
if (io_apic_setup(apic) < 0)
|
||||
panic("IO APIC setup failure\n");
|
||||
if (io_apic_setup(apic) < 0) {
|
||||
printf( "IO APIC setup failure\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* install an inter-CPU IPI for TLB invalidation */
|
||||
setidt(ICU_OFFSET + XINVLTLB_OFFSET, Xinvltlb,
|
||||
@ -596,8 +598,10 @@ parse_mp_table(void)
|
||||
}
|
||||
#endif /* TEST_DEFAULT_CONFIG */
|
||||
|
||||
if ((cth = fps->pap) == 0)
|
||||
panic("MP Configuration Table Header MISSING!\n");
|
||||
if ((cth = fps->pap) == 0) {
|
||||
printf( "MP Configuration Table Header MISSING!\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
cpu_apic_address = (vm_offset_t) cth->apic_address;
|
||||
|
||||
@ -630,7 +634,8 @@ parse_mp_table(void)
|
||||
/* int_entry(position); */
|
||||
break;
|
||||
default:
|
||||
panic("mpfps Base Table HOSED!\n");
|
||||
printf( "mpfps Base Table HOSED!\n" );
|
||||
panic( "\n" );
|
||||
/* NOTREACHED */
|
||||
}
|
||||
|
||||
@ -638,8 +643,10 @@ parse_mp_table(void)
|
||||
(u_char *) position += basetable_entry_types[type].length;
|
||||
}
|
||||
|
||||
if (boot_cpu_id == -1)
|
||||
panic("NO BSP found!\n");
|
||||
if (boot_cpu_id == -1) {
|
||||
printf( "NO BSP found!\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* record # of APs found */
|
||||
mp_naps = (cpu - 1);
|
||||
@ -733,8 +740,8 @@ fix_mp_table(void)
|
||||
if (bus_data[x].bus_type != PCI)
|
||||
continue;
|
||||
if (bus_data[x].bus_id >= num_pci_bus ) {
|
||||
printf("bad PCI bus numbering\n");
|
||||
panic("\n");
|
||||
printf( "bad PCI bus numbering\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -777,8 +784,10 @@ bus_entry(bus_entry_ptr entry, int *bus)
|
||||
char name[8];
|
||||
char c;
|
||||
|
||||
if ((x = (*bus)++) == NBUS)
|
||||
panic("too many busses, increase 'NBUS'\n");
|
||||
if ((x = (*bus)++) == NBUS) {
|
||||
printf( "too many busses, increase 'NBUS'\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* encode the name into an index */
|
||||
for (y = 0; y < 6; ++y) {
|
||||
@ -788,8 +797,10 @@ bus_entry(bus_entry_ptr entry, int *bus)
|
||||
}
|
||||
name[y] = '\0';
|
||||
|
||||
if ((y = lookup_bus_type(name)) == UNKNOWN_BUSTYPE)
|
||||
panic("unknown bus type: '%s'\n", name);
|
||||
if ((y = lookup_bus_type(name)) == UNKNOWN_BUSTYPE) {
|
||||
printf( "unknown bus type: '%s'\n", name );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
bus_data[x].bus_id = entry->bus_id;
|
||||
bus_data[x].bus_type = y;
|
||||
@ -804,8 +815,10 @@ io_apic_entry(io_apic_entry_ptr entry, int *apic)
|
||||
if (!(entry->apic_flags & IOAPICENTRY_FLAG_EN))
|
||||
return;
|
||||
|
||||
if ((x = (*apic)++) == NAPIC)
|
||||
panic("too many APICs, increase 'NAPIC'\n");
|
||||
if ((x = (*apic)++) == NAPIC) {
|
||||
printf( "too many APICs, increase 'NAPIC'\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
IO_TO_ID(x) = entry->apic_id;
|
||||
ID_TO_IO(entry->apic_id) = x;
|
||||
@ -832,8 +845,10 @@ int_entry(int_entry_ptr entry, int *intr)
|
||||
{
|
||||
int x;
|
||||
|
||||
if ((x = (*intr)++) == NINTR)
|
||||
panic("too many INTs, increase 'NINTR'\n");
|
||||
if ((x = (*intr)++) == NINTR) {
|
||||
printf( "too many INTs, increase 'NINTR'\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
io_apic_ints[x].int_type = entry->int_type;
|
||||
io_apic_ints[x].int_flags = entry->int_flags;
|
||||
@ -1203,8 +1218,10 @@ default_mp_table(int type)
|
||||
ux |= 0x02000000; /* set it to '2' */
|
||||
io_apic_write(0, IOAPIC_ID, ux); /* write new value */
|
||||
ux = io_apic_read(0, IOAPIC_ID); /* re-read && test */
|
||||
if ((ux & APIC_ID_MASK) != 0x02000000)
|
||||
panic("Problem: can't control IO APIC ID, reg: 0x%08x\n", ux);
|
||||
if ((ux & APIC_ID_MASK) != 0x02000000) {
|
||||
printf( "can't control IO APIC ID, reg: 0x%08x\n", ux );
|
||||
panic( "\n" );
|
||||
}
|
||||
io_apic_id = 2;
|
||||
}
|
||||
IO_TO_ID(0) = io_apic_id;
|
||||
@ -1230,7 +1247,8 @@ default_mp_table(int type)
|
||||
|
||||
/* case 4: case 7: MCA NOT supported */
|
||||
default: /* illegal/reserved */
|
||||
panic("BAD default MP config: %d\n", type);
|
||||
printf( "BAD default MP config: %d\n", type );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
#if defined(APIC_IO)
|
||||
@ -1250,9 +1268,11 @@ default_mp_table(int type)
|
||||
io_apic_ints[13].int_type = 0xff; /* N/C */
|
||||
#if !defined(APIC_MIXED_MODE)
|
||||
/** FIXME: ??? */
|
||||
panic("sorry, can't support type 2 default yet\n");
|
||||
printf( "sorry, can't support type 2 default yet\n" );
|
||||
panic( "\n" );
|
||||
#endif /* APIC_MIXED_MODE */
|
||||
} else
|
||||
}
|
||||
else
|
||||
io_apic_ints[2].src_bus_irq = 0; /* ISA IRQ0 is on APIC INT 2 */
|
||||
|
||||
if (type == 7)
|
||||
@ -1317,8 +1337,10 @@ start_all_aps(u_int boot_addr)
|
||||
* somewhere
|
||||
*/
|
||||
printf("panic y/n? [n] ");
|
||||
if (cngetc() != 'n')
|
||||
panic("bye-bye\n");
|
||||
if (cngetc() != 'n') {
|
||||
printf( "bye-bye\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
}
|
||||
CHECK_PRINT("trace"); /* show checkpoints */
|
||||
|
||||
|
@ -22,7 +22,7 @@
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: mp_machdep.c,v 1.8 1997/05/05 22:56:27 fsmp Exp $
|
||||
* $Id: mp_machdep.c,v 1.9 1997/05/07 22:25:27 fsmp Exp $
|
||||
*/
|
||||
|
||||
#include "opt_smp.h"
|
||||
@ -175,8 +175,8 @@ mp_start(void)
|
||||
if (mp_probe(base_memory))
|
||||
mp_enable(boot_address);
|
||||
else {
|
||||
printf("MP FPS NOT FOUND, suggest use of 'mptable' program\n");
|
||||
panic("can't continue!\n");
|
||||
printf( "MP FPS not found, can't continue!\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* finish pmap initialization - turn off V==P mapping at zero */
|
||||
@ -331,8 +331,10 @@ mp_enable(u_int boot_addr)
|
||||
|
||||
/* program each IO APIC in the system */
|
||||
for (apic = 0; apic < mp_napics; ++apic)
|
||||
if (io_apic_setup(apic) < 0)
|
||||
panic("IO APIC setup failure\n");
|
||||
if (io_apic_setup(apic) < 0) {
|
||||
printf( "IO APIC setup failure\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* install an inter-CPU IPI for TLB invalidation */
|
||||
setidt(ICU_OFFSET + XINVLTLB_OFFSET, Xinvltlb,
|
||||
@ -596,8 +598,10 @@ parse_mp_table(void)
|
||||
}
|
||||
#endif /* TEST_DEFAULT_CONFIG */
|
||||
|
||||
if ((cth = fps->pap) == 0)
|
||||
panic("MP Configuration Table Header MISSING!\n");
|
||||
if ((cth = fps->pap) == 0) {
|
||||
printf( "MP Configuration Table Header MISSING!\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
cpu_apic_address = (vm_offset_t) cth->apic_address;
|
||||
|
||||
@ -630,7 +634,8 @@ parse_mp_table(void)
|
||||
/* int_entry(position); */
|
||||
break;
|
||||
default:
|
||||
panic("mpfps Base Table HOSED!\n");
|
||||
printf( "mpfps Base Table HOSED!\n" );
|
||||
panic( "\n" );
|
||||
/* NOTREACHED */
|
||||
}
|
||||
|
||||
@ -638,8 +643,10 @@ parse_mp_table(void)
|
||||
(u_char *) position += basetable_entry_types[type].length;
|
||||
}
|
||||
|
||||
if (boot_cpu_id == -1)
|
||||
panic("NO BSP found!\n");
|
||||
if (boot_cpu_id == -1) {
|
||||
printf( "NO BSP found!\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* record # of APs found */
|
||||
mp_naps = (cpu - 1);
|
||||
@ -733,8 +740,8 @@ fix_mp_table(void)
|
||||
if (bus_data[x].bus_type != PCI)
|
||||
continue;
|
||||
if (bus_data[x].bus_id >= num_pci_bus ) {
|
||||
printf("bad PCI bus numbering\n");
|
||||
panic("\n");
|
||||
printf( "bad PCI bus numbering\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -777,8 +784,10 @@ bus_entry(bus_entry_ptr entry, int *bus)
|
||||
char name[8];
|
||||
char c;
|
||||
|
||||
if ((x = (*bus)++) == NBUS)
|
||||
panic("too many busses, increase 'NBUS'\n");
|
||||
if ((x = (*bus)++) == NBUS) {
|
||||
printf( "too many busses, increase 'NBUS'\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* encode the name into an index */
|
||||
for (y = 0; y < 6; ++y) {
|
||||
@ -788,8 +797,10 @@ bus_entry(bus_entry_ptr entry, int *bus)
|
||||
}
|
||||
name[y] = '\0';
|
||||
|
||||
if ((y = lookup_bus_type(name)) == UNKNOWN_BUSTYPE)
|
||||
panic("unknown bus type: '%s'\n", name);
|
||||
if ((y = lookup_bus_type(name)) == UNKNOWN_BUSTYPE) {
|
||||
printf( "unknown bus type: '%s'\n", name );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
bus_data[x].bus_id = entry->bus_id;
|
||||
bus_data[x].bus_type = y;
|
||||
@ -804,8 +815,10 @@ io_apic_entry(io_apic_entry_ptr entry, int *apic)
|
||||
if (!(entry->apic_flags & IOAPICENTRY_FLAG_EN))
|
||||
return;
|
||||
|
||||
if ((x = (*apic)++) == NAPIC)
|
||||
panic("too many APICs, increase 'NAPIC'\n");
|
||||
if ((x = (*apic)++) == NAPIC) {
|
||||
printf( "too many APICs, increase 'NAPIC'\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
IO_TO_ID(x) = entry->apic_id;
|
||||
ID_TO_IO(entry->apic_id) = x;
|
||||
@ -832,8 +845,10 @@ int_entry(int_entry_ptr entry, int *intr)
|
||||
{
|
||||
int x;
|
||||
|
||||
if ((x = (*intr)++) == NINTR)
|
||||
panic("too many INTs, increase 'NINTR'\n");
|
||||
if ((x = (*intr)++) == NINTR) {
|
||||
printf( "too many INTs, increase 'NINTR'\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
io_apic_ints[x].int_type = entry->int_type;
|
||||
io_apic_ints[x].int_flags = entry->int_flags;
|
||||
@ -1203,8 +1218,10 @@ default_mp_table(int type)
|
||||
ux |= 0x02000000; /* set it to '2' */
|
||||
io_apic_write(0, IOAPIC_ID, ux); /* write new value */
|
||||
ux = io_apic_read(0, IOAPIC_ID); /* re-read && test */
|
||||
if ((ux & APIC_ID_MASK) != 0x02000000)
|
||||
panic("Problem: can't control IO APIC ID, reg: 0x%08x\n", ux);
|
||||
if ((ux & APIC_ID_MASK) != 0x02000000) {
|
||||
printf( "can't control IO APIC ID, reg: 0x%08x\n", ux );
|
||||
panic( "\n" );
|
||||
}
|
||||
io_apic_id = 2;
|
||||
}
|
||||
IO_TO_ID(0) = io_apic_id;
|
||||
@ -1230,7 +1247,8 @@ default_mp_table(int type)
|
||||
|
||||
/* case 4: case 7: MCA NOT supported */
|
||||
default: /* illegal/reserved */
|
||||
panic("BAD default MP config: %d\n", type);
|
||||
printf( "BAD default MP config: %d\n", type );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
#if defined(APIC_IO)
|
||||
@ -1250,9 +1268,11 @@ default_mp_table(int type)
|
||||
io_apic_ints[13].int_type = 0xff; /* N/C */
|
||||
#if !defined(APIC_MIXED_MODE)
|
||||
/** FIXME: ??? */
|
||||
panic("sorry, can't support type 2 default yet\n");
|
||||
printf( "sorry, can't support type 2 default yet\n" );
|
||||
panic( "\n" );
|
||||
#endif /* APIC_MIXED_MODE */
|
||||
} else
|
||||
}
|
||||
else
|
||||
io_apic_ints[2].src_bus_irq = 0; /* ISA IRQ0 is on APIC INT 2 */
|
||||
|
||||
if (type == 7)
|
||||
@ -1317,8 +1337,10 @@ start_all_aps(u_int boot_addr)
|
||||
* somewhere
|
||||
*/
|
||||
printf("panic y/n? [n] ");
|
||||
if (cngetc() != 'n')
|
||||
panic("bye-bye\n");
|
||||
if (cngetc() != 'n') {
|
||||
printf( "bye-bye\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
}
|
||||
CHECK_PRINT("trace"); /* show checkpoints */
|
||||
|
||||
|
@ -22,7 +22,7 @@
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: mp_machdep.c,v 1.8 1997/05/05 22:56:27 fsmp Exp $
|
||||
* $Id: mp_machdep.c,v 1.9 1997/05/07 22:25:27 fsmp Exp $
|
||||
*/
|
||||
|
||||
#include "opt_smp.h"
|
||||
@ -175,8 +175,8 @@ mp_start(void)
|
||||
if (mp_probe(base_memory))
|
||||
mp_enable(boot_address);
|
||||
else {
|
||||
printf("MP FPS NOT FOUND, suggest use of 'mptable' program\n");
|
||||
panic("can't continue!\n");
|
||||
printf( "MP FPS not found, can't continue!\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* finish pmap initialization - turn off V==P mapping at zero */
|
||||
@ -331,8 +331,10 @@ mp_enable(u_int boot_addr)
|
||||
|
||||
/* program each IO APIC in the system */
|
||||
for (apic = 0; apic < mp_napics; ++apic)
|
||||
if (io_apic_setup(apic) < 0)
|
||||
panic("IO APIC setup failure\n");
|
||||
if (io_apic_setup(apic) < 0) {
|
||||
printf( "IO APIC setup failure\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* install an inter-CPU IPI for TLB invalidation */
|
||||
setidt(ICU_OFFSET + XINVLTLB_OFFSET, Xinvltlb,
|
||||
@ -596,8 +598,10 @@ parse_mp_table(void)
|
||||
}
|
||||
#endif /* TEST_DEFAULT_CONFIG */
|
||||
|
||||
if ((cth = fps->pap) == 0)
|
||||
panic("MP Configuration Table Header MISSING!\n");
|
||||
if ((cth = fps->pap) == 0) {
|
||||
printf( "MP Configuration Table Header MISSING!\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
cpu_apic_address = (vm_offset_t) cth->apic_address;
|
||||
|
||||
@ -630,7 +634,8 @@ parse_mp_table(void)
|
||||
/* int_entry(position); */
|
||||
break;
|
||||
default:
|
||||
panic("mpfps Base Table HOSED!\n");
|
||||
printf( "mpfps Base Table HOSED!\n" );
|
||||
panic( "\n" );
|
||||
/* NOTREACHED */
|
||||
}
|
||||
|
||||
@ -638,8 +643,10 @@ parse_mp_table(void)
|
||||
(u_char *) position += basetable_entry_types[type].length;
|
||||
}
|
||||
|
||||
if (boot_cpu_id == -1)
|
||||
panic("NO BSP found!\n");
|
||||
if (boot_cpu_id == -1) {
|
||||
printf( "NO BSP found!\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* record # of APs found */
|
||||
mp_naps = (cpu - 1);
|
||||
@ -733,8 +740,8 @@ fix_mp_table(void)
|
||||
if (bus_data[x].bus_type != PCI)
|
||||
continue;
|
||||
if (bus_data[x].bus_id >= num_pci_bus ) {
|
||||
printf("bad PCI bus numbering\n");
|
||||
panic("\n");
|
||||
printf( "bad PCI bus numbering\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -777,8 +784,10 @@ bus_entry(bus_entry_ptr entry, int *bus)
|
||||
char name[8];
|
||||
char c;
|
||||
|
||||
if ((x = (*bus)++) == NBUS)
|
||||
panic("too many busses, increase 'NBUS'\n");
|
||||
if ((x = (*bus)++) == NBUS) {
|
||||
printf( "too many busses, increase 'NBUS'\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
/* encode the name into an index */
|
||||
for (y = 0; y < 6; ++y) {
|
||||
@ -788,8 +797,10 @@ bus_entry(bus_entry_ptr entry, int *bus)
|
||||
}
|
||||
name[y] = '\0';
|
||||
|
||||
if ((y = lookup_bus_type(name)) == UNKNOWN_BUSTYPE)
|
||||
panic("unknown bus type: '%s'\n", name);
|
||||
if ((y = lookup_bus_type(name)) == UNKNOWN_BUSTYPE) {
|
||||
printf( "unknown bus type: '%s'\n", name );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
bus_data[x].bus_id = entry->bus_id;
|
||||
bus_data[x].bus_type = y;
|
||||
@ -804,8 +815,10 @@ io_apic_entry(io_apic_entry_ptr entry, int *apic)
|
||||
if (!(entry->apic_flags & IOAPICENTRY_FLAG_EN))
|
||||
return;
|
||||
|
||||
if ((x = (*apic)++) == NAPIC)
|
||||
panic("too many APICs, increase 'NAPIC'\n");
|
||||
if ((x = (*apic)++) == NAPIC) {
|
||||
printf( "too many APICs, increase 'NAPIC'\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
IO_TO_ID(x) = entry->apic_id;
|
||||
ID_TO_IO(entry->apic_id) = x;
|
||||
@ -832,8 +845,10 @@ int_entry(int_entry_ptr entry, int *intr)
|
||||
{
|
||||
int x;
|
||||
|
||||
if ((x = (*intr)++) == NINTR)
|
||||
panic("too many INTs, increase 'NINTR'\n");
|
||||
if ((x = (*intr)++) == NINTR) {
|
||||
printf( "too many INTs, increase 'NINTR'\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
io_apic_ints[x].int_type = entry->int_type;
|
||||
io_apic_ints[x].int_flags = entry->int_flags;
|
||||
@ -1203,8 +1218,10 @@ default_mp_table(int type)
|
||||
ux |= 0x02000000; /* set it to '2' */
|
||||
io_apic_write(0, IOAPIC_ID, ux); /* write new value */
|
||||
ux = io_apic_read(0, IOAPIC_ID); /* re-read && test */
|
||||
if ((ux & APIC_ID_MASK) != 0x02000000)
|
||||
panic("Problem: can't control IO APIC ID, reg: 0x%08x\n", ux);
|
||||
if ((ux & APIC_ID_MASK) != 0x02000000) {
|
||||
printf( "can't control IO APIC ID, reg: 0x%08x\n", ux );
|
||||
panic( "\n" );
|
||||
}
|
||||
io_apic_id = 2;
|
||||
}
|
||||
IO_TO_ID(0) = io_apic_id;
|
||||
@ -1230,7 +1247,8 @@ default_mp_table(int type)
|
||||
|
||||
/* case 4: case 7: MCA NOT supported */
|
||||
default: /* illegal/reserved */
|
||||
panic("BAD default MP config: %d\n", type);
|
||||
printf( "BAD default MP config: %d\n", type );
|
||||
panic( "\n" );
|
||||
}
|
||||
|
||||
#if defined(APIC_IO)
|
||||
@ -1250,9 +1268,11 @@ default_mp_table(int type)
|
||||
io_apic_ints[13].int_type = 0xff; /* N/C */
|
||||
#if !defined(APIC_MIXED_MODE)
|
||||
/** FIXME: ??? */
|
||||
panic("sorry, can't support type 2 default yet\n");
|
||||
printf( "sorry, can't support type 2 default yet\n" );
|
||||
panic( "\n" );
|
||||
#endif /* APIC_MIXED_MODE */
|
||||
} else
|
||||
}
|
||||
else
|
||||
io_apic_ints[2].src_bus_irq = 0; /* ISA IRQ0 is on APIC INT 2 */
|
||||
|
||||
if (type == 7)
|
||||
@ -1317,8 +1337,10 @@ start_all_aps(u_int boot_addr)
|
||||
* somewhere
|
||||
*/
|
||||
printf("panic y/n? [n] ");
|
||||
if (cngetc() != 'n')
|
||||
panic("bye-bye\n");
|
||||
if (cngetc() != 'n') {
|
||||
printf( "bye-bye\n" );
|
||||
panic( "\n" );
|
||||
}
|
||||
}
|
||||
CHECK_PRINT("trace"); /* show checkpoints */
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user