Fix fallout from Update to Linux 2.6.11.
Signed-off-by: Christian Limpach <chris@xensource.com>
#define set_pte(pteptr, pteval) queue_l1_entry_update(pteptr, (pteval).pte_low)
#define set_pte_atomic(pteptr, pteval) queue_l1_entry_update(pteptr, (pteval).pte_low)
-#define set_pmd(pmdptr, pmdval) queue_l2_entry_update((pmdptr), (pmdval).pmd)
+#define set_pmd(pmdptr, pmdval) queue_l2_entry_update((pmdptr), (pmdval))
#define set_pgd(pgdptr, pgdval) ((void)0)
#define pgd_page(pgd) \
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0)
#define pte_offset_kernel pte_offset
+#define pud_t pgd_t
+#define pud_offset(d, va) d
#endif
struct dma_coherent_mem {
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0)
#define QUEUE_SIZE 2048
#define pte_offset_kernel pte_offset
+#define pmd_val_ma(v) (v).pmd;
+#define pud_t pgd_t
+#define pud_offset(d, va) d
#else
#define QUEUE_SIZE 128
+#define pmd_val_ma(v) (v).pud.pgd.pgd;
#endif
static mmu_update_t update_queue[QUEUE_SIZE];
unsigned long flags;
spin_lock_irqsave(&update_lock, flags);
update_queue[idx].ptr = virt_to_machine(ptr);
- update_queue[idx].val = val.pud.pgd.pgd; /* XXX pmd_val_ma */
+ update_queue[idx].val = pmd_val_ma(val);
increment_index();
spin_unlock_irqrestore(&update_lock, flags);
}
unsigned long flags;
spin_lock_irqsave(&update_lock, flags);
update_queue[idx].ptr = virt_to_machine(ptr);
- update_queue[idx].val = val.pud.pgd.pgd; /* XXX pmd_val_ma */
+ update_queue[idx].val = pmd_val_ma(val);
increment_index_and_flush();
spin_unlock_irqrestore(&update_lock, flags);
}
#define LIST_TO_PAGE(l) ( list_entry(l, struct page, list) )
#define UNLIST_PAGE(p) ( list_del(&p->list) )
#define pte_offset_kernel pte_offset
+#define pud_t pgd_t
+#define pud_offset(d, va) d
+#define pud_none(d) 0
+#define pud_bad(d) 0
#define subsys_initcall(_fn) __initcall(_fn)
#define pfn_to_page(_pfn) (mem_map + (_pfn))
#endif
#ifndef __HYPERVISOR_H__
#define __HYPERVISOR_H__
+#include <linux/config.h>
#include <linux/types.h>
#include <linux/kernel.h>
#include <linux/version.h>
#include <asm-xen/xen-public/io/domain_controller.h>
#include <asm/ptrace.h>
#include <asm/page.h>
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
#include <asm-generic/pgtable-nopmd.h>
+#endif
/* arch/xen/i386/kernel/setup.c */
union xen_start_info_union