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

[Xen-changelog] Fix Xen build with PAE enabled, and a fix to help



# HG changeset patch
# User kaf24@xxxxxxxxxxxxxxxxxxxx
# Node ID 12edc2f2ca1814c229b61b89d8b25dea9af67b66
# Parent  9f6057761c8f485b1948fdd3308ae10e3ea66ad5

Fix Xen build with PAE enabled, and a fix to help
domU PAE.
Signed-off-by: Gerd Knorr <kraxel@xxxxxxx>

diff -r 9f6057761c8f -r 12edc2f2ca18 xen/include/asm-x86/config.h
--- a/xen/include/asm-x86/config.h      Tue Jul 12 13:19:10 2005
+++ b/xen/include/asm-x86/config.h      Tue Jul 12 16:12:48 2005
@@ -267,7 +267,11 @@
 #define L2_PAGETABLE_XEN_SLOTS \
     (L2_PAGETABLE_LAST_XEN_SLOT - L2_PAGETABLE_FIRST_XEN_SLOT + 1)
 
-#define PGT_base_page_table PGT_l2_page_table
+#ifdef CONFIG_X86_PAE
+# define PGT_base_page_table PGT_l3_page_table
+#else
+# define PGT_base_page_table PGT_l2_page_table
+#endif
 
 #define __HYPERVISOR_CS 0xe008
 #define __HYPERVISOR_DS 0xe010
diff -r 9f6057761c8f -r 12edc2f2ca18 xen/include/asm-x86/shadow.h
--- a/xen/include/asm-x86/shadow.h      Tue Jul 12 13:19:10 2005
+++ b/xen/include/asm-x86/shadow.h      Tue Jul 12 16:12:48 2005
@@ -630,6 +630,83 @@
     shadow_unlock(d);
 }
 #endif
+
+#if CONFIG_PAGING_LEVELS == 3
+/* dummy functions, PAE has no shadow support yet */
+
+static inline void
+__shadow_get_l2e(
+    struct vcpu *v, unsigned long va, l2_pgentry_t *psl2e)
+{
+    BUG();
+}
+
+static inline void
+__shadow_set_l2e(
+    struct vcpu *v, unsigned long va, l2_pgentry_t value)
+{
+    BUG();
+}
+
+static inline void
+__guest_get_l2e(
+    struct vcpu *v, unsigned long va, l2_pgentry_t *pl2e)
+{
+    BUG();
+}
+
+static inline void
+__guest_set_l2e(
+    struct vcpu *v, unsigned long va, l2_pgentry_t value)
+{
+    BUG();
+}
+
+static inline void shadow_drop_references(
+    struct domain *d, struct pfn_info *page)
+{
+    if ( likely(!shadow_mode_refcounts(d)) ||
+         ((page->u.inuse.type_info & PGT_count_mask) == 0) )
+        return;
+    BUG();
+}
+
+static inline void shadow_sync_and_drop_references(
+    struct domain *d, struct pfn_info *page)
+{
+    if ( likely(!shadow_mode_refcounts(d)) )
+        return;
+    BUG();
+}
+
+static inline int l1pte_write_fault(
+    struct vcpu *v, l1_pgentry_t *gpte_p, l1_pgentry_t *spte_p,
+    unsigned long va)
+{
+    BUG();
+    return 42;
+}
+
+static inline int l1pte_read_fault(
+    struct domain *d, l1_pgentry_t *gpte_p, l1_pgentry_t *spte_p)
+{
+    BUG();
+    return 42;
+}
+
+void static inline
+shadow_set_l1e(unsigned long va, l1_pgentry_t new_spte, int create_l1_shadow)
+{
+    BUG();
+}
+
+static inline unsigned long gva_to_gpa(unsigned long gva)
+{
+    BUG();
+    return 42;
+}
+#endif
+    
 /************************************************************************/
 
 /*

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


 


Rackspace

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