summaryrefslogtreecommitdiffstats
path: root/sys/ia64/include/cpu.h
diff options
context:
space:
mode:
authormarcel <marcel@FreeBSD.org>2002-05-12 05:54:21 +0000
committermarcel <marcel@FreeBSD.org>2002-05-12 05:54:21 +0000
commit49d0eba5f2e4c8bc62afa196db9dc683dd92018e (patch)
tree60e30ee3008b26ae2fe106aea4d4197176e7a65c /sys/ia64/include/cpu.h
parente7bbea38d981582adb68f002d1abf784b0ea7047 (diff)
downloadFreeBSD-src-49d0eba5f2e4c8bc62afa196db9dc683dd92018e.zip
FreeBSD-src-49d0eba5f2e4c8bc62afa196db9dc683dd92018e.tar.gz
o Rename ia64_count_aps to ia64_count_cpus and reimplement the
function to return the total number of CPUs and not the highest CPU id. o Define mp_maxid based on the minimum of the actual number of CPUs in the system and MAXCPU. o In cpu_mp_add, when the CPU id of the CPU we're trying to add is larger than mp_maxid, don't add the CPU. Formerly this was based on MAXCPU. Don't count CPUs when we add them. We already know how many CPUs exist. o Replace MAXCPU with mp_maxid when used in loops that iterate over the id space. This avoids a couple of useless iterations. o In cpu_mp_unleash, use the number of CPUs to determine if we need to launch the CPUs. o Remove mp_hardware as it's not used anymore. o Move the IPI vector array from mp_machdep.c to sal.c. We use the array as a centralized place to collect vector assignments. Note that we still assign vectors to SMP specific IPIs in non-SMP configurations. Rename the array from mp_ipi_vector to ipi_vector. o Add IPI_MCA_RENDEZ and IPI_MCA_CMCV. These are used by MCA. Note that IPI_MCA_CMCV is not SMP specific. o Initialize the ipi_vector array so that we place the IPIs in sensible priority classes. The classes are relative to where the AP wake-up vector is located to guarantee that it's the highest priority (external) interrupt. Class assignment is as follows: class IPI notes x AP wake-up (normally x=15) x-1 MCA rendezvous x-2 AST, Rendezvous, stop x-3 CMCV, test
Diffstat (limited to 'sys/ia64/include/cpu.h')
-rw-r--r--sys/ia64/include/cpu.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/ia64/include/cpu.h b/sys/ia64/include/cpu.h
index c97450d..5169f37 100644
--- a/sys/ia64/include/cpu.h
+++ b/sys/ia64/include/cpu.h
@@ -136,7 +136,7 @@ void fork_trampoline(void); /* MAGIC */
void syscall(int, u_int64_t *, struct trapframe *);
void trap(int vector, int imm, struct trapframe *framep);
void ia64_probe_sapics(void);
-int ia64_count_aps(void);
+int ia64_count_cpus(void);
void map_pal_code(void);
void cpu_mp_add(uint, uint, uint);
OpenPOWER on IntegriCloud