summaryrefslogtreecommitdiff
path: root/sys/include/arch
diff options
context:
space:
mode:
authorIan Moffett <ian@osmora.org>2025-08-22 22:14:40 -0400
committerIan Moffett <ian@osmora.org>2025-08-22 22:14:40 -0400
commit7981d8b03c48afd0ff7c80dab1b8bed27c55c3da (patch)
treef818e8099c8d6fe8f46f46df6e1173301654ede7 /sys/include/arch
parent84cd06f9a7439f2a35aaa11d4a926eaa88751921 (diff)
kernel/amd64: ipi: Make halt IPI more direct
This commit assigns the halt IPI its own vector so that it may be dispatched fast without needing to go through the IPI path as it is typically used only in very sensitive situations. Signed-off-by: Ian Moffett <ian@osmora.org>
Diffstat (limited to 'sys/include/arch')
-rw-r--r--sys/include/arch/amd64/ipi.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/sys/include/arch/amd64/ipi.h b/sys/include/arch/amd64/ipi.h
index 452d006..48243e7 100644
--- a/sys/include/arch/amd64/ipi.h
+++ b/sys/include/arch/amd64/ipi.h
@@ -34,9 +34,16 @@
#include <machine/cpu.h>
#include <machine/lapic.h>
+/*
+ * IPI_VECTOR is the main vector used for all misc
+ * IPIs, the HALT_VECTOR is used to slam the system
+ * to a screetching halt.
+ */
+#define IPI_VECTOR 0x21
+#define HALT_VECTOR 0x22
+
/* Fixed IPI IDs */
-#define IPI_HALT 0
-#define IPI_TLB 1
+#define IPI_TLB 0
/*
* Represents an interprocessor interrupt