diff options
| author | Marcel Moolenaar <marcel@FreeBSD.org> | 2005-08-13 21:08:32 +0000 |
|---|---|---|
| committer | Marcel Moolenaar <marcel@FreeBSD.org> | 2005-08-13 21:08:32 +0000 |
| commit | 86257f240a084f8c9c2c6587f81e4081dd8e31fe (patch) | |
| tree | f8caf84b1a659720c7e2b98eb05f65710f56dfdb /sys | |
| parent | 857b66d50529e867d79bb37f67797ae68bd97598 (diff) | |
Notes
Diffstat (limited to 'sys')
| -rw-r--r-- | sys/ia64/ia64/mp_machdep.c | 1 | ||||
| -rw-r--r-- | sys/ia64/ia64/sal.c | 6 |
2 files changed, 5 insertions, 2 deletions
diff --git a/sys/ia64/ia64/mp_machdep.c b/sys/ia64/ia64/mp_machdep.c index 59a4b7d0cfd6..a045ff55ab1c 100644 --- a/sys/ia64/ia64/mp_machdep.c +++ b/sys/ia64/ia64/mp_machdep.c @@ -372,6 +372,7 @@ ipi_send(struct pcpu *cpu, int ipi) pipi = __MEMIO_ADDR(ia64_lapic_address | ((cpu->pc_lid & LID_SAPIC_MASK) >> 12)); vector = (uint64_t)(ipi_vector[ipi] & 0xff); + KASSERT(vector != 0, ("IPI %d is not assigned a vector", ipi)); *pipi = vector; CTR3(KTR_SMP, "ipi_send(%p, %ld), cpuid=%d", pipi, vector, PCPU_GET(cpuid)); diff --git a/sys/ia64/ia64/sal.c b/sys/ia64/ia64/sal.c index c05f7beaaeae..251c1ee82577 100644 --- a/sys/ia64/ia64/sal.c +++ b/sys/ia64/ia64/sal.c @@ -72,13 +72,15 @@ setup_ipi_vectors(int ceil) int ipi; ipi_vector[IPI_MCA_RENDEZ] = ceil - 0x10; - ipi_vector[IPI_MCA_CMCV] = ceil - 0x30; - ipi_vector[IPI_TEST] = ceil - 0x30 + 1; ipi = IPI_AST; /* First generic IPI. */ ceil -= 0x20; /* First vector in group. */ while (ipi < IPI_COUNT) ipi_vector[ipi++] = ceil++; + + ipi_vector[IPI_HIGH_FP] = ceil - 0x30; + ipi_vector[IPI_MCA_CMCV] = ceil - 0x30 + 1; + ipi_vector[IPI_TEST] = ceil - 0x30 + 2; } void |
