aboutsummaryrefslogtreecommitdiffstats
path: root/unmodified_drivers
diff options
context:
space:
mode:
authorAlex Williamson <alex.williamson@hp.com>2007-04-06 10:08:30 -0600
committerAlex Williamson <alex.williamson@hp.com>2007-04-06 10:08:30 -0600
commita449ed227cf8c8bc5582e90f8016114c0417dc56 (patch)
treefa32d849d4e23d20dcf0a132b5b1876eded0cb9f /unmodified_drivers
parent3a6fddb262c50132f6b3c33060a8beaecc80e4cd (diff)
parenta15ec0cdeb00375ec97040a0dfa727e416c37d17 (diff)
downloadxen-a449ed227cf8c8bc5582e90f8016114c0417dc56.tar.gz
xen-a449ed227cf8c8bc5582e90f8016114c0417dc56.tar.bz2
xen-a449ed227cf8c8bc5582e90f8016114c0417dc56.zip
merge with xen-unstable.hg
Diffstat (limited to 'unmodified_drivers')
-rw-r--r--unmodified_drivers/linux-2.6/Makefile1
-rw-r--r--unmodified_drivers/linux-2.6/balloon/Kbuild9
-rw-r--r--unmodified_drivers/linux-2.6/balloon/Makefile3
-rw-r--r--unmodified_drivers/linux-2.6/compat-include/xen/platform-compat.h22
-rwxr-xr-xunmodified_drivers/linux-2.6/mkbuildtree3
-rw-r--r--unmodified_drivers/linux-2.6/overrides.mk3
-rw-r--r--unmodified_drivers/linux-2.6/platform-pci/platform-pci.c10
-rw-r--r--unmodified_drivers/linux-2.6/platform-pci/xen_support.c9
8 files changed, 39 insertions, 21 deletions
diff --git a/unmodified_drivers/linux-2.6/Makefile b/unmodified_drivers/linux-2.6/Makefile
index 119016f531..6722df5ac6 100644
--- a/unmodified_drivers/linux-2.6/Makefile
+++ b/unmodified_drivers/linux-2.6/Makefile
@@ -2,6 +2,7 @@ include $(M)/overrides.mk
obj-m += platform-pci/
obj-m += xenbus/
+obj-m += balloon/
obj-m += blkfront/
obj-m += netfront/
obj-m += util/
diff --git a/unmodified_drivers/linux-2.6/balloon/Kbuild b/unmodified_drivers/linux-2.6/balloon/Kbuild
new file mode 100644
index 0000000000..bcc8b05207
--- /dev/null
+++ b/unmodified_drivers/linux-2.6/balloon/Kbuild
@@ -0,0 +1,9 @@
+include $(M)/overrides.mk
+
+obj-m = xen-balloon.o
+
+EXTRA_CFLAGS += -I$(M)/platform-pci
+
+xen-balloon-objs =
+xen-balloon-objs += balloon.o
+xen-balloon-objs += sysfs.o
diff --git a/unmodified_drivers/linux-2.6/balloon/Makefile b/unmodified_drivers/linux-2.6/balloon/Makefile
new file mode 100644
index 0000000000..64e7acd194
--- /dev/null
+++ b/unmodified_drivers/linux-2.6/balloon/Makefile
@@ -0,0 +1,3 @@
+ifneq ($(KERNELRELEASE),)
+include $(src)/Kbuild
+endif
diff --git a/unmodified_drivers/linux-2.6/compat-include/xen/platform-compat.h b/unmodified_drivers/linux-2.6/compat-include/xen/platform-compat.h
index 7493ddf382..f6a9371034 100644
--- a/unmodified_drivers/linux-2.6/compat-include/xen/platform-compat.h
+++ b/unmodified_drivers/linux-2.6/compat-include/xen/platform-compat.h
@@ -25,6 +25,10 @@
#define NET_IP_ALIGN 0
#endif
+#if defined(_LINUX_SKBUFF_H) && !defined(CHECKSUM_HW)
+#define CHECKSUM_HW CHECKSUM_PARTIAL
+#endif
+
#if defined(_LINUX_ERR_H) && !defined(IS_ERR_VALUE)
#define IS_ERR_VALUE(x) unlikely((x) > (unsigned long)-1000L)
#endif
@@ -36,7 +40,7 @@
/* Some kernels have this typedef backported so we cannot reliably
* detect based on version number, hence we forcibly #define it.
*/
-#if defined(__LINUX_TYPES_H) || defined(__LINUX_GFP_H)
+#if defined(__LINUX_TYPES_H) || defined(__LINUX_GFP_H) || defined(_LINUX_KERNEL_H)
#define gfp_t unsigned
#endif
@@ -47,6 +51,14 @@
#define atomic_notifier_call_chain(chain,val,v) notifier_call_chain(chain,val,v)
#endif
+#if defined(_LINUX_MM_H) && defined set_page_count
+#define init_page_count(page) set_page_count(page, 1)
+#endif
+
+#if defined(__LINUX_GFP_H) && !defined __GFP_NOMEMALLOC
+#define __GFP_NOMEMALLOC 0
+#endif
+
#if defined(_LINUX_FS_H) && LINUX_VERSION_CODE < KERNEL_VERSION(2,6,9)
#define nonseekable_open(inode, filp) /* Nothing to do */
#endif
@@ -71,11 +83,19 @@ void *kzalloc(size_t size, int flags);
#define end_that_request_last(req, uptodate) end_that_request_last(req)
#endif
+#if defined(_LINUX_CAPABILITY_H) && LINUX_VERSION_CODE < KERNEL_VERSION(2,6,16)
+#define capable(cap) (1)
+#endif
+
#if defined(_LINUX_KERNEL_H) && LINUX_VERSION_CODE < KERNEL_VERSION(2,6,18)
extern char *kasprintf(gfp_t gfp, const char *fmt, ...)
__attribute__ ((format (printf, 2, 3)));
#endif
+#if defined(_LINUX_SYSRQ_H) && LINUX_VERSION_CODE > KERNEL_VERSION(2,6,18)
+#define handle_sysrq(x,y,z) handle_sysrq(x,y)
+#endif
+
/*
* This variable at present is referenced by netfront, but only in code that
* is dead when running in hvm guests. To detect potential active uses of it
diff --git a/unmodified_drivers/linux-2.6/mkbuildtree b/unmodified_drivers/linux-2.6/mkbuildtree
index 289e63b03a..b12da9b086 100755
--- a/unmodified_drivers/linux-2.6/mkbuildtree
+++ b/unmodified_drivers/linux-2.6/mkbuildtree
@@ -17,6 +17,9 @@ for d in $(find ${XL}/drivers/xen/ -maxdepth 1 -type d | sed -e 1d); do
if ! echo $d | egrep -q back; then
lndir $d $(basename $d) > /dev/null 2>&1
fi
+ if ! echo $d | egrep -q ball; then
+ lndir $d $(basename $d) > /dev/null 2>&1
+ fi
done
ln -sf ${XL}/drivers/xen/core/gnttab.c platform-pci
diff --git a/unmodified_drivers/linux-2.6/overrides.mk b/unmodified_drivers/linux-2.6/overrides.mk
index b00c63d4f0..db791e75ef 100644
--- a/unmodified_drivers/linux-2.6/overrides.mk
+++ b/unmodified_drivers/linux-2.6/overrides.mk
@@ -4,7 +4,8 @@
#
# (i.e. we need the native config for things like -mregparm, but
# a Xen kernel to find the right headers)
-EXTRA_CFLAGS += -D__XEN_INTERFACE_VERSION__=0x00030202
+EXTRA_CFLAGS += -D__XEN_INTERFACE_VERSION__=0x00030205
+EXTRA_CFLAGS += -DCONFIG_XEN_COMPAT=0xffffff
EXTRA_CFLAGS += -I$(M)/include -I$(M)/compat-include -DHAVE_XEN_PLATFORM_COMPAT_H
ifeq ($(ARCH),ia64)
EXTRA_CFLAGS += -DCONFIG_VMX_GUEST
diff --git a/unmodified_drivers/linux-2.6/platform-pci/platform-pci.c b/unmodified_drivers/linux-2.6/platform-pci/platform-pci.c
index c9f6d73109..8e69557ac8 100644
--- a/unmodified_drivers/linux-2.6/platform-pci/platform-pci.c
+++ b/unmodified_drivers/linux-2.6/platform-pci/platform-pci.c
@@ -208,14 +208,6 @@ static uint64_t get_callback_via(struct pci_dev *pdev)
((uint64_t)(pin - 1) & 3));
}
-/* Invalidate foreign mappings (e.g., in qemu-based device model). */
-static uint16_t invlmap_port;
-void xen_invalidate_foreign_mappings(void)
-{
- outb(0, invlmap_port);
-}
-EXPORT_SYMBOL(xen_invalidate_foreign_mappings);
-
static int __devinit platform_pci_init(struct pci_dev *pdev,
const struct pci_device_id *ent)
{
@@ -240,8 +232,6 @@ static int __devinit platform_pci_init(struct pci_dev *pdev,
return -ENOENT;
}
- invlmap_port = ioaddr;
-
if (request_mem_region(mmio_addr, mmio_len, DRV_NAME) == NULL)
{
printk(KERN_ERR ":MEM I/O resource 0x%lx @ 0x%lx busy\n",
diff --git a/unmodified_drivers/linux-2.6/platform-pci/xen_support.c b/unmodified_drivers/linux-2.6/platform-pci/xen_support.c
index 431115a8cc..bb0bdc0722 100644
--- a/unmodified_drivers/linux-2.6/platform-pci/xen_support.c
+++ b/unmodified_drivers/linux-2.6/platform-pci/xen_support.c
@@ -59,12 +59,3 @@ void xen_machphys_update(unsigned long mfn, unsigned long pfn)
}
EXPORT_SYMBOL(xen_machphys_update);
-void balloon_update_driver_allowance(long delta)
-{
-}
-EXPORT_SYMBOL(balloon_update_driver_allowance);
-
-void balloon_release_driver_page(struct page *page)
-{
-}
-EXPORT_SYMBOL(balloon_release_driver_page);