summaryrefslogtreecommitdiff
path: root/sys/arch/amd64/include
diff options
context:
space:
mode:
authorPhilip Guenthe <guenther@cvs.openbsd.org>2009-06-05 10:51:46 +0000
committerPhilip Guenthe <guenther@cvs.openbsd.org>2009-06-05 10:51:46 +0000
commit7a55a9ec252cc07a8443ba6ccf6a54de29294b43 (patch)
tree7b7edf1fea36ebbcfc712525a8aac546988f9515 /sys/arch/amd64/include
parenta42b4b90807134280e27cf5528f4e748387ccf6f (diff)
Revert the curpmap change. We know the IPI is broken on both ends,
but even with proposed fixes, the reaper panics are back.
Diffstat (limited to 'sys/arch/amd64/include')
-rw-r--r--sys/arch/amd64/include/cpu.h4
-rw-r--r--sys/arch/amd64/include/i82489var.h2
-rw-r--r--sys/arch/amd64/include/pmap.h7
3 files changed, 3 insertions, 10 deletions
diff --git a/sys/arch/amd64/include/cpu.h b/sys/arch/amd64/include/cpu.h
index efd8ea21f50..d0308306356 100644
--- a/sys/arch/amd64/include/cpu.h
+++ b/sys/arch/amd64/include/cpu.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: cpu.h,v 1.45 2009/06/02 03:04:54 jordan Exp $ */
+/* $OpenBSD: cpu.h,v 1.46 2009/06/05 10:51:45 guenther Exp $ */
/* $NetBSD: cpu.h,v 1.1 2003/04/26 18:39:39 fvdl Exp $ */
/*-
@@ -80,8 +80,6 @@ struct cpu_info {
struct pcb *ci_idle_pcb;
int ci_idle_tss_sel;
- struct pmap *ci_curpmap;
-
struct intrsource *ci_isources[MAX_INTR_SOURCES];
u_int32_t ci_ipending;
int ci_ilevel;
diff --git a/sys/arch/amd64/include/i82489var.h b/sys/arch/amd64/include/i82489var.h
index 67f61beff9e..0cfbe6771c3 100644
--- a/sys/arch/amd64/include/i82489var.h
+++ b/sys/arch/amd64/include/i82489var.h
@@ -86,12 +86,10 @@ extern void Xresume_lapic_ipi(void);
#define LAPIC_IPI_INVLTLB (LAPIC_IPI_OFFSET + 0)
#define LAPIC_IPI_INVLPG (LAPIC_IPI_OFFSET + 1)
#define LAPIC_IPI_INVLRANGE (LAPIC_IPI_OFFSET + 2)
-#define LAPIC_IPI_RELOADCR3 (LAPIC_IPI_OFFSET + 3)
extern void Xipi_invltlb(void);
extern void Xipi_invlpg(void);
extern void Xipi_invlrange(void);
-extern void Xipi_reloadcr3(void);
/*
* Vector used for local apic timer interrupts.
diff --git a/sys/arch/amd64/include/pmap.h b/sys/arch/amd64/include/pmap.h
index 7d2f97a5d63..939228b9bec 100644
--- a/sys/arch/amd64/include/pmap.h
+++ b/sys/arch/amd64/include/pmap.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: pmap.h,v 1.24 2009/05/28 09:05:33 art Exp $ */
+/* $OpenBSD: pmap.h,v 1.25 2009/06/05 10:51:45 guenther Exp $ */
/* $NetBSD: pmap.h,v 1.1 2003/04/26 18:39:46 fvdl Exp $ */
/*
@@ -325,6 +325,7 @@ struct pmap {
union descriptor *pm_ldt; /* user-set LDT */
int pm_ldt_len; /* number of LDT entries */
int pm_ldt_sel; /* LDT selector */
+ u_int32_t pm_cpus; /* mask of CPUs using pmap */
};
/*
@@ -415,8 +416,6 @@ static void pmap_update_pg(vaddr_t);
static void pmap_update_2pg(vaddr_t,vaddr_t);
void pmap_write_protect(struct pmap *, vaddr_t,
vaddr_t, vm_prot_t);
-void pmap_switch(struct proc *, struct proc *);
-
vaddr_t reserve_dumppages(vaddr_t); /* XXX: not a pmap fn */
@@ -424,10 +423,8 @@ void pmap_tlb_shootpage(struct pmap *, vaddr_t);
void pmap_tlb_shootrange(struct pmap *, vaddr_t, vaddr_t);
void pmap_tlb_shoottlb(void);
#ifdef MULTIPROCESSOR
-void pmap_tlb_droppmap(struct pmap *);
void pmap_tlb_shootwait(void);
#else
-#define pmap_tlb_droppmap(pm)
#define pmap_tlb_shootwait()
#endif