rendered paste bodydiff -urN build_mod/build_mod/firegl_public.c build_mod/firegl_public.c
--- build_mod/firegl_public.c 2006-09-05 14:58:52.000000000 -0400
+++ build_mod/firegl_public.c 2006-09-06 17:21:27.000000000 -0400
@@ -1,4 +1,9 @@
/****************************************************************************
+ * Copyright (c) 2006 H. Andres Lagar-Cavilla *
+ * Modifications to the ati fglrx kernel module open source wrapper made
+ * in the context of the xen-gl project *
+ ****************************************************************************/
+/****************************************************************************
* *
* Copyright 1999-2005 ATI Technologies Inc., Markham, Ontario, CANADA. *
* All Rights Reserved. *
@@ -43,6 +48,7 @@
#if !defined(CONFIG_X86_BIGSMP)
#if !defined(CONFIG_X86_VISWS)
#if !defined(CONFIG_X86_GENERICARCH)
+#if !defined(CONFIG_X86_XEN)
#error unknown or undefined architecture configured
#endif
#endif
@@ -52,6 +58,7 @@
#endif
#endif
#endif
+#endif
#endif /* LINUX_VERSION_CODE */
/* The dirty-page-tracking patch included in NLD 9 SMP kernels defines
diff -urN build_mod/firegl_public.h build_mod/firegl_public.h
--- build_mod/firegl_public.h 2006-09-05 14:58:52.000000000 -0400
+++ build_mod/firegl_public.h 2006-09-06 17:21:44.000000000 -0400
@@ -1,4 +1,9 @@
/****************************************************************************
+ * Copyright (c) 2006 H. Andres Lagar-Cavilla *
+ * Modifications to the ati fglrx kernel module open source wrapper made
+ * in the context of the xen-gl project *
+****************************************************************************/
+/****************************************************************************
* *
* Copyright 1999-2005 ATI Technologies Inc., Markham, Ontario, CANADA. *
* All Rights Reserved. *
@@ -32,8 +37,15 @@
#if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,9)
+#ifdef CONFIG_XEN
+#define REMAP_PAGE_RANGE_FN io_remap_pfn_range
+#define REMAP_PAGE_RANGE_STR "io_remap_pfn_range"
+
+#else
#define REMAP_PAGE_RANGE_FN remap_pfn_range
#define REMAP_PAGE_RANGE_STR "remap_pfn_range"
+#endif
+
#define REMAP_PAGE_RANGE_OFF(offset) ((offset) >> PAGE_SHIFT)
#else /* LINUX_VERSION_CODE <= KERNEL_VERSION(2,6,9) */
@@ -44,13 +56,21 @@
#endif /* LINUX_VERSION_CODE > KERNEL_VERSION(2,6,9) */
+#ifdef CONFIG_XEN
+#define REMAP_PAGE_RANGE(vma,offset) \
+ REMAP_PAGE_RANGE_FN((vma), \
+ (vma)->vm_start, \
+ REMAP_PAGE_RANGE_OFF(offset), \
+ (vma)->vm_end - (vma)->vm_start, \
+ (vma)->vm_page_prot)
+#else
#define REMAP_PAGE_RANGE(vma,offset) \
REMAP_PAGE_RANGE_FN(FGL_VMA_API_PASS \
(vma)->vm_start, \
REMAP_PAGE_RANGE_OFF(offset), \
(vma)->vm_end - (vma)->vm_start, \
(vma)->vm_page_prot)
-
+#endif
/* Page table macros */
diff -urN build_mod/make.sh build_mod/make.sh
--- build_mod/make.sh 2006-09-05 14:58:52.000000000 -0400
+++ build_mod/make.sh 2006-09-06 17:22:57.000000000 -0400
@@ -1,5 +1,10 @@
#!/bin/bash
# ==============================================================
+# (C) 2006 H. Andres Lagar-Cavilla, modifications to the ati
+# fglrx kernel module open source wrapper made in the context of
+# the xen-gl project
+# ==============================================================
+# ==============================================================
# make.sh
# (C) 2001 by ATI Technologies
# ==============================================================
@@ -436,7 +441,7 @@
else
if [ `cat $src_file | grep "#undef" | grep "CONFIG_SMP" -c` = 0 ]
then
- SMP=`cat $src_file | grep CONFIG_SMP | cut -d' ' -f3`
+ SMP=`cat $src_file | grep CONFIG_SMP | cut -d' ' -f3 | head -n 1`
echo "file $src_file says: SMP=$SMP" >> $logfile
fi
fi