[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH] disable writable pagetables on FreeBSD


  • To: xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>
  • From: Kip Macy <kip.macy@xxxxxxxxx>
  • Date: Fri, 29 Apr 2005 19:30:46 -0700
  • Delivery-date: Sat, 30 Apr 2005 02:30:28 +0000
  • Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:reply-to:to:subject:mime-version:content-type:content-transfer-encoding:content-disposition; b=pM4UdGNgq1PxU8jb6OHGq9eUPzvkJ0Bd+oEkqTvtViaPISwL4FvbBC7WKi76OHWbCKjxmMAcRzKnxFOuOWt51vEwcE1gQHVccTHzOOfpOHabCe1K9kJk/dDfpXiYd86mmubBC8Sd8rWMz2aX1mUCD8Mf3zmpzzPrZxRww1euylU=
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>

Presumably as a result of recent changes, FreeBSD no longer works with
writable page tables. In the short-term I'm more interested in
functionality than performance. This patch disables them and fixes a
compile issue.


# This is a BitKeeper generated diff -Nru style patch.
#
# ChangeSet
#   2005/04/29 19:26:00-07:00 kmacy@xxxxxxxxxxxxxxxxxxxx 
#   disable writable pagetables + compile fix 
#   Signed-off-by: Kip Macy <kmacy@xxxxxxxxxxx>
# 
# freebsd-5.3-xen-sparse/i386-xen/include/xenpmap.h
#   2005/04/29 19:25:58-07:00 kmacy@xxxxxxxxxxxxxxxxxxxx +5 -3
#   disable writable pagetables + compile fix
# 
diff -Nru a/freebsd-5.3-xen-sparse/i386-xen/include/xenpmap.h
b/freebsd-5.3-xen-sparse/i386-xen/include/xenpmap.h
--- a/freebsd-5.3-xen-sparse/i386-xen/include/xenpmap.h 2005-04-28
19:30:44 -07:00
+++ b/freebsd-5.3-xen-sparse/i386-xen/include/xenpmap.h 2005-04-28
19:30:44 -07:00
@@ -59,7 +59,9 @@
 #define PMAP_DEC_REF_PAGE(a)
 #endif
 
+#if 0
 #define WRITABLE_PAGETABLES
+#endif
 #define ALWAYS_SYNC 0
 
 #ifdef PT_DEBUG
@@ -118,18 +120,18 @@
 
 #define PT_SET_VA(_ptp,_npte,sync) do {                                \
         PMAP_REF((_ptp), xpmap_ptom(_npte));                    \
-       xen_queue_pt_update((pt_entry_t *)vtomach(_ptp),        \
+       xen_queue_pt_update(vtomach(_ptp),                      \
                            xpmap_ptom(_npte));                 \
        if (sync || ALWAYS_SYNC) xen_flush_queue();             \
 } while (/*CONSTCOND*/0)
 #define PT_SET_VA_MA(_ptp,_npte,sync) do {                     \
         PMAP_REF((_ptp), (_npte));                              \
-       xen_queue_pt_update((pt_entry_t *)vtomach(_ptp), _npte);\
+       xen_queue_pt_update(vtomach(_ptp), _npte);              \
        if (sync || ALWAYS_SYNC) xen_flush_queue();             \
 } while (/*CONSTCOND*/0)
 #define PT_CLEAR_VA(_ptp, sync) do {                           \
         PMAP_REF((pt_entry_t *)(_ptp), 0);                      \
-       xen_queue_pt_update((pt_entry_t *)vtomach(_ptp), 0);    \
+       xen_queue_pt_update(vtomach(_ptp), 0);                  \
        if (sync || ALWAYS_SYNC)                                \
                xen_flush_queue();                              \
 } while (/*CONSTCOND*/0)

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.