Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/arch/xen Implement xpq_queue_machphys_update(), which qu...
details: https://anonhg.NetBSD.org/src/rev/8293524f2ea7
branches: trunk
changeset: 583738:8293524f2ea7
user: bouyer <bouyer%NetBSD.org@localhost>
date: Sat Aug 20 19:20:54 2005 +0000
description:
Implement xpq_queue_machphys_update(), which queues a request to
update the machine to physical table (to be used after a
MEMOP_increase_reservation).
diffstat:
sys/arch/xen/i386/xen_machdep.c | 13 +++++++++++--
sys/arch/xen/include/xenpmap.h | 3 ++-
2 files changed, 13 insertions(+), 3 deletions(-)
diffs (51 lines):
diff -r 1b6554a6fceb -r 8293524f2ea7 sys/arch/xen/i386/xen_machdep.c
--- a/sys/arch/xen/i386/xen_machdep.c Sat Aug 20 19:18:11 2005 +0000
+++ b/sys/arch/xen/i386/xen_machdep.c Sat Aug 20 19:20:54 2005 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: xen_machdep.c,v 1.10 2005/06/15 22:08:08 bouyer Exp $ */
+/* $NetBSD: xen_machdep.c,v 1.11 2005/08/20 19:20:54 bouyer Exp $ */
/*
*
@@ -33,7 +33,7 @@
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: xen_machdep.c,v 1.10 2005/06/15 22:08:08 bouyer Exp $");
+__KERNEL_RCSID(0, "$NetBSD: xen_machdep.c,v 1.11 2005/08/20 19:20:54 bouyer Exp $");
#include "opt_xen.h"
@@ -587,6 +587,15 @@
}
void
+xpq_queue_machphys_update(paddr_t ma, paddr_t pa)
+{
+ XENPRINTK2(("xpq_queue_machphys_update ma=%p pa=%p\n", (void *)ma, (void *)pa));
+ xpq_queue[xpq_idx].pa.ptr = ma | MMU_MACHPHYS_UPDATE;
+ xpq_queue[xpq_idx].pa.val = (pa - XPMAP_OFFSET) >> PAGE_SHIFT;
+ xpq_increment_idx();
+}
+
+void
xpq_queue_invlpg(vaddr_t va)
{
diff -r 1b6554a6fceb -r 8293524f2ea7 sys/arch/xen/include/xenpmap.h
--- a/sys/arch/xen/include/xenpmap.h Sat Aug 20 19:18:11 2005 +0000
+++ b/sys/arch/xen/include/xenpmap.h Sat Aug 20 19:20:54 2005 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: xenpmap.h,v 1.7 2005/05/31 12:36:56 yamt Exp $ */
+/* $NetBSD: xenpmap.h,v 1.8 2005/08/20 19:20:54 bouyer Exp $ */
/*
*
@@ -37,6 +37,7 @@
#define INVALID_P2M_ENTRY (~0UL)
+void xpq_queue_machphys_update(paddr_t, paddr_t);
void xpq_queue_invlpg(vaddr_t);
void xpq_queue_pde_update(pd_entry_t *, pd_entry_t);
void xpq_queue_pte_update(pt_entry_t *, pt_entry_t);
Home |
Main Index |
Thread Index |
Old Index