diff options
author | Ian Moffett <ian@osmora.org> | 2024-05-23 19:50:57 -0400 |
---|---|---|
committer | Ian Moffett <ian@osmora.org> | 2024-05-23 19:50:57 -0400 |
commit | 9c978c882984e879f6f418733fe95a16310f1373 (patch) | |
tree | df2c59d29831d7d4a9c005aec1ed5fbd8de3b6ff /sys/include/arch/amd64 | |
parent | b63337fbcf9f471399caa8a420fd35a1c2db98db (diff) |
kernel/amd64: pmap: Add support for TLB shootdowns
Signed-off-by: Ian Moffett <ian@osmora.org>
Diffstat (limited to 'sys/include/arch/amd64')
-rw-r--r-- | sys/include/arch/amd64/cpu.h | 3 | ||||
-rw-r--r-- | sys/include/arch/amd64/sysvec.h | 1 |
2 files changed, 4 insertions, 0 deletions
diff --git a/sys/include/arch/amd64/cpu.h b/sys/include/arch/amd64/cpu.h index ee9bad7..3febf5a 100644 --- a/sys/include/arch/amd64/cpu.h +++ b/sys/include/arch/amd64/cpu.h @@ -35,6 +35,7 @@ #include <sys/spinlock.h> #include <sys/sched_state.h> #include <sys/queue.h> +#include <sys/intr.h> #include <machine/tss.h> #include <machine/msr.h> /* @@ -72,6 +73,8 @@ struct cpu_info { volatile void *lapic_base; volatile bool has_x2apic; volatile struct tss_entry *tss; + volatile uintptr_t tlb_flush_ptr; /* Address to flush */ + struct intr_info *tlb_shootdown; /* Shootdown interrupt info */ }; /* diff --git a/sys/include/arch/amd64/sysvec.h b/sys/include/arch/amd64/sysvec.h index a6ff1bd..99a84c0 100644 --- a/sys/include/arch/amd64/sysvec.h +++ b/sys/include/arch/amd64/sysvec.h @@ -43,6 +43,7 @@ typedef enum { SYSVEC_IPI, /* IPI vector */ SYSVEC_HLT, /* Halt vector */ SYSVEC_PCKBD, /* Keyboard vector */ + SYSVEC_TLB, /* TLB shootdown */ /* -- XXX: New vectors go above -- */ NSYSVEC_BASE, /* Non-system vector base */ |